@wordpress/block-library 6.0.18 → 6.0.19

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.
@@ -82,64 +82,37 @@
82
82
  list-style: none;
83
83
  padding: 0;
84
84
  }
85
- .wp-block-post-template li,
86
- .wp-block-query-loop li {
87
- clear: both;
88
- }
89
85
  .wp-block-post-template.is-flex-container,
90
86
  .wp-block-query-loop.is-flex-container {
91
87
  flex-direction: row;
92
88
  display: flex;
93
89
  flex-wrap: wrap;
90
+ gap: 1.25em;
94
91
  }
95
92
  .wp-block-post-template.is-flex-container li,
96
93
  .wp-block-query-loop.is-flex-container li {
97
- margin: 0 0 1.25em 0;
94
+ margin: 0;
98
95
  width: 100%;
99
96
  }
100
97
  @media (min-width: 600px) {
101
- .wp-block-post-template.is-flex-container li,
102
- .wp-block-query-loop.is-flex-container li {
103
- margin-right: 1.25em;
104
- }
105
98
  .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li,
106
99
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li {
107
100
  width: calc((100% / 2) - 1.25em + (1.25em / 2));
108
101
  }
109
- .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n),
110
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n) {
111
- margin-right: 0;
112
- }
113
102
  .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li,
114
103
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li {
115
104
  width: calc((100% / 3) - 1.25em + (1.25em / 3));
116
105
  }
117
- .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n),
118
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n) {
119
- margin-right: 0;
120
- }
121
106
  .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li,
122
107
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li {
123
108
  width: calc((100% / 4) - 1.25em + (1.25em / 4));
124
109
  }
125
- .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n),
126
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n) {
127
- margin-right: 0;
128
- }
129
110
  .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li,
130
111
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li {
131
112
  width: calc((100% / 5) - 1.25em + (1.25em / 5));
132
113
  }
133
- .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n),
134
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n) {
135
- margin-right: 0;
136
- }
137
114
  .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li,
138
115
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li {
139
116
  width: calc((100% / 6) - 1.25em + (1.25em / 6));
140
117
  }
141
- .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n),
142
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n) {
143
- margin-right: 0;
144
- }
145
118
  }
@@ -1557,6 +1557,7 @@ ul.has-background {
1557
1557
  .wp-block-navigation.is-vertical {
1558
1558
  --navigation-layout-direction: column;
1559
1559
  --navigation-layout-justify: initial;
1560
+ --navigation-layout-align: flex-start;
1560
1561
  }
1561
1562
  .wp-block-navigation.no-wrap {
1562
1563
  --navigation-layout-wrap: nowrap;
@@ -1959,10 +1960,10 @@ html.has-modal-open {
1959
1960
 
1960
1961
  .wp-block-navigation .wp-block-page-list {
1961
1962
  display: flex;
1962
- flex-direction: var(--layout-direction, initial);
1963
- justify-content: var(--layout-justify, initial);
1964
- align-items: var(--layout-align, initial);
1965
- flex-wrap: var(--layout-wrap, wrap);
1963
+ flex-direction: var(--navigation-layout-direction, initial);
1964
+ justify-content: var(--navigation-layout-justify, initial);
1965
+ align-items: var(--navigation-layout-align, initial);
1966
+ flex-wrap: var(--navigation-layout-wrap, wrap);
1966
1967
  background-color: inherit;
1967
1968
  }
1968
1969
  .wp-block-navigation .wp-block-navigation-item {
@@ -2264,66 +2265,39 @@ p.has-background {
2264
2265
  list-style: none;
2265
2266
  padding: 0;
2266
2267
  }
2267
- .wp-block-post-template li,
2268
- .wp-block-query-loop li {
2269
- clear: both;
2270
- }
2271
2268
  .wp-block-post-template.is-flex-container,
2272
2269
  .wp-block-query-loop.is-flex-container {
2273
2270
  flex-direction: row;
2274
2271
  display: flex;
2275
2272
  flex-wrap: wrap;
2273
+ gap: 1.25em;
2276
2274
  }
2277
2275
  .wp-block-post-template.is-flex-container li,
2278
2276
  .wp-block-query-loop.is-flex-container li {
2279
- margin: 0 0 1.25em 0;
2277
+ margin: 0;
2280
2278
  width: 100%;
2281
2279
  }
2282
2280
  @media (min-width: 600px) {
2283
- .wp-block-post-template.is-flex-container li,
2284
- .wp-block-query-loop.is-flex-container li {
2285
- margin-left: 1.25em;
2286
- }
2287
2281
  .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li,
2288
2282
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li {
2289
2283
  width: calc((100% / 2) - 1.25em + (1.25em / 2));
2290
2284
  }
2291
- .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n),
2292
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n) {
2293
- margin-left: 0;
2294
- }
2295
2285
  .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li,
2296
2286
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li {
2297
2287
  width: calc((100% / 3) - 1.25em + (1.25em / 3));
2298
2288
  }
2299
- .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n),
2300
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n) {
2301
- margin-left: 0;
2302
- }
2303
2289
  .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li,
2304
2290
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li {
2305
2291
  width: calc((100% / 4) - 1.25em + (1.25em / 4));
2306
2292
  }
2307
- .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n),
2308
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n) {
2309
- margin-left: 0;
2310
- }
2311
2293
  .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li,
