@wordpress/block-library 8.25.0 → 8.26.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.
Files changed (235) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/LICENSE.md +1 -1
  3. package/build/audio/edit.js +10 -12
  4. package/build/audio/edit.js.map +1 -1
  5. package/build/block/edit.js +79 -32
  6. package/build/block/edit.js.map +1 -1
  7. package/build/comments-title/deprecated.js +1 -1
  8. package/build/comments-title/index.js +1 -1
  9. package/build/cover/edit/inspector-controls.js +1 -1
  10. package/build/cover/edit/inspector-controls.js.map +1 -1
  11. package/build/embed/util.js +4 -4
  12. package/build/embed/util.js.map +1 -1
  13. package/build/file/edit.js +19 -27
  14. package/build/file/edit.js.map +1 -1
  15. package/build/gallery/edit.js +36 -17
  16. package/build/gallery/edit.js.map +1 -1
  17. package/build/gallery/gallery.js +3 -2
  18. package/build/gallery/gallery.js.map +1 -1
  19. package/build/gallery/index.js +4 -0
  20. package/build/gallery/index.js.map +1 -1
  21. package/build/gallery/transforms.js +4 -68
  22. package/build/gallery/transforms.js.map +1 -1
  23. package/build/group/index.js +5 -1
  24. package/build/group/index.js.map +1 -1
  25. package/build/image/deprecated.js +11 -0
  26. package/build/image/deprecated.js.map +1 -1
  27. package/build/image/edit.native.js +3 -0
  28. package/build/image/edit.native.js.map +1 -1
  29. package/build/image/image.js +22 -21
  30. package/build/image/image.js.map +1 -1
  31. package/build/image/view.js +7 -1
  32. package/build/image/view.js.map +1 -1
  33. package/build/list/edit.js +10 -15
  34. package/build/list/edit.js.map +1 -1
  35. package/build/list-item/edit.js +17 -2
  36. package/build/list-item/edit.js.map +1 -1
  37. package/build/list-item/hooks/use-enter.js +5 -3
  38. package/build/list-item/hooks/use-enter.js.map +1 -1
  39. package/build/list-item/hooks/use-enter.native.js +4 -3
  40. package/build/list-item/hooks/use-enter.native.js.map +1 -1
  41. package/build/list-item/hooks/use-indent-list-item.js +2 -3
  42. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  43. package/build/list-item/hooks/use-merge.js +1 -1
  44. package/build/list-item/hooks/use-merge.js.map +1 -1
  45. package/build/list-item/hooks/use-outdent-list-item.js +3 -17
  46. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  47. package/build/list-item/hooks/use-space.js +8 -4
  48. package/build/list-item/hooks/use-space.js.map +1 -1
  49. package/build/media-text/media-container.native.js +3 -0
  50. package/build/media-text/media-container.native.js.map +1 -1
  51. package/build/navigation/constants.js +3 -1
  52. package/build/navigation/constants.js.map +1 -1
  53. package/build/navigation/edit/index.js +4 -0
  54. package/build/navigation/edit/index.js.map +1 -1
  55. package/build/navigation/view.js +25 -1
  56. package/build/navigation/view.js.map +1 -1
  57. package/build/pattern/edit.js +24 -2
  58. package/build/pattern/edit.js.map +1 -1
  59. package/build/pattern/recursion-detector.js +147 -0
  60. package/build/pattern/recursion-detector.js.map +1 -0
  61. package/build/post-featured-image/edit.js +19 -2
  62. package/build/post-featured-image/edit.js.map +1 -1
  63. package/build/post-featured-image/index.js +4 -0
  64. package/build/post-featured-image/index.js.map +1 -1
  65. package/build/query/edit/inspector-controls/index.js +3 -1
  66. package/build/query/edit/inspector-controls/index.js.map +1 -1
  67. package/build/query-pagination-numbers/index.js +1 -1
  68. package/build/search/edit.js +3 -5
  69. package/build/search/edit.js.map +1 -1
  70. package/build/search/index.js +0 -4
  71. package/build/search/index.js.map +1 -1
  72. package/build/site-logo/edit.js +7 -6
  73. package/build/site-logo/edit.js.map +1 -1
  74. package/build/spacer/edit.native.js +2 -2
  75. package/build/spacer/edit.native.js.map +1 -1
  76. package/build/tag-cloud/edit.js +5 -9
  77. package/build/tag-cloud/edit.js.map +1 -1
  78. package/build/utils/constants.js +16 -0
  79. package/build/utils/constants.js.map +1 -0
  80. package/build/video/edit.js +11 -8
  81. package/build/video/edit.js.map +1 -1
  82. package/build-module/audio/edit.js +10 -12
  83. package/build-module/audio/edit.js.map +1 -1
  84. package/build-module/block/edit.js +83 -36
  85. package/build-module/block/edit.js.map +1 -1
  86. package/build-module/comments-title/deprecated.js +1 -1
  87. package/build-module/comments-title/index.js +1 -1
  88. package/build-module/cover/edit/inspector-controls.js +1 -1
  89. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  90. package/build-module/embed/util.js +4 -4
  91. package/build-module/embed/util.js.map +1 -1
  92. package/build-module/file/edit.js +19 -27
  93. package/build-module/file/edit.js.map +1 -1
  94. package/build-module/gallery/edit.js +36 -17
  95. package/build-module/gallery/edit.js.map +1 -1
  96. package/build-module/gallery/gallery.js +3 -2
  97. package/build-module/gallery/gallery.js.map +1 -1
  98. package/build-module/gallery/index.js +4 -0
  99. package/build-module/gallery/index.js.map +1 -1
  100. package/build-module/gallery/transforms.js +4 -68
  101. package/build-module/gallery/transforms.js.map +1 -1
  102. package/build-module/group/index.js +5 -1
  103. package/build-module/group/index.js.map +1 -1
  104. package/build-module/image/deprecated.js +11 -0
  105. package/build-module/image/deprecated.js.map +1 -1
  106. package/build-module/image/edit.native.js +3 -0
  107. package/build-module/image/edit.native.js.map +1 -1
  108. package/build-module/image/image.js +17 -16
  109. package/build-module/image/image.js.map +1 -1
  110. package/build-module/image/view.js +7 -1
  111. package/build-module/image/view.js.map +1 -1
  112. package/build-module/list/edit.js +10 -15
  113. package/build-module/list/edit.js.map +1 -1
  114. package/build-module/list-item/edit.js +18 -3
  115. package/build-module/list-item/edit.js.map +1 -1
  116. package/build-module/list-item/hooks/use-enter.js +5 -3
  117. package/build-module/list-item/hooks/use-enter.js.map +1 -1
  118. package/build-module/list-item/hooks/use-enter.native.js +4 -3
  119. package/build-module/list-item/hooks/use-enter.native.js.map +1 -1
  120. package/build-module/list-item/hooks/use-indent-list-item.js +2 -3
  121. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  122. package/build-module/list-item/hooks/use-merge.js +1 -1
  123. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  124. package/build-module/list-item/hooks/use-outdent-list-item.js +3 -17
  125. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  126. package/build-module/list-item/hooks/use-space.js +8 -4
  127. package/build-module/list-item/hooks/use-space.js.map +1 -1
  128. package/build-module/media-text/media-container.native.js +3 -0
  129. package/build-module/media-text/media-container.native.js.map +1 -1
  130. package/build-module/navigation/constants.js +1 -0
  131. package/build-module/navigation/constants.js.map +1 -1
  132. package/build-module/navigation/edit/index.js +5 -1
  133. package/build-module/navigation/edit/index.js.map +1 -1
  134. package/build-module/navigation/view.js +25 -1
  135. package/build-module/navigation/view.js.map +1 -1
  136. package/build-module/pattern/edit.js +26 -4
  137. package/build-module/pattern/edit.js.map +1 -1
  138. package/build-module/pattern/recursion-detector.js +139 -0
  139. package/build-module/pattern/recursion-detector.js.map +1 -0
  140. package/build-module/post-featured-image/edit.js +19 -2
  141. package/build-module/post-featured-image/edit.js.map +1 -1
  142. package/build-module/post-featured-image/index.js +4 -0
  143. package/build-module/post-featured-image/index.js.map +1 -1
  144. package/build-module/query/edit/inspector-controls/index.js +3 -1
  145. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  146. package/build-module/query-pagination-numbers/index.js +1 -1
  147. package/build-module/search/edit.js +3 -5
  148. package/build-module/search/edit.js.map +1 -1
  149. package/build-module/search/index.js +0 -4
  150. package/build-module/search/index.js.map +1 -1
  151. package/build-module/site-logo/edit.js +7 -6
  152. package/build-module/site-logo/edit.js.map +1 -1
  153. package/build-module/spacer/edit.native.js +2 -2
  154. package/build-module/spacer/edit.native.js.map +1 -1
  155. package/build-module/tag-cloud/edit.js +6 -10
  156. package/build-module/tag-cloud/edit.js.map +1 -1
  157. package/build-module/utils/constants.js +9 -0
  158. package/build-module/utils/constants.js.map +1 -0
  159. package/build-module/video/edit.js +11 -8
  160. package/build-module/video/edit.js.map +1 -1
  161. package/build-style/button/editor-rtl.css +0 -37
  162. package/build-style/button/editor.css +0 -37
  163. package/build-style/button/style-rtl.css +6 -6
  164. package/build-style/button/style.css +6 -6
  165. package/build-style/editor-rtl.css +2 -44
  166. package/build-style/editor.css +2 -44
  167. package/build-style/navigation/editor-rtl.css +2 -4
  168. package/build-style/navigation/editor.css +2 -4
  169. package/build-style/navigation/style-rtl.css +14 -18
  170. package/build-style/navigation/style.css +14 -18
  171. package/build-style/search/style-rtl.css +26 -27
  172. package/build-style/search/style.css +26 -27
  173. package/build-style/style-rtl.css +46 -51
  174. package/build-style/style.css +46 -51
  175. package/build-style/table/editor-rtl.css +0 -3
  176. package/build-style/table/editor.css +0 -3
  177. package/package.json +32 -32
  178. package/src/audio/edit.js +19 -19
  179. package/src/audio/test/__snapshots__/edit.native.js.snap +12 -0
  180. package/src/audio/test/edit.native.js +29 -0
  181. package/src/block/edit.js +114 -60
  182. package/src/button/editor.scss +0 -43
  183. package/src/button/style.scss +6 -6
  184. package/src/comments-title/block.json +1 -1
  185. package/src/cover/edit/inspector-controls.js +1 -1
  186. package/src/embed/util.js +2 -2
  187. package/src/file/edit.js +17 -24
  188. package/src/gallery/block.json +4 -0
  189. package/src/gallery/edit.js +69 -42
  190. package/src/gallery/gallery.js +4 -1
  191. package/src/gallery/index.php +18 -0
  192. package/src/gallery/transforms.js +2 -55
  193. package/src/group/block.json +5 -1
  194. package/src/image/deprecated.js +8 -0
  195. package/src/image/edit.native.js +3 -0
  196. package/src/image/image.js +54 -35
  197. package/src/image/index.php +1 -6
  198. package/src/image/view.js +5 -2
  199. package/src/list/edit.js +27 -35
  200. package/src/list-item/edit.js +18 -2
  201. package/src/list-item/hooks/use-enter.js +63 -62
  202. package/src/list-item/hooks/use-enter.native.js +9 -5
  203. package/src/list-item/hooks/use-indent-list-item.js +43 -53
  204. package/src/list-item/hooks/use-merge.js +1 -1
  205. package/src/list-item/hooks/use-outdent-list-item.js +50 -69
  206. package/src/list-item/hooks/use-space.js +7 -4
  207. package/src/media-text/media-container.native.js +3 -1
  208. package/src/navigation/constants.js +2 -0
  209. package/src/navigation/edit/index.js +11 -1
  210. package/src/navigation/editor.scss +1 -1
  211. package/src/navigation/style.scss +18 -16
  212. package/src/navigation/view.js +29 -3
  213. package/src/paragraph/test/__snapshots__/edit.native.js.snap +12 -0
  214. package/src/paragraph/test/edit.native.js +114 -0
  215. package/src/pattern/edit.js +35 -3
  216. package/src/pattern/index.php +16 -0
  217. package/src/pattern/recursion-detector.js +145 -0
  218. package/src/pattern/test/index.js +74 -0
  219. package/src/post-featured-image/block.json +4 -0
  220. package/src/post-featured-image/edit.js +32 -1
  221. package/src/post-featured-image/index.php +31 -0
  222. package/src/query/edit/inspector-controls/index.js +2 -0
  223. package/src/query-pagination-numbers/block.json +1 -1
  224. package/src/search/block.json +0 -4
  225. package/src/search/edit.js +2 -8
  226. package/src/search/index.php +3 -7
  227. package/src/search/style.scss +27 -29
  228. package/src/site-logo/edit.js +3 -4
  229. package/src/social-link/index.php +1 -1
  230. package/src/spacer/edit.native.js +4 -2
  231. package/src/table/editor.scss +0 -3
  232. package/src/tag-cloud/edit.js +7 -7
  233. package/src/template-part/index.php +6 -0
  234. package/src/utils/constants.js +8 -0
  235. package/src/video/edit.js +29 -27
