@wordpress/block-library 8.29.0 → 8.31.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 (527) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/build/audio/edit.js +7 -17
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/audio/edit.native.js.map +1 -1
  5. package/build/avatar/edit.js.map +1 -1
  6. package/build/block/deprecated.js +71 -11
  7. package/build/block/deprecated.js.map +1 -1
  8. package/build/block/edit.js +65 -31
  9. package/build/block/edit.js.map +1 -1
  10. package/build/button/edit.js +2 -2
  11. package/build/button/edit.js.map +1 -1
  12. package/build/buttons/edit.native.js.map +1 -1
  13. package/build/buttons/transforms.js +16 -2
  14. package/build/buttons/transforms.js.map +1 -1
  15. package/build/code/save.js +3 -1
  16. package/build/code/save.js.map +1 -1
  17. package/build/code/transforms.js +17 -6
  18. package/build/code/transforms.js.map +1 -1
  19. package/build/columns/edit.js +3 -2
  20. package/build/columns/edit.js.map +1 -1
  21. package/build/comment-author-avatar/edit.js +1 -1
  22. package/build/comment-author-avatar/edit.js.map +1 -1
  23. package/build/cover/edit/block-controls.js +14 -3
  24. package/build/cover/edit/block-controls.js.map +1 -1
  25. package/build/cover/edit/index.js +2 -1
  26. package/build/cover/edit/index.js.map +1 -1
  27. package/build/cover/edit/inspector-controls.js.map +1 -1
  28. package/build/cover/edit/resizable-cover-popover.js +0 -6
  29. package/build/cover/edit/resizable-cover-popover.js.map +1 -1
  30. package/build/cover/edit.native.js.map +1 -1
  31. package/build/details/edit.js +1 -0
  32. package/build/details/edit.js.map +1 -1
  33. package/build/file/deprecated.js.map +1 -1
  34. package/build/file/edit.js +8 -13
  35. package/build/file/edit.js.map +1 -1
  36. package/build/file/edit.native.js.map +1 -1
  37. package/build/file/save.js.map +1 -1
  38. package/build/form-input/edit.js +1 -1
  39. package/build/form-input/edit.js.map +1 -1
  40. package/build/gallery/edit.js.map +1 -1
  41. package/build/gallery/gallery.native.js.map +1 -1
  42. package/build/gallery/v1/edit.js.map +1 -1
  43. package/build/gallery/v1/gallery.native.js.map +1 -1
  44. package/build/heading/index.js +4 -3
  45. package/build/heading/index.js.map +1 -1
  46. package/build/heading/transforms.js +17 -4
  47. package/build/heading/transforms.js.map +1 -1
  48. package/build/image/edit.js +8 -4
  49. package/build/image/edit.js.map +1 -1
  50. package/build/image/edit.native.js.map +1 -1
  51. package/build/image/image.js +22 -8
  52. package/build/image/image.js.map +1 -1
  53. package/build/latest-posts/edit.native.js.map +1 -1
  54. package/build/list/ordered-list-settings.js +1 -1
  55. package/build/list/ordered-list-settings.js.map +1 -1
  56. package/build/list-item/edit.js +1 -3
  57. package/build/list-item/edit.js.map +1 -1
  58. package/build/list-item/edit.native.js.map +1 -1
  59. package/build/list-item/hooks/index.js +0 -7
  60. package/build/list-item/hooks/index.js.map +1 -1
  61. package/build/list-item/hooks/use-indent-list-item.js +1 -0
  62. package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
  63. package/build/list-item/hooks/use-outdent-list-item.js +1 -0
  64. package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
  65. package/build/list-item/hooks/use-space.js +16 -7
  66. package/build/list-item/hooks/use-space.js.map +1 -1
  67. package/build/list-item/index.js +4 -1
  68. package/build/list-item/index.js.map +1 -1
  69. package/build/media-text/edit.js +33 -9
  70. package/build/media-text/edit.js.map +1 -1
  71. package/build/media-text/index.js +5 -0
  72. package/build/media-text/index.js.map +1 -1
  73. package/build/media-text/media-container.js +30 -11
  74. package/build/media-text/media-container.js.map +1 -1
  75. package/build/media-text/media-container.native.js +1 -1
  76. package/build/media-text/media-container.native.js.map +1 -1
  77. package/build/media-text/save.js +2 -2
  78. package/build/media-text/save.js.map +1 -1
  79. package/build/navigation/edit/index.js +23 -29
  80. package/build/navigation/edit/index.js.map +1 -1
  81. package/build/navigation/edit/navigation-menu-delete-control.js +12 -20
  82. package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  83. package/build/navigation/edit/navigation-menu-selector.js +24 -23
  84. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  85. package/build/navigation/edit/placeholder/index.js +4 -4
  86. package/build/navigation/edit/placeholder/index.js.map +1 -1
  87. package/build/navigation/use-navigation-menu.js +15 -12
  88. package/build/navigation/use-navigation-menu.js.map +1 -1
  89. package/build/navigation-link/edit.js +12 -10
  90. package/build/navigation-link/edit.js.map +1 -1
  91. package/build/navigation-link/link-ui.js.map +1 -1
  92. package/build/navigation-submenu/edit.js +4 -0
  93. package/build/navigation-submenu/edit.js.map +1 -1
  94. package/build/paragraph/edit.native.js.map +1 -1
  95. package/build/pattern/edit.js +11 -0
  96. package/build/pattern/edit.js.map +1 -1
  97. package/build/post-author/edit.js +1 -0
  98. package/build/post-author/edit.js.map +1 -1
  99. package/build/post-excerpt/edit.js +1 -0
  100. package/build/post-excerpt/edit.js.map +1 -1
  101. package/build/post-featured-image/dimension-controls.js.map +1 -1
  102. package/build/post-featured-image/edit.js +12 -12
  103. package/build/post-featured-image/edit.js.map +1 -1
  104. package/build/post-featured-image/index.js +6 -0
  105. package/build/post-featured-image/index.js.map +1 -1
  106. package/build/post-navigation-link/edit.js +1 -0
  107. package/build/post-navigation-link/edit.js.map +1 -1
  108. package/build/post-terms/edit.js +2 -0
  109. package/build/post-terms/edit.js.map +1 -1
  110. package/build/post-title/edit.js +2 -2
  111. package/build/post-title/edit.js.map +1 -1
  112. package/build/query/edit/pattern-selection-modal.js.map +1 -1
  113. package/build/query/utils.js +7 -5
  114. package/build/query/utils.js.map +1 -1
  115. package/build/query-pagination-next/edit.js.map +1 -1
  116. package/build/query-pagination-previous/edit.js.map +1 -1
  117. package/build/quote/deprecated.js +111 -12
  118. package/build/quote/deprecated.js.map +1 -1
  119. package/build/quote/edit.js +7 -7
  120. package/build/quote/edit.js.map +1 -1
  121. package/build/quote/index.js +1 -1
  122. package/build/quote/index.js.map +1 -1
  123. package/build/quote/save.js +2 -2
  124. package/build/quote/save.js.map +1 -1
  125. package/build/read-more/edit.js +1 -0
  126. package/build/read-more/edit.js.map +1 -1
  127. package/build/search/edit.js +3 -1
  128. package/build/search/edit.js.map +1 -1
  129. package/build/search/edit.native.js +2 -2
  130. package/build/search/edit.native.js.map +1 -1
  131. package/build/site-logo/edit.js +7 -2
  132. package/build/site-logo/edit.js.map +1 -1
  133. package/build/site-title/{edit/index.js → edit.js} +1 -1
  134. package/build/site-title/edit.js.map +1 -0
  135. package/build/social-link/edit.js +1 -1
  136. package/build/social-link/edit.js.map +1 -1
  137. package/build/social-link/icons/medium.js +1 -1
  138. package/build/social-link/icons/medium.js.map +1 -1
  139. package/build/social-link/icons/reddit.js +1 -1
  140. package/build/social-link/icons/reddit.js.map +1 -1
  141. package/build/social-links/edit.native.js.map +1 -1
  142. package/build/spacer/edit.js.map +1 -1
  143. package/build/table/deprecated.js +285 -175
  144. package/build/table/deprecated.js.map +1 -1
  145. package/build/table/index.js +1 -1
  146. package/build/table-of-contents/edit.js.map +1 -1
  147. package/build/template-part/edit/index.js +53 -1
  148. package/build/template-part/edit/index.js.map +1 -1
  149. package/build/template-part/edit/selection-modal.js +2 -8
  150. package/build/template-part/edit/selection-modal.js.map +1 -1
  151. package/build/template-part/edit/utils/map-template-part-to-block-pattern.js +30 -0
  152. package/build/template-part/edit/utils/map-template-part-to-block-pattern.js.map +1 -0
  153. package/build/utils/caption.js +15 -5
  154. package/build/utils/caption.js.map +1 -1
  155. package/build/utils/get-transformed-metadata.js +57 -0
  156. package/build/utils/get-transformed-metadata.js.map +1 -0
  157. package/build/utils/hooks.js +55 -4
  158. package/build/utils/hooks.js.map +1 -1
  159. package/build/video/edit-common-settings.js.map +1 -1
  160. package/build/video/edit.js +7 -16
  161. package/build/video/edit.js.map +1 -1
  162. package/build/video/edit.native.js +3 -8
  163. package/build/video/edit.native.js.map +1 -1
  164. package/build-module/audio/edit.js +10 -20
  165. package/build-module/audio/edit.js.map +1 -1
  166. package/build-module/audio/edit.native.js.map +1 -1
  167. package/build-module/avatar/edit.js.map +1 -1
  168. package/build-module/block/deprecated.js +71 -11
  169. package/build-module/block/deprecated.js.map +1 -1
  170. package/build-module/block/edit.js +66 -32
  171. package/build-module/block/edit.js.map +1 -1
  172. package/build-module/button/edit.js +3 -3
  173. package/build-module/button/edit.js.map +1 -1
  174. package/build-module/buttons/edit.native.js.map +1 -1
  175. package/build-module/buttons/transforms.js +16 -2
  176. package/build-module/buttons/transforms.js.map +1 -1
  177. package/build-module/code/save.js +3 -1
  178. package/build-module/code/save.js.map +1 -1
  179. package/build-module/code/transforms.js +17 -6
  180. package/build-module/code/transforms.js.map +1 -1
  181. package/build-module/columns/edit.js +3 -2
  182. package/build-module/columns/edit.js.map +1 -1
  183. package/build-module/comment-author-avatar/edit.js +1 -1
  184. package/build-module/comment-author-avatar/edit.js.map +1 -1
  185. package/build-module/cover/edit/block-controls.js +15 -4
  186. package/build-module/cover/edit/block-controls.js.map +1 -1
  187. package/build-module/cover/edit/index.js +2 -1
  188. package/build-module/cover/edit/index.js.map +1 -1
  189. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  190. package/build-module/cover/edit/resizable-cover-popover.js +1 -7
  191. package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
  192. package/build-module/cover/edit.native.js.map +1 -1
  193. package/build-module/details/edit.js +1 -0
  194. package/build-module/details/edit.js.map +1 -1
  195. package/build-module/file/deprecated.js.map +1 -1
  196. package/build-module/file/edit.js +9 -14
  197. package/build-module/file/edit.js.map +1 -1
  198. package/build-module/file/edit.native.js.map +1 -1
  199. package/build-module/file/save.js.map +1 -1
  200. package/build-module/form-input/edit.js +1 -1
  201. package/build-module/form-input/edit.js.map +1 -1
  202. package/build-module/gallery/edit.js.map +1 -1
  203. package/build-module/gallery/gallery.native.js.map +1 -1
  204. package/build-module/gallery/v1/edit.js.map +1 -1
  205. package/build-module/gallery/v1/gallery.native.js.map +1 -1
  206. package/build-module/heading/index.js +4 -3
  207. package/build-module/heading/index.js.map +1 -1
  208. package/build-module/heading/transforms.js +17 -4
  209. package/build-module/heading/transforms.js.map +1 -1
  210. package/build-module/image/edit.js +9 -5
  211. package/build-module/image/edit.js.map +1 -1
  212. package/build-module/image/edit.native.js.map +1 -1
  213. package/build-module/image/image.js +23 -9
  214. package/build-module/image/image.js.map +1 -1
  215. package/build-module/latest-posts/edit.native.js.map +1 -1
  216. package/build-module/list/ordered-list-settings.js +1 -1
  217. package/build-module/list/ordered-list-settings.js.map +1 -1
  218. package/build-module/list-item/edit.js +2 -4
  219. package/build-module/list-item/edit.js.map +1 -1
  220. package/build-module/list-item/edit.native.js.map +1 -1
  221. package/build-module/list-item/hooks/index.js +0 -1
  222. package/build-module/list-item/hooks/index.js.map +1 -1
  223. package/build-module/list-item/hooks/use-indent-list-item.js +1 -0
  224. package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
  225. package/build-module/list-item/hooks/use-outdent-list-item.js +1 -0
  226. package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
  227. package/build-module/list-item/hooks/use-space.js +17 -8
  228. package/build-module/list-item/hooks/use-space.js.map +1 -1
  229. package/build-module/list-item/index.js +4 -1
  230. package/build-module/list-item/index.js.map +1 -1
  231. package/build-module/media-text/edit.js +34 -10
  232. package/build-module/media-text/edit.js.map +1 -1
  233. package/build-module/media-text/index.js +5 -0
  234. package/build-module/media-text/index.js.map +1 -1
  235. package/build-module/media-text/media-container.js +31 -12
  236. package/build-module/media-text/media-container.js.map +1 -1
  237. package/build-module/media-text/media-container.native.js +1 -1
  238. package/build-module/media-text/media-container.native.js.map +1 -1
  239. package/build-module/media-text/save.js +2 -2
  240. package/build-module/media-text/save.js.map +1 -1
  241. package/build-module/navigation/edit/index.js +24 -30
  242. package/build-module/navigation/edit/index.js.map +1 -1
  243. package/build-module/navigation/edit/navigation-menu-delete-control.js +15 -23
  244. package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
  245. package/build-module/navigation/edit/navigation-menu-selector.js +24 -23
  246. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  247. package/build-module/navigation/edit/placeholder/index.js +4 -4
  248. package/build-module/navigation/edit/placeholder/index.js.map +1 -1
  249. package/build-module/navigation/use-navigation-menu.js +15 -12
  250. package/build-module/navigation/use-navigation-menu.js.map +1 -1
  251. package/build-module/navigation-link/edit.js +13 -11
  252. package/build-module/navigation-link/edit.js.map +1 -1
  253. package/build-module/navigation-link/link-ui.js.map +1 -1
  254. package/build-module/navigation-submenu/edit.js +4 -0
  255. package/build-module/navigation-submenu/edit.js.map +1 -1
  256. package/build-module/paragraph/edit.native.js.map +1 -1
  257. package/build-module/pattern/edit.js +11 -0
  258. package/build-module/pattern/edit.js.map +1 -1
  259. package/build-module/post-author/edit.js +1 -0
  260. package/build-module/post-author/edit.js.map +1 -1
  261. package/build-module/post-excerpt/edit.js +1 -0
  262. package/build-module/post-excerpt/edit.js.map +1 -1
  263. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  264. package/build-module/post-featured-image/edit.js +13 -13
  265. package/build-module/post-featured-image/edit.js.map +1 -1
  266. package/build-module/post-featured-image/index.js +6 -0
  267. package/build-module/post-featured-image/index.js.map +1 -1
  268. package/build-module/post-navigation-link/edit.js +1 -0
  269. package/build-module/post-navigation-link/edit.js.map +1 -1
  270. package/build-module/post-terms/edit.js +2 -0
  271. package/build-module/post-terms/edit.js.map +1 -1
  272. package/build-module/post-title/edit.js +2 -2
  273. package/build-module/post-title/edit.js.map +1 -1
  274. package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
  275. package/build-module/query/utils.js +7 -5
  276. package/build-module/query/utils.js.map +1 -1
  277. package/build-module/query-pagination-next/edit.js.map +1 -1
  278. package/build-module/query-pagination-previous/edit.js.map +1 -1
  279. package/build-module/quote/deprecated.js +112 -13
  280. package/build-module/quote/deprecated.js.map +1 -1
  281. package/build-module/quote/edit.js +7 -7
  282. package/build-module/quote/edit.js.map +1 -1
  283. package/build-module/quote/index.js +1 -1
  284. package/build-module/quote/index.js.map +1 -1
  285. package/build-module/quote/save.js +2 -2
  286. package/build-module/quote/save.js.map +1 -1
  287. package/build-module/read-more/edit.js +1 -0
  288. package/build-module/read-more/edit.js.map +1 -1
  289. package/build-module/search/edit.js +3 -1
  290. package/build-module/search/edit.js.map +1 -1
  291. package/build-module/search/edit.native.js +2 -2
  292. package/build-module/search/edit.native.js.map +1 -1
  293. package/build-module/site-logo/edit.js +7 -2
  294. package/build-module/site-logo/edit.js.map +1 -1
  295. package/build-module/site-title/{edit/index.js → edit.js} +1 -1
  296. package/build-module/site-title/edit.js.map +1 -0
  297. package/build-module/social-link/edit.js +1 -1
  298. package/build-module/social-link/edit.js.map +1 -1
  299. package/build-module/social-link/icons/medium.js +1 -1
  300. package/build-module/social-link/icons/medium.js.map +1 -1
  301. package/build-module/social-link/icons/reddit.js +1 -1
  302. package/build-module/social-link/icons/reddit.js.map +1 -1
  303. package/build-module/social-links/edit.native.js.map +1 -1
  304. package/build-module/spacer/edit.js.map +1 -1
  305. package/build-module/table/deprecated.js +286 -176
  306. package/build-module/table/deprecated.js.map +1 -1
  307. package/build-module/table/index.js +1 -1
  308. package/build-module/table-of-contents/edit.js.map +1 -1
  309. package/build-module/template-part/edit/index.js +57 -5
  310. package/build-module/template-part/edit/index.js.map +1 -1
  311. package/build-module/template-part/edit/selection-modal.js +2 -8
  312. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  313. package/build-module/template-part/edit/utils/map-template-part-to-block-pattern.js +24 -0
  314. package/build-module/template-part/edit/utils/map-template-part-to-block-pattern.js.map +1 -0
  315. package/build-module/utils/caption.js +13 -3
  316. package/build-module/utils/caption.js.map +1 -1
  317. package/build-module/utils/get-transformed-metadata.js +51 -0
  318. package/build-module/utils/get-transformed-metadata.js.map +1 -0
  319. package/build-module/utils/hooks.js +54 -3
  320. package/build-module/utils/hooks.js.map +1 -1
  321. package/build-module/video/edit-common-settings.js.map +1 -1
  322. package/build-module/video/edit.js +10 -19
  323. package/build-module/video/edit.js.map +1 -1
  324. package/build-module/video/edit.native.js +3 -8
  325. package/build-module/video/edit.native.js.map +1 -1
  326. package/build-style/common-rtl.css +1 -0
  327. package/build-style/common.css +1 -0
  328. package/build-style/cover/style-rtl.css +2 -1
  329. package/build-style/cover/style.css +2 -1
  330. package/build-style/editor-rtl.css +11 -2
  331. package/build-style/editor.css +11 -2
  332. package/build-style/file/editor-rtl.css +3 -0
  333. package/build-style/file/editor.css +3 -0
  334. package/build-style/group/editor-rtl.css +1 -1
  335. package/build-style/group/editor.css +1 -1
  336. package/build-style/media-text/editor-rtl.css +7 -1
  337. package/build-style/media-text/editor.css +7 -1
  338. package/build-style/search/style-rtl.css +2 -0
  339. package/build-style/search/style.css +2 -0
  340. package/build-style/social-links/style-rtl.css +2 -2
  341. package/build-style/social-links/style.css +2 -2
  342. package/build-style/style-rtl.css +6 -3
  343. package/build-style/style.css +6 -3
  344. package/package.json +34 -34
  345. package/src/archives/index.php +4 -0
  346. package/src/audio/edit.js +9 -19
  347. package/src/audio/edit.native.js +3 -3
  348. package/src/avatar/edit.js +1 -1
  349. package/src/avatar/index.php +6 -0
  350. package/src/block/deprecated.js +76 -11
  351. package/src/block/edit.js +100 -32
  352. package/src/block/index.php +27 -12
  353. package/src/block/test/edit.native.js +67 -0
  354. package/src/button/edit.js +4 -3
  355. package/src/buttons/edit.native.js +1 -1
  356. package/src/buttons/transforms.js +14 -4
  357. package/src/calendar/index.php +17 -0
  358. package/src/categories/index.php +6 -0
  359. package/src/code/save.js +7 -1
  360. package/src/code/transforms.js +20 -5
  361. package/src/columns/edit.js +3 -2
  362. package/src/comment-author-avatar/edit.js +1 -1
  363. package/src/comment-author-name/index.php +4 -0
  364. package/src/comment-content/index.php +4 -0
  365. package/src/comment-date/index.php +4 -0
  366. package/src/comment-edit-link/index.php +4 -0
  367. package/src/comment-reply-link/index.php +4 -0
  368. package/src/comment-template/index.php +4 -0
  369. package/src/comments/index.php +12 -0
  370. package/src/comments-pagination/index.php +4 -0
  371. package/src/comments-pagination-next/index.php +4 -0
  372. package/src/comments-pagination-numbers/index.php +4 -0
  373. package/src/comments-pagination-previous/index.php +4 -0
  374. package/src/comments-title/index.php +4 -0
  375. package/src/cover/edit/block-controls.js +16 -2
  376. package/src/cover/edit/index.js +6 -3
  377. package/src/cover/edit/inspector-controls.js +1 -1
  378. package/src/cover/edit/resizable-cover-popover.js +1 -6
  379. package/src/cover/edit.native.js +1 -1
  380. package/src/cover/index.php +4 -0
  381. package/src/cover/style.scss +3 -2
  382. package/src/details/edit.js +1 -0
  383. package/src/file/deprecated.js +3 -3
  384. package/src/file/edit.js +10 -15
  385. package/src/file/edit.native.js +4 -4
  386. package/src/file/editor.scss +3 -0
  387. package/src/file/index.php +4 -0
  388. package/src/file/save.js +1 -1
  389. package/src/footnotes/index.php +1 -1
  390. package/src/form-input/edit.js +1 -1
  391. package/src/gallery/edit.js +3 -3
  392. package/src/gallery/gallery.native.js +1 -1
  393. package/src/gallery/index.php +6 -0
  394. package/src/gallery/test/index.native.js +1 -1
  395. package/src/gallery/v1/edit.js +2 -2
  396. package/src/gallery/v1/gallery.native.js +1 -1
  397. package/src/group/editor.scss +1 -1
  398. package/src/heading/index.js +4 -3
  399. package/src/heading/index.php +4 -0
  400. package/src/heading/transforms.js +27 -8
  401. package/src/home-link/index.php +10 -0
  402. package/src/image/edit.js +13 -5
  403. package/src/image/edit.native.js +1 -1
  404. package/src/image/editor.scss +1 -0
  405. package/src/image/image.js +34 -22
  406. package/src/image/index.php +12 -1
  407. package/src/latest-comments/index.php +4 -0
  408. package/src/latest-posts/edit.native.js +1 -1
  409. package/src/latest-posts/index.php +8 -0
  410. package/src/list/ordered-list-settings.js +1 -1
  411. package/src/list-item/edit.js +1 -2
  412. package/src/list-item/edit.native.js +1 -1
  413. package/src/list-item/hooks/index.js +0 -1
  414. package/src/list-item/hooks/use-indent-list-item.js +2 -0
  415. package/src/list-item/hooks/use-outdent-list-item.js +2 -0
  416. package/src/list-item/hooks/use-space.js +16 -9
  417. package/src/list-item/index.js +3 -0
  418. package/src/loginout/index.php +4 -0
  419. package/src/media-text/block.json +5 -0
  420. package/src/media-text/edit.js +70 -19
  421. package/src/media-text/editor.scss +7 -1
  422. package/src/media-text/index.php +70 -0
  423. package/src/media-text/media-container.js +49 -9
  424. package/src/media-text/media-container.native.js +5 -3
  425. package/src/media-text/save.js +2 -2
  426. package/src/media-text/test/edit.native.js +58 -0
  427. package/src/missing/test/edit-integration.native.js +2 -1
  428. package/src/navigation/edit/index.js +68 -72
  429. package/src/navigation/edit/navigation-menu-delete-control.js +22 -49
  430. package/src/navigation/edit/navigation-menu-selector.js +39 -21
  431. package/src/navigation/edit/placeholder/index.js +4 -4
  432. package/src/navigation/edit/test/navigation-menu-selector.js +77 -55
  433. package/src/navigation/index.php +118 -34
  434. package/src/navigation/test/use-navigation-menu.js +21 -21
  435. package/src/navigation/use-navigation-menu.js +23 -9
  436. package/src/navigation-link/edit.js +12 -13
  437. package/src/navigation-link/index.php +14 -0
  438. package/src/navigation-link/link-ui.js +2 -2
  439. package/src/navigation-submenu/edit.js +4 -0
  440. package/src/navigation-submenu/index.php +8 -0
  441. package/src/page-list/index.php +12 -0
  442. package/src/page-list-item/index.php +2 -0
  443. package/src/paragraph/edit.native.js +1 -1
  444. package/src/paragraph/test/edit.native.js +36 -0
  445. package/src/pattern/edit.js +14 -0
  446. package/src/pattern/index.php +2 -0
  447. package/src/post-author/edit.js +1 -0
  448. package/src/post-author/index.php +4 -0
  449. package/src/post-author-biography/index.php +4 -0
  450. package/src/post-author-name/index.php +4 -0
  451. package/src/post-comments-form/index.php +6 -0
  452. package/src/post-content/index.php +4 -0
  453. package/src/post-date/index.php +4 -0
  454. package/src/post-excerpt/edit.js +2 -1
  455. package/src/post-excerpt/index.php +4 -0
  456. package/src/post-featured-image/block.json +6 -0
  457. package/src/post-featured-image/dimension-controls.js +4 -4
  458. package/src/post-featured-image/edit.js +14 -12
  459. package/src/post-featured-image/index.php +15 -0
  460. package/src/post-navigation-link/edit.js +2 -1
  461. package/src/post-navigation-link/index.php +4 -0
  462. package/src/post-template/index.php +6 -0
  463. package/src/post-terms/edit.js +2 -0
  464. package/src/post-terms/index.php +6 -0
  465. package/src/post-title/edit.js +49 -43
  466. package/src/post-title/index.php +2 -0
  467. package/src/query/edit/pattern-selection-modal.js +1 -1
  468. package/src/query/index.php +2 -0
  469. package/src/query/utils.js +6 -4
  470. package/src/query-no-results/index.php +4 -0
  471. package/src/query-pagination/index.php +4 -0
  472. package/src/query-pagination-next/edit.js +1 -1
  473. package/src/query-pagination-next/index.php +4 -0
  474. package/src/query-pagination-numbers/index.php +4 -0
  475. package/src/query-pagination-previous/edit.js +1 -1
  476. package/src/query-pagination-previous/index.php +4 -0
  477. package/src/query-title/index.php +4 -0
  478. package/src/quote/block.json +1 -1
  479. package/src/quote/deprecated.js +110 -15
  480. package/src/quote/edit.js +16 -10
  481. package/src/quote/save.js +2 -2
  482. package/src/quote/test/__snapshots__/transforms.native.js.snap +2 -2
  483. package/src/read-more/edit.js +2 -1
  484. package/src/read-more/index.php +4 -0
  485. package/src/rss/index.php +4 -0
  486. package/src/search/edit.js +3 -1
  487. package/src/search/edit.native.js +6 -6
  488. package/src/search/index.php +20 -2
  489. package/src/search/style.scss +2 -0
  490. package/src/shortcode/index.php +4 -0
  491. package/src/site-logo/edit.js +11 -6
  492. package/src/site-logo/index.php +20 -0
  493. package/src/site-tagline/index.php +4 -0
  494. package/src/site-title/index.php +4 -0
  495. package/src/social-link/edit.js +2 -2
  496. package/src/social-link/icons/medium.js +1 -1
  497. package/src/social-link/icons/reddit.js +1 -1
  498. package/src/social-link/index.php +22 -9
  499. package/src/social-link/socials-with-bg.scss +1 -1
  500. package/src/social-link/socials-without-bg.scss +1 -1
  501. package/src/social-links/edit.native.js +1 -1
  502. package/src/spacer/edit.js +1 -1
  503. package/src/table/block.json +1 -1
  504. package/src/table/deprecated.js +308 -175
  505. package/src/table-of-contents/edit.js +1 -1
  506. package/src/tag-cloud/index.php +4 -0
  507. package/src/template-part/edit/index.js +91 -4
  508. package/src/template-part/edit/selection-modal.js +4 -8
  509. package/src/template-part/edit/utils/map-template-part-to-block-pattern.js +23 -0
  510. package/src/template-part/index.php +10 -0
  511. package/src/term-description/index.php +4 -0
  512. package/src/utils/caption.js +10 -1
  513. package/src/utils/get-transformed-metadata.js +65 -0
  514. package/src/utils/hooks.js +53 -3
  515. package/src/video/edit-common-settings.js +1 -1
  516. package/src/video/edit.js +10 -18
  517. package/src/video/edit.native.js +7 -8
  518. package/src/video/test/edit.native.js +0 -14
  519. package/tsconfig.json +1 -0
  520. package/build/list-item/hooks/use-copy.js +0 -39
  521. package/build/list-item/hooks/use-copy.js.map +0 -1
  522. package/build/site-title/edit/index.js.map +0 -1
  523. package/build-module/list-item/hooks/use-copy.js +0 -32
  524. package/build-module/list-item/hooks/use-copy.js.map +0 -1
  525. package/build-module/site-title/edit/index.js.map +0 -1
  526. package/src/list-item/hooks/use-copy.js +0 -38
  527. /package/src/site-title/{edit/index.js → edit.js} +0 -0