2312
2294
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li {
2313
2295
  width: calc((100% / 5) - 1.25em + (1.25em / 5));
2314
2296
  }
2315
- .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n),
2316
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n) {
2317
- margin-left: 0;
2318
- }
2319
2297
  .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li,
2320
2298
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li {
2321
2299
  width: calc((100% / 6) - 1.25em + (1.25em / 6));
2322
2300
  }
2323
- .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n),
2324
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n) {
2325
- margin-left: 0;
2326
- }
2327
2301
  }
2328
2302
 
2329
2303
  .wp-block-query-pagination > .wp-block-query-pagination-next,
@@ -3122,11 +3096,11 @@ pre.wp-block-verse {
3122
3096
  }
3123
3097
 
3124
3098
  .has-normal-font-size {
3125
- font-size: var(--wp--preset--font-size--normal) !important;
3099
+ font-size: var(--wp--preset--font-size--normal);
3126
3100
  }
3127
3101
 
3128
3102
  .has-huge-font-size {
3129
- font-size: var(--wp--preset--font-size--huge) !important;
3103
+ font-size: var(--wp--preset--font-size--huge);
3130
3104
  }
3131
3105
 
3132
3106
  .has-text-align-center {
@@ -1579,6 +1579,7 @@ ul.has-background {
1579
1579
  .wp-block-navigation.is-vertical {
1580
1580
  --navigation-layout-direction: column;
1581
1581
  --navigation-layout-justify: initial;
1582
+ --navigation-layout-align: flex-start;
1582
1583
  }
1583
1584
  .wp-block-navigation.no-wrap {
1584
1585
  --navigation-layout-wrap: nowrap;
@@ -1981,10 +1982,10 @@ html.has-modal-open {
1981
1982
 
1982
1983
  .wp-block-navigation .wp-block-page-list {
1983
1984
  display: flex;
1984
- flex-direction: var(--layout-direction, initial);
1985
- justify-content: var(--layout-justify, initial);
1986
- align-items: var(--layout-align, initial);
1987
- flex-wrap: var(--layout-wrap, wrap);
1985
+ flex-direction: var(--navigation-layout-direction, initial);
1986
+ justify-content: var(--navigation-layout-justify, initial);
1987
+ align-items: var(--navigation-layout-align, initial);
1988
+ flex-wrap: var(--navigation-layout-wrap, wrap);
1988
1989
  background-color: inherit;
1989
1990
  }
1990
1991
  .wp-block-navigation .wp-block-navigation-item {
@@ -2286,66 +2287,39 @@ p.has-background {
2286
2287
  list-style: none;
2287
2288
  padding: 0;
2288
2289
  }
2289
- .wp-block-post-template li,
2290
- .wp-block-query-loop li {
2291
- clear: both;
2292
- }
2293
2290
  .wp-block-post-template.is-flex-container,
2294
2291
  .wp-block-query-loop.is-flex-container {
2295
2292
  flex-direction: row;
2296
2293
  display: flex;
2297
2294
  flex-wrap: wrap;
2295
+ gap: 1.25em;
2298
2296
  }
2299
2297
  .wp-block-post-template.is-flex-container li,
2300
2298
  .wp-block-query-loop.is-flex-container li {
2301
- margin: 0 0 1.25em 0;
2299
+ margin: 0;
2302
2300
  width: 100%;
2303
2301
  }
2304
2302
  @media (min-width: 600px) {
2305
- .wp-block-post-template.is-flex-container li,
2306
- .wp-block-query-loop.is-flex-container li {
2307
- margin-right: 1.25em;
2308
- }
2309
2303
  .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li,
2310
2304
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li {
2311
2305
  width: calc((100% / 2) - 1.25em + (1.25em / 2));
2312
2306
  }
2313
- .wp-block-post-template.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n),
2314
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-2 > li:nth-child(2n) {
2315
- margin-right: 0;
2316
- }
2317
2307
  .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li,
2318
2308
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li {
2319
2309
  width: calc((100% / 3) - 1.25em + (1.25em / 3));
2320
2310
  }
2321
- .wp-block-post-template.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n),
2322
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-3 > li:nth-child(3n) {
2323
- margin-right: 0;
2324
- }
2325
2311
  .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li,
2326
2312
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li {
2327
2313
  width: calc((100% / 4) - 1.25em + (1.25em / 4));
2328
2314
  }
2329
- .wp-block-post-template.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n),
2330
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-4 > li:nth-child(4n) {
2331
- margin-right: 0;
2332
- }
2333
2315
  .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li,
2334
2316
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li {
2335
2317
  width: calc((100% / 5) - 1.25em + (1.25em / 5));
2336
2318
  }
2337
- .wp-block-post-template.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n),
2338
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-5 > li:nth-child(5n) {
2339
- margin-right: 0;
2340
- }
2341
2319
  .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li,
2342
2320
  .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li {
2343
2321
  width: calc((100% / 6) - 1.25em + (1.25em / 6));
2344
2322
  }
2345
- .wp-block-post-template.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n),
2346
- .wp-block-query-loop.is-flex-container.is-flex-container.columns-6 > li:nth-child(6n) {
2347
- margin-right: 0;
2348
- }
2349
2323
  }