@@ -135,6 +135,31 @@
135
135
  .wp-block-search.wp-block-search__button-only .wp-block-search__button[aria-expanded=true] {
136
136
  max-width: calc(100% - 100px);
137
137
  }
138
+ .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
139
+ transition-property: width;
140
+ min-width: 0 !important;
141
+ }
142
+ .wp-block-search.wp-block-search__button-only .wp-block-search__input {
143
+ transition-duration: 300ms;
144
+ flex-basis: 100%;
145
+ }
146
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden {
147
+ overflow: hidden;
148
+ }
149
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
150
+ overflow: hidden;
151
+ }
152
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input {
153
+ width: 0 !important;
154
+ min-width: 0 !important;
155
+ padding-left: 0 !important;
156
+ padding-right: 0 !important;
157
+ border-left-width: 0 !important;
158
+ border-right-width: 0 !important;
159
+ flex-grow: 0;
160
+ margin: 0;
161
+ flex-basis: 0;
162
+ }
138
163
 
139
164
  :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
140
165
  padding: 4px;
@@ -157,32 +182,6 @@
157
182
  margin: auto;
158
183
  }
159
184
 
160
- .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
161
- transition-property: width;
162
- min-width: 0 !important;
163
- }
164
- .wp-block-search__button-behavior-expand .wp-block-search__input {
165
- transition-duration: 300ms;
166
- flex-basis: 100%;
167
- }
168
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden {
169
- overflow: hidden;
170
- }
171
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
172
- overflow: hidden;
173
- }
174
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__input {
175
- width: 0 !important;
176
- min-width: 0 !important;
177
- padding-left: 0 !important;
178
- padding-right: 0 !important;
179
- border-left-width: 0 !important;
180
- border-right-width: 0 !important;
181
- flex-grow: 0;
182
- margin: 0;
183
- flex-basis: 0;
184
- }
185
-
186
- .wp-block[data-align=right] .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
185
+ .wp-block[data-align=right] .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
187
186
  float: right;