@@ -42,7 +42,7 @@ const metadata = exports.metadata = {
42
42
  selector: "cite",
43
43
  __experimentalRole: "content"
44
44
  },
45
- align: {
45
+ textAlign: {
46
46
  type: "string"
47
47
  }
48
48
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","__experimentalRole","citation","align","supports","anchor","html","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalDefaultControls","color","gradients","heading","link","background","text","layout","allowEditing","spacing","blockGap","interactivity","clientNavigation","styles","label","isDefault","editorStyle","style","settings","icon","example","innerBlocks","content","__","transforms","edit","save","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AAEA,IAAAM,KAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,WAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAdA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAQ,QAAA,GAAAC,OAAA,CAAAD,QAAA;EAAAE,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,kBAAA;IAAA;IAAAE,KAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAC,6BAAA;QAAAR,QAAA;MAAA;IAAA;IAAAS,KAAA;MAAAC,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAAJ,6BAAA;QAAAK,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAA1C,IAAA;IAAA2C,KAAA;IAAAC,SAAA;EAAA;IAAA5C,IAAA;IAAA2C,KAAA;EAAA;EAAAE,WAAA;EAAAC,KAAA;AAAA;AAUA,MAAM;EAAE9C;AAAK,CAAC,GAAGJ,QAAQ;AAACC,OAAA,CAAAG,IAAA,GAAAA,IAAA;AAInB,MAAM+C,QAAQ,GAAAlD,OAAA,CAAAkD,QAAA,GAAG;EACvBC,IAAI,EAAJA,YAAI;EACJC,OAAO,EAAE;IACR3C,UAAU,EAAE;MACXO,QAAQ,EAAE;IACX,CAAC;IACDqC,WAAW,EAAE,CACZ;MACClD,IAAI,EAAE,gBAAgB;MACtBM,UAAU,EAAE;QACX6C,OAAO,EAAE,IAAAC,QAAE,EAAE,uCAAwC;MACtD;IACD,CAAC;EAEH,CAAC;EACDC,UAAU,EAAVA,mBAAU;EACVC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAEM,MAAMC,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE1D,IAAI;EAAEJ,QAAQ;EAAEmD;AAAS,CAAE,CAAC;AAAClD,OAAA,CAAA4D,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","__experimentalRole","citation","textAlign","supports","anchor","html","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalDefaultControls","color","gradients","heading","link","background","text","layout","allowEditing","spacing","blockGap","interactivity","clientNavigation","styles","label","isDefault","editorStyle","style","settings","icon","example","innerBlocks","content","__","transforms","edit","save","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AAEA,IAAAM,KAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,WAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAdA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAQ,QAAA,GAAAC,OAAA,CAAAD,QAAA;EAAAE,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,kBAAA;IAAA;IAAAE,SAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAC,6BAAA;QAAAR,QAAA;MAAA;IAAA;IAAAS,KAAA;MAAAC,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAAJ,6BAAA;QAAAK,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAA1C,IAAA;IAAA2C,KAAA;IAAAC,SAAA;EAAA;IAAA5C,IAAA;IAAA2C,KAAA;EAAA;EAAAE,WAAA;EAAAC,KAAA;AAAA;AAUA,MAAM;EAAE9C;AAAK,CAAC,GAAGJ,QAAQ;AAACC,OAAA,CAAAG,IAAA,GAAAA,IAAA;AAInB,MAAM+C,QAAQ,GAAAlD,OAAA,CAAAkD,QAAA,GAAG;EACvBC,IAAI,EAAJA,YAAI;EACJC,OAAO,EAAE;IACR3C,UAAU,EAAE;MACXO,QAAQ,EAAE;IACX,CAAC;IACDqC,WAAW,EAAE,CACZ;MACClD,IAAI,EAAE,gBAAgB;MACtBM,UAAU,EAAE;QACX6C,OAAO,EAAE,IAAAC,QAAE,EAAE,uCAAwC;MACtD;IACD,CAAC;EAEH,CAAC;EACDC,UAAU,EAAVA,mBAAU;EACVC,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA;AACD,CAAC;AAEM,MAAMC,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE1D,IAAI;EAAEJ,QAAQ;EAAEmD;AAAS,CAAE,CAAC;AAAClD,OAAA,CAAA4D,IAAA,GAAAA,IAAA"}
@@ -20,11 +20,11 @@ function save({
20
20
  attributes
21
21
  }) {
22
22
  const {
23
- align,
23
+ textAlign,
24
24
  citation
25
25
  } = attributes;
26
26
  const className = (0, _classnames.default)({
27
- [`has-text-align-${align}`]: align
27
+ [`has-text-align-${textAlign}`]: textAlign
28
28
  });
29
29
  return (0, _react.createElement)("blockquote", {
30
30
  ..._blockEditor.useBlockProps.save({
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","save","attributes","align","citation","className","classNames","_react","createElement","useBlockProps","InnerBlocks","Content","RichText","isEmpty","tagName","value"],"sources":["@wordpress/block-library/src/quote/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks, RichText, useBlockProps } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { align, citation } = attributes;\n\n\tconst className = classNames( {\n\t\t[ `has-text-align-${ align }` ]: align,\n\t} );\n\n\treturn (\n\t\t<blockquote { ...useBlockProps.save( { className } ) }>\n\t\t\t<InnerBlocks.Content />\n\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t) }\n\t\t</blockquote>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAGe,SAASE,IAAIA,CAAE;EAAEC;AAAW,CAAC,EAAG;EAC9C,MAAM;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGF,UAAU;EAEtC,MAAMG,SAAS,GAAG,IAAAC,mBAAU,EAAE;IAC7B,CAAG,kBAAkBH,KAAO,EAAC,GAAIA;EAClC,CAAE,CAAC;EAEH,OACC,IAAAI,MAAA,CAAAC,aAAA;IAAA,GAAiBC,0BAAa,CAACR,IAAI,CAAE;MAAEI;IAAU,CAAE;EAAC,GACnD,IAAAE,MAAA,CAAAC,aAAA,EAACR,YAAA,CAAAU,WAAW,CAACC,OAAO,MAAE,CAAC,EACrB,CAAEC,qBAAQ,CAACC,OAAO,CAAET,QAAS,CAAC,IAC/B,IAAAG,MAAA,CAAAC,aAAA,EAACR,YAAA,CAAAY,QAAQ,CAACD,OAAO;IAACG,OAAO,EAAC,MAAM;IAACC,KAAK,EAAGX;EAAU,CAAE,CAE3C,CAAC;AAEf"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","save","attributes","textAlign","citation","className","classNames","_react","createElement","useBlockProps","InnerBlocks","Content","RichText","isEmpty","tagName","value"],"sources":["@wordpress/block-library/src/quote/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks, RichText, useBlockProps } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst { textAlign, citation } = attributes;\n\n\tconst className = classNames( {\n\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t} );\n\n\treturn (\n\t\t<blockquote { ...useBlockProps.save( { className } ) }>\n\t\t\t<InnerBlocks.Content />\n\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t) }\n\t\t</blockquote>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAGe,SAASE,IAAIA,CAAE;EAAEC;AAAW,CAAC,EAAG;EAC9C,MAAM;IAAEC,SAAS;IAAEC;EAAS,CAAC,GAAGF,UAAU;EAE1C,MAAMG,SAAS,GAAG,IAAAC,mBAAU,EAAE;IAC7B,CAAG,kBAAkBH,SAAW,EAAC,GAAIA;EACtC,CAAE,CAAC;EAEH,OACC,IAAAI,MAAA,CAAAC,aAAA;IAAA,GAAiBC,0BAAa,CAACR,IAAI,CAAE;MAAEI;IAAU,CAAE;EAAC,GACnD,IAAAE,MAAA,CAAAC,aAAA,EAACR,YAAA,CAAAU,WAAW,CAACC,OAAO,MAAE,CAAC,EACrB,CAAEC,qBAAQ,CAACC,OAAO,CAAET,QAAS,CAAC,IAC/B,IAAAG,MAAA,CAAAC,aAAA,EAACR,YAAA,CAAAY,QAAQ,CAACD,OAAO;IAACG,OAAO,EAAC,MAAM;IAACC,KAAK,EAAGX;EAAU,CAAE,CAE3C,CAAC;AAEf"}
@@ -32,6 +32,7 @@ function ReadMore({
32
32
  }),
33
33
  checked: linkTarget === '_blank'
34
34
  }))), (0, _react.createElement)(_blockEditor.RichText, {
35
+ identifier: "content",
35
36
  tagName: "a",
36
37
  "aria-label": (0, _i18n.__)('“Read more” link text'),
37
38
  placeholder: (0, _i18n.__)('Read more'),
@@ -1 +1 @@
1
- {"version":3,"names":["_blockEditor","require","_components","_blocks","_i18n","ReadMore","attributes","content","linkTarget","setAttributes","insertBlocksAfter","blockProps","useBlockProps","_react","createElement","Fragment","InspectorControls","PanelBody","title","__","ToggleControl","__nextHasNoMarginBottom","label","onChange","value","checked","RichText","tagName","placeholder","newValue","__unstableOnSplitAtEnd","createBlock","getDefaultBlockName","withoutInteractiveFormatting"],"sources":["@wordpress/block-library/src/read-more/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\nexport default function ReadMore( {\n\tattributes: { content, linkTarget },\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<RichText\n\t\t\t\ttagName=\"a\"\n\t\t\t\taria-label={ __( '“Read more” link text' ) }\n\t\t\t\tplaceholder={ __( 'Read more' ) }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\tsetAttributes( { content: newValue } )\n\t\t\t\t}\n\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t\twithoutInteractiveFormatting={ true }\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAVA;AACA;AACA;;AAUe,SAASI,QAAQA,CAAE;EACjCC,UAAU,EAAE;IAAEC,OAAO;IAAEC;EAAW,CAAC;EACnCC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAC,CAAC;EAClC,OACC,IAAAC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAACd,YAAA,CAAAgB,iBAAiB,QACjB,IAAAH,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAe,SAAS;IAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,UAAW;EAAG,GACpC,IAAAN,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAkB,aAAa;IACbC,uBAAuB;IACvBC,KAAK,EAAG,IAAAH,QAAE,EAAE,iBAAkB,CAAG;IACjCI,QAAQ,EAAKC,KAAK,IACjBf,aAAa,CAAE;MACdD,UAAU,EAAEgB,KAAK,GAAG,QAAQ,GAAG;IAChC,CAAE,CACF;IACDC,OAAO,EAAGjB,UAAU,KAAK;EAAU,CACnC,CACS,CACO,CAAC,EACpB,IAAAK,MAAA,CAAAC,aAAA,EAACd,YAAA,CAAA0B,QAAQ;IACRC,OAAO,EAAC,GAAG;IACX,cAAa,IAAAR,QAAE,EAAE,uBAAwB,CAAG;IAC5CS,WAAW,EAAG,IAAAT,QAAE,EAAE,WAAY,CAAG;IACjCK,KAAK,EAAGjB,OAAS;IACjBgB,QAAQ,EAAKM,QAAQ,IACpBpB,aAAa,CAAE;MAAEF,OAAO,EAAEsB;IAAS,CAAE,CACrC;IACDC,sBAAsB,EAAGA,CAAA,KACxBpB,iBAAiB,CAAE,IAAAqB,mBAAW,EAAE,IAAAC,2BAAmB,EAAC,CAAE,CAAE,CACxD;IACDC,4BAA4B,EAAG,IAAM;IAAA,GAChCtB;EAAU,CACf,CACA,CAAC;AAEL"}
1
+ {"version":3,"names":["_blockEditor","require","_components","_blocks","_i18n","ReadMore","attributes","content","linkTarget","setAttributes","insertBlocksAfter","blockProps","useBlockProps","_react","createElement","Fragment","InspectorControls","PanelBody","title","__","ToggleControl","__nextHasNoMarginBottom","label","onChange","value","checked","RichText","identifier","tagName","placeholder","newValue","__unstableOnSplitAtEnd","createBlock","getDefaultBlockName","withoutInteractiveFormatting"],"sources":["@wordpress/block-library/src/read-more/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\nexport default function ReadMore( {\n\tattributes: { content, linkTarget },\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<RichText\n\t\t\t\tidentifier=\"content\"\n\t\t\t\ttagName=\"a\"\n\t\t\t\taria-label={ __( '“Read more” link text' ) }\n\t\t\t\tplaceholder={ __( 'Read more' ) }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\tsetAttributes( { content: newValue } )\n\t\t\t\t}\n\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAVA;AACA;AACA;;AAUe,SAASI,QAAQA,CAAE;EACjCC,UAAU,EAAE;IAAEC,OAAO;IAAEC;EAAW,CAAC;EACnCC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAC,CAAC;EAClC,OACC,IAAAC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAACd,YAAA,CAAAgB,iBAAiB,QACjB,IAAAH,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAe,SAAS;IAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,UAAW;EAAG,GACpC,IAAAN,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAkB,aAAa;IACbC,uBAAuB;IACvBC,KAAK,EAAG,IAAAH,QAAE,EAAE,iBAAkB,CAAG;IACjCI,QAAQ,EAAKC,KAAK,IACjBf,aAAa,CAAE;MACdD,UAAU,EAAEgB,KAAK,GAAG,QAAQ,GAAG;IAChC,CAAE,CACF;IACDC,OAAO,EAAGjB,UAAU,KAAK;EAAU,CACnC,CACS,CACO,CAAC,EACpB,IAAAK,MAAA,CAAAC,aAAA,EAACd,YAAA,CAAA0B,QAAQ;IACRC,UAAU,EAAC,SAAS;IACpBC,OAAO,EAAC,GAAG;IACX,cAAa,IAAAT,QAAE,EAAE,uBAAwB,CAAG;IAC5CU,WAAW,EAAG,IAAAV,QAAE,EAAE,WAAY,CAAG;IACjCK,KAAK,EAAGjB,OAAS;IACjBgB,QAAQ,EAAKO,QAAQ,IACpBrB,aAAa,CAAE;MAAEF,OAAO,EAAEuB;IAAS,CAAE,CACrC;IACDC,sBAAsB,EAAGA,CAAA,KACxBrB,iBAAiB,CAAE,IAAAsB,mBAAW,EAAE,IAAAC,2BAAmB,EAAC,CAAE,CAAE,CACxD;IACDC,4BAA4B;IAAA,GACvBvB;EAAU,CACf,CACA,CAAC;AAEL"}
@@ -248,6 +248,7 @@ function SearchEdit({
248
248
  }, (0, _react.createElement)(_icons.Icon, {
249
249
  icon: _icons.search
250
250
  })), !buttonUseIcon && (0, _react.createElement)(_blockEditor.RichText, {
251
+ identifier: "buttonText",
251
252
  className: buttonClasses,
252
253
  style: buttonStyles,
253
254
  "aria-label": (0, _i18n.__)('Button text'),
@@ -283,7 +284,7 @@ function SearchEdit({
283
284
  },
284
285
  className: buttonUseIcon ? 'is-pressed' : undefined
285
286
  }))), (0, _react.createElement)(_blockEditor.InspectorControls, null, (0, _react.createElement)(_components.PanelBody, {
286
- title: (0, _i18n.__)('Display Settings')
287
+ title: (0, _i18n.__)('Settings')
287
288
  }, (0, _react.createElement)(_components.BaseControl, {
288
289
  label: (0, _i18n.__)('Width'),
289
290
  id: unitControlInputId
@@ -375,6 +376,7 @@ function SearchEdit({
375
376
  return (0, _react.createElement)("div", {
376
377
  ...blockProps
377
378
  }, controls, showLabel && (0, _react.createElement)(_blockEditor.RichText, {
379
+ identifier: "label",
378
380
  className: labelClassnames,
379
381
  "aria-label": (0, _i18n.__)('Label text'),
380
382
  placeholder: (0, _i18n.__)('Add label…'),
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_element","_components","_compose","_icons","_i18n","_dom","_icons2","_utils","DEFAULT_INNER_PADDING","SearchEdit","className","attributes","setAttributes","toggleSelection","isSelected","clientId","label","showLabel","placeholder","width","widthUnit","align","buttonText","buttonPosition","buttonUseIcon","isSearchFieldHidden","style","wasJustInsertedIntoNavigationBlock","useSelect","select","getBlockParentsByBlockName","wasBlockJustInserted","blockEditorStore","length","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","borderRadius","border","radius","borderProps","useBorderProps","colorProps","useColorProps","fluidTypographySettings","layout","useSettings","typographyProps","useTypographyProps","typography","fluid","wideSize","unitControlInstanceId","useInstanceId","UnitControl","unitControlInputId","isButtonPositionInside","isButtonPositionOutside","hasNoButton","hasOnlyButton","searchFieldRef","useRef","buttonRef","units","useCustomUnits","availableUnits","defaultValues","PC_WIDTH_DEFAULT","px","PX_WIDTH_DEFAULT","getBlockClassNames","classnames","undefined","buttonPositionControls","role","title","__","isActive","icon","buttonOutside","onClick","buttonInside","noButton","buttonOnly","getButtonPositionIcon","getResizableSides","right","left","renderTextField","textFieldClasses","textFieldStyles","textDecoration","_react","createElement","type","value","onChange","event","target","ref","renderButton","buttonClasses","__experimentalGetElementClassName","buttonStyles","handleButtonClick","Fragment","stripHTML","Icon","search","RichText","withoutInteractiveFormatting","html","controls","BlockControls","ToolbarGroup","ToolbarButton","toggleLabel","ToolbarDropdownMenu","buttonWithIcon","InspectorControls","PanelBody","BaseControl","id","__experimentalUnitControl","min","isPercentageUnit","MIN_WIDTH","max","step","newWidth","filteredWidth","parseInt","onUnitChange","newUnit","__unstableInputWidth","ButtonGroup","map","widthValue","Button","key","size","variant","padBorderRadius","getWrapperStyles","styles","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","isNonZeroBorderRadius","topLeft","topRight","bottomLeft","bottomRight","Number","isInteger","blockProps","useBlockProps","labelClassnames","ResizableBox","minWidth","enable","onResizeStart","direction","elt","offsetWidth","onResizeStop","delta","showHandle"],"sources":["@wordpress/block-library/src/search/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\tgetTypographyClassesAndStyles as useTypographyProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tToolbarDropdownMenu,\n\tToolbarGroup,\n\tButton,\n\tButtonGroup,\n\tToolbarButton,\n\tResizableBox,\n\tPanelBody,\n\tBaseControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { Icon, search } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuttonOnly,\n\tbuttonOutside,\n\tbuttonInside,\n\tnoButton,\n\tbuttonWithIcon,\n\ttoggleLabel,\n} from './icons';\nimport {\n\tPC_WIDTH_DEFAULT,\n\tPX_WIDTH_DEFAULT,\n\tMIN_WIDTH,\n\tisPercentageUnit,\n} from './utils.js';\n\n// Used to calculate border radius adjustment to avoid \"fat\" corners when\n// button is placed inside wrapper.\nconst DEFAULT_INNER_PADDING = '4px';\n\nexport default function SearchEdit( {\n\tclassName,\n\tattributes,\n\tsetAttributes,\n\ttoggleSelection,\n\tisSelected,\n\tclientId,\n} ) {\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tplaceholder,\n\t\twidth,\n\t\twidthUnit,\n\t\talign,\n\t\tbuttonText,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tisSearchFieldHidden,\n\t\tstyle,\n\t} = attributes;\n\n\tconst wasJustInsertedIntoNavigationBlock = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParentsByBlockName, wasBlockJustInserted } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\t!! getBlockParentsByBlockName( clientId, 'core/navigation' )\n\t\t\t\t\t?.length && wasBlockJustInserted( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( wasJustInsertedIntoNavigationBlock ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tshowLabel: false,\n\t\t\t\tbuttonUseIcon: true,\n\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t} );\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\twasJustInsertedIntoNavigationBlock,\n\t\tsetAttributes,\n\t] );\n\n\tconst borderRadius = style?.border?.radius;\n\tconst borderProps = useBorderProps( attributes );\n\n\t// Check for old deprecated numerical border radius. Done as a separate\n\t// check so that a borderRadius style won't overwrite the longhand\n\t// per-corner styles.\n\tif ( typeof borderRadius === 'number' ) {\n\t\tborderProps.style.borderRadius = `${ borderRadius }px`;\n\t}\n\n\tconst colorProps = useColorProps( attributes );\n\tconst [ fluidTypographySettings, layout ] = useSettings(\n\t\t'typography.fluid',\n\t\t'layout'\n\t);\n\tconst typographyProps = useTypographyProps( attributes, {\n\t\ttypography: {\n\t\t\tfluid: fluidTypographySettings,\n\t\t},\n\t\tlayout: {\n\t\t\twideSize: layout?.wideSize,\n\t\t},\n\t} );\n\tconst unitControlInstanceId = useInstanceId( UnitControl );\n\tconst unitControlInputId = `wp-block-search__width-${ unitControlInstanceId }`;\n\tconst isButtonPositionInside = 'button-inside' === buttonPosition;\n\tconst isButtonPositionOutside = 'button-outside' === buttonPosition;\n\tconst hasNoButton = 'no-button' === buttonPosition;\n\tconst hasOnlyButton = 'button-only' === buttonPosition;\n\tconst searchFieldRef = useRef();\n\tconst buttonRef = useRef();\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: [ '%', 'px' ],\n\t\tdefaultValues: { '%': PC_WIDTH_DEFAULT, px: PX_WIDTH_DEFAULT },\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( hasOnlyButton && ! isSelected ) {\n\t\t\tsetAttributes( {\n\t\t\t\tisSearchFieldHidden: true,\n\t\t\t} );\n\t\t}\n\t}, [ hasOnlyButton, isSelected, setAttributes ] );\n\n\t// Show the search field when width changes.\n\tuseEffect( () => {\n\t\tif ( ! hasOnlyButton || ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tisSearchFieldHidden: false,\n\t\t} );\n\t}, [ hasOnlyButton, isSelected, setAttributes, width ] );\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\tisButtonPositionInside\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\tisButtonPositionOutside\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\thasNoButton ? 'wp-block-search__no-button' : undefined,\n\t\t\thasOnlyButton ? 'wp-block-search__button-only' : undefined,\n\t\t\t! buttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && isSearchFieldHidden\n\t\t\t\t? 'wp-block-search__searchfield-hidden'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst buttonPositionControls = [\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button outside' ),\n\t\t\tisActive: buttonPosition === 'button-outside',\n\t\t\ticon: buttonOutside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-outside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button inside' ),\n\t\t\tisActive: buttonPosition === 'button-inside',\n\t\t\ticon: buttonInside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'No button' ),\n\t\t\tisActive: buttonPosition === 'no-button',\n\t\t\ticon: noButton,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'no-button',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button only' ),\n\t\t\tisActive: buttonPosition === 'button-only',\n\t\t\ticon: buttonOnly,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-only',\n\t\t\t\t\tisSearchFieldHidden: true,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t];\n\n\tconst getButtonPositionIcon = () => {\n\t\tswitch ( buttonPosition ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn buttonInside;\n\t\t\tcase 'button-outside':\n\t\t\t\treturn buttonOutside;\n\t\t\tcase 'no-button':\n\t\t\t\treturn noButton;\n\t\t\tcase 'button-only':\n\t\t\t\treturn buttonOnly;\n\t\t}\n\t};\n\n\tconst getResizableSides = () => {\n\t\tif ( hasOnlyButton ) {\n\t\t\treturn {};\n\t\t}\n\n\t\treturn {\n\t\t\tright: align !== 'right',\n\t\t\tleft: align === 'right',\n\t\t};\n\t};\n\n\tconst renderTextField = () => {\n\t\t// If the input is inside the wrapper, the wrapper gets the border color styles/classes, not the input control.\n\t\tconst textFieldClasses = classnames(\n\t\t\t'wp-block-search__input',\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\ttypographyProps.className\n\t\t);\n\t\tconst textFieldStyles = {\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t\t...typographyProps.style,\n\t\t\ttextDecoration: undefined,\n\t\t};\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype=\"search\"\n\t\t\t\tclassName={ textFieldClasses }\n\t\t\t\tstyle={ textFieldStyles }\n\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t// which is confusing.\n\t\t\t\tplaceholder={\n\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t}\n\t\t\t\tvalue={ placeholder }\n\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t}\n\t\t\t\tref={ searchFieldRef }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderButton = () => {\n\t\t// If the button is inside the wrapper, the wrapper gets the border color styles/classes, not the button.\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-search__button',\n\t\t\tcolorProps.className,\n\t\t\ttypographyProps.className,\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\tbuttonUseIcon ? 'has-icon' : undefined,\n\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t);\n\t\tconst buttonStyles = {\n\t\t\t...colorProps.style,\n\t\t\t...typographyProps.style,\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t};\n\t\tconst handleButtonClick = () => {\n\t\t\tif ( hasOnlyButton ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tisSearchFieldHidden: ! isSearchFieldHidden,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\tbuttonText\n\t\t\t\t\t\t\t\t? stripHTML( buttonText )\n\t\t\t\t\t\t\t\t: __( 'Search' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t\tref={ buttonRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon icon={ search } />\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add button text…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Toggle search label' ) }\n\t\t\t\t\t\ticon={ toggleLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tclassName={ showLabel ? 'is-pressed' : undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ getButtonPositionIcon() }\n\t\t\t\t\t\tlabel={ __( 'Change button position' ) }\n\t\t\t\t\t\tcontrols={ buttonPositionControls }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! hasNoButton && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Use button with icon' ) }\n\t\t\t\t\t\t\ticon={ buttonWithIcon }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\tbuttonUseIcon ? 'is-pressed' : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Display Settings' ) }>\n\t\t\t\t\t<BaseControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 0 : MIN_WIDTH\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 100 : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tstep={ 1 }\n\t\t\t\t\t\t\tonChange={ ( newWidth ) => {\n\t\t\t\t\t\t\t\tconst filteredWidth =\n\t\t\t\t\t\t\t\t\twidthUnit === '%' &&\n\t\t\t\t\t\t\t\t\tparseInt( newWidth, 10 ) > 100\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: newWidth;\n\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth: parseInt( filteredWidth, 10 ),\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonUnitChange={ ( newUnit ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t'%' === newUnit\n\t\t\t\t\t\t\t\t\t\t\t? PC_WIDTH_DEFAULT\n\t\t\t\t\t\t\t\t\t\t\t: PX_WIDTH_DEFAULT,\n\t\t\t\t\t\t\t\t\twidthUnit: newUnit,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t__unstableInputWidth={ '80px' }\n\t\t\t\t\t\t\tvalue={ `${ width }${ widthUnit }` }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<ButtonGroup\n\t\t\t\t\t\t\tclassName=\"wp-block-search__components-button-group\"\n\t\t\t\t\t\t\taria-label={ __( 'Percentage Width' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\twidthValue === width &&\n\t\t\t\t\t\t\t\t\t\t\twidthUnit === '%'\n\t\t\t\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\twidth: widthValue,\n\t\t\t\t\t\t\t\t\t\t\t\twidthUnit: '%',\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</ButtonGroup>\n\t\t\t\t\t</BaseControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst padBorderRadius = ( radius ) =>\n\t\tradius ? `calc(${ radius } + ${ DEFAULT_INNER_PADDING })` : undefined;\n\n\tconst getWrapperStyles = () => {\n\t\tconst styles = isButtonPositionInside\n\t\t\t? borderProps.style\n\t\t\t: {\n\t\t\t\t\tborderRadius: borderProps.style?.borderRadius,\n\t\t\t\t\tborderTopLeftRadius: borderProps.style?.borderTopLeftRadius,\n\t\t\t\t\tborderTopRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderTopRightRadius,\n\t\t\t\t\tborderBottomLeftRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomLeftRadius,\n\t\t\t\t\tborderBottomRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomRightRadius,\n\t\t\t };\n\n\t\tconst isNonZeroBorderRadius =\n\t\t\tborderRadius !== undefined && parseInt( borderRadius, 10 ) !== 0;\n\n\t\tif ( isButtonPositionInside && isNonZeroBorderRadius ) {\n\t\t\t// We have button inside wrapper and a border radius value to apply.\n\t\t\t// Add default padding so we don't get \"fat\" corners.\n\t\t\t//\n\t\t\t// CSS calc() is used here to support non-pixel units. The inline\n\t\t\t// style using calc() will only apply if both values have units.\n\n\t\t\tif ( typeof borderRadius === 'object' ) {\n\t\t\t\t// Individual corner border radii present.\n\t\t\t\tconst { topLeft, topRight, bottomLeft, bottomRight } =\n\t\t\t\t\tborderRadius;\n\n\t\t\t\treturn {\n\t\t\t\t\t...styles,\n\t\t\t\t\tborderTopLeftRadius: padBorderRadius( topLeft ),\n\t\t\t\t\tborderTopRightRadius: padBorderRadius( topRight ),\n\t\t\t\t\tborderBottomLeftRadius: padBorderRadius( bottomLeft ),\n\t\t\t\t\tborderBottomRightRadius: padBorderRadius( bottomRight ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// The inline style using calc() will only apply if both values\n\t\t\t// supplied to calc() have units. Deprecated block's may have\n\t\t\t// unitless integer.\n\t\t\tconst radius = Number.isInteger( borderRadius )\n\t\t\t\t? `${ borderRadius }px`\n\t\t\t\t: borderRadius;\n\n\t\t\tstyles.borderRadius = `calc(${ radius } + ${ DEFAULT_INNER_PADDING })`;\n\t\t}\n\n\t\treturn styles;\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t\tstyle: {\n\t\t\t...typographyProps.style,\n\t\t\t// Input opts out of text decoration.\n\t\t\ttextDecoration: undefined,\n\t\t},\n\t} );\n\n\tconst labelClassnames = classnames(\n\t\t'wp-block-search__label',\n\t\ttypographyProps.className\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<RichText\n\t\t\t\t\tclassName={ labelClassnames }\n\t\t\t\t\taria-label={ __( 'Label text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( html ) => setAttributes( { label: html } ) }\n\t\t\t\t\tstyle={ typographyProps.style }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: `${ width }${ widthUnit }`,\n\t\t\t\t} }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'wp-block-search__inside-wrapper',\n\t\t\t\t\tisButtonPositionInside ? borderProps.className : undefined\n\t\t\t\t) }\n\t\t\t\tstyle={ getWrapperStyles() }\n\t\t\t\tminWidth={ MIN_WIDTH }\n\t\t\t\tenable={ getResizableSides() }\n\t\t\t\tonResizeStart={ ( event, direction, elt ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( elt.offsetWidth, 10 ),\n\t\t\t\t\t\twidthUnit: 'px',\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( width + delta.width, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t>\n\t\t\t\t{ ( isButtonPositionInside ||\n\t\t\t\t\tisButtonPositionOutside ||\n\t\t\t\t\thasOnlyButton ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t\t{ renderButton() }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\n\t\t\t\t{ hasNoButton && renderTextField() }\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_element","_components","_compose","_icons","_i18n","_dom","_icons2","_utils","DEFAULT_INNER_PADDING","SearchEdit","className","attributes","setAttributes","toggleSelection","isSelected","clientId","label","showLabel","placeholder","width","widthUnit","align","buttonText","buttonPosition","buttonUseIcon","isSearchFieldHidden","style","wasJustInsertedIntoNavigationBlock","useSelect","select","getBlockParentsByBlockName","wasBlockJustInserted","blockEditorStore","length","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","borderRadius","border","radius","borderProps","useBorderProps","colorProps","useColorProps","fluidTypographySettings","layout","useSettings","typographyProps","useTypographyProps","typography","fluid","wideSize","unitControlInstanceId","useInstanceId","UnitControl","unitControlInputId","isButtonPositionInside","isButtonPositionOutside","hasNoButton","hasOnlyButton","searchFieldRef","useRef","buttonRef","units","useCustomUnits","availableUnits","defaultValues","PC_WIDTH_DEFAULT","px","PX_WIDTH_DEFAULT","getBlockClassNames","classnames","undefined","buttonPositionControls","role","title","__","isActive","icon","buttonOutside","onClick","buttonInside","noButton","buttonOnly","getButtonPositionIcon","getResizableSides","right","left","renderTextField","textFieldClasses","textFieldStyles","textDecoration","_react","createElement","type","value","onChange","event","target","ref","renderButton","buttonClasses","__experimentalGetElementClassName","buttonStyles","handleButtonClick","Fragment","stripHTML","Icon","search","RichText","identifier","withoutInteractiveFormatting","html","controls","BlockControls","ToolbarGroup","ToolbarButton","toggleLabel","ToolbarDropdownMenu","buttonWithIcon","InspectorControls","PanelBody","BaseControl","id","__experimentalUnitControl","min","isPercentageUnit","MIN_WIDTH","max","step","newWidth","filteredWidth","parseInt","onUnitChange","newUnit","__unstableInputWidth","ButtonGroup","map","widthValue","Button","key","size","variant","padBorderRadius","getWrapperStyles","styles","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","isNonZeroBorderRadius","topLeft","topRight","bottomLeft","bottomRight","Number","isInteger","blockProps","useBlockProps","labelClassnames","ResizableBox","minWidth","enable","onResizeStart","direction","elt","offsetWidth","onResizeStop","delta","showHandle"],"sources":["@wordpress/block-library/src/search/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\tgetTypographyClassesAndStyles as useTypographyProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tToolbarDropdownMenu,\n\tToolbarGroup,\n\tButton,\n\tButtonGroup,\n\tToolbarButton,\n\tResizableBox,\n\tPanelBody,\n\tBaseControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { Icon, search } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuttonOnly,\n\tbuttonOutside,\n\tbuttonInside,\n\tnoButton,\n\tbuttonWithIcon,\n\ttoggleLabel,\n} from './icons';\nimport {\n\tPC_WIDTH_DEFAULT,\n\tPX_WIDTH_DEFAULT,\n\tMIN_WIDTH,\n\tisPercentageUnit,\n} from './utils.js';\n\n// Used to calculate border radius adjustment to avoid \"fat\" corners when\n// button is placed inside wrapper.\nconst DEFAULT_INNER_PADDING = '4px';\n\nexport default function SearchEdit( {\n\tclassName,\n\tattributes,\n\tsetAttributes,\n\ttoggleSelection,\n\tisSelected,\n\tclientId,\n} ) {\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tplaceholder,\n\t\twidth,\n\t\twidthUnit,\n\t\talign,\n\t\tbuttonText,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tisSearchFieldHidden,\n\t\tstyle,\n\t} = attributes;\n\n\tconst wasJustInsertedIntoNavigationBlock = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParentsByBlockName, wasBlockJustInserted } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\t!! getBlockParentsByBlockName( clientId, 'core/navigation' )\n\t\t\t\t\t?.length && wasBlockJustInserted( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( wasJustInsertedIntoNavigationBlock ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tshowLabel: false,\n\t\t\t\tbuttonUseIcon: true,\n\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t} );\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\twasJustInsertedIntoNavigationBlock,\n\t\tsetAttributes,\n\t] );\n\n\tconst borderRadius = style?.border?.radius;\n\tconst borderProps = useBorderProps( attributes );\n\n\t// Check for old deprecated numerical border radius. Done as a separate\n\t// check so that a borderRadius style won't overwrite the longhand\n\t// per-corner styles.\n\tif ( typeof borderRadius === 'number' ) {\n\t\tborderProps.style.borderRadius = `${ borderRadius }px`;\n\t}\n\n\tconst colorProps = useColorProps( attributes );\n\tconst [ fluidTypographySettings, layout ] = useSettings(\n\t\t'typography.fluid',\n\t\t'layout'\n\t);\n\tconst typographyProps = useTypographyProps( attributes, {\n\t\ttypography: {\n\t\t\tfluid: fluidTypographySettings,\n\t\t},\n\t\tlayout: {\n\t\t\twideSize: layout?.wideSize,\n\t\t},\n\t} );\n\tconst unitControlInstanceId = useInstanceId( UnitControl );\n\tconst unitControlInputId = `wp-block-search__width-${ unitControlInstanceId }`;\n\tconst isButtonPositionInside = 'button-inside' === buttonPosition;\n\tconst isButtonPositionOutside = 'button-outside' === buttonPosition;\n\tconst hasNoButton = 'no-button' === buttonPosition;\n\tconst hasOnlyButton = 'button-only' === buttonPosition;\n\tconst searchFieldRef = useRef();\n\tconst buttonRef = useRef();\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: [ '%', 'px' ],\n\t\tdefaultValues: { '%': PC_WIDTH_DEFAULT, px: PX_WIDTH_DEFAULT },\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( hasOnlyButton && ! isSelected ) {\n\t\t\tsetAttributes( {\n\t\t\t\tisSearchFieldHidden: true,\n\t\t\t} );\n\t\t}\n\t}, [ hasOnlyButton, isSelected, setAttributes ] );\n\n\t// Show the search field when width changes.\n\tuseEffect( () => {\n\t\tif ( ! hasOnlyButton || ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tisSearchFieldHidden: false,\n\t\t} );\n\t}, [ hasOnlyButton, isSelected, setAttributes, width ] );\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\tisButtonPositionInside\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\tisButtonPositionOutside\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\thasNoButton ? 'wp-block-search__no-button' : undefined,\n\t\t\thasOnlyButton ? 'wp-block-search__button-only' : undefined,\n\t\t\t! buttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && isSearchFieldHidden\n\t\t\t\t? 'wp-block-search__searchfield-hidden'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst buttonPositionControls = [\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button outside' ),\n\t\t\tisActive: buttonPosition === 'button-outside',\n\t\t\ticon: buttonOutside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-outside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button inside' ),\n\t\t\tisActive: buttonPosition === 'button-inside',\n\t\t\ticon: buttonInside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'No button' ),\n\t\t\tisActive: buttonPosition === 'no-button',\n\t\t\ticon: noButton,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'no-button',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button only' ),\n\t\t\tisActive: buttonPosition === 'button-only',\n\t\t\ticon: buttonOnly,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-only',\n\t\t\t\t\tisSearchFieldHidden: true,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t];\n\n\tconst getButtonPositionIcon = () => {\n\t\tswitch ( buttonPosition ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn buttonInside;\n\t\t\tcase 'button-outside':\n\t\t\t\treturn buttonOutside;\n\t\t\tcase 'no-button':\n\t\t\t\treturn noButton;\n\t\t\tcase 'button-only':\n\t\t\t\treturn buttonOnly;\n\t\t}\n\t};\n\n\tconst getResizableSides = () => {\n\t\tif ( hasOnlyButton ) {\n\t\t\treturn {};\n\t\t}\n\n\t\treturn {\n\t\t\tright: align !== 'right',\n\t\t\tleft: align === 'right',\n\t\t};\n\t};\n\n\tconst renderTextField = () => {\n\t\t// If the input is inside the wrapper, the wrapper gets the border color styles/classes, not the input control.\n\t\tconst textFieldClasses = classnames(\n\t\t\t'wp-block-search__input',\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\ttypographyProps.className\n\t\t);\n\t\tconst textFieldStyles = {\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t\t...typographyProps.style,\n\t\t\ttextDecoration: undefined,\n\t\t};\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype=\"search\"\n\t\t\t\tclassName={ textFieldClasses }\n\t\t\t\tstyle={ textFieldStyles }\n\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t// which is confusing.\n\t\t\t\tplaceholder={\n\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t}\n\t\t\t\tvalue={ placeholder }\n\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t}\n\t\t\t\tref={ searchFieldRef }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderButton = () => {\n\t\t// If the button is inside the wrapper, the wrapper gets the border color styles/classes, not the button.\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-search__button',\n\t\t\tcolorProps.className,\n\t\t\ttypographyProps.className,\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\tbuttonUseIcon ? 'has-icon' : undefined,\n\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t);\n\t\tconst buttonStyles = {\n\t\t\t...colorProps.style,\n\t\t\t...typographyProps.style,\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t};\n\t\tconst handleButtonClick = () => {\n\t\t\tif ( hasOnlyButton ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tisSearchFieldHidden: ! isSearchFieldHidden,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\tbuttonText\n\t\t\t\t\t\t\t\t? stripHTML( buttonText )\n\t\t\t\t\t\t\t\t: __( 'Search' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t\tref={ buttonRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon icon={ search } />\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"buttonText\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add button text…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Toggle search label' ) }\n\t\t\t\t\t\ticon={ toggleLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tclassName={ showLabel ? 'is-pressed' : undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ getButtonPositionIcon() }\n\t\t\t\t\t\tlabel={ __( 'Change button position' ) }\n\t\t\t\t\t\tcontrols={ buttonPositionControls }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! hasNoButton && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Use button with icon' ) }\n\t\t\t\t\t\t\ticon={ buttonWithIcon }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\tbuttonUseIcon ? 'is-pressed' : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<BaseControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 0 : MIN_WIDTH\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 100 : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tstep={ 1 }\n\t\t\t\t\t\t\tonChange={ ( newWidth ) => {\n\t\t\t\t\t\t\t\tconst filteredWidth =\n\t\t\t\t\t\t\t\t\twidthUnit === '%' &&\n\t\t\t\t\t\t\t\t\tparseInt( newWidth, 10 ) > 100\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: newWidth;\n\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth: parseInt( filteredWidth, 10 ),\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonUnitChange={ ( newUnit ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t'%' === newUnit\n\t\t\t\t\t\t\t\t\t\t\t? PC_WIDTH_DEFAULT\n\t\t\t\t\t\t\t\t\t\t\t: PX_WIDTH_DEFAULT,\n\t\t\t\t\t\t\t\t\twidthUnit: newUnit,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t__unstableInputWidth={ '80px' }\n\t\t\t\t\t\t\tvalue={ `${ width }${ widthUnit }` }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<ButtonGroup\n\t\t\t\t\t\t\tclassName=\"wp-block-search__components-button-group\"\n\t\t\t\t\t\t\taria-label={ __( 'Percentage Width' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\twidthValue === width &&\n\t\t\t\t\t\t\t\t\t\t\twidthUnit === '%'\n\t\t\t\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\twidth: widthValue,\n\t\t\t\t\t\t\t\t\t\t\t\twidthUnit: '%',\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</ButtonGroup>\n\t\t\t\t\t</BaseControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst padBorderRadius = ( radius ) =>\n\t\tradius ? `calc(${ radius } + ${ DEFAULT_INNER_PADDING })` : undefined;\n\n\tconst getWrapperStyles = () => {\n\t\tconst styles = isButtonPositionInside\n\t\t\t? borderProps.style\n\t\t\t: {\n\t\t\t\t\tborderRadius: borderProps.style?.borderRadius,\n\t\t\t\t\tborderTopLeftRadius: borderProps.style?.borderTopLeftRadius,\n\t\t\t\t\tborderTopRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderTopRightRadius,\n\t\t\t\t\tborderBottomLeftRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomLeftRadius,\n\t\t\t\t\tborderBottomRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomRightRadius,\n\t\t\t };\n\n\t\tconst isNonZeroBorderRadius =\n\t\t\tborderRadius !== undefined && parseInt( borderRadius, 10 ) !== 0;\n\n\t\tif ( isButtonPositionInside && isNonZeroBorderRadius ) {\n\t\t\t// We have button inside wrapper and a border radius value to apply.\n\t\t\t// Add default padding so we don't get \"fat\" corners.\n\t\t\t//\n\t\t\t// CSS calc() is used here to support non-pixel units. The inline\n\t\t\t// style using calc() will only apply if both values have units.\n\n\t\t\tif ( typeof borderRadius === 'object' ) {\n\t\t\t\t// Individual corner border radii present.\n\t\t\t\tconst { topLeft, topRight, bottomLeft, bottomRight } =\n\t\t\t\t\tborderRadius;\n\n\t\t\t\treturn {\n\t\t\t\t\t...styles,\n\t\t\t\t\tborderTopLeftRadius: padBorderRadius( topLeft ),\n\t\t\t\t\tborderTopRightRadius: padBorderRadius( topRight ),\n\t\t\t\t\tborderBottomLeftRadius: padBorderRadius( bottomLeft ),\n\t\t\t\t\tborderBottomRightRadius: padBorderRadius( bottomRight ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// The inline style using calc() will only apply if both values\n\t\t\t// supplied to calc() have units. Deprecated block's may have\n\t\t\t// unitless integer.\n\t\t\tconst radius = Number.isInteger( borderRadius )\n\t\t\t\t? `${ borderRadius }px`\n\t\t\t\t: borderRadius;\n\n\t\t\tstyles.borderRadius = `calc(${ radius } + ${ DEFAULT_INNER_PADDING })`;\n\t\t}\n\n\t\treturn styles;\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t\tstyle: {\n\t\t\t...typographyProps.style,\n\t\t\t// Input opts out of text decoration.\n\t\t\ttextDecoration: undefined,\n\t\t},\n\t} );\n\n\tconst labelClassnames = classnames(\n\t\t'wp-block-search__label',\n\t\ttypographyProps.className\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<RichText\n\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\tclassName={ labelClassnames }\n\t\t\t\t\taria-label={ __( 'Label text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( html ) => setAttributes( { label: html } ) }\n\t\t\t\t\tstyle={ typographyProps.style }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: `${ width }${ widthUnit }`,\n\t\t\t\t} }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'wp-block-search__inside-wrapper',\n\t\t\t\t\tisButtonPositionInside ? borderProps.className : undefined\n\t\t\t\t) }\n\t\t\t\tstyle={ getWrapperStyles() }\n\t\t\t\tminWidth={ MIN_WIDTH }\n\t\t\t\tenable={ getResizableSides() }\n\t\t\t\tonResizeStart={ ( event, direction, elt ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( elt.offsetWidth, 10 ),\n\t\t\t\t\t\twidthUnit: 'px',\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( width + delta.width, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t>\n\t\t\t\t{ ( isButtonPositionInside ||\n\t\t\t\t\tisButtonPositionOutside ||\n\t\t\t\t\thasOnlyButton ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t\t{ renderButton() }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\n\t\t\t\t{ hasNoButton && renderTextField() }\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -292,7 +292,7 @@ function SearchEdit({
292
292
  onLayout: onLayoutButton
293
293
  }, (0, _react.createElement)(_blockEditor.RichText, {
294
294
  className: "wp-block-search__button",
295
- identifier: "text",
295
+ identifier: "buttonText",
296
296
  tagName: "p",
297
297
  style: richTextButtonStyle,
298
298
  placeholder: buttonPlaceholderText,
@@ -327,7 +327,7 @@ function SearchEdit({
327
327
  accessibilityLabel: getAccessibilityLabelForLabel()
328
328
  }, (0, _react.createElement)(_blockEditor.RichText, {
329
329
  className: "wp-block-search__label",
330
- identifier: "text",
330
+ identifier: "label",
331
331
  tagName: "p",
332
332
  style: _style.default.richTextLabel,
333
333
  placeholder: (0, _i18n.__)('Add label…'),
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_classnames","_interopRequireDefault","_blockEditor","_components","_i18n","_icons","_element","_compose","_style","MIN_BUTTON_WIDTH","MARGINS","styles","widthMargin","marginLeft","paddingLeft","BUTTON_OPTIONS","value","label","__","useIsScreenReaderEnabled","isScreenReaderEnabled","setIsScreenReaderEnabled","useState","useEffect","mounted","changeListener","AccessibilityInfo","addEventListener","enabled","then","screenReaderEnabled","remove","SearchEdit","onFocus","isSelected","attributes","setAttributes","className","blockWidth","style","isButtonSelected","setIsButtonSelected","isLabelSelected","setIsLabelSelected","isPlaceholderSelected","setIsPlaceholderSelected","isLongButton","setIsLongButton","buttonWidth","setButtonWidth","textInputRef","useRef","showLabel","buttonPosition","buttonUseIcon","placeholder","buttonText","hasTextInput","current","blur","maxButtonWidth","Math","floor","tempIsLongButton","onLayoutButton","nativeEvent","width","layout","getBlockClassNames","classnames","undefined","getSelectedButtonPositionLabel","option","blockProps","useBlockProps","controls","_react","createElement","InspectorControls","PanelBody","title","ToggleControl","checked","onChange","SelectControl","position","options","hideCancelButton","isButtonInside","borderStyle","usePreferredColorSchemeStyle","border","borderDark","inputStyle","plainTextInput","plainTextInputDark","baseColors","color","text","placeholderStyle","plainTextPlaceholder","plainTextPlaceholderDark","searchBarStyle","searchBarContainer","flexDirection","getAccessibilityLabelForButton","getAccessibilityLabelForPlaceholder","description","getAccessibilityLabelForLabel","renderTextField","View","searchInputContainer","accessible","accessibilityRole","accessibilityHint","accessibilityLabel","PlainText","ref","numberOfLines","ellipsizeMode","newVal","onBlur","placeholderTextColor","buttonPlaceholderText","baseButtonStyles","blocks","richTextButtonContainerStyle","buttonContainer","buttonContainerWide","background","backgroundColor","borderWidth","richTextButtonStyle","richTextButton","placeholderColor","iconStyles","icon","fill","renderButton","Icon","search","onLayout","RichText","identifier","tagName","withoutInteractiveFormatting","html","minWidth","maxWidth","textAlign","__unstableMobileNoFocusOnMount","unstableOnFocus","selectionColor","richTextButtonCursor","searchBlockContainer","importantForAccessibility","accessibilityElementsHidden","richTextLabel"],"sources":["@wordpress/block-library/src/search/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo } from 'react-native';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tPlainText,\n\tuseBlockProps,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { search } from '@wordpress/icons';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n/**\n * Constants\n */\nconst MIN_BUTTON_WIDTH = 75;\nconst MARGINS =\n\tstyles.widthMargin?.marginLeft + styles.widthMargin?.paddingLeft;\n\nconst BUTTON_OPTIONS = [\n\t{ value: 'button-inside', label: __( 'Button inside' ) },\n\t{ value: 'button-outside', label: __( 'Button outside' ) },\n\t{ value: 'no-button', label: __( 'No button' ) },\n];\n\nfunction useIsScreenReaderEnabled() {\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tlet mounted = true;\n\n\t\tconst changeListener = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\t( enabled ) => setIsScreenReaderEnabled( enabled )\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then(\n\t\t\t( screenReaderEnabled ) => {\n\t\t\t\tif ( mounted && screenReaderEnabled ) {\n\t\t\t\t\tsetIsScreenReaderEnabled( screenReaderEnabled );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn () => {\n\t\t\tmounted = false;\n\n\t\t\tchangeListener.remove();\n\t\t};\n\t}, [] );\n\n\treturn isScreenReaderEnabled;\n}\n\nexport default function SearchEdit( {\n\tonFocus,\n\tisSelected,\n\tattributes,\n\tsetAttributes,\n\tclassName,\n\tblockWidth,\n\tstyle,\n} ) {\n\tconst [ isButtonSelected, setIsButtonSelected ] = useState( false );\n\tconst [ isLabelSelected, setIsLabelSelected ] = useState( false );\n\tconst [ isPlaceholderSelected, setIsPlaceholderSelected ] =\n\t\tuseState( false );\n\tconst [ isLongButton, setIsLongButton ] = useState( false );\n\tconst [ buttonWidth, setButtonWidth ] = useState( MIN_BUTTON_WIDTH );\n\tconst isScreenReaderEnabled = useIsScreenReaderEnabled();\n\n\tconst textInputRef = useRef( null );\n\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tplaceholder,\n\t\tbuttonText,\n\t} = attributes;\n\n\t/*\n\t * Called when the value of isSelected changes. Blurs the PlainText component\n\t * used by the placeholder when this block loses focus.\n\t */\n\tuseEffect( () => {\n\t\tif ( hasTextInput() && isPlaceholderSelected && ! isSelected ) {\n\t\t\ttextInputRef.current.blur();\n\t\t}\n\t}, [ isSelected ] );\n\n\tuseEffect( () => {\n\t\tconst maxButtonWidth = Math.floor( blockWidth / 2 - MARGINS );\n\t\tconst tempIsLongButton = buttonWidth > maxButtonWidth;\n\n\t\t// Update this value only if it has changed to avoid flickering.\n\t\tif ( isLongButton !== tempIsLongButton ) {\n\t\t\tsetIsLongButton( tempIsLongButton );\n\t\t}\n\t}, [ blockWidth, buttonWidth ] );\n\n\tconst hasTextInput = () => {\n\t\treturn textInputRef && textInputRef.current;\n\t};\n\n\tconst onLayoutButton = ( { nativeEvent } ) => {\n\t\tconst { width } = nativeEvent?.layout;\n\n\t\tif ( width ) {\n\t\t\tsetButtonWidth( width );\n\t\t}\n\t};\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\t'button-inside' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\t'button-outside' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\t'no-button' === buttonPosition\n\t\t\t\t? 'wp-block-search__no-button'\n\t\t\t\t: undefined,\n\t\t\t'button-only' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-only'\n\t\t\t\t: undefined,\n\t\t\t! buttonUseIcon && 'no-button' !== buttonPosition\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && 'no-button' !== buttonPosition\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst getSelectedButtonPositionLabel = ( option ) => {\n\t\tswitch ( option ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn __( 'Inside' );\n\t\t\tcase 'button-outside':\n\t\t\t\treturn __( 'Outside' );\n\t\t\tcase 'no-button':\n\t\t\t\treturn __( 'No button' );\n\t\t}\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t} );\n\n\tconst controls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Search settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Hide search heading' ) }\n\t\t\t\t\tchecked={ ! showLabel }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Button position' ) }\n\t\t\t\t\tvalue={ getSelectedButtonPositionLabel( buttonPosition ) }\n\t\t\t\t\tonChange={ ( position ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tbuttonPosition: position,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\toptions={ BUTTON_OPTIONS }\n\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t/>\n\t\t\t\t{ buttonPosition !== 'no-button' && (\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Use icon button' ) }\n\t\t\t\t\t\tchecked={ buttonUseIcon }\n\t\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst isButtonInside = buttonPosition === 'button-inside';\n\n\tconst borderStyle = usePreferredColorSchemeStyle(\n\t\tstyles.border,\n\t\tstyles.borderDark\n\t);\n\n\tconst inputStyle = [\n\t\t! isButtonInside && borderStyle,\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.plainTextInput,\n\t\t\tstyles.plainTextInputDark\n\t\t),\n\t\tstyle?.baseColors?.color && { color: style?.baseColors?.color?.text },\n\t];\n\n\tconst placeholderStyle = {\n\t\t...usePreferredColorSchemeStyle(\n\t\t\tstyles.plainTextPlaceholder,\n\t\t\tstyles.plainTextPlaceholderDark\n\t\t),\n\t\t...( style?.baseColors?.color && {\n\t\t\tcolor: style?.baseColors?.color?.text,\n\t\t} ),\n\t};\n\n\tconst searchBarStyle = [\n\t\tstyles.searchBarContainer,\n\t\tisButtonInside && borderStyle,\n\t\tisLongButton && { flexDirection: 'column' },\n\t];\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Button\n\t */\n\tconst getAccessibilityLabelForButton = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-button';\n\t\t}\n\n\t\treturn `${ __(\n\t\t\t'Search button. Current button text is'\n\t\t) } ${ buttonText }`;\n\t};\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Input\n\t * \t\t\t\t\t placeholder field.\n\t */\n\tconst getAccessibilityLabelForPlaceholder = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-input';\n\t\t}\n\n\t\tconst title = __( 'Search input field.' );\n\t\tconst description = placeholder\n\t\t\t? `${ __( 'Current placeholder text is' ) } ${ placeholder }`\n\t\t\t: __( 'No custom placeholder set' );\n\t\treturn `${ title } ${ description }`;\n\t};\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Label field\n\t */\n\tconst getAccessibilityLabelForLabel = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-label';\n\t\t}\n\n\t\treturn `${ __( 'Search block label. Current text is' ) } ${ label }`;\n\t};\n\n\tconst renderTextField = () => {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ styles.searchInputContainer }\n\t\t\t\taccessible={ true }\n\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\taccessibilityHint={\n\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t? __( 'Double tap to edit placeholder text' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\taccessibilityLabel={ getAccessibilityLabelForPlaceholder() }\n\t\t\t>\n\t\t\t\t<PlainText\n\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\tisSelected={ isPlaceholderSelected }\n\t\t\t\t\tclassName=\"wp-block-search__input\"\n\t\t\t\t\tstyle={ inputStyle }\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tellipsizeMode=\"tail\" // Currently only works on ios.\n\t\t\t\t\tlabel={ null }\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t\t}\n\t\t\t\t\tonChange={ ( newVal ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: newVal } )\n\t\t\t\t\t}\n\t\t\t\t\tonFocus={ () => {\n\t\t\t\t\t\tsetIsPlaceholderSelected( true );\n\t\t\t\t\t\tonFocus();\n\t\t\t\t\t} }\n\t\t\t\t\tonBlur={ () => setIsPlaceholderSelected( false ) }\n\t\t\t\t\tplaceholderTextColor={ placeholderStyle?.color }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t};\n\n\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t// a `placeholder` as an empty string when `RichText` is focused,\n\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\tconst buttonPlaceholderText =\n\t\tisButtonSelected ||\n\t\t( ! isButtonSelected && buttonText && buttonText !== '' )\n\t\t\t? ''\n\t\t\t: __( 'Add button text' );\n\n\tconst baseButtonStyles = {\n\t\t...style?.baseColors?.blocks?.[ 'core/button' ]?.color,\n\t\t...attributes?.style?.color,\n\t\t...( style?.color && { text: style.color } ),\n\t};\n\n\tconst richTextButtonContainerStyle = [\n\t\tstyles.buttonContainer,\n\t\tisLongButton && styles.buttonContainerWide,\n\t\tbaseButtonStyles?.background && {\n\t\t\tbackgroundColor: baseButtonStyles.background,\n\t\t\tborderWidth: 0,\n\t\t},\n\t\tstyle?.backgroundColor && {\n\t\t\tbackgroundColor: style.backgroundColor,\n\t\t\tborderWidth: 0,\n\t\t},\n\t];\n\n\tconst richTextButtonStyle = {\n\t\t...styles.richTextButton,\n\t\t...( baseButtonStyles?.text && {\n\t\t\tcolor: baseButtonStyles.text,\n\t\t\tplaceholderColor: baseButtonStyles.text,\n\t\t} ),\n\t};\n\n\tconst iconStyles = {\n\t\t...styles.icon,\n\t\t...( baseButtonStyles?.text && { fill: baseButtonStyles.text } ),\n\t};\n\n\tconst renderButton = () => {\n\t\treturn (\n\t\t\t<View style={ richTextButtonContainerStyle }>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\t{ ...iconStyles }\n\t\t\t\t\t\tonLayout={ onLayoutButton }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<View\n\t\t\t\t\t\taccessible={ true }\n\t\t\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\t\t\taccessibilityHint={\n\t\t\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t\t\t? __( 'Double tap to edit button text' )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\taccessibilityLabel={ getAccessibilityLabelForButton() }\n\t\t\t\t\t\tonLayout={ onLayoutButton }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tclassName=\"wp-block-search__button\"\n\t\t\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\t\tstyle={ richTextButtonStyle }\n\t\t\t\t\t\t\tplaceholder={ buttonPlaceholderText }\n\t\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tminWidth={ MIN_BUTTON_WIDTH }\n\t\t\t\t\t\t\tmaxWidth={ blockWidth - MARGINS }\n\t\t\t\t\t\t\ttextAlign=\"center\"\n\t\t\t\t\t\t\tisSelected={ isButtonSelected }\n\t\t\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\t\t\tunstableOnFocus={ () => {\n\t\t\t\t\t\t\t\tsetIsButtonSelected( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\t\tsetIsButtonSelected( false );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tselectionColor={\n\t\t\t\t\t\t\t\tstyles.richTextButtonCursor?.color\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t);\n\t};\n\n\treturn (\n\t\t<View\n\t\t\t{ ...blockProps }\n\t\t\tstyle={ styles.searchBlockContainer }\n\t\t\timportantForAccessibility={\n\t\t\t\tisSelected ? 'yes' : 'no-hide-descendants'\n\t\t\t}\n\t\t\taccessibilityElementsHidden={ isSelected ? false : true }\n\t\t>\n\t\t\t{ isSelected && controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<View\n\t\t\t\t\taccessible={ true }\n\t\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\t\taccessibilityHint={\n\t\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t\t? __( 'Double tap to edit label text' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\taccessibilityLabel={ getAccessibilityLabelForLabel() }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tclassName=\"wp-block-search__label\"\n\t\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tstyle={ styles.richTextLabel }\n\t\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { label: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisSelected={ isLabelSelected }\n\t\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\t\tunstableOnFocus={ () => {\n\t\t\t\t\t\t\tsetIsLabelSelected( true );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tsetIsLabelSelected( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tselectionColor={ styles.richTextButtonCursor?.color }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\n\t\t\t{ ( 'button-inside' === buttonPosition ||\n\t\t\t\t'button-outside' === buttonPosition ) && (\n\t\t\t\t<View style={ searchBarStyle }>\n\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t{ renderButton() }\n\t\t\t\t</View>\n\t\t\t) }\n\n\t\t\t{ 'button-only' === buttonPosition && renderButton() }\n\t\t\t{ 'no-button' === buttonPosition && renderTextField() }\n\t\t</View>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,YAAA,GAAAH,OAAA;AAMA,IAAAI,WAAA,GAAAJ,OAAA;AAMA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAP,sBAAA,CAAAF,OAAA;AA7BA;AACA;AACA;;AAIA;AACA;AACA;;AAkBA;AACA;AACA;;AAGA;AACA;AACA;AACA,MAAMU,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,OAAO,GACZC,cAAM,CAACC,WAAW,EAAEC,UAAU,GAAGF,cAAM,CAACC,WAAW,EAAEE,WAAW;AAEjE,MAAMC,cAAc,GAAG,CACtB;EAAEC,KAAK,EAAE,eAAe;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,eAAgB;AAAE,CAAC,EACxD;EAAEF,KAAK,EAAE,gBAAgB;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB;AAAE,CAAC,EAC1D;EAAEF,KAAK,EAAE,WAAW;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY;AAAE,CAAC,CAChD;AAED,SAASC,wBAAwBA,CAAA,EAAG;EACnC,MAAM,CAAEC,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAElB,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAIC,OAAO,GAAG,IAAI;IAElB,MAAMC,cAAc,GAAGC,8BAAiB,CAACC,gBAAgB,CACxD,qBAAqB,EACnBC,OAAO,IAAMP,wBAAwB,CAAEO,OAAQ,CAClD,CAAC;IAEDF,8BAAiB,CAACN,qBAAqB,CAAC,CAAC,CAACS,IAAI,CAC3CC,mBAAmB,IAAM;MAC1B,IAAKN,OAAO,IAAIM,mBAAmB,EAAG;QACrCT,wBAAwB,CAAES,mBAAoB,CAAC;MAChD;IACD,CACD,CAAC;IAED,OAAO,MAAM;MACZN,OAAO,GAAG,KAAK;MAEfC,cAAc,CAACM,MAAM,CAAC,CAAC;IACxB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,OAAOX,qBAAqB;AAC7B;AAEe,SAASY,UAAUA,CAAE;EACnCC,OAAO;EACPC,UAAU;EACVC,UAAU;EACVC,aAAa;EACbC,SAAS;EACTC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,gBAAgB,EAAEC,mBAAmB,CAAE,GAAG,IAAAnB,iBAAQ,EAAE,KAAM,CAAC;EACnE,MAAM,CAAEoB,eAAe,EAAEC,kBAAkB,CAAE,GAAG,IAAArB,iBAAQ,EAAE,KAAM,CAAC;EACjE,MAAM,CAAEsB,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAvB,iBAAQ,EAAE,KAAM,CAAC;EAClB,MAAM,CAAEwB,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAzB,iBAAQ,EAAE,KAAM,CAAC;EAC3D,MAAM,CAAE0B,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAA3B,iBAAQ,EAAEb,gBAAiB,CAAC;EACpE,MAAMW,qBAAqB,GAAGD,wBAAwB,CAAC,CAAC;EAExD,MAAM+B,YAAY,GAAG,IAAAC,eAAM,EAAE,IAAK,CAAC;EAEnC,MAAM;IACLlC,KAAK;IACLmC,SAAS;IACTC,cAAc;IACdC,aAAa;IACbC,WAAW;IACXC;EACD,CAAC,GAAGrB,UAAU;;EAEd;AACD;AACA;AACA;EACC,IAAAZ,kBAAS,EAAE,MAAM;IAChB,IAAKkC,YAAY,CAAC,CAAC,IAAIb,qBAAqB,IAAI,CAAEV,UAAU,EAAG;MAC9DgB,YAAY,CAACQ,OAAO,CAACC,IAAI,CAAC,CAAC;IAC5B;EACD,CAAC,EAAE,CAAEzB,UAAU,CAAG,CAAC;EAEnB,IAAAX,kBAAS,EAAE,MAAM;IAChB,MAAMqC,cAAc,GAAGC,IAAI,CAACC,KAAK,CAAExB,UAAU,GAAG,CAAC,GAAG5B,OAAQ,CAAC;IAC7D,MAAMqD,gBAAgB,GAAGf,WAAW,GAAGY,cAAc;;IAErD;IACA,IAAKd,YAAY,KAAKiB,gBAAgB,EAAG;MACxChB,eAAe,CAAEgB,gBAAiB,CAAC;IACpC;EACD,CAAC,EAAE,CAAEzB,UAAU,EAAEU,WAAW,CAAG,CAAC;EAEhC,MAAMS,YAAY,GAAGA,CAAA,KAAM;IAC1B,OAAOP,YAAY,IAAIA,YAAY,CAACQ,OAAO;EAC5C,CAAC;EAED,MAAMM,cAAc,GAAGA,CAAE;IAAEC;EAAY,CAAC,KAAM;IAC7C,MAAM;MAAEC;IAAM,CAAC,GAAGD,WAAW,EAAEE,MAAM;IAErC,IAAKD,KAAK,EAAG;MACZjB,cAAc,CAAEiB,KAAM,CAAC;IACxB;EACD,CAAC;EAED,MAAME,kBAAkB,GAAGA,CAAA,KAAM;IAChC,OAAO,IAAAC,mBAAU,EAChBhC,SAAS,EACT,eAAe,KAAKgB,cAAc,GAC/B,gCAAgC,GAChCiB,SAAS,EACZ,gBAAgB,KAAKjB,cAAc,GAChC,iCAAiC,GACjCiB,SAAS,EACZ,WAAW,KAAKjB,cAAc,GAC3B,4BAA4B,GAC5BiB,SAAS,EACZ,aAAa,KAAKjB,cAAc,GAC7B,8BAA8B,GAC9BiB,SAAS,EACZ,CAAEhB,aAAa,IAAI,WAAW,KAAKD,cAAc,GAC9C,8BAA8B,GAC9BiB,SAAS,EACZhB,aAAa,IAAI,WAAW,KAAKD,cAAc,GAC5C,8BAA8B,GAC9BiB,SACJ,CAAC;EACF,CAAC;EAED,MAAMC,8BAA8B,GAAKC,MAAM,IAAM;IACpD,QAASA,MAAM;MACd,KAAK,eAAe;QACnB,OAAO,IAAAtD,QAAE,EAAE,QAAS,CAAC;MACtB,KAAK,gBAAgB;QACpB,OAAO,IAAAA,QAAE,EAAE,SAAU,CAAC;MACvB,KAAK,WAAW;QACf,OAAO,IAAAA,QAAE,EAAE,WAAY,CAAC;IAC1B;EACD,CAAC;EAED,MAAMuD,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCrC,SAAS,EAAE+B,kBAAkB,CAAC;EAC/B,CAAE,CAAC;EAEH,MAAMO,QAAQ,GACb,IAAAC,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4E,iBAAiB,QACjB,IAAAF,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA4E,SAAS;IAACC,KAAK,EAAG,IAAA9D,QAAE,EAAE,iBAAkB;EAAG,GAC3C,IAAA0D,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA8E,aAAa;IACbhE,KAAK,EAAG,IAAAC,QAAE,EAAE,qBAAsB,CAAG;IACrCgE,OAAO,EAAG,CAAE9B,SAAW;IACvB+B,QAAQ,EAAGA,CAAA,KAAM;MAChB/C,aAAa,CAAE;QACdgB,SAAS,EAAE,CAAEA;MACd,CAAE,CAAC;IACJ;EAAG,CACH,CAAC,EACF,IAAAwB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAiF,aAAa;IACbnE,KAAK,EAAG,IAAAC,QAAE,EAAE,iBAAkB,CAAG;IACjCF,KAAK,EAAGuD,8BAA8B,CAAElB,cAAe,CAAG;IAC1D8B,QAAQ,EAAKE,QAAQ,IAAM;MAC1BjD,aAAa,CAAE;QACdiB,cAAc,EAAEgC;MACjB,CAAE,CAAC;IACJ,CAAG;IACHC,OAAO,EAAGvE,cAAgB;IAC1BwE,gBAAgB,EAAG;EAAM,CACzB,CAAC,EACAlC,cAAc,KAAK,WAAW,IAC/B,IAAAuB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA8E,aAAa;IACbhE,KAAK,EAAG,IAAAC,QAAE,EAAE,iBAAkB,CAAG;IACjCgE,OAAO,EAAG5B,aAAe;IACzB6B,QAAQ,EAAGA,CAAA,KAAM;MAChB/C,aAAa,CAAE;QACdkB,aAAa,EAAE,CAAEA;MAClB,CAAE,CAAC;IACJ;EAAG,CACH,CAEQ,CACO,CACnB;EAED,MAAMkC,cAAc,GAAGnC,cAAc,KAAK,eAAe;EAEzD,MAAMoC,WAAW,GAAG,IAAAC,qCAA4B,EAC/C/E,cAAM,CAACgF,MAAM,EACbhF,cAAM,CAACiF,UACR,CAAC;EAED,MAAMC,UAAU,GAAG,CAClB,CAAEL,cAAc,IAAIC,WAAW,EAC/B,IAAAC,qCAA4B,EAC3B/E,cAAM,CAACmF,cAAc,EACrBnF,cAAM,CAACoF,kBACR,CAAC,EACDxD,KAAK,EAAEyD,UAAU,EAAEC,KAAK,IAAI;IAAEA,KAAK,EAAE1D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,EAAEC;EAAK,CAAC,CACrE;EAED,MAAMC,gBAAgB,GAAG;IACxB,GAAG,IAAAT,qCAA4B,EAC9B/E,cAAM,CAACyF,oBAAoB,EAC3BzF,cAAM,CAAC0F,wBACR,CAAC;IACD,IAAK9D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,IAAI;MAChCA,KAAK,EAAE1D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,EAAEC;IAClC,CAAC;EACF,CAAC;EAED,MAAMI,cAAc,GAAG,CACtB3F,cAAM,CAAC4F,kBAAkB,EACzBf,cAAc,IAAIC,WAAW,EAC7B3C,YAAY,IAAI;IAAE0D,aAAa,EAAE;EAAS,CAAC,CAC3C;;EAED;AACD;AACA;AACA;AACA;AACA;EACC,MAAMC,8BAA8B,GAAGA,CAAA,KAAM;IAC5C,IAAK,CAAErF,qBAAqB,EAAG;MAC9B,OAAO,qBAAqB;IAC7B;IAEA,OAAQ,GAAG,IAAAF,QAAE,EACZ,uCACD,CAAG,IAAIsC,UAAY,EAAC;EACrB,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;EACC,MAAMkD,mCAAmC,GAAGA,CAAA,KAAM;IACjD,IAAK,CAAEtF,qBAAqB,EAAG;MAC9B,OAAO,oBAAoB;IAC5B;IAEA,MAAM4D,KAAK,GAAG,IAAA9D,QAAE,EAAE,qBAAsB,CAAC;IACzC,MAAMyF,WAAW,GAAGpD,WAAW,GAC3B,GAAG,IAAArC,QAAE,EAAE,6BAA8B,CAAG,IAAIqC,WAAa,EAAC,GAC3D,IAAArC,QAAE,EAAE,2BAA4B,CAAC;IACpC,OAAQ,GAAG8D,KAAO,IAAI2B,WAAa,EAAC;EACrC,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;EACC,MAAMC,6BAA6B,GAAGA,CAAA,KAAM;IAC3C,IAAK,CAAExF,qBAAqB,EAAG;MAC9B,OAAO,oBAAoB;IAC5B;IAEA,OAAQ,GAAG,IAAAF,QAAE,EAAE,qCAAsC,CAAG,IAAID,KAAO,EAAC;EACrE,CAAC;EAED,MAAM4F,eAAe,GAAGA,CAAA,KAAM;IAC7B,OACC,IAAAjC,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MACJvE,KAAK,EAAG5B,cAAM,CAACoG,oBAAsB;MACrCC,UAAU,EAAG,IAAM;MACnBC,iBAAiB,EAAC,MAAM;MACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,qCAAsC,CAAC,GAC3CoD,SACH;MACD6C,kBAAkB,EAAGT,mCAAmC,CAAC;IAAG,GAE5D,IAAA9B,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAAkH,SAAS;MACTC,GAAG,EAAGnE,YAAc;MACpBhB,UAAU,EAAGU,qBAAuB;MACpCP,SAAS,EAAC,wBAAwB;MAClCE,KAAK,EAAGsD,UAAY;MACpByB,aAAa,EAAG,CAAG;MACnBC,aAAa,EAAC,MAAM,CAAC;MAAA;MACrBtG,KAAK,EAAG,IAAM;MACdD,KAAK,EAAGuC,WAAa;MACrBA,WAAW,EACVA,WAAW,GAAGe,SAAS,GAAG,IAAApD,QAAE,EAAE,uBAAwB,CACtD;MACDiE,QAAQ,EAAKqC,MAAM,IAClBpF,aAAa,CAAE;QAAEmB,WAAW,EAAEiE;MAAO,CAAE,CACvC;MACDvF,OAAO,EAAGA,CAAA,KAAM;QACfY,wBAAwB,CAAE,IAAK,CAAC;QAChCZ,OAAO,CAAC,CAAC;MACV,CAAG;MACHwF,MAAM,EAAGA,CAAA,KAAM5E,wBAAwB,CAAE,KAAM,CAAG;MAClD6E,oBAAoB,EAAGvB,gBAAgB,EAAEF;IAAO,CAChD,CACI,CAAC;EAET,CAAC;;EAED;EACA;EACA;EACA,MAAM0B,qBAAqB,GAC1BnF,gBAAgB,IACd,CAAEA,gBAAgB,IAAIgB,UAAU,IAAIA,UAAU,KAAK,EAAI,GACtD,EAAE,GACF,IAAAtC,QAAE,EAAE,iBAAkB,CAAC;EAE3B,MAAM0G,gBAAgB,GAAG;IACxB,GAAGrF,KAAK,EAAEyD,UAAU,EAAE6B,MAAM,GAAI,aAAa,CAAE,EAAE5B,KAAK;IACtD,GAAG9D,UAAU,EAAEI,KAAK,EAAE0D,KAAK;IAC3B,IAAK1D,KAAK,EAAE0D,KAAK,IAAI;MAAEC,IAAI,EAAE3D,KAAK,CAAC0D;IAAM,CAAC;EAC3C,CAAC;EAED,MAAM6B,4BAA4B,GAAG,CACpCnH,cAAM,CAACoH,eAAe,EACtBjF,YAAY,IAAInC,cAAM,CAACqH,mBAAmB,EAC1CJ,gBAAgB,EAAEK,UAAU,IAAI;IAC/BC,eAAe,EAAEN,gBAAgB,CAACK,UAAU;IAC5CE,WAAW,EAAE;EACd,CAAC,EACD5F,KAAK,EAAE2F,eAAe,IAAI;IACzBA,eAAe,EAAE3F,KAAK,CAAC2F,eAAe;IACtCC,WAAW,EAAE;EACd,CAAC,CACD;EAED,MAAMC,mBAAmB,GAAG;IAC3B,GAAGzH,cAAM,CAAC0H,cAAc;IACxB,IAAKT,gBAAgB,EAAE1B,IAAI,IAAI;MAC9BD,KAAK,EAAE2B,gBAAgB,CAAC1B,IAAI;MAC5BoC,gBAAgB,EAAEV,gBAAgB,CAAC1B;IACpC,CAAC;EACF,CAAC;EAED,MAAMqC,UAAU,GAAG;IAClB,GAAG5H,cAAM,CAAC6H,IAAI;IACd,IAAKZ,gBAAgB,EAAE1B,IAAI,IAAI;MAAEuC,IAAI,EAAEb,gBAAgB,CAAC1B;IAAK,CAAC;EAC/D,CAAC;EAED,MAAMwC,YAAY,GAAGA,CAAA,KAAM;IAC1B,OACC,IAAA9D,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MAACvE,KAAK,EAAGuF;IAA8B,GACzCxE,aAAa,IACd,IAAAsB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAwI,IAAI;MACJH,IAAI,EAAGI,aAAQ;MAAA,GACVL,UAAU;MACfM,QAAQ,EAAG7E;IAAgB,CAC3B,CACD,EAEC,CAAEV,aAAa,IAChB,IAAAsB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MACJE,UAAU,EAAG,IAAM;MACnBC,iBAAiB,EAAC,MAAM;MACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,gCAAiC,CAAC,GACtCoD,SACH;MACD6C,kBAAkB,EAAGV,8BAA8B,CAAC,CAAG;MACvDoC,QAAQ,EAAG7E;IAAgB,GAE3B,IAAAY,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4I,QAAQ;MACRzG,SAAS,EAAC,yBAAyB;MACnC0G,UAAU,EAAC,MAAM;MACjBC,OAAO,EAAC,GAAG;MACXzG,KAAK,EAAG6F,mBAAqB;MAC7B7E,WAAW,EAAGoE,qBAAuB;MACrC3G,KAAK,EAAGwC,UAAY;MACpByF,4BAA4B;MAC5B9D,QAAQ,EAAK+D,IAAI,IAChB9G,aAAa,CAAE;QAAEoB,UAAU,EAAE0F;MAAK,CAAE,CACpC;MACDC,QAAQ,EAAG1I,gBAAkB;MAC7B2I,QAAQ,EAAG9G,UAAU,GAAG5B,OAAS;MACjC2I,SAAS,EAAC,QAAQ;MAClBnH,UAAU,EAAGM,gBAAkB;MAC/B8G,8BAA8B,EAAG,CAAEpH,UAAY;MAC/CqH,eAAe,EAAGA,CAAA,KAAM;QACvB9G,mBAAmB,CAAE,IAAK,CAAC;MAC5B,CAAG;MACHgF,MAAM,EAAGA,CAAA,KAAM;QACdhF,mBAAmB,CAAE,KAAM,CAAC;MAC7B,CAAG;MACH+G,cAAc,EACb7I,cAAM,CAAC8I,oBAAoB,EAAExD;IAC7B,CACD,CACI,CAEF,CAAC;EAET,CAAC;EAED,OACC,IAAArB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IAAA,GACCrC,UAAU;IACflC,KAAK,EAAG5B,cAAM,CAAC+I,oBAAsB;IACrCC,yBAAyB,EACxBzH,UAAU,GAAG,KAAK,GAAG,qBACrB;IACD0H,2BAA2B,EAAG1H,UAAU,GAAG,KAAK,GAAG;EAAM,GAEvDA,UAAU,IAAIyC,QAAQ,EAEtBvB,SAAS,IACV,IAAAwB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IACJE,UAAU,EAAG,IAAM;IACnBC,iBAAiB,EAAC,MAAM;IACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,+BAAgC,CAAC,GACrCoD,SACH;IACD6C,kBAAkB,EAAGP,6BAA6B,CAAC;EAAG,GAEtD,IAAAhC,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4I,QAAQ;IACRzG,SAAS,EAAC,wBAAwB;IAClC0G,UAAU,EAAC,MAAM;IACjBC,OAAO,EAAC,GAAG;IACXzG,KAAK,EAAG5B,cAAM,CAACkJ,aAAe;IAC9BtG,WAAW,EAAG,IAAArC,QAAE,EAAE,YAAa,CAAG;IAClC+H,4BAA4B;IAC5BjI,KAAK,EAAGC,KAAO;IACfkE,QAAQ,EAAK+D,IAAI,IAChB9G,aAAa,CAAE;MAAEnB,KAAK,EAAEiI;IAAK,CAAE,CAC/B;IACDhH,UAAU,EAAGQ,eAAiB;IAC9B4G,8BAA8B,EAAG,CAAEpH,UAAY;IAC/CqH,eAAe,EAAGA,CAAA,KAAM;MACvB5G,kBAAkB,CAAE,IAAK,CAAC;IAC3B,CAAG;IACH8E,MAAM,EAAGA,CAAA,KAAM;MACd9E,kBAAkB,CAAE,KAAM,CAAC;IAC5B,CAAG;IACH6G,cAAc,EAAG7I,cAAM,CAAC8I,oBAAoB,EAAExD;EAAO,CACrD,CACI,CACN,EAEC,CAAE,eAAe,KAAK5C,cAAc,IACrC,gBAAgB,KAAKA,cAAc,KACnC,IAAAuB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IAACvE,KAAK,EAAG+D;EAAgB,GAC3BO,eAAe,CAAC,CAAC,EACjB6B,YAAY,CAAC,CACV,CACN,EAEC,aAAa,KAAKrF,cAAc,IAAIqF,YAAY,CAAC,CAAC,EAClD,WAAW,KAAKrF,cAAc,IAAIwD,eAAe,CAAC,CAC/C,CAAC;AAET"}
1
+ {"version":3,"names":["_reactNative","require","_classnames","_interopRequireDefault","_blockEditor","_components","_i18n","_icons","_element","_compose","_style","MIN_BUTTON_WIDTH","MARGINS","styles","widthMargin","marginLeft","paddingLeft","BUTTON_OPTIONS","value","label","__","useIsScreenReaderEnabled","isScreenReaderEnabled","setIsScreenReaderEnabled","useState","useEffect","mounted","changeListener","AccessibilityInfo","addEventListener","enabled","then","screenReaderEnabled","remove","SearchEdit","onFocus","isSelected","attributes","setAttributes","className","blockWidth","style","isButtonSelected","setIsButtonSelected","isLabelSelected","setIsLabelSelected","isPlaceholderSelected","setIsPlaceholderSelected","isLongButton","setIsLongButton","buttonWidth","setButtonWidth","textInputRef","useRef","showLabel","buttonPosition","buttonUseIcon","placeholder","buttonText","hasTextInput","current","blur","maxButtonWidth","Math","floor","tempIsLongButton","onLayoutButton","nativeEvent","width","layout","getBlockClassNames","classnames","undefined","getSelectedButtonPositionLabel","option","blockProps","useBlockProps","controls","_react","createElement","InspectorControls","PanelBody","title","ToggleControl","checked","onChange","SelectControl","position","options","hideCancelButton","isButtonInside","borderStyle","usePreferredColorSchemeStyle","border","borderDark","inputStyle","plainTextInput","plainTextInputDark","baseColors","color","text","placeholderStyle","plainTextPlaceholder","plainTextPlaceholderDark","searchBarStyle","searchBarContainer","flexDirection","getAccessibilityLabelForButton","getAccessibilityLabelForPlaceholder","description","getAccessibilityLabelForLabel","renderTextField","View","searchInputContainer","accessible","accessibilityRole","accessibilityHint","accessibilityLabel","PlainText","ref","numberOfLines","ellipsizeMode","newVal","onBlur","placeholderTextColor","buttonPlaceholderText","baseButtonStyles","blocks","richTextButtonContainerStyle","buttonContainer","buttonContainerWide","background","backgroundColor","borderWidth","richTextButtonStyle","richTextButton","placeholderColor","iconStyles","icon","fill","renderButton","Icon","search","onLayout","RichText","identifier","tagName","withoutInteractiveFormatting","html","minWidth","maxWidth","textAlign","__unstableMobileNoFocusOnMount","unstableOnFocus","selectionColor","richTextButtonCursor","searchBlockContainer","importantForAccessibility","accessibilityElementsHidden","richTextLabel"],"sources":["@wordpress/block-library/src/search/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo } from 'react-native';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tPlainText,\n\tuseBlockProps,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tIcon,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { search } from '@wordpress/icons';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n/**\n * Constants\n */\nconst MIN_BUTTON_WIDTH = 75;\nconst MARGINS =\n\tstyles.widthMargin?.marginLeft + styles.widthMargin?.paddingLeft;\n\nconst BUTTON_OPTIONS = [\n\t{ value: 'button-inside', label: __( 'Button inside' ) },\n\t{ value: 'button-outside', label: __( 'Button outside' ) },\n\t{ value: 'no-button', label: __( 'No button' ) },\n];\n\nfunction useIsScreenReaderEnabled() {\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tlet mounted = true;\n\n\t\tconst changeListener = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\t( enabled ) => setIsScreenReaderEnabled( enabled )\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then(\n\t\t\t( screenReaderEnabled ) => {\n\t\t\t\tif ( mounted && screenReaderEnabled ) {\n\t\t\t\t\tsetIsScreenReaderEnabled( screenReaderEnabled );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn () => {\n\t\t\tmounted = false;\n\n\t\t\tchangeListener.remove();\n\t\t};\n\t}, [] );\n\n\treturn isScreenReaderEnabled;\n}\n\nexport default function SearchEdit( {\n\tonFocus,\n\tisSelected,\n\tattributes,\n\tsetAttributes,\n\tclassName,\n\tblockWidth,\n\tstyle,\n} ) {\n\tconst [ isButtonSelected, setIsButtonSelected ] = useState( false );\n\tconst [ isLabelSelected, setIsLabelSelected ] = useState( false );\n\tconst [ isPlaceholderSelected, setIsPlaceholderSelected ] =\n\t\tuseState( false );\n\tconst [ isLongButton, setIsLongButton ] = useState( false );\n\tconst [ buttonWidth, setButtonWidth ] = useState( MIN_BUTTON_WIDTH );\n\tconst isScreenReaderEnabled = useIsScreenReaderEnabled();\n\n\tconst textInputRef = useRef( null );\n\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tplaceholder,\n\t\tbuttonText,\n\t} = attributes;\n\n\t/*\n\t * Called when the value of isSelected changes. Blurs the PlainText component\n\t * used by the placeholder when this block loses focus.\n\t */\n\tuseEffect( () => {\n\t\tif ( hasTextInput() && isPlaceholderSelected && ! isSelected ) {\n\t\t\ttextInputRef.current.blur();\n\t\t}\n\t}, [ isSelected ] );\n\n\tuseEffect( () => {\n\t\tconst maxButtonWidth = Math.floor( blockWidth / 2 - MARGINS );\n\t\tconst tempIsLongButton = buttonWidth > maxButtonWidth;\n\n\t\t// Update this value only if it has changed to avoid flickering.\n\t\tif ( isLongButton !== tempIsLongButton ) {\n\t\t\tsetIsLongButton( tempIsLongButton );\n\t\t}\n\t}, [ blockWidth, buttonWidth ] );\n\n\tconst hasTextInput = () => {\n\t\treturn textInputRef && textInputRef.current;\n\t};\n\n\tconst onLayoutButton = ( { nativeEvent } ) => {\n\t\tconst { width } = nativeEvent?.layout;\n\n\t\tif ( width ) {\n\t\t\tsetButtonWidth( width );\n\t\t}\n\t};\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\t'button-inside' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\t'button-outside' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\t'no-button' === buttonPosition\n\t\t\t\t? 'wp-block-search__no-button'\n\t\t\t\t: undefined,\n\t\t\t'button-only' === buttonPosition\n\t\t\t\t? 'wp-block-search__button-only'\n\t\t\t\t: undefined,\n\t\t\t! buttonUseIcon && 'no-button' !== buttonPosition\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && 'no-button' !== buttonPosition\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst getSelectedButtonPositionLabel = ( option ) => {\n\t\tswitch ( option ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn __( 'Inside' );\n\t\t\tcase 'button-outside':\n\t\t\t\treturn __( 'Outside' );\n\t\t\tcase 'no-button':\n\t\t\t\treturn __( 'No button' );\n\t\t}\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t} );\n\n\tconst controls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Search settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Hide search heading' ) }\n\t\t\t\t\tchecked={ ! showLabel }\n\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Button position' ) }\n\t\t\t\t\tvalue={ getSelectedButtonPositionLabel( buttonPosition ) }\n\t\t\t\t\tonChange={ ( position ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tbuttonPosition: position,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\toptions={ BUTTON_OPTIONS }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t\t{ buttonPosition !== 'no-button' && (\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Use icon button' ) }\n\t\t\t\t\t\tchecked={ buttonUseIcon }\n\t\t\t\t\t\tonChange={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst isButtonInside = buttonPosition === 'button-inside';\n\n\tconst borderStyle = usePreferredColorSchemeStyle(\n\t\tstyles.border,\n\t\tstyles.borderDark\n\t);\n\n\tconst inputStyle = [\n\t\t! isButtonInside && borderStyle,\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.plainTextInput,\n\t\t\tstyles.plainTextInputDark\n\t\t),\n\t\tstyle?.baseColors?.color && { color: style?.baseColors?.color?.text },\n\t];\n\n\tconst placeholderStyle = {\n\t\t...usePreferredColorSchemeStyle(\n\t\t\tstyles.plainTextPlaceholder,\n\t\t\tstyles.plainTextPlaceholderDark\n\t\t),\n\t\t...( style?.baseColors?.color && {\n\t\t\tcolor: style?.baseColors?.color?.text,\n\t\t} ),\n\t};\n\n\tconst searchBarStyle = [\n\t\tstyles.searchBarContainer,\n\t\tisButtonInside && borderStyle,\n\t\tisLongButton && { flexDirection: 'column' },\n\t];\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Button\n\t */\n\tconst getAccessibilityLabelForButton = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-button';\n\t\t}\n\n\t\treturn `${ __(\n\t\t\t'Search button. Current button text is'\n\t\t) } ${ buttonText }`;\n\t};\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Input\n\t * \t\t\t\t\t placeholder field.\n\t */\n\tconst getAccessibilityLabelForPlaceholder = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-input';\n\t\t}\n\n\t\tconst title = __( 'Search input field.' );\n\t\tconst description = placeholder\n\t\t\t? `${ __( 'Current placeholder text is' ) } ${ placeholder }`\n\t\t\t: __( 'No custom placeholder set' );\n\t\treturn `${ title } ${ description }`;\n\t};\n\n\t/**\n\t * If a screenreader is enabled, create a descriptive label for this field. If\n\t * not, return a label that is used during automated UI tests.\n\t *\n\t * @return {string} The accessibilityLabel for the Search Label field\n\t */\n\tconst getAccessibilityLabelForLabel = () => {\n\t\tif ( ! isScreenReaderEnabled ) {\n\t\t\treturn 'search-block-label';\n\t\t}\n\n\t\treturn `${ __( 'Search block label. Current text is' ) } ${ label }`;\n\t};\n\n\tconst renderTextField = () => {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tstyle={ styles.searchInputContainer }\n\t\t\t\taccessible\n\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\taccessibilityHint={\n\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t? __( 'Double tap to edit placeholder text' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\taccessibilityLabel={ getAccessibilityLabelForPlaceholder() }\n\t\t\t>\n\t\t\t\t<PlainText\n\t\t\t\t\tref={ textInputRef }\n\t\t\t\t\tisSelected={ isPlaceholderSelected }\n\t\t\t\t\tclassName=\"wp-block-search__input\"\n\t\t\t\t\tstyle={ inputStyle }\n\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\tellipsizeMode=\"tail\" // Currently only works on ios.\n\t\t\t\t\tlabel={ null }\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t\t}\n\t\t\t\t\tonChange={ ( newVal ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: newVal } )\n\t\t\t\t\t}\n\t\t\t\t\tonFocus={ () => {\n\t\t\t\t\t\tsetIsPlaceholderSelected( true );\n\t\t\t\t\t\tonFocus();\n\t\t\t\t\t} }\n\t\t\t\t\tonBlur={ () => setIsPlaceholderSelected( false ) }\n\t\t\t\t\tplaceholderTextColor={ placeholderStyle?.color }\n\t\t\t\t/>\n\t\t\t</View>\n\t\t);\n\t};\n\n\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t// a `placeholder` as an empty string when `RichText` is focused,\n\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\tconst buttonPlaceholderText =\n\t\tisButtonSelected ||\n\t\t( ! isButtonSelected && buttonText && buttonText !== '' )\n\t\t\t? ''\n\t\t\t: __( 'Add button text' );\n\n\tconst baseButtonStyles = {\n\t\t...style?.baseColors?.blocks?.[ 'core/button' ]?.color,\n\t\t...attributes?.style?.color,\n\t\t...( style?.color && { text: style.color } ),\n\t};\n\n\tconst richTextButtonContainerStyle = [\n\t\tstyles.buttonContainer,\n\t\tisLongButton && styles.buttonContainerWide,\n\t\tbaseButtonStyles?.background && {\n\t\t\tbackgroundColor: baseButtonStyles.background,\n\t\t\tborderWidth: 0,\n\t\t},\n\t\tstyle?.backgroundColor && {\n\t\t\tbackgroundColor: style.backgroundColor,\n\t\t\tborderWidth: 0,\n\t\t},\n\t];\n\n\tconst richTextButtonStyle = {\n\t\t...styles.richTextButton,\n\t\t...( baseButtonStyles?.text && {\n\t\t\tcolor: baseButtonStyles.text,\n\t\t\tplaceholderColor: baseButtonStyles.text,\n\t\t} ),\n\t};\n\n\tconst iconStyles = {\n\t\t...styles.icon,\n\t\t...( baseButtonStyles?.text && { fill: baseButtonStyles.text } ),\n\t};\n\n\tconst renderButton = () => {\n\t\treturn (\n\t\t\t<View style={ richTextButtonContainerStyle }>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\t{ ...iconStyles }\n\t\t\t\t\t\tonLayout={ onLayoutButton }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<View\n\t\t\t\t\t\taccessible\n\t\t\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\t\t\taccessibilityHint={\n\t\t\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t\t\t? __( 'Double tap to edit button text' )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\taccessibilityLabel={ getAccessibilityLabelForButton() }\n\t\t\t\t\t\tonLayout={ onLayoutButton }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tclassName=\"wp-block-search__button\"\n\t\t\t\t\t\t\tidentifier=\"buttonText\"\n\t\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\t\tstyle={ richTextButtonStyle }\n\t\t\t\t\t\t\tplaceholder={ buttonPlaceholderText }\n\t\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tminWidth={ MIN_BUTTON_WIDTH }\n\t\t\t\t\t\t\tmaxWidth={ blockWidth - MARGINS }\n\t\t\t\t\t\t\ttextAlign=\"center\"\n\t\t\t\t\t\t\tisSelected={ isButtonSelected }\n\t\t\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\t\t\tunstableOnFocus={ () => {\n\t\t\t\t\t\t\t\tsetIsButtonSelected( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\t\tsetIsButtonSelected( false );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tselectionColor={\n\t\t\t\t\t\t\t\tstyles.richTextButtonCursor?.color\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t);\n\t};\n\n\treturn (\n\t\t<View\n\t\t\t{ ...blockProps }\n\t\t\tstyle={ styles.searchBlockContainer }\n\t\t\timportantForAccessibility={\n\t\t\t\tisSelected ? 'yes' : 'no-hide-descendants'\n\t\t\t}\n\t\t\taccessibilityElementsHidden={ isSelected ? false : true }\n\t\t>\n\t\t\t{ isSelected && controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<View\n\t\t\t\t\taccessible\n\t\t\t\t\taccessibilityRole=\"none\"\n\t\t\t\t\taccessibilityHint={\n\t\t\t\t\t\tisScreenReaderEnabled\n\t\t\t\t\t\t\t? __( 'Double tap to edit label text' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\taccessibilityLabel={ getAccessibilityLabelForLabel() }\n\t\t\t\t>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tclassName=\"wp-block-search__label\"\n\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\t\tstyle={ styles.richTextLabel }\n\t\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { label: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisSelected={ isLabelSelected }\n\t\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\t\tunstableOnFocus={ () => {\n\t\t\t\t\t\t\tsetIsLabelSelected( true );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonBlur={ () => {\n\t\t\t\t\t\t\tsetIsLabelSelected( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tselectionColor={ styles.richTextButtonCursor?.color }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\n\t\t\t{ ( 'button-inside' === buttonPosition ||\n\t\t\t\t'button-outside' === buttonPosition ) && (\n\t\t\t\t<View style={ searchBarStyle }>\n\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t{ renderButton() }\n\t\t\t\t</View>\n\t\t\t) }\n\n\t\t\t{ 'button-only' === buttonPosition && renderButton() }\n\t\t\t{ 'no-button' === buttonPosition && renderTextField() }\n\t\t</View>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,YAAA,GAAAH,OAAA;AAMA,IAAAI,WAAA,GAAAJ,OAAA;AAMA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,MAAA,GAAAP,sBAAA,CAAAF,OAAA;AA7BA;AACA;AACA;;AAIA;AACA;AACA;;AAkBA;AACA;AACA;;AAGA;AACA;AACA;AACA,MAAMU,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,OAAO,GACZC,cAAM,CAACC,WAAW,EAAEC,UAAU,GAAGF,cAAM,CAACC,WAAW,EAAEE,WAAW;AAEjE,MAAMC,cAAc,GAAG,CACtB;EAAEC,KAAK,EAAE,eAAe;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,eAAgB;AAAE,CAAC,EACxD;EAAEF,KAAK,EAAE,gBAAgB;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB;AAAE,CAAC,EAC1D;EAAEF,KAAK,EAAE,WAAW;EAAEC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY;AAAE,CAAC,CAChD;AAED,SAASC,wBAAwBA,CAAA,EAAG;EACnC,MAAM,CAAEC,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EAElB,IAAAC,kBAAS,EAAE,MAAM;IAChB,IAAIC,OAAO,GAAG,IAAI;IAElB,MAAMC,cAAc,GAAGC,8BAAiB,CAACC,gBAAgB,CACxD,qBAAqB,EACnBC,OAAO,IAAMP,wBAAwB,CAAEO,OAAQ,CAClD,CAAC;IAEDF,8BAAiB,CAACN,qBAAqB,CAAC,CAAC,CAACS,IAAI,CAC3CC,mBAAmB,IAAM;MAC1B,IAAKN,OAAO,IAAIM,mBAAmB,EAAG;QACrCT,wBAAwB,CAAES,mBAAoB,CAAC;MAChD;IACD,CACD,CAAC;IAED,OAAO,MAAM;MACZN,OAAO,GAAG,KAAK;MAEfC,cAAc,CAACM,MAAM,CAAC,CAAC;IACxB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,OAAOX,qBAAqB;AAC7B;AAEe,SAASY,UAAUA,CAAE;EACnCC,OAAO;EACPC,UAAU;EACVC,UAAU;EACVC,aAAa;EACbC,SAAS;EACTC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,gBAAgB,EAAEC,mBAAmB,CAAE,GAAG,IAAAnB,iBAAQ,EAAE,KAAM,CAAC;EACnE,MAAM,CAAEoB,eAAe,EAAEC,kBAAkB,CAAE,GAAG,IAAArB,iBAAQ,EAAE,KAAM,CAAC;EACjE,MAAM,CAAEsB,qBAAqB,EAAEC,wBAAwB,CAAE,GACxD,IAAAvB,iBAAQ,EAAE,KAAM,CAAC;EAClB,MAAM,CAAEwB,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAzB,iBAAQ,EAAE,KAAM,CAAC;EAC3D,MAAM,CAAE0B,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAA3B,iBAAQ,EAAEb,gBAAiB,CAAC;EACpE,MAAMW,qBAAqB,GAAGD,wBAAwB,CAAC,CAAC;EAExD,MAAM+B,YAAY,GAAG,IAAAC,eAAM,EAAE,IAAK,CAAC;EAEnC,MAAM;IACLlC,KAAK;IACLmC,SAAS;IACTC,cAAc;IACdC,aAAa;IACbC,WAAW;IACXC;EACD,CAAC,GAAGrB,UAAU;;EAEd;AACD;AACA;AACA;EACC,IAAAZ,kBAAS,EAAE,MAAM;IAChB,IAAKkC,YAAY,CAAC,CAAC,IAAIb,qBAAqB,IAAI,CAAEV,UAAU,EAAG;MAC9DgB,YAAY,CAACQ,OAAO,CAACC,IAAI,CAAC,CAAC;IAC5B;EACD,CAAC,EAAE,CAAEzB,UAAU,CAAG,CAAC;EAEnB,IAAAX,kBAAS,EAAE,MAAM;IAChB,MAAMqC,cAAc,GAAGC,IAAI,CAACC,KAAK,CAAExB,UAAU,GAAG,CAAC,GAAG5B,OAAQ,CAAC;IAC7D,MAAMqD,gBAAgB,GAAGf,WAAW,GAAGY,cAAc;;IAErD;IACA,IAAKd,YAAY,KAAKiB,gBAAgB,EAAG;MACxChB,eAAe,CAAEgB,gBAAiB,CAAC;IACpC;EACD,CAAC,EAAE,CAAEzB,UAAU,EAAEU,WAAW,CAAG,CAAC;EAEhC,MAAMS,YAAY,GAAGA,CAAA,KAAM;IAC1B,OAAOP,YAAY,IAAIA,YAAY,CAACQ,OAAO;EAC5C,CAAC;EAED,MAAMM,cAAc,GAAGA,CAAE;IAAEC;EAAY,CAAC,KAAM;IAC7C,MAAM;MAAEC;IAAM,CAAC,GAAGD,WAAW,EAAEE,MAAM;IAErC,IAAKD,KAAK,EAAG;MACZjB,cAAc,CAAEiB,KAAM,CAAC;IACxB;EACD,CAAC;EAED,MAAME,kBAAkB,GAAGA,CAAA,KAAM;IAChC,OAAO,IAAAC,mBAAU,EAChBhC,SAAS,EACT,eAAe,KAAKgB,cAAc,GAC/B,gCAAgC,GAChCiB,SAAS,EACZ,gBAAgB,KAAKjB,cAAc,GAChC,iCAAiC,GACjCiB,SAAS,EACZ,WAAW,KAAKjB,cAAc,GAC3B,4BAA4B,GAC5BiB,SAAS,EACZ,aAAa,KAAKjB,cAAc,GAC7B,8BAA8B,GAC9BiB,SAAS,EACZ,CAAEhB,aAAa,IAAI,WAAW,KAAKD,cAAc,GAC9C,8BAA8B,GAC9BiB,SAAS,EACZhB,aAAa,IAAI,WAAW,KAAKD,cAAc,GAC5C,8BAA8B,GAC9BiB,SACJ,CAAC;EACF,CAAC;EAED,MAAMC,8BAA8B,GAAKC,MAAM,IAAM;IACpD,QAASA,MAAM;MACd,KAAK,eAAe;QACnB,OAAO,IAAAtD,QAAE,EAAE,QAAS,CAAC;MACtB,KAAK,gBAAgB;QACpB,OAAO,IAAAA,QAAE,EAAE,SAAU,CAAC;MACvB,KAAK,WAAW;QACf,OAAO,IAAAA,QAAE,EAAE,WAAY,CAAC;IAC1B;EACD,CAAC;EAED,MAAMuD,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCrC,SAAS,EAAE+B,kBAAkB,CAAC;EAC/B,CAAE,CAAC;EAEH,MAAMO,QAAQ,GACb,IAAAC,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4E,iBAAiB,QACjB,IAAAF,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA4E,SAAS;IAACC,KAAK,EAAG,IAAA9D,QAAE,EAAE,iBAAkB;EAAG,GAC3C,IAAA0D,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA8E,aAAa;IACbhE,KAAK,EAAG,IAAAC,QAAE,EAAE,qBAAsB,CAAG;IACrCgE,OAAO,EAAG,CAAE9B,SAAW;IACvB+B,QAAQ,EAAGA,CAAA,KAAM;MAChB/C,aAAa,CAAE;QACdgB,SAAS,EAAE,CAAEA;MACd,CAAE,CAAC;IACJ;EAAG,CACH,CAAC,EACF,IAAAwB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAiF,aAAa;IACbnE,KAAK,EAAG,IAAAC,QAAE,EAAE,iBAAkB,CAAG;IACjCF,KAAK,EAAGuD,8BAA8B,CAAElB,cAAe,CAAG;IAC1D8B,QAAQ,EAAKE,QAAQ,IAAM;MAC1BjD,aAAa,CAAE;QACdiB,cAAc,EAAEgC;MACjB,CAAE,CAAC;IACJ,CAAG;IACHC,OAAO,EAAGvE,cAAgB;IAC1BwE,gBAAgB;EAAA,CAChB,CAAC,EACAlC,cAAc,KAAK,WAAW,IAC/B,IAAAuB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAA8E,aAAa;IACbhE,KAAK,EAAG,IAAAC,QAAE,EAAE,iBAAkB,CAAG;IACjCgE,OAAO,EAAG5B,aAAe;IACzB6B,QAAQ,EAAGA,CAAA,KAAM;MAChB/C,aAAa,CAAE;QACdkB,aAAa,EAAE,CAAEA;MAClB,CAAE,CAAC;IACJ;EAAG,CACH,CAEQ,CACO,CACnB;EAED,MAAMkC,cAAc,GAAGnC,cAAc,KAAK,eAAe;EAEzD,MAAMoC,WAAW,GAAG,IAAAC,qCAA4B,EAC/C/E,cAAM,CAACgF,MAAM,EACbhF,cAAM,CAACiF,UACR,CAAC;EAED,MAAMC,UAAU,GAAG,CAClB,CAAEL,cAAc,IAAIC,WAAW,EAC/B,IAAAC,qCAA4B,EAC3B/E,cAAM,CAACmF,cAAc,EACrBnF,cAAM,CAACoF,kBACR,CAAC,EACDxD,KAAK,EAAEyD,UAAU,EAAEC,KAAK,IAAI;IAAEA,KAAK,EAAE1D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,EAAEC;EAAK,CAAC,CACrE;EAED,MAAMC,gBAAgB,GAAG;IACxB,GAAG,IAAAT,qCAA4B,EAC9B/E,cAAM,CAACyF,oBAAoB,EAC3BzF,cAAM,CAAC0F,wBACR,CAAC;IACD,IAAK9D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,IAAI;MAChCA,KAAK,EAAE1D,KAAK,EAAEyD,UAAU,EAAEC,KAAK,EAAEC;IAClC,CAAC;EACF,CAAC;EAED,MAAMI,cAAc,GAAG,CACtB3F,cAAM,CAAC4F,kBAAkB,EACzBf,cAAc,IAAIC,WAAW,EAC7B3C,YAAY,IAAI;IAAE0D,aAAa,EAAE;EAAS,CAAC,CAC3C;;EAED;AACD;AACA;AACA;AACA;AACA;EACC,MAAMC,8BAA8B,GAAGA,CAAA,KAAM;IAC5C,IAAK,CAAErF,qBAAqB,EAAG;MAC9B,OAAO,qBAAqB;IAC7B;IAEA,OAAQ,GAAG,IAAAF,QAAE,EACZ,uCACD,CAAG,IAAIsC,UAAY,EAAC;EACrB,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;EACC,MAAMkD,mCAAmC,GAAGA,CAAA,KAAM;IACjD,IAAK,CAAEtF,qBAAqB,EAAG;MAC9B,OAAO,oBAAoB;IAC5B;IAEA,MAAM4D,KAAK,GAAG,IAAA9D,QAAE,EAAE,qBAAsB,CAAC;IACzC,MAAMyF,WAAW,GAAGpD,WAAW,GAC3B,GAAG,IAAArC,QAAE,EAAE,6BAA8B,CAAG,IAAIqC,WAAa,EAAC,GAC3D,IAAArC,QAAE,EAAE,2BAA4B,CAAC;IACpC,OAAQ,GAAG8D,KAAO,IAAI2B,WAAa,EAAC;EACrC,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;EACC,MAAMC,6BAA6B,GAAGA,CAAA,KAAM;IAC3C,IAAK,CAAExF,qBAAqB,EAAG;MAC9B,OAAO,oBAAoB;IAC5B;IAEA,OAAQ,GAAG,IAAAF,QAAE,EAAE,qCAAsC,CAAG,IAAID,KAAO,EAAC;EACrE,CAAC;EAED,MAAM4F,eAAe,GAAGA,CAAA,KAAM;IAC7B,OACC,IAAAjC,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MACJvE,KAAK,EAAG5B,cAAM,CAACoG,oBAAsB;MACrCC,UAAU;MACVC,iBAAiB,EAAC,MAAM;MACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,qCAAsC,CAAC,GAC3CoD,SACH;MACD6C,kBAAkB,EAAGT,mCAAmC,CAAC;IAAG,GAE5D,IAAA9B,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAAkH,SAAS;MACTC,GAAG,EAAGnE,YAAc;MACpBhB,UAAU,EAAGU,qBAAuB;MACpCP,SAAS,EAAC,wBAAwB;MAClCE,KAAK,EAAGsD,UAAY;MACpByB,aAAa,EAAG,CAAG;MACnBC,aAAa,EAAC,MAAM,CAAC;MAAA;MACrBtG,KAAK,EAAG,IAAM;MACdD,KAAK,EAAGuC,WAAa;MACrBA,WAAW,EACVA,WAAW,GAAGe,SAAS,GAAG,IAAApD,QAAE,EAAE,uBAAwB,CACtD;MACDiE,QAAQ,EAAKqC,MAAM,IAClBpF,aAAa,CAAE;QAAEmB,WAAW,EAAEiE;MAAO,CAAE,CACvC;MACDvF,OAAO,EAAGA,CAAA,KAAM;QACfY,wBAAwB,CAAE,IAAK,CAAC;QAChCZ,OAAO,CAAC,CAAC;MACV,CAAG;MACHwF,MAAM,EAAGA,CAAA,KAAM5E,wBAAwB,CAAE,KAAM,CAAG;MAClD6E,oBAAoB,EAAGvB,gBAAgB,EAAEF;IAAO,CAChD,CACI,CAAC;EAET,CAAC;;EAED;EACA;EACA;EACA,MAAM0B,qBAAqB,GAC1BnF,gBAAgB,IACd,CAAEA,gBAAgB,IAAIgB,UAAU,IAAIA,UAAU,KAAK,EAAI,GACtD,EAAE,GACF,IAAAtC,QAAE,EAAE,iBAAkB,CAAC;EAE3B,MAAM0G,gBAAgB,GAAG;IACxB,GAAGrF,KAAK,EAAEyD,UAAU,EAAE6B,MAAM,GAAI,aAAa,CAAE,EAAE5B,KAAK;IACtD,GAAG9D,UAAU,EAAEI,KAAK,EAAE0D,KAAK;IAC3B,IAAK1D,KAAK,EAAE0D,KAAK,IAAI;MAAEC,IAAI,EAAE3D,KAAK,CAAC0D;IAAM,CAAC;EAC3C,CAAC;EAED,MAAM6B,4BAA4B,GAAG,CACpCnH,cAAM,CAACoH,eAAe,EACtBjF,YAAY,IAAInC,cAAM,CAACqH,mBAAmB,EAC1CJ,gBAAgB,EAAEK,UAAU,IAAI;IAC/BC,eAAe,EAAEN,gBAAgB,CAACK,UAAU;IAC5CE,WAAW,EAAE;EACd,CAAC,EACD5F,KAAK,EAAE2F,eAAe,IAAI;IACzBA,eAAe,EAAE3F,KAAK,CAAC2F,eAAe;IACtCC,WAAW,EAAE;EACd,CAAC,CACD;EAED,MAAMC,mBAAmB,GAAG;IAC3B,GAAGzH,cAAM,CAAC0H,cAAc;IACxB,IAAKT,gBAAgB,EAAE1B,IAAI,IAAI;MAC9BD,KAAK,EAAE2B,gBAAgB,CAAC1B,IAAI;MAC5BoC,gBAAgB,EAAEV,gBAAgB,CAAC1B;IACpC,CAAC;EACF,CAAC;EAED,MAAMqC,UAAU,GAAG;IAClB,GAAG5H,cAAM,CAAC6H,IAAI;IACd,IAAKZ,gBAAgB,EAAE1B,IAAI,IAAI;MAAEuC,IAAI,EAAEb,gBAAgB,CAAC1B;IAAK,CAAC;EAC/D,CAAC;EAED,MAAMwC,YAAY,GAAGA,CAAA,KAAM;IAC1B,OACC,IAAA9D,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MAACvE,KAAK,EAAGuF;IAA8B,GACzCxE,aAAa,IACd,IAAAsB,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAwI,IAAI;MACJH,IAAI,EAAGI,aAAQ;MAAA,GACVL,UAAU;MACfM,QAAQ,EAAG7E;IAAgB,CAC3B,CACD,EAEC,CAAEV,aAAa,IAChB,IAAAsB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;MACJE,UAAU;MACVC,iBAAiB,EAAC,MAAM;MACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,gCAAiC,CAAC,GACtCoD,SACH;MACD6C,kBAAkB,EAAGV,8BAA8B,CAAC,CAAG;MACvDoC,QAAQ,EAAG7E;IAAgB,GAE3B,IAAAY,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4I,QAAQ;MACRzG,SAAS,EAAC,yBAAyB;MACnC0G,UAAU,EAAC,YAAY;MACvBC,OAAO,EAAC,GAAG;MACXzG,KAAK,EAAG6F,mBAAqB;MAC7B7E,WAAW,EAAGoE,qBAAuB;MACrC3G,KAAK,EAAGwC,UAAY;MACpByF,4BAA4B;MAC5B9D,QAAQ,EAAK+D,IAAI,IAChB9G,aAAa,CAAE;QAAEoB,UAAU,EAAE0F;MAAK,CAAE,CACpC;MACDC,QAAQ,EAAG1I,gBAAkB;MAC7B2I,QAAQ,EAAG9G,UAAU,GAAG5B,OAAS;MACjC2I,SAAS,EAAC,QAAQ;MAClBnH,UAAU,EAAGM,gBAAkB;MAC/B8G,8BAA8B,EAAG,CAAEpH,UAAY;MAC/CqH,eAAe,EAAGA,CAAA,KAAM;QACvB9G,mBAAmB,CAAE,IAAK,CAAC;MAC5B,CAAG;MACHgF,MAAM,EAAGA,CAAA,KAAM;QACdhF,mBAAmB,CAAE,KAAM,CAAC;MAC7B,CAAG;MACH+G,cAAc,EACb7I,cAAM,CAAC8I,oBAAoB,EAAExD;IAC7B,CACD,CACI,CAEF,CAAC;EAET,CAAC;EAED,OACC,IAAArB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IAAA,GACCrC,UAAU;IACflC,KAAK,EAAG5B,cAAM,CAAC+I,oBAAsB;IACrCC,yBAAyB,EACxBzH,UAAU,GAAG,KAAK,GAAG,qBACrB;IACD0H,2BAA2B,EAAG1H,UAAU,GAAG,KAAK,GAAG;EAAM,GAEvDA,UAAU,IAAIyC,QAAQ,EAEtBvB,SAAS,IACV,IAAAwB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IACJE,UAAU;IACVC,iBAAiB,EAAC,MAAM;IACxBC,iBAAiB,EAChB9F,qBAAqB,GAClB,IAAAF,QAAE,EAAE,+BAAgC,CAAC,GACrCoD,SACH;IACD6C,kBAAkB,EAAGP,6BAA6B,CAAC;EAAG,GAEtD,IAAAhC,MAAA,CAAAC,aAAA,EAAC3E,YAAA,CAAA4I,QAAQ;IACRzG,SAAS,EAAC,wBAAwB;IAClC0G,UAAU,EAAC,OAAO;IAClBC,OAAO,EAAC,GAAG;IACXzG,KAAK,EAAG5B,cAAM,CAACkJ,aAAe;IAC9BtG,WAAW,EAAG,IAAArC,QAAE,EAAE,YAAa,CAAG;IAClC+H,4BAA4B;IAC5BjI,KAAK,EAAGC,KAAO;IACfkE,QAAQ,EAAK+D,IAAI,IAChB9G,aAAa,CAAE;MAAEnB,KAAK,EAAEiI;IAAK,CAAE,CAC/B;IACDhH,UAAU,EAAGQ,eAAiB;IAC9B4G,8BAA8B,EAAG,CAAEpH,UAAY;IAC/CqH,eAAe,EAAGA,CAAA,KAAM;MACvB5G,kBAAkB,CAAE,IAAK,CAAC;IAC3B,CAAG;IACH8E,MAAM,EAAGA,CAAA,KAAM;MACd9E,kBAAkB,CAAE,KAAM,CAAC;IAC5B,CAAG;IACH6G,cAAc,EAAG7I,cAAM,CAAC8I,oBAAoB,EAAExD;EAAO,CACrD,CACI,CACN,EAEC,CAAE,eAAe,KAAK5C,cAAc,IACrC,gBAAgB,KAAKA,cAAc,KACnC,IAAAuB,MAAA,CAAAC,aAAA,EAAC/E,YAAA,CAAAgH,IAAI;IAACvE,KAAK,EAAG+D;EAAgB,GAC3BO,eAAe,CAAC,CAAC,EACjB6B,YAAY,CAAC,CACV,CACN,EAEC,aAAa,KAAKrF,cAAc,IAAIqF,YAAY,CAAC,CAAC,EAClD,WAAW,KAAKrF,cAAc,IAAIwD,eAAe,CAAC,CAC/C,CAAC;AAET"}
@@ -236,11 +236,16 @@ const SiteLogo = ({
236
236
  });
237
237
  }
238
238
  }, imgWrapper);
239
+
240
+ // Support the previous location for the Site Icon settings. To be removed
241
+ // when the required WP core version for Gutenberg is >= 6.5.0.
242
+ const shouldUseNewUrl = !window?.__experimentalUseCustomizerSiteLogoUrl;
243
+ const siteIconSettingsUrl = shouldUseNewUrl ? siteUrl + '/wp-admin/options-general.php' : siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';
239
244
  const syncSiteIconHelpText = (0, _element.createInterpolateElement)((0, _i18n.__)('Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'), {
240
245
  a:
241
246
  // eslint-disable-next-line jsx-a11y/anchor-has-content
242
247
  (0, _react.createElement)("a", {
243
- href: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline',
248
+ href: siteIconSettingsUrl,
244
249
  target: "_blank",
245
250
  rel: "noopener noreferrer"
246
251
  })
@@ -275,7 +280,7 @@ const SiteLogo = ({
275
280
  checked: linkTarget === '_blank'
276
281
  })), canUserEdit && (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.ToggleControl, {
277
282
  __nextHasNoMarginBottom: true,
278
- label: (0, _i18n.__)('Use as site icon'),
283
+ label: (0, _i18n.__)('Use as Site Icon'),
279
284
  onChange: value => {
280
285
  setAttributes({
281
286
  shouldSyncIcon: value