2350
2324
 
2351
2325
  .wp-block-query-pagination > .wp-block-query-pagination-next,
@@ -3149,11 +3123,11 @@ pre.wp-block-verse {
3149
3123
  }
3150
3124
 
3151
3125
  .has-normal-font-size {
3152
- font-size: var(--wp--preset--font-size--normal) !important;
3126
+ font-size: var(--wp--preset--font-size--normal);
3153
3127
  }
3154
3128
 
3155
3129
  .has-huge-font-size {
3156
- font-size: var(--wp--preset--font-size--huge) !important;
3130
+ font-size: var(--wp--preset--font-size--huge);
3157
3131
  }
3158
3132
 
3159
3133
  .has-text-align-center {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "6.0.18",
3
+ "version": "6.0.19",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -37,9 +37,9 @@
37
37
  "@wordpress/api-fetch": "^5.2.6",
38
38
  "@wordpress/autop": "^3.2.3",
39
39
  "@wordpress/blob": "^3.2.2",
40
- "@wordpress/block-editor": "^8.0.13",
40
+ "@wordpress/block-editor": "^8.0.14",
41
41
  "@wordpress/blocks": "^11.1.5",
42
- "@wordpress/components": "^19.2.0",
42
+ "@wordpress/components": "^19.2.1",
43
43
  "@wordpress/compose": "^5.0.7",
44
44
  "@wordpress/core-data": "^4.0.9",
45
45
  "@wordpress/data": "^6.1.5",
@@ -52,14 +52,14 @@
52
52
  "@wordpress/html-entities": "^3.2.3",
53
53
  "@wordpress/i18n": "^4.2.4",
54
54
  "@wordpress/icons": "^6.1.1",
55
- "@wordpress/interface": "^4.1.15",
55
+ "@wordpress/interface": "^4.1.16",
56
56
  "@wordpress/is-shallow-equal": "^4.2.1",
57
57
  "@wordpress/keycodes": "^3.2.4",
58
58
  "@wordpress/notices": "^3.2.8",
59
59
  "@wordpress/primitives": "^3.0.4",
60
- "@wordpress/reusable-blocks": "^3.0.19",
61
- "@wordpress/rich-text": "^5.0.7",
62
- "@wordpress/server-side-render": "^3.0.17",
60
+ "@wordpress/reusable-blocks": "^3.0.20",
61
+ "@wordpress/rich-text": "^5.0.8",
62
+ "@wordpress/server-side-render": "^3.0.18",
63
63
  "@wordpress/url": "^3.3.1",
64
64
  "@wordpress/viewport": "^4.0.7",
65
65
  "classnames": "^2.3.1",
@@ -73,5 +73,5 @@
73
73
  "publishConfig": {
74
74
  "access": "public"
75
75
  },
76
- "gitHead": "f70f4664ac641bd107481c5c67ee6f5556a0a381"
76
+ "gitHead": "04883dd8275ee52245a45c8899eb720b91055c50"
77
77
  }