188
187
  }
@@ -186,19 +186,19 @@
186
186
  border-radius: 0 !important;
187
187
  }
188
188
 
189
- .wp-block-button.is-style-outline > .wp-block-button__link,
190
- .wp-block-button .wp-block-button__link.is-style-outline {
189
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link,
190
+ .wp-block-button .wp-block-button__link:where(.is-style-outline) {
191
191
  border: 2px solid currentColor;
192
192
  padding: 0.667em 1.333em;
193
193
  }
194
194
 
195
- .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color),
196
- .wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color) {
195
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link:not(.has-text-color),
196
+ .wp-block-button .wp-block-button__link:where(.is-style-outline):not(.has-text-color) {
197
197
  color: currentColor;
198
198
  }
199
199
 
200
- .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background),
201
- .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background) {
200
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link:not(.has-background),
201
+ .wp-block-button .wp-block-button__link:where(.is-style-outline):not(.has-background) {
202
202
  background-color: transparent;
203
203
  background-image: none;
204
204
  }
@@ -2572,20 +2572,18 @@ button.wp-block-navigation-item__content {
2572
2572
  left: auto;
2573
2573
  right: auto;
2574
2574
  }
2575
- @media (min-width: 600px) {
2576
- .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
2577
- display: block;
2578
- width: 100%;
2579
- position: relative;
2580
- z-index: auto;
2581
- background-color: inherit;
2582
- }
2583
- .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
2584
- display: none;
2585
- }
2586
- .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
2587
- right: 0;
2588
- }
2575
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container:not(.is-menu-open) {
2576
+ display: block;
2577
+ width: 100%;
2578
+ position: relative;
2579
+ z-index: auto;
2580
+ background-color: inherit;
2581
+ }
2582
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-container-close {
2583
+ display: none;
2584
+ }
2585
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
2586
+ right: 0;
2589
2587
  }