package/src/common.scss CHANGED
@@ -22,11 +22,11 @@
22
22
  }
23
23
 
24
24
  .has-normal-font-size {
25
- font-size: var(--wp--preset--font-size--normal) !important;
25
+ font-size: var(--wp--preset--font-size--normal);
26
26
  }
27
27
 
28
28
  .has-huge-font-size {
29
- font-size: var(--wp--preset--font-size--huge) !important;
29
+ font-size: var(--wp--preset--font-size--huge);
30
30
  }
31
31
 
32
32
  // Text alignments.
package/src/editor.scss CHANGED
@@ -70,11 +70,11 @@
70
70
  }
71
71
 
72
72
  .editor-styles-wrapper .has-normal-font-size {
73
- font-size: var(--wp--preset--font-size--normal) !important;
73
+ font-size: var(--wp--preset--font-size--normal);
74
74
  }
75
75
 
76
76
  .editor-styles-wrapper .has-huge-font-size {
77
- font-size: var(--wp--preset--font-size--huge) !important;
77
+ font-size: var(--wp--preset--font-size--huge);
78
78
  }
79
79
 
80
80
  /**
@@ -2,7 +2,7 @@
2
2
  * External dependencies
3
3
  */
4
4
  import classnames from 'classnames';
5
- import { map, some } from 'lodash';
5
+ import { map, some, omit } from 'lodash';
6
6
 
7
7
  /**
8
8
  * WordPress dependencies
@@ -97,11 +97,8 @@ function runV2Migration( attributes ) {
97
97
 
98
98
  return [
99
99
  {
100
- caption: attributes.caption,
101
- columns: attributes.columns,
102
- imageCrop: attributes.imageCrop,
100
+ ...omit( attributes, [ 'images', 'ids' ] ),
103
101
  linkTo,
104
- sizeSlug: attributes.sizeSlug,
105
102
  allowResize: false,
106
103
  },
107
104
  imageBlocks,
@@ -117,6 +117,7 @@ $navigation-icon-size: 24px;
117
117
  &.is-vertical {
118
118
  --navigation-layout-direction: column;
119
119
  --navigation-layout-justify: initial;
120
+ --navigation-layout-align: flex-start;
120
121
  }
121
122
 
122
123
  &.no-wrap {
@@ -191,7 +191,7 @@ function render_block_core_navigation_submenu( $attributes, $content, $block ) {
191
191
  $aria_label = sprintf(
192
192
  /* translators: Accessibility text. %s: Parent page title. */
193
193
  __( '%s submenu' ),
194
- $label
194
+ wp_strip_all_tags( $label )
195
195
  );
196
196
 
197
197
  $html = '<li ' . $wrapper_attributes . '>';