2590
2588
 
2591
2589
  .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
@@ -2629,10 +2627,8 @@ button.wp-block-navigation-item__content {
2629
2627
  font-weight: inherit;
2630
2628
  font-size: inherit;
2631
2629
  }
2632
- @media (min-width: 600px) {
2633
- .wp-block-navigation__responsive-container-open:not(.always-shown) {
2634
- display: none;
2635
- }
2630
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container-open {
2631
+ display: none;
2636
2632
  }
2637
2633
 
2638
2634
  .wp-block-navigation__responsive-container-close {
@@ -3264,6 +3260,31 @@ ul.wp-block-rss.is-grid li {
3264
3260
  .wp-block-search.wp-block-search__button-only .wp-block-search__button[aria-expanded=true] {
3265
3261
  max-width: calc(100% - 100px);
3266
3262
  }
3263
+ .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
3264
+ transition-property: width;
3265
+ min-width: 0 !important;
3266
+ }
3267
+ .wp-block-search.wp-block-search__button-only .wp-block-search__input {
3268
+ transition-duration: 300ms;
3269
+ flex-basis: 100%;
3270
+ }
3271
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden {
3272
+ overflow: hidden;
3273
+ }
3274
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
3275
+ overflow: hidden;
3276
+ }
3277
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input {
3278
+ width: 0 !important;
3279
+ min-width: 0 !important;
3280
+ padding-right: 0 !important;
3281
+ padding-left: 0 !important;
3282
+ border-right-width: 0 !important;
3283
+ border-left-width: 0 !important;
3284
+ flex-grow: 0;
3285
+ margin: 0;
3286
+ flex-basis: 0;
3287
+ }
3267
3288
 
3268
3289
  :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
3269
3290
  padding: 4px;
@@ -3286,33 +3307,7 @@ ul.wp-block-rss.is-grid li {
3286
3307
  margin: auto;
3287
3308
  }
3288
3309
 
3289
- .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
3290
- transition-property: width;
3291
- min-width: 0 !important;
3292
- }
3293
- .wp-block-search__button-behavior-expand .wp-block-search__input {
3294
- transition-duration: 300ms;
3295
- flex-basis: 100%;
3296
- }
3297
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden {
3298
- overflow: hidden;
3299
- }
3300
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
3301
- overflow: hidden;
3302
- }
3303
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__input {
3304
- width: 0 !important;
3305
- min-width: 0 !important;
3306
- padding-right: 0 !important;
3307
- padding-left: 0 !important;
3308
- border-right-width: 0 !important;
3309
- border-left-width: 0 !important;
3310
- flex-grow: 0;
3311
- margin: 0;
3312
- flex-basis: 0;
3313
- }
3314
-
3315
- .wp-block[data-align=right] .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
3310
+ .wp-block[data-align=right] .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
3316
3311
  float: left;
3317
3312
  }
3318
3313
 
@@ -187,19 +187,19 @@
187
187
  border-radius: 0 !important;
188
188
  }
189
189
 
190
- .wp-block-button.is-style-outline > .wp-block-button__link,
191
- .wp-block-button .wp-block-button__link.is-style-outline {
190
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link,
191
+ .wp-block-button .wp-block-button__link:where(.is-style-outline) {
192
192
  border: 2px solid currentColor;
193
193
  padding: 0.667em 1.333em;
194
194
  }
195
195
 
196
- .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color),
197
- .wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color) {
196
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link:not(.has-text-color),
197
+ .wp-block-button .wp-block-button__link:where(.is-style-outline):not(.has-text-color) {
198
198
  color: currentColor;
199
199
  }
200
200
 
201
- .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background),
202
- .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background) {
201
+ .wp-block-button:where(.is-style-outline) > .wp-block-button__link:not(.has-background),
202
+ .wp-block-button .wp-block-button__link:where(.is-style-outline):not(.has-background) {
203
203
  background-color: transparent;
204
204
  background-image: none;
205
205
  }
@@ -2602,20 +2602,18 @@ button.wp-block-navigation-item__content {
2602
2602
  right: auto;
2603
2603
  left: auto;
2604
2604
  }
2605
- @media (min-width: 600px) {
2606
- .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
2607
- display: block;
2608
- width: 100%;
2609
- position: relative;
2610
- z-index: auto;
2611
- background-color: inherit;
2612
- }
2613
- .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close {
2614
- display: none;
2615
- }
2616
- .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
2617
- left: 0;
2618
- }
2605
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container:not(.is-menu-open) {
2606
+ display: block;
2607
+ width: 100%;
2608
+ position: relative;
2609
+ z-index: auto;
2610
+ background-color: inherit;
2611
+ }
2612
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-container-close {
2613
+ display: none;
2614
+ }
2615
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
2616
+ left: 0;
2619
2617
  }
2620
2618
 
2621
2619
  .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
@@ -2659,10 +2657,8 @@ button.wp-block-navigation-item__content {
2659
2657
  font-weight: inherit;
2660
2658
  font-size: inherit;
2661
2659
  }