@@ -231,7 +231,7 @@ function render_block_core_navigation_submenu( $attributes, $content, $block ) {
231
231
 
232
232
  if ( $show_submenu_indicators ) {
233
233
  // The submenu icon is rendered in a button here
234
- // so that there's a clickable elment to open the submenu.
234
+ // so that there's a clickable element to open the submenu.
235
235
  $html .= '<button aria-label="' . $aria_label . '" class="wp-block-navigation__submenu-icon wp-block-navigation-submenu__toggle" aria-expanded="false">' . block_core_navigation_submenu_render_submenu_icon() . '</button>';
236
236
  }
237
237
  } else {
@@ -177,7 +177,7 @@ function block_core_page_list_render_nested_page_list( $open_submenus_on_click,
177
177
  $aria_label = sprintf(
178
178
  /* translators: Accessibility text. %s: Parent page title. */
179
179
  __( '%s submenu' ),
180
- $title
180
+ wp_strip_all_tags( $title )
181
181
  );
182
182
 
183
183
  $markup .= '<li class="wp-block-pages-list__item' . $css_class . '"' . $style_attribute . '>';
@@ -2,10 +2,10 @@
2
2
  .wp-block-navigation {
3
3
  .wp-block-page-list {
4
4
  display: flex;
5
- flex-direction: var(--layout-direction, initial);
6
- justify-content: var(--layout-justify, initial);
7
- align-items: var(--layout-align, initial);
8
- flex-wrap: var(--layout-wrap, wrap);
5
+ flex-direction: var(--navigation-layout-direction, initial);
6
+ justify-content: var(--navigation-layout-justify, initial);
7
+ align-items: var(--navigation-layout-align, initial);
8
+ flex-wrap: var(--navigation-layout-wrap, wrap);
9
9
  background-color: inherit;
10
10
  }
11
11
 
@@ -46,6 +46,11 @@ function render_block_core_post_content( $attributes, $content, $block ) {
46
46
  // so that `the_preview` for the current post can apply.
47
47
  // We force this behavior by omitting the third argument (post ID) from the `get_the_content`.
48
48
  $content = get_the_content( null, false );
49
+ // Check for nextpage to display page links for paginated posts.
50
+ if ( has_block( 'core/nextpage' ) ) {
51
+ $content .= wp_link_pages( array( 'echo' => 0 ) );
52
+ }
53
+
49
54
  /** This filter is documented in wp-includes/post-template.php */
50
55
  $content = apply_filters( 'the_content', str_replace( ']]>', ']]&gt;', $content ) );
51
56
  unset( $seen_ids[ $post_id ] );
@@ -11,32 +11,21 @@
11
11
  list-style: none;
12
12
  padding: 0;
13
13
 
14
- li {
15
- clear: both;
16
- }
17
-
18
14
  &.is-flex-container {
19
15
  flex-direction: row;
20
16
  display: flex;
21
17
  flex-wrap: wrap;
18
+ gap: 1.25em;
22
19
 
23
20
  li {
24
- margin: 0 0 1.25em 0;
21
+ margin: 0;
25
22
  width: 100%;
26
23
  }
27
24
 
28
25
  @include break-small {
29
- li {
30
- margin-right: 1.25em;
31
- }
32
-
33
26
  @for $i from 2 through 6 {
34
27
  &.is-flex-container.columns-#{ $i } > li {
35
28
  width: calc((100% / #{ $i }) - 1.25em + (1.25em / #{ $i }));
36
-
37
- &:nth-child( #{ $i }n ) {
38
- margin-right: 0;
39
- }
40
29
  }
41
30
  }
42
31
  }
@@ -43,8 +43,9 @@ function render_block_core_query_pagination_next( $attributes, $content, $block
43
43
  $content = get_next_posts_link( $label, $max_page );
44
44
  remove_filter( 'next_posts_link_attributes', $filter_link_attributes );
45
45
  } elseif ( ! $max_page || $max_page > $page ) {
46
- $custom_query = new WP_Query( build_query_vars_from_query_block( $block, $page ) );
47
- if ( (int) $custom_query->max_num_pages !== $page ) {
46
+ $custom_query = new WP_Query( build_query_vars_from_query_block( $block, $page ) );
47
+ $custom_query_max_pages = (int) $custom_query->max_num_pages;
48
+ if ( $custom_query_max_pages && $custom_query_max_pages !== $page ) {
48
49
  $content = sprintf(
49
50
  '<a href="%1$s" %2$s>%3$s</a>',
50
51
  esc_url( add_query_arg( $page_key, $page + 1 ) ),
@@ -46,13 +46,13 @@ function render_block_core_search( $attributes ) {
46
46
  $label_markup = sprintf(
47
47
  '<label for="%1$s" class="wp-block-search__label screen-reader-text">%2$s</label>',
48
48
  $input_id,
49
- empty( $attributes['label'] ) ? __( 'Search' ) : $attributes['label']
49
+ empty( $attributes['label'] ) ? __( 'Search' ) : esc_html( $attributes['label'] )
50
50
  );
51
51
  if ( $show_label && ! empty( $attributes['label'] ) ) {
52
52
  $label_markup = sprintf(
53
53
  '<label for="%1$s" class="wp-block-search__label">%2$s</label>',
54
54
  $input_id,
55
- $attributes['label']
55
+ esc_html( $attributes['label'] )
56
56
  );
57
57
  }
58
58
 
@@ -61,7 +61,7 @@ function render_block_core_search( $attributes ) {
61
61
  $input_markup = sprintf(
62
62
  '<input type="search" id="%s" class="wp-block-search__input %s" name="s" value="%s" placeholder="%s" %s required />',
63
63
  $input_id,
64
- $input_classes,
64
+ esc_attr( $input_classes ),
65
65
  esc_attr( get_search_query() ),
66
66
  esc_attr( $attributes['placeholder'] ),
67
67
  $inline_styles['input']
@@ -77,7 +77,7 @@ function render_block_core_search( $attributes ) {
77
77
  }
78
78
  if ( ! $use_icon_button ) {
79
79
  if ( ! empty( $attributes['buttonText'] ) ) {
80
- $button_internal_markup = $attributes['buttonText'];
80
+ $button_internal_markup = esc_html( $attributes['buttonText'] );
81
81
  }
82
82
  } else {
83
83
  $button_classes .= ' has-icon';
@@ -89,7 +89,7 @@ function render_block_core_search( $attributes ) {
89
89
 
90
90
  $button_markup = sprintf(
91
91
  '<button type="submit" class="wp-block-search__button %s" %s>%s</button>',
92
- $button_classes,
92
+ esc_attr( $button_classes ),
93
93
  $inline_styles['button'],
94
94
  $button_internal_markup
95
95
  );
@@ -98,7 +98,7 @@ function render_block_core_search( $attributes ) {
98
98
  $field_markup_classes = $is_button_inside ? $border_color_classes : '';
99
99
  $field_markup = sprintf(
100
100
  '<div class="wp-block-search__inside-wrapper %s" %s>%s</div>',
101
- $field_markup_classes,
101
+ esc_attr( $field_markup_classes ),
102
102
  $inline_styles['wrapper'],
103
103
  $input_markup . $button_markup
104
104
  );
@@ -285,9 +285,9 @@ function styles_for_block_core_search( $attributes ) {
285
285
  }
286
286
 
287
287
  return array(
288
- 'input' => ! empty( $input_styles ) ? sprintf( ' style="%s"', implode( ' ', $input_styles ) ) : '',
289
- 'button' => ! empty( $button_styles ) ? sprintf( ' style="%s"', implode( ' ', $button_styles ) ) : '',
290
- 'wrapper' => ! empty( $wrapper_styles ) ? sprintf( ' style="%s"', implode( ' ', $wrapper_styles ) ) : '',
288
+ 'input' => ! empty( $input_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $input_styles ) ) ) : '',
289
+ 'button' => ! empty( $button_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $button_styles ) ) ) : '',
290
+ 'wrapper' => ! empty( $wrapper_styles ) ? sprintf( ' style="%s"', safecss_filter_attr( implode( ' ', $wrapper_styles ) ) ) : '',
291
291
  );
292
292
  }
293
293
 
@@ -166,9 +166,10 @@ const SiteLogo = ( {
166
166
  const currentWidth = width || defaultWidth;
167
167
  const ratio = naturalWidth / naturalHeight;
168
168
  const currentHeight = currentWidth / ratio;
169
- const minWidth = naturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;
169
+ const minWidth =
170
+ naturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );
170
171
  const minHeight =
171
- naturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;
172
+ naturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );
172
173
 
173
174
  // With the current implementation of ResizableBox, an image needs an
174
175
  // explicit pixel value for the max-width. In absence of being able to