2662
- @media (min-width: 600px) {
2663
- .wp-block-navigation__responsive-container-open:not(.always-shown) {
2664
- display: none;
2665
- }
2660
+ :not(.is-collapsed) > .wp-block-navigation__responsive-container-open {
2661
+ display: none;
2666
2662
  }
2667
2663
 
2668
2664
  .wp-block-navigation__responsive-container-close {
@@ -3298,6 +3294,31 @@ ul.wp-block-rss.is-grid li {
3298
3294
  .wp-block-search.wp-block-search__button-only .wp-block-search__button[aria-expanded=true] {
3299
3295
  max-width: calc(100% - 100px);
3300
3296
  }
3297
+ .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
3298
+ transition-property: width;
3299
+ min-width: 0 !important;
3300
+ }
3301
+ .wp-block-search.wp-block-search__button-only .wp-block-search__input {
3302
+ transition-duration: 300ms;
3303
+ flex-basis: 100%;
3304
+ }
3305
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden {
3306
+ overflow: hidden;
3307
+ }
3308
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
3309
+ overflow: hidden;
3310
+ }
3311
+ .wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input {
3312
+ width: 0 !important;
3313
+ min-width: 0 !important;
3314
+ padding-left: 0 !important;
3315
+ padding-right: 0 !important;
3316
+ border-left-width: 0 !important;
3317
+ border-right-width: 0 !important;
3318
+ flex-grow: 0;
3319
+ margin: 0;
3320
+ flex-basis: 0;
3321
+ }
3301
3322
 
3302
3323
  :where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
3303
3324
  padding: 4px;
@@ -3320,33 +3341,7 @@ ul.wp-block-rss.is-grid li {
3320
3341
  margin: auto;
3321
3342
  }
3322
3343
 
3323
- .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
3324
- transition-property: width;
3325
- min-width: 0 !important;
3326
- }
3327
- .wp-block-search__button-behavior-expand .wp-block-search__input {
3328
- transition-duration: 300ms;
3329
- flex-basis: 100%;
3330
- }
3331
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden {
3332
- overflow: hidden;
3333
- }
3334
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper {
3335
- overflow: hidden;
3336
- }
3337
- .wp-block-search__button-behavior-expand.wp-block-search__searchfield-hidden .wp-block-search__input {
3338
- width: 0 !important;
3339
- min-width: 0 !important;
3340
- padding-left: 0 !important;
3341
- padding-right: 0 !important;
3342
- border-left-width: 0 !important;
3343
- border-right-width: 0 !important;
3344
- flex-grow: 0;
3345
- margin: 0;
3346
- flex-basis: 0;
3347
- }
3348
-
3349
- .wp-block[data-align=right] .wp-block-search__button-behavior-expand .wp-block-search__inside-wrapper {
3344
+ .wp-block[data-align=right] .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper {
3350
3345
  float: right;
3351
3346
  }
3352
3347
 
@@ -86,9 +86,6 @@
86
86
  /**
87
87
  * Reset the WP Admin page styles for Gutenberg-like pages.
88
88
  */
89
- .wp-block-table {
90
- margin: 0;
91
- }
92
89
  .wp-block[data-align=left] > .wp-block-table, .wp-block[data-align=right] > .wp-block-table, .wp-block[data-align=center] > .wp-block-table {
93
90
  height: auto;
94
91
  }
@@ -86,9 +86,6 @@
86
86
  /**
87
87
  * Reset the WP Admin page styles for Gutenberg-like pages.
88
88
  */
89
- .wp-block-table {
90
- margin: 0;
91
- }
92
89
  .wp-block[data-align=left] > .wp-block-table, .wp-block[data-align=right] > .wp-block-table, .wp-block[data-align=center] > .wp-block-table {
93
90
  height: auto;
94
91
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "8.25.0",
3
+ "version": "8.26.0",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -31,36 +31,36 @@
31
31
  ],
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.16.0",
34
- "@wordpress/a11y": "^3.48.0",
35
- "@wordpress/api-fetch": "^6.45.0",
36
- "@wordpress/autop": "^3.48.0",
37
- "@wordpress/blob": "^3.48.0",
38
- "@wordpress/block-editor": "^12.16.0",
39
- "@wordpress/blocks": "^12.25.0",
40
- "@wordpress/components": "^25.14.0",
41
- "@wordpress/compose": "^6.25.0",
42
- "@wordpress/core-data": "^6.25.0",
43
- "@wordpress/data": "^9.18.0",
44
- "@wordpress/date": "^4.48.0",
45
- "@wordpress/deprecated": "^3.48.0",
46
- "@wordpress/dom": "^3.48.0",
47
- "@wordpress/element": "^5.25.0",
48
- "@wordpress/escape-html": "^2.48.0",
49
- "@wordpress/hooks": "^3.48.0",
50
- "@wordpress/html-entities": "^3.48.0",
51
- "@wordpress/i18n": "^4.48.0",
52
- "@wordpress/icons": "^9.39.0",
53
- "@wordpress/interactivity": "^3.1.0",
54
- "@wordpress/keycodes": "^3.48.0",
55
- "@wordpress/notices": "^4.16.0",
56
- "@wordpress/primitives": "^3.46.0",
57
- "@wordpress/private-apis": "^0.30.0",
58
- "@wordpress/reusable-blocks": "^4.25.0",
59
- "@wordpress/rich-text": "^6.25.0",
60
- "@wordpress/server-side-render": "^4.25.0",
61
- "@wordpress/url": "^3.49.0",
62
- "@wordpress/viewport": "^5.25.0",
63
- "@wordpress/wordcount": "^3.48.0",
34
+ "@wordpress/a11y": "^3.49.0",
35
+ "@wordpress/api-fetch": "^6.46.0",
36
+ "@wordpress/autop": "^3.49.0",
37
+ "@wordpress/blob": "^3.49.0",
38
+ "@wordpress/block-editor": "^12.17.0",
39
+ "@wordpress/blocks": "^12.26.0",
40
+ "@wordpress/components": "^25.15.0",
41
+ "@wordpress/compose": "^6.26.0",
42
+ "@wordpress/core-data": "^6.26.0",
43
+ "@wordpress/data": "^9.19.0",
44
+ "@wordpress/date": "^4.49.0",
45
+ "@wordpress/deprecated": "^3.49.0",
46
+ "@wordpress/dom": "^3.49.0",
47
+ "@wordpress/element": "^5.26.0",
48
+ "@wordpress/escape-html": "^2.49.0",
49
+ "@wordpress/hooks": "^3.49.0",
50
+ "@wordpress/html-entities": "^3.49.0",
51
+ "@wordpress/i18n": "^4.49.0",
52
+ "@wordpress/icons": "^9.40.0",
53
+ "@wordpress/interactivity": "^3.2.0",
54
+ "@wordpress/keycodes": "^3.49.0",
55
+ "@wordpress/notices": "^4.17.0",
56
+ "@wordpress/primitives": "^3.47.0",
57
+ "@wordpress/private-apis": "^0.31.0",
58
+ "@wordpress/reusable-blocks": "^4.26.0",
59
+ "@wordpress/rich-text": "^6.26.0",
60
+ "@wordpress/server-side-render": "^4.26.0",
61
+ "@wordpress/url": "^3.50.0",
62
+ "@wordpress/viewport": "^5.26.0",
63
+ "@wordpress/wordcount": "^3.49.0",
64
64
  "change-case": "^4.1.2",
65
65
  "classnames": "^2.3.1",
66
66
  "colord": "^2.7.0",
@@ -78,5 +78,5 @@
78
78
  "publishConfig": {
79
79
  "access": "public"
80
80
  },
81
- "gitHead": "fcf61b4beff747222c2c81d09d757ca1a0abd925"
81
+ "gitHead": "5e6f9caa205d3bfdbac131952b7bf9c6ec60569b"
82
82
  }
package/src/audio/edit.js CHANGED
@@ -42,22 +42,19 @@ function AudioEdit( {
42
42
  className,
43
43
  setAttributes,
44
44
  onReplace,
45
- isSelected,
45
+ isSelected: isSingleSelected,
46
46
  insertBlocksAfter,
47
47
  } ) {
48
48
  const { id, autoplay, loop, preload, src } = attributes;
49
49
  const isTemporaryAudio = ! id && isBlobURL( src );
50
- const mediaUpload = useSelect( ( select ) => {
51
- const { getSettings } = select( blockEditorStore );
52
- return getSettings().mediaUpload;
53
- }, [] );
50
+ const { getSettings } = useSelect( blockEditorStore );
54
51
 
55
52
  useEffect( () => {
56
53
  if ( ! id && isBlobURL( src ) ) {
57
54
  const file = getBlobByURL( src );
58
55
 
59
56
  if ( file ) {
60
- mediaUpload( {
57
+ getSettings().mediaUpload( {
61
58
  filesList: [ file ],
62
59
  onFileChange: ( [ media ] ) => onSelectAudio( media ),
63
60
  onError: ( e ) => onUploadError( e ),
@@ -146,17 +143,19 @@ function AudioEdit( {
146
143
 
147
144
  return (
148
145
  <>
149
- <BlockControls group="other">
150
- <MediaReplaceFlow
151
- mediaId={ id }
152
- mediaURL={ src }
153
- allowedTypes={ ALLOWED_MEDIA_TYPES }
154
- accept="audio/*"
155
- onSelect={ onSelectAudio }
156
- onSelectURL={ onSelectURL }
157
- onError={ onUploadError }
158
- />
159
- </BlockControls>
146
+ { isSingleSelected && (
147
+ <BlockControls group="other">
148
+ <MediaReplaceFlow
149
+ mediaId={ id }
150
+ mediaURL={ src }
151
+ allowedTypes={ ALLOWED_MEDIA_TYPES }
152
+ accept="audio/*"
153
+ onSelect={ onSelectAudio }
154
+ onSelectURL={ onSelectURL }
155
+ onError={ onUploadError }
156
+ />
157
+ </BlockControls>
158
+ ) }
160
159
  <InspectorControls>
161
160
  <PanelBody title={ __( 'Settings' ) }>
162
161
  <ToggleControl
@@ -200,16 +199,17 @@ function AudioEdit( {
200
199
  so the user clicking on it won't play the
201
200
  file or change the position slider when the controls are enabled.
202
201
  */ }
203
- <Disabled isDisabled={ ! isSelected }>
202
+ <Disabled isDisabled={ ! isSingleSelected }>
204
203
  <audio controls="controls" src={ src } />
205
204
  </Disabled>
206
205
  { isTemporaryAudio && <Spinner /> }
207
206
  <Caption
208
207
  attributes={ attributes }
209
208
  setAttributes={ setAttributes }
210
- isSelected={ isSelected }
209
+ isSelected={ isSingleSelected }
211
210
  insertBlocksAfter={ insertBlocksAfter }
212
211
  label={ __( 'Audio caption text' ) }
212
+ showToolbarButton={ isSingleSelected }
213
213
  />
214
214
  </figure>
215
215
  </>
@@ -532,3 +532,15 @@ exports[`Audio block renders placeholder without crashing 1`] = `
532
532
  </View>
533
533
  </View>
534
534
  `;
535
+
536
+ exports[`Audio block should enable autoplay setting 1`] = `
537
+ "<!-- wp:audio {"id":5} -->
538
+ <figure class="wp-block-audio"><audio controls src="https://cldup.com/59IrU0WJtq.mp3" autoplay></audio></figure>
539
+ <!-- /wp:audio -->"
540
+ `;
541
+
542
+ exports[`Audio block should enable loop setting 1`] = `
543
+ "<!-- wp:audio {"id":5} -->
544
+ <figure class="wp-block-audio"><audio controls src="https://cldup.com/59IrU0WJtq.mp3" loop></audio></figure>
545
+ <!-- /wp:audio -->"
546
+ `;
@@ -5,7 +5,10 @@ import {
5
5
  addBlock,
6
6
  dismissModal,
7
7
  fireEvent,
8
+ getBlock,
9
+ getEditorHtml,
8
10
  initializeEditor,
11
+ openBlockSettings,
9
12
  render,
10
13
  screen,
11
14
  setupCoreBlocks,
@@ -31,6 +34,10 @@ jest.unmock( '@wordpress/react-native-aztec' );
31
34
 
32
35
  const MEDIA_UPLOAD_STATE_FAILED = 3;
33
36
 
37
+ const AUDIO_BLOCK = `<!-- wp:audio {"id":5} -->
38
+ <figure class="wp-block-audio"><audio controls src="https://cldup.com/59IrU0WJtq.mp3"></audio></figure>
39
+ <!-- /wp:audio -->`;
40
+
34
41
  let uploadCallBack;
35
42
  subscribeMediaUpload.mockImplementation( ( callback ) => {
36
43
  uploadCallBack = callback;
@@ -100,4 +107,26 @@ describe( 'Audio block', () => {
100
107
  screen.getByText( 'Invalid URL. Audio file not found.' )
101
108
  ).toBeVisible();
102
109
  } );
110
+
111
+ it( 'should enable autoplay setting', async () => {
112
+ await initializeEditor( { initialHtml: AUDIO_BLOCK } );
113
+
114
+ const audioBlock = getBlock( screen, 'Audio' );
115
+ fireEvent.press( audioBlock );
116
+ await openBlockSettings( screen );
117
+
118
+ fireEvent.press( screen.getByText( 'Autoplay' ) );
119
+ expect( getEditorHtml() ).toMatchSnapshot();
120
+ } );
121
+
122
+ it( 'should enable loop setting', async () => {
123
+ await initializeEditor( { initialHtml: AUDIO_BLOCK } );
124
+
125
+ const audioBlock = getBlock( screen, 'Audio' );
126
+ fireEvent.press( audioBlock );
127
+ await openBlockSettings( screen );
128
+
129
+ fireEvent.press( screen.getByText( 'Loop' ) );
130
+ expect( getEditorHtml() ).toMatchSnapshot();
131
+ } );
103
132
  } );