@wordpress/block-editor 12.14.0 → 12.16.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 (664) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +10 -5
  3. package/build/components/block-canvas/index.js +22 -6
  4. package/build/components/block-canvas/index.js.map +1 -1
  5. package/build/components/block-card/index.js +1 -1
  6. package/build/components/block-card/index.js.map +1 -1
  7. package/build/components/block-controls/hook.js +3 -23
  8. package/build/components/block-controls/hook.js.map +1 -1
  9. package/build/components/block-edit/context.js +5 -1
  10. package/build/components/block-edit/context.js.map +1 -1
  11. package/build/components/block-edit/index.js +18 -9
  12. package/build/components/block-edit/index.js.map +1 -1
  13. package/build/components/block-info-slot-fill/index.js +3 -4
  14. package/build/components/block-info-slot-fill/index.js.map +1 -1
  15. package/build/components/block-list/block.js +28 -9
  16. package/build/components/block-list/block.js.map +1 -1
  17. package/build/components/block-list/block.native.js +16 -5
  18. package/build/components/block-list/block.native.js.map +1 -1
  19. package/build/components/block-list/use-block-props/index.js +61 -18
  20. package/build/components/block-list/use-block-props/index.js.map +1 -1
  21. package/build/components/block-list/use-block-props/use-focus-first-element.js +4 -29
  22. package/build/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  23. package/build/components/block-list/use-block-props/use-is-hovered.js +4 -14
  24. package/build/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  25. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -2
  26. package/build/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  27. package/build/components/block-parent-selector/index.js +1 -1
  28. package/build/components/block-parent-selector/index.js.map +1 -1
  29. package/build/components/block-pattern-setup/index.js +25 -16
  30. package/build/components/block-pattern-setup/index.js.map +1 -1
  31. package/build/components/block-pattern-setup/setup-toolbar.js +4 -2
  32. package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  33. package/build/components/block-patterns-list/index.js +37 -20
  34. package/build/components/block-patterns-list/index.js.map +1 -1
  35. package/build/components/block-removal-warning-modal/index.js +2 -9
  36. package/build/components/block-removal-warning-modal/index.js.map +1 -1
  37. package/build/components/block-rename/index.js +28 -0
  38. package/build/components/block-rename/index.js.map +1 -0
  39. package/build/components/block-rename/is-empty-string.js +10 -0
  40. package/build/components/block-rename/is-empty-string.js.map +1 -0
  41. package/build/components/block-rename/modal.js +90 -0
  42. package/build/components/block-rename/modal.js.map +1 -0
  43. package/build/components/block-rename/rename-control.js +74 -0
  44. package/build/components/block-rename/rename-control.js.map +1 -0
  45. package/build/components/block-rename/use-block-rename.js +17 -0
  46. package/build/components/block-rename/use-block-rename.js.map +1 -0
  47. package/build/components/block-settings/container.native.js +6 -4
  48. package/build/components/block-settings/container.native.js.map +1 -1
  49. package/build/components/block-settings-menu/block-settings-dropdown.js +33 -20
  50. package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  51. package/build/components/block-settings-menu-controls/index.js +7 -0
  52. package/build/components/block-settings-menu-controls/index.js.map +1 -1
  53. package/build/components/block-styles/index.js +1 -1
  54. package/build/components/block-styles/index.js.map +1 -1
  55. package/build/components/block-styles/index.native.js +3 -2
  56. package/build/components/block-styles/index.native.js.map +1 -1
  57. package/build/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  58. package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  59. package/build/components/block-toolbar/index.js +89 -27
  60. package/build/components/block-toolbar/index.js.map +1 -1
  61. package/build/components/block-tools/block-toolbar-breadcrumb.js +49 -0
  62. package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -0
  63. package/build/components/block-tools/block-toolbar-popover.js +86 -0
  64. package/build/components/block-tools/block-toolbar-popover.js.map +1 -0
  65. package/build/components/block-tools/index.js +27 -24
  66. package/build/components/block-tools/index.js.map +1 -1
  67. package/build/components/block-types-list/index.js +6 -2
  68. package/build/components/block-types-list/index.js.map +1 -1
  69. package/build/components/block-types-list/index.native.js +4 -3
  70. package/build/components/block-types-list/index.native.js.map +1 -1
  71. package/build/components/block-variation-picker/index.native.js +2 -1
  72. package/build/components/block-variation-picker/index.native.js.map +1 -1
  73. package/build/components/colors-gradients/control.js +28 -17
  74. package/build/components/colors-gradients/control.js.map +1 -1
  75. package/build/components/date-format-picker/index.js +8 -1
  76. package/build/components/date-format-picker/index.js.map +1 -1
  77. package/build/components/duotone-control/index.js +1 -4
  78. package/build/components/duotone-control/index.js.map +1 -1
  79. package/build/components/global-styles/advanced-panel.js +1 -1
  80. package/build/components/global-styles/advanced-panel.js.map +1 -1
  81. package/build/components/global-styles/color-panel.js +22 -20
  82. package/build/components/global-styles/color-panel.js.map +1 -1
  83. package/build/components/global-styles/filters-panel.js +9 -3
  84. package/build/components/global-styles/filters-panel.js.map +1 -1
  85. package/build/components/global-styles/typography-panel.js +20 -31
  86. package/build/components/global-styles/typography-panel.js.map +1 -1
  87. package/build/components/image-link-destinations/index.native.js +118 -0
  88. package/build/components/image-link-destinations/index.native.js.map +1 -0
  89. package/build/components/image-size-control/index.js +0 -5
  90. package/build/components/image-size-control/index.js.map +1 -1
  91. package/build/components/index.native.js +8 -0
  92. package/build/components/index.native.js.map +1 -1
  93. package/build/components/inner-blocks/index.js +3 -1
  94. package/build/components/inner-blocks/index.js.map +1 -1
  95. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js +29 -31
  96. package/build/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  97. package/build/components/inserter/block-patterns-explorer/pattern-list.js +1 -1
  98. package/build/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  99. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -1
  100. package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  101. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js +1 -1
  102. package/build/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  103. package/build/components/inserter/block-patterns-tab/utils.js +3 -4
  104. package/build/components/inserter/block-patterns-tab/utils.js.map +1 -1
  105. package/build/components/inserter/hooks/use-patterns-state.js +2 -1
  106. package/build/components/inserter/hooks/use-patterns-state.js.map +1 -1
  107. package/build/components/inserter/media-tab/media-panel.js +2 -2
  108. package/build/components/inserter/media-tab/media-panel.js.map +1 -1
  109. package/build/components/inserter/menu.js +14 -7
  110. package/build/components/inserter/menu.js.map +1 -1
  111. package/build/components/inserter/preview-panel.js +2 -2
  112. package/build/components/inserter/preview-panel.js.map +1 -1
  113. package/build/components/inserter-button/index.native.js +98 -0
  114. package/build/components/inserter-button/index.native.js.map +1 -0
  115. package/build/components/inserter-button/sparkles.js +23 -0
  116. package/build/components/inserter-button/sparkles.js.map +1 -0
  117. package/build/components/inserter-draggable-blocks/index.js +8 -4
  118. package/build/components/inserter-draggable-blocks/index.js.map +1 -1
  119. package/build/components/inserter-listbox/index.js +11 -6
  120. package/build/components/inserter-listbox/index.js.map +1 -1
  121. package/build/components/inserter-listbox/item.js +24 -23
  122. package/build/components/inserter-listbox/item.js.map +1 -1
  123. package/build/components/inserter-listbox/row.js +5 -5
  124. package/build/components/inserter-listbox/row.js.map +1 -1
  125. package/build/components/inspector-controls/fill.js +3 -3
  126. package/build/components/inspector-controls/fill.js.map +1 -1
  127. package/build/components/inspector-controls/fill.native.js +3 -3
  128. package/build/components/inspector-controls/fill.native.js.map +1 -1
  129. package/build/components/list-view/use-list-view-expand-selected-item.js +2 -3
  130. package/build/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  131. package/build/components/navigable-toolbar/index.js +2 -2
  132. package/build/components/navigable-toolbar/index.js.map +1 -1
  133. package/build/components/preview-options/index.js +6 -60
  134. package/build/components/preview-options/index.js.map +1 -1
  135. package/build/components/rich-text/content.js +26 -23
  136. package/build/components/rich-text/content.js.map +1 -1
  137. package/build/components/rich-text/get-rich-text-values.js +2 -1
  138. package/build/components/rich-text/get-rich-text-values.js.map +1 -1
  139. package/build/components/rich-text/index.js +2 -30
  140. package/build/components/rich-text/index.js.map +1 -1
  141. package/build/components/rich-text/index.native.js +10 -17
  142. package/build/components/rich-text/index.native.js.map +1 -1
  143. package/build/components/rich-text/native/get-format-colors.native.js +22 -24
  144. package/build/components/rich-text/native/get-format-colors.native.js.map +1 -1
  145. package/build/components/rich-text/native/index.native.js +41 -37
  146. package/build/components/rich-text/native/index.native.js.map +1 -1
  147. package/build/components/rich-text/use-input-rules.js +35 -2
  148. package/build/components/rich-text/use-input-rules.js.map +1 -1
  149. package/build/components/rich-text/with-deprecations.js +50 -0
  150. package/build/components/rich-text/with-deprecations.js.map +1 -0
  151. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  152. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  153. package/build/components/use-block-drop-zone/index.js +74 -9
  154. package/build/components/use-block-drop-zone/index.js.map +1 -1
  155. package/build/components/use-moving-animation/index.js +2 -1
  156. package/build/components/use-moving-animation/index.js.map +1 -1
  157. package/build/components/use-on-block-drop/index.js +1 -1
  158. package/build/components/use-on-block-drop/index.js.map +1 -1
  159. package/build/components/use-resize-canvas/index.js +4 -1
  160. package/build/components/use-resize-canvas/index.js.map +1 -1
  161. package/build/components/use-settings/index.js +16 -2
  162. package/build/components/use-settings/index.js.map +1 -1
  163. package/build/hooks/align.js +20 -68
  164. package/build/hooks/align.js.map +1 -1
  165. package/build/hooks/align.native.js +11 -1
  166. package/build/hooks/align.native.js.map +1 -1
  167. package/build/hooks/anchor.js +13 -29
  168. package/build/hooks/anchor.js.map +1 -1
  169. package/build/hooks/background.js +28 -31
  170. package/build/hooks/background.js.map +1 -1
  171. package/build/hooks/block-hooks.js +24 -32
  172. package/build/hooks/block-hooks.js.map +1 -1
  173. package/build/hooks/block-renaming.js +38 -0
  174. package/build/hooks/block-renaming.js.map +1 -1
  175. package/build/hooks/border.js +58 -80
  176. package/build/hooks/border.js.map +1 -1
  177. package/build/hooks/color.js +76 -89
  178. package/build/hooks/color.js.map +1 -1
  179. package/build/hooks/content-lock-ui.js +29 -29
  180. package/build/hooks/content-lock-ui.js.map +1 -1
  181. package/build/hooks/custom-class-name.js +12 -29
  182. package/build/hooks/custom-class-name.js.map +1 -1
  183. package/build/hooks/custom-fields.js +64 -73
  184. package/build/hooks/custom-fields.js.map +1 -1
  185. package/build/hooks/dimensions.js +21 -17
  186. package/build/hooks/dimensions.js.map +1 -1
  187. package/build/hooks/duotone.js +31 -61
  188. package/build/hooks/duotone.js.map +1 -1
  189. package/build/hooks/font-family.js +16 -25
  190. package/build/hooks/font-family.js.map +1 -1
  191. package/build/hooks/font-size.js +51 -119
  192. package/build/hooks/font-size.js.map +1 -1
  193. package/build/hooks/index.js +25 -15
  194. package/build/hooks/index.js.map +1 -1
  195. package/build/hooks/index.native.js +10 -3
  196. package/build/hooks/index.native.js.map +1 -1
  197. package/build/hooks/layout-child.js +68 -0
  198. package/build/hooks/layout-child.js.map +1 -0
  199. package/build/hooks/layout.js +29 -108
  200. package/build/hooks/layout.js.map +1 -1
  201. package/build/hooks/padding.js +2 -2
  202. package/build/hooks/padding.js.map +1 -1
  203. package/build/hooks/position.js +40 -62
  204. package/build/hooks/position.js.map +1 -1
  205. package/build/hooks/style.js +51 -88
  206. package/build/hooks/style.js.map +1 -1
  207. package/build/hooks/typography.js +34 -14
  208. package/build/hooks/typography.js.map +1 -1
  209. package/build/hooks/utils.js +154 -7
  210. package/build/hooks/utils.js.map +1 -1
  211. package/build/layouts/constrained.js +4 -3
  212. package/build/layouts/constrained.js.map +1 -1
  213. package/build/private-apis.js +0 -2
  214. package/build/private-apis.js.map +1 -1
  215. package/build/store/private-actions.js +8 -0
  216. package/build/store/private-actions.js.map +1 -1
  217. package/build/store/private-selectors.js +34 -0
  218. package/build/store/private-selectors.js.map +1 -1
  219. package/build/store/reducer.js +8 -0
  220. package/build/store/reducer.js.map +1 -1
  221. package/build/store/selectors.js +10 -58
  222. package/build/store/selectors.js.map +1 -1
  223. package/build/store/utils.js +66 -0
  224. package/build/store/utils.js.map +1 -0
  225. package/build/utils/object.js +21 -61
  226. package/build/utils/object.js.map +1 -1
  227. package/build/utils/selection.js +9 -1
  228. package/build/utils/selection.js.map +1 -1
  229. package/build/utils/transform-styles/index.js +26 -6
  230. package/build/utils/transform-styles/index.js.map +1 -1
  231. package/build-module/components/block-canvas/index.js +23 -7
  232. package/build-module/components/block-canvas/index.js.map +1 -1
  233. package/build-module/components/block-card/index.js +1 -1
  234. package/build-module/components/block-card/index.js.map +1 -1
  235. package/build-module/components/block-controls/hook.js +4 -24
  236. package/build-module/components/block-controls/hook.js.map +1 -1
  237. package/build-module/components/block-edit/context.js +2 -0
  238. package/build-module/components/block-edit/context.js.map +1 -1
  239. package/build-module/components/block-edit/index.js +19 -10
  240. package/build-module/components/block-edit/index.js.map +1 -1
  241. package/build-module/components/block-info-slot-fill/index.js +3 -3
  242. package/build-module/components/block-info-slot-fill/index.js.map +1 -1
  243. package/build-module/components/block-list/block.js +29 -10
  244. package/build-module/components/block-list/block.js.map +1 -1
  245. package/build-module/components/block-list/block.native.js +16 -5
  246. package/build-module/components/block-list/block.native.js.map +1 -1
  247. package/build-module/components/block-list/use-block-props/index.js +62 -19
  248. package/build-module/components/block-list/use-block-props/index.js.map +1 -1
  249. package/build-module/components/block-list/use-block-props/use-focus-first-element.js +4 -29
  250. package/build-module/components/block-list/use-block-props/use-focus-first-element.js.map +1 -1
  251. package/build-module/components/block-list/use-block-props/use-is-hovered.js +4 -14
  252. package/build-module/components/block-list/use-block-props/use-is-hovered.js.map +1 -1
  253. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js +4 -2
  254. package/build-module/components/block-list/use-block-props/use-selected-block-event-handlers.js.map +1 -1
  255. package/build-module/components/block-parent-selector/index.js +1 -1
  256. package/build-module/components/block-parent-selector/index.js.map +1 -1
  257. package/build-module/components/block-pattern-setup/index.js +24 -15
  258. package/build-module/components/block-pattern-setup/index.js.map +1 -1
  259. package/build-module/components/block-pattern-setup/setup-toolbar.js +4 -2
  260. package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
  261. package/build-module/components/block-patterns-list/index.js +37 -20
  262. package/build-module/components/block-patterns-list/index.js.map +1 -1
  263. package/build-module/components/block-removal-warning-modal/index.js +3 -10
  264. package/build-module/components/block-removal-warning-modal/index.js.map +1 -1
  265. package/build-module/components/block-rename/index.js +4 -0
  266. package/build-module/components/block-rename/index.js.map +1 -0
  267. package/build-module/components/block-rename/is-empty-string.js +4 -0
  268. package/build-module/components/block-rename/is-empty-string.js.map +1 -0
  269. package/build-module/components/block-rename/modal.js +82 -0
  270. package/build-module/components/block-rename/modal.js.map +1 -0
  271. package/build-module/components/block-rename/rename-control.js +66 -0
  272. package/build-module/components/block-rename/rename-control.js.map +1 -0
  273. package/build-module/components/block-rename/use-block-rename.js +10 -0
  274. package/build-module/components/block-rename/use-block-rename.js.map +1 -0
  275. package/build-module/components/block-settings/container.native.js +4 -2
  276. package/build-module/components/block-settings/container.native.js.map +1 -1
  277. package/build-module/components/block-settings-menu/block-settings-dropdown.js +34 -21
  278. package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
  279. package/build-module/components/block-settings-menu-controls/index.js +7 -0
  280. package/build-module/components/block-settings-menu-controls/index.js.map +1 -1
  281. package/build-module/components/block-styles/index.js +1 -1
  282. package/build-module/components/block-styles/index.js.map +1 -1
  283. package/build-module/components/block-styles/index.native.js +3 -2
  284. package/build-module/components/block-styles/index.native.js.map +1 -1
  285. package/build-module/components/block-toolbar/block-toolbar-menu.native.js +1 -1
  286. package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
  287. package/build-module/components/block-toolbar/index.js +88 -25
  288. package/build-module/components/block-toolbar/index.js.map +1 -1
  289. package/build-module/components/block-tools/block-toolbar-breadcrumb.js +41 -0
  290. package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -0
  291. package/build-module/components/block-tools/block-toolbar-popover.js +76 -0
  292. package/build-module/components/block-tools/block-toolbar-popover.js.map +1 -0
  293. package/build-module/components/block-tools/index.js +27 -24
  294. package/build-module/components/block-tools/index.js.map +1 -1
  295. package/build-module/components/block-types-list/index.js +6 -2
  296. package/build-module/components/block-types-list/index.js.map +1 -1
  297. package/build-module/components/block-types-list/index.native.js +2 -1
  298. package/build-module/components/block-types-list/index.native.js.map +1 -1
  299. package/build-module/components/block-variation-picker/index.native.js +2 -1
  300. package/build-module/components/block-variation-picker/index.native.js.map +1 -1
  301. package/build-module/components/colors-gradients/control.js +29 -18
  302. package/build-module/components/colors-gradients/control.js.map +1 -1
  303. package/build-module/components/date-format-picker/index.js +8 -1
  304. package/build-module/components/date-format-picker/index.js.map +1 -1
  305. package/build-module/components/duotone-control/index.js +1 -4
  306. package/build-module/components/duotone-control/index.js.map +1 -1
  307. package/build-module/components/global-styles/advanced-panel.js +1 -1
  308. package/build-module/components/global-styles/advanced-panel.js.map +1 -1
  309. package/build-module/components/global-styles/color-panel.js +23 -21
  310. package/build-module/components/global-styles/color-panel.js.map +1 -1
  311. package/build-module/components/global-styles/filters-panel.js +10 -4
  312. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  313. package/build-module/components/global-styles/typography-panel.js +20 -31
  314. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  315. package/build-module/components/image-link-destinations/index.native.js +109 -0
  316. package/build-module/components/image-link-destinations/index.native.js.map +1 -0
  317. package/build-module/components/image-size-control/index.js +0 -5
  318. package/build-module/components/image-size-control/index.js.map +1 -1
  319. package/build-module/components/index.native.js +1 -0
  320. package/build-module/components/index.native.js.map +1 -1
  321. package/build-module/components/inner-blocks/index.js +3 -1
  322. package/build-module/components/inner-blocks/index.js.map +1 -1
  323. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js +30 -32
  324. package/build-module/components/inner-blocks/warning-max-depth-exceeded.native.js.map +1 -1
  325. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js +2 -2
  326. package/build-module/components/inserter/block-patterns-explorer/pattern-list.js.map +1 -1
  327. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +4 -4
  328. package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
  329. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js +2 -2
  330. package/build-module/components/inserter/block-patterns-tab/use-pattern-categories.js.map +1 -1
  331. package/build-module/components/inserter/block-patterns-tab/utils.js +3 -4
  332. package/build-module/components/inserter/block-patterns-tab/utils.js.map +1 -1
  333. package/build-module/components/inserter/hooks/use-patterns-state.js +2 -1
  334. package/build-module/components/inserter/hooks/use-patterns-state.js.map +1 -1
  335. package/build-module/components/inserter/media-tab/media-panel.js +1 -1
  336. package/build-module/components/inserter/media-tab/media-panel.js.map +1 -1
  337. package/build-module/components/inserter/menu.js +14 -7
  338. package/build-module/components/inserter/menu.js.map +1 -1
  339. package/build-module/components/inserter/preview-panel.js +2 -2
  340. package/build-module/components/inserter/preview-panel.js.map +1 -1
  341. package/build-module/components/inserter-button/index.native.js +89 -0
  342. package/build-module/components/inserter-button/index.native.js.map +1 -0
  343. package/build-module/components/inserter-button/sparkles.js +15 -0
  344. package/build-module/components/inserter-button/sparkles.js.map +1 -0
  345. package/build-module/components/inserter-draggable-blocks/index.js +9 -5
  346. package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
  347. package/build-module/components/inserter-listbox/index.js +13 -8
  348. package/build-module/components/inserter-listbox/index.js.map +1 -1
  349. package/build-module/components/inserter-listbox/item.js +25 -23
  350. package/build-module/components/inserter-listbox/item.js.map +1 -1
  351. package/build-module/components/inserter-listbox/row.js +6 -5
  352. package/build-module/components/inserter-listbox/row.js.map +1 -1
  353. package/build-module/components/inspector-controls/fill.js +3 -3
  354. package/build-module/components/inspector-controls/fill.js.map +1 -1
  355. package/build-module/components/inspector-controls/fill.native.js +3 -3
  356. package/build-module/components/inspector-controls/fill.native.js.map +1 -1
  357. package/build-module/components/list-view/use-list-view-expand-selected-item.js +2 -3
  358. package/build-module/components/list-view/use-list-view-expand-selected-item.js.map +1 -1
  359. package/build-module/components/navigable-toolbar/index.js +2 -2
  360. package/build-module/components/navigable-toolbar/index.js.map +1 -1
  361. package/build-module/components/preview-options/index.js +6 -60
  362. package/build-module/components/preview-options/index.js.map +1 -1
  363. package/build-module/components/rich-text/content.js +25 -21
  364. package/build-module/components/rich-text/content.js.map +1 -1
  365. package/build-module/components/rich-text/get-rich-text-values.js +2 -1
  366. package/build-module/components/rich-text/get-rich-text-values.js.map +1 -1
  367. package/build-module/components/rich-text/index.js +4 -32
  368. package/build-module/components/rich-text/index.js.map +1 -1
  369. package/build-module/components/rich-text/index.native.js +11 -19
  370. package/build-module/components/rich-text/index.native.js.map +1 -1
  371. package/build-module/components/rich-text/native/get-format-colors.native.js +22 -24
  372. package/build-module/components/rich-text/native/get-format-colors.native.js.map +1 -1
  373. package/build-module/components/rich-text/native/index.native.js +41 -37
  374. package/build-module/components/rich-text/native/index.native.js.map +1 -1
  375. package/build-module/components/rich-text/use-input-rules.js +36 -3
  376. package/build-module/components/rich-text/use-input-rules.js.map +1 -1
  377. package/build-module/components/rich-text/with-deprecations.js +42 -0
  378. package/build-module/components/rich-text/with-deprecations.js.map +1 -0
  379. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  380. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  381. package/build-module/components/use-block-drop-zone/index.js +73 -9
  382. package/build-module/components/use-block-drop-zone/index.js.map +1 -1
  383. package/build-module/components/use-moving-animation/index.js +2 -1
  384. package/build-module/components/use-moving-animation/index.js.map +1 -1
  385. package/build-module/components/use-on-block-drop/index.js +1 -1
  386. package/build-module/components/use-on-block-drop/index.js.map +1 -1
  387. package/build-module/components/use-resize-canvas/index.js +4 -1
  388. package/build-module/components/use-resize-canvas/index.js.map +1 -1
  389. package/build-module/components/use-settings/index.js +15 -3
  390. package/build-module/components/use-settings/index.js.map +1 -1
  391. package/build-module/hooks/align.js +19 -66
  392. package/build-module/hooks/align.js.map +1 -1
  393. package/build-module/hooks/align.native.js +1 -0
  394. package/build-module/hooks/align.native.js.map +1 -1
  395. package/build-module/hooks/anchor.js +11 -26
  396. package/build-module/hooks/anchor.js.map +1 -1
  397. package/build-module/hooks/background.js +26 -28
  398. package/build-module/hooks/background.js.map +1 -1
  399. package/build-module/hooks/block-hooks.js +22 -30
  400. package/build-module/hooks/block-hooks.js.map +1 -1
  401. package/build-module/hooks/block-renaming.js +36 -0
  402. package/build-module/hooks/block-renaming.js.map +1 -1
  403. package/build-module/hooks/border.js +57 -78
  404. package/build-module/hooks/border.js.map +1 -1
  405. package/build-module/hooks/color.js +74 -86
  406. package/build-module/hooks/color.js.map +1 -1
  407. package/build-module/hooks/content-lock-ui.js +27 -27
  408. package/build-module/hooks/content-lock-ui.js.map +1 -1
  409. package/build-module/hooks/custom-class-name.js +11 -27
  410. package/build-module/hooks/custom-class-name.js.map +1 -1
  411. package/build-module/hooks/custom-fields.js +60 -74
  412. package/build-module/hooks/custom-fields.js.map +1 -1
  413. package/build-module/hooks/dimensions.js +21 -16
  414. package/build-module/hooks/dimensions.js.map +1 -1
  415. package/build-module/hooks/duotone.js +30 -61
  416. package/build-module/hooks/duotone.js.map +1 -1
  417. package/build-module/hooks/font-family.js +14 -23
  418. package/build-module/hooks/font-family.js.map +1 -1
  419. package/build-module/hooks/font-size.js +49 -119
  420. package/build-module/hooks/font-size.js.map +1 -1
  421. package/build-module/hooks/index.js +18 -15
  422. package/build-module/hooks/index.js.map +1 -1
  423. package/build-module/hooks/index.native.js +5 -3
  424. package/build-module/hooks/index.native.js.map +1 -1
  425. package/build-module/hooks/layout-child.js +60 -0
  426. package/build-module/hooks/layout-child.js.map +1 -0
  427. package/build-module/hooks/layout.js +26 -105
  428. package/build-module/hooks/layout.js.map +1 -1
  429. package/build-module/hooks/padding.js +2 -2
  430. package/build-module/hooks/padding.js.map +1 -1
  431. package/build-module/hooks/position.js +38 -59
  432. package/build-module/hooks/position.js.map +1 -1
  433. package/build-module/hooks/style.js +51 -84
  434. package/build-module/hooks/style.js.map +1 -1
  435. package/build-module/hooks/typography.js +33 -12
  436. package/build-module/hooks/typography.js.map +1 -1
  437. package/build-module/hooks/utils.js +149 -6
  438. package/build-module/hooks/utils.js.map +1 -1
  439. package/build-module/layouts/constrained.js +4 -3
  440. package/build-module/layouts/constrained.js.map +1 -1
  441. package/build-module/private-apis.js +0 -2
  442. package/build-module/private-apis.js.map +1 -1
  443. package/build-module/store/private-actions.js +7 -0
  444. package/build-module/store/private-actions.js.map +1 -1
  445. package/build-module/store/private-selectors.js +33 -1
  446. package/build-module/store/private-selectors.js.map +1 -1
  447. package/build-module/store/reducer.js +8 -0
  448. package/build-module/store/reducer.js.map +1 -1
  449. package/build-module/store/selectors.js +3 -51
  450. package/build-module/store/selectors.js.map +1 -1
  451. package/build-module/store/utils.js +56 -0
  452. package/build-module/store/utils.js.map +1 -0
  453. package/build-module/utils/object.js +21 -60
  454. package/build-module/utils/object.js.map +1 -1
  455. package/build-module/utils/selection.js +9 -1
  456. package/build-module/utils/selection.js.map +1 -1
  457. package/build-module/utils/transform-styles/index.js +24 -7
  458. package/build-module/utils/transform-styles/index.js.map +1 -1
  459. package/build-style/content-rtl.css +6 -6
  460. package/build-style/content.css +6 -6
  461. package/build-style/style-rtl.css +123 -298
  462. package/build-style/style.css +123 -298
  463. package/package.json +31 -31
  464. package/src/components/block-canvas/index.js +31 -17
  465. package/src/components/block-caption/README.md +2 -2
  466. package/src/components/block-card/index.js +5 -3
  467. package/src/components/block-card/style.scss +7 -3
  468. package/src/components/block-controls/hook.js +8 -30
  469. package/src/components/block-controls/test/index.js +3 -3
  470. package/src/components/block-edit/context.js +3 -0
  471. package/src/components/block-edit/index.js +36 -10
  472. package/src/components/block-info-slot-fill/index.js +6 -3
  473. package/src/components/block-inspector/style.scss +0 -4
  474. package/src/components/block-list/block.js +39 -5
  475. package/src/components/block-list/block.native.js +20 -4
  476. package/src/components/block-list/use-block-props/index.js +74 -21
  477. package/src/components/block-list/use-block-props/use-focus-first-element.js +1 -34
  478. package/src/components/block-list/use-block-props/use-is-hovered.js +2 -13
  479. package/src/components/block-list/use-block-props/use-selected-block-event-handlers.js +1 -5
  480. package/src/components/block-parent-selector/index.js +1 -1
  481. package/src/components/block-pattern-setup/index.js +38 -22
  482. package/src/components/block-pattern-setup/setup-toolbar.js +2 -0
  483. package/src/components/block-pattern-setup/style.scss +4 -1
  484. package/src/components/block-patterns-list/README.md +4 -4
  485. package/src/components/block-patterns-list/index.js +61 -35
  486. package/src/components/block-patterns-list/style.scss +7 -0
  487. package/src/components/block-removal-warning-modal/index.js +7 -14
  488. package/src/components/block-rename/index.js +3 -0
  489. package/src/components/block-rename/is-empty-string.js +3 -0
  490. package/src/components/block-rename/modal.js +121 -0
  491. package/src/components/block-rename/rename-control.js +80 -0
  492. package/src/components/block-rename/use-block-rename.js +10 -0
  493. package/src/components/block-settings/container.native.js +3 -5
  494. package/src/components/block-settings-menu/block-settings-dropdown.js +38 -34
  495. package/src/components/block-settings-menu-controls/index.js +9 -0
  496. package/src/components/block-styles/index.js +1 -1
  497. package/src/components/block-styles/index.native.js +4 -2
  498. package/src/components/block-styles/style.scss +0 -11
  499. package/src/components/block-switcher/test/__snapshots__/index.js.snap +3 -1
  500. package/src/components/block-toolbar/block-toolbar-menu.native.js +1 -4
  501. package/src/components/block-toolbar/index.js +180 -95
  502. package/src/components/block-toolbar/style.scss +50 -66
  503. package/src/components/block-tools/block-toolbar-breadcrumb.js +46 -0
  504. package/src/components/block-tools/block-toolbar-popover.js +90 -0
  505. package/src/components/block-tools/index.js +42 -29
  506. package/src/components/block-tools/style.scss +60 -172
  507. package/src/components/block-types-list/index.js +5 -4
  508. package/src/components/block-types-list/index.native.js +2 -1
  509. package/src/components/block-variation-picker/index.native.js +1 -1
  510. package/src/components/button-block-appender/content.scss +2 -2
  511. package/src/components/colors-gradients/control.js +49 -30
  512. package/src/components/colors-gradients/style.scss +0 -7
  513. package/src/components/date-format-picker/index.js +7 -0
  514. package/src/components/duotone-control/index.js +2 -5
  515. package/src/components/duotone-control/style.scss +1 -6
  516. package/src/components/editable-text/README.md +0 -36
  517. package/src/components/global-styles/advanced-panel.js +1 -1
  518. package/src/components/global-styles/color-panel.js +34 -25
  519. package/src/components/global-styles/filters-panel.js +8 -4
  520. package/src/components/global-styles/typography-panel.js +23 -43
  521. package/src/components/image-link-destinations/index.native.js +152 -0
  522. package/src/components/image-link-destinations/style.native.scss +16 -0
  523. package/src/components/image-size-control/index.js +0 -6
  524. package/src/components/index.native.js +1 -0
  525. package/src/components/inner-blocks/README.md +13 -2
  526. package/src/components/inner-blocks/index.js +6 -2
  527. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +57 -33
  528. package/src/components/inserter/block-patterns-explorer/pattern-list.js +5 -1
  529. package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +7 -3
  530. package/src/components/inserter/block-patterns-tab/use-pattern-categories.js +6 -1
  531. package/src/components/inserter/block-patterns-tab/utils.js +6 -4
  532. package/src/components/inserter/hooks/use-patterns-state.js +3 -1
  533. package/src/components/inserter/media-tab/media-panel.js +1 -1
  534. package/src/components/inserter/menu.js +16 -8
  535. package/src/components/inserter/preview-panel.js +2 -2
  536. package/src/components/inserter/style.scss +15 -17
  537. package/src/components/inserter-button/README.md +62 -0
  538. package/src/components/inserter-button/index.native.js +116 -0
  539. package/src/components/inserter-button/sparkles.js +15 -0
  540. package/src/components/inserter-button/style.native.scss +72 -0
  541. package/src/components/inserter-draggable-blocks/index.js +18 -5
  542. package/src/components/inserter-listbox/index.js +11 -7
  543. package/src/components/inserter-listbox/item.js +11 -12
  544. package/src/components/inserter-listbox/row.js +6 -12
  545. package/src/components/inspector-controls/fill.js +6 -3
  546. package/src/components/inspector-controls/fill.native.js +6 -3
  547. package/src/components/link-control/style.scss +1 -1
  548. package/src/components/link-control/test/index.js +1 -1
  549. package/src/components/list-view/use-list-view-expand-selected-item.js +7 -8
  550. package/src/components/navigable-toolbar/README.md +2 -0
  551. package/src/components/navigable-toolbar/index.js +2 -2
  552. package/src/components/plain-text/README.md +0 -28
  553. package/src/components/preview-options/index.js +6 -84
  554. package/src/components/rich-text/README.md +0 -58
  555. package/src/components/rich-text/content.js +27 -20
  556. package/src/components/rich-text/get-rich-text-values.js +6 -1
  557. package/src/components/rich-text/index.js +5 -46
  558. package/src/components/rich-text/index.native.js +9 -26
  559. package/src/components/rich-text/native/get-format-colors.native.js +33 -40
  560. package/src/components/rich-text/native/index.native.js +52 -50
  561. package/src/components/rich-text/use-input-rules.js +36 -3
  562. package/src/components/rich-text/with-deprecations.js +51 -0
  563. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +1 -1
  564. package/src/components/url-input/README.md +1 -74
  565. package/src/components/use-block-drop-zone/index.js +118 -15
  566. package/src/components/use-moving-animation/index.js +1 -1
  567. package/src/components/use-on-block-drop/index.js +2 -1
  568. package/src/components/use-resize-canvas/README.md +3 -3
  569. package/src/components/use-resize-canvas/index.js +4 -1
  570. package/src/components/use-settings/index.js +17 -3
  571. package/src/components/use-settings/test/index.js +1 -1
  572. package/src/hooks/align.js +15 -76
  573. package/src/hooks/align.native.js +1 -0
  574. package/src/hooks/anchor.js +13 -33
  575. package/src/hooks/background.js +28 -23
  576. package/src/hooks/block-hooks.js +22 -51
  577. package/src/hooks/block-renaming.js +33 -0
  578. package/src/hooks/border.js +67 -118
  579. package/src/hooks/color.js +100 -132
  580. package/src/hooks/content-lock-ui.js +110 -122
  581. package/src/hooks/custom-class-name.js +8 -40
  582. package/src/hooks/custom-fields.js +70 -94
  583. package/src/hooks/dimensions.js +20 -16
  584. package/src/hooks/duotone.js +70 -127
  585. package/src/hooks/font-family.js +10 -29
  586. package/src/hooks/font-size.js +66 -162
  587. package/src/hooks/index.js +42 -15
  588. package/src/hooks/index.native.js +6 -3
  589. package/src/hooks/layout-child.js +53 -0
  590. package/src/hooks/layout.js +25 -110
  591. package/src/hooks/padding.js +2 -2
  592. package/src/hooks/position.js +50 -90
  593. package/src/hooks/style.js +117 -187
  594. package/src/hooks/test/__snapshots__/align.native.js.snap +5 -5
  595. package/src/hooks/test/align.js +1 -178
  596. package/src/hooks/typography.js +20 -16
  597. package/src/hooks/utils.js +187 -6
  598. package/src/layouts/constrained.js +57 -50
  599. package/src/private-apis.js +0 -2
  600. package/src/store/private-actions.js +8 -0
  601. package/src/store/private-selectors.js +45 -0
  602. package/src/store/reducer.js +8 -0
  603. package/src/store/selectors.js +5 -67
  604. package/src/store/utils.js +74 -0
  605. package/src/style.scss +1 -3
  606. package/src/utils/object.js +18 -69
  607. package/src/utils/selection.js +9 -2
  608. package/src/utils/test/transform-styles.js +49 -0
  609. package/src/utils/transform-styles/index.js +39 -13
  610. package/build/components/block-list/use-block-props/use-block-class-names.js +0 -67
  611. package/build/components/block-list/use-block-props/use-block-class-names.js.map +0 -1
  612. package/build/components/block-list/use-block-props/use-block-custom-class-name.js +0 -46
  613. package/build/components/block-list/use-block-props/use-block-custom-class-name.js.map +0 -1
  614. package/build/components/block-list/use-block-props/use-block-default-class-name.js +0 -37
  615. package/build/components/block-list/use-block-props/use-block-default-class-name.js.map +0 -1
  616. package/build/components/block-tools/back-compat.js +0 -45
  617. package/build/components/block-tools/back-compat.js.map +0 -1
  618. package/build/components/block-tools/block-contextual-toolbar.js +0 -91
  619. package/build/components/block-tools/block-contextual-toolbar.js.map +0 -1
  620. package/build/components/block-tools/selected-block-tools.js +0 -113
  621. package/build/components/block-tools/selected-block-tools.js.map +0 -1
  622. package/build/components/inserter/hooks/use-debounced-input.js +0 -22
  623. package/build/components/inserter/hooks/use-debounced-input.js.map +0 -1
  624. package/build/components/use-display-block-controls/index.js +0 -39
  625. package/build/components/use-display-block-controls/index.js.map +0 -1
  626. package/build/components/use-display-block-controls/index.native.js +0 -39
  627. package/build/components/use-display-block-controls/index.native.js.map +0 -1
  628. package/build/hooks/block-rename-ui.js +0 -167
  629. package/build/hooks/block-rename-ui.js.map +0 -1
  630. package/build-module/components/block-list/use-block-props/use-block-class-names.js +0 -60
  631. package/build-module/components/block-list/use-block-props/use-block-class-names.js.map +0 -1
  632. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js +0 -40
  633. package/build-module/components/block-list/use-block-props/use-block-custom-class-name.js.map +0 -1
  634. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js +0 -31
  635. package/build-module/components/block-list/use-block-props/use-block-default-class-name.js.map +0 -1
  636. package/build-module/components/block-tools/back-compat.js +0 -35
  637. package/build-module/components/block-tools/back-compat.js.map +0 -1
  638. package/build-module/components/block-tools/block-contextual-toolbar.js +0 -83
  639. package/build-module/components/block-tools/block-contextual-toolbar.js.map +0 -1
  640. package/build-module/components/block-tools/selected-block-tools.js +0 -105
  641. package/build-module/components/block-tools/selected-block-tools.js.map +0 -1
  642. package/build-module/components/inserter/hooks/use-debounced-input.js +0 -15
  643. package/build-module/components/inserter/hooks/use-debounced-input.js.map +0 -1
  644. package/build-module/components/use-display-block-controls/index.js +0 -32
  645. package/build-module/components/use-display-block-controls/index.js.map +0 -1
  646. package/build-module/components/use-display-block-controls/index.native.js +0 -32
  647. package/build-module/components/use-display-block-controls/index.native.js.map +0 -1
  648. package/build-module/hooks/block-rename-ui.js +0 -159
  649. package/build-module/hooks/block-rename-ui.js.map +0 -1
  650. package/src/components/block-list/use-block-props/use-block-class-names.js +0 -66
  651. package/src/components/block-list/use-block-props/use-block-custom-class-name.js +0 -44
  652. package/src/components/block-list/use-block-props/use-block-default-class-name.js +0 -35
  653. package/src/components/block-parent-selector/style.scss +0 -11
  654. package/src/components/block-tools/back-compat.js +0 -35
  655. package/src/components/block-tools/block-contextual-toolbar.js +0 -100
  656. package/src/components/block-tools/selected-block-tools.js +0 -127
  657. package/src/components/inserter/hooks/use-debounced-input.js +0 -18
  658. package/src/components/preview-options/README.md +0 -94
  659. package/src/components/preview-options/style.scss +0 -64
  660. package/src/components/use-display-block-controls/index.js +0 -36
  661. package/src/components/use-display-block-controls/index.native.js +0 -37
  662. package/src/hooks/block-rename-ui.js +0 -228
  663. package/src/hooks/test/color.js +0 -112
  664. /package/src/{hooks/block-rename-ui.scss → components/block-rename/style.scss} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_inserterListItem","_interopRequireDefault","_inserterListbox","chunk","array","size","chunks","i","j","length","push","slice","BlockTypesList","items","onSelect","onHover","children","label","isDraggable","_react","createElement","InserterListboxGroup","className","map","row","InserterListboxRow","key","item","default","id","getBlockMenuDefaultClassName","isDisabled","isFirst","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-types-list/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockMenuDefaultClassName } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport InserterListItem from '../inserter-list-item';\nimport { InserterListboxGroup, InserterListboxRow } from '../inserter-listbox';\n\nfunction chunk( array, size ) {\n\tconst chunks = [];\n\tfor ( let i = 0, j = array.length; i < j; i += size ) {\n\t\tchunks.push( array.slice( i, i + size ) );\n\t}\n\treturn chunks;\n}\n\nfunction BlockTypesList( {\n\titems = [],\n\tonSelect,\n\tonHover = () => {},\n\tchildren,\n\tlabel,\n\tisDraggable = true,\n} ) {\n\treturn (\n\t\t<InserterListboxGroup\n\t\t\tclassName=\"block-editor-block-types-list\"\n\t\t\taria-label={ label }\n\t\t>\n\t\t\t{ chunk( items, 3 ).map( ( row, i ) => (\n\t\t\t\t<InserterListboxRow key={ i }>\n\t\t\t\t\t{ row.map( ( item, j ) => (\n\t\t\t\t\t\t<InserterListItem\n\t\t\t\t\t\t\tkey={ item.id }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tclassName={ getBlockMenuDefaultClassName(\n\t\t\t\t\t\t\t\titem.id\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tisDraggable={ isDraggable && ! item.isDisabled }\n\t\t\t\t\t\t\tisFirst={ i === 0 && j === 0 }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</InserterListboxRow>\n\t\t\t) ) }\n\t\t\t{ children }\n\t\t</InserterListboxGroup>\n\t);\n}\n\nexport default BlockTypesList;\n"],"mappings":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,SAASI,KAAKA,CAAEC,KAAK,EAAEC,IAAI,EAAG;EAC7B,MAAMC,MAAM,GAAG,EAAE;EACjB,KAAM,IAAIC,CAAC,GAAG,CAAC,EAAEC,CAAC,GAAGJ,KAAK,CAACK,MAAM,EAAEF,CAAC,GAAGC,CAAC,EAAED,CAAC,IAAIF,IAAI,EAAG;IACrDC,MAAM,CAACI,IAAI,CAAEN,KAAK,CAACO,KAAK,CAAEJ,CAAC,EAAEA,CAAC,GAAGF,IAAK,CAAE,CAAC;EAC1C;EACA,OAAOC,MAAM;AACd;AAEA,SAASM,cAAcA,CAAE;EACxBC,KAAK,GAAG,EAAE;EACVC,QAAQ;EACRC,OAAO,GAAGA,CAAA,KAAM,CAAC,CAAC;EAClBC,QAAQ;EACRC,KAAK;EACLC,WAAW,GAAG;AACf,CAAC,EAAG;EACH,OACC,IAAAC,MAAA,CAAAC,aAAA,EAAClB,gBAAA,CAAAmB,oBAAoB;IACpBC,SAAS,EAAC,+BAA+B;IACzC,cAAaL;EAAO,GAElBd,KAAK,CAAEU,KAAK,EAAE,CAAE,CAAC,CAACU,GAAG,CAAE,CAAEC,GAAG,EAAEjB,CAAC,KAChC,IAAAY,MAAA,CAAAC,aAAA,EAAClB,gBAAA,CAAAuB,kBAAkB;IAACC,GAAG,EAAGnB;EAAG,GAC1BiB,GAAG,CAACD,GAAG,CAAE,CAAEI,IAAI,EAAEnB,CAAC,KACnB,IAAAW,MAAA,CAAAC,aAAA,EAACpB,iBAAA,CAAA4B,OAAgB;IAChBF,GAAG,EAAGC,IAAI,CAACE,EAAI;IACfF,IAAI,EAAGA,IAAM;IACbL,SAAS,EAAG,IAAAQ,oCAA4B,EACvCH,IAAI,CAACE,EACN,CAAG;IACHf,QAAQ,EAAGA,QAAU;IACrBC,OAAO,EAAGA,OAAS;IACnBG,WAAW,EAAGA,WAAW,IAAI,CAAES,IAAI,CAACI,UAAY;IAChDC,OAAO,EAAGzB,CAAC,KAAK,CAAC,IAAIC,CAAC,KAAK;EAAG,CAC9B,CACA,CACiB,CACnB,CAAC,EACDQ,QACmB,CAAC;AAEzB;AAAC,IAAAiB,QAAA,GAEcrB,cAAc;AAAAsB,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
1
+ {"version":3,"names":["_blocks","require","_compose","_inserterListItem","_interopRequireDefault","_inserterListbox","chunk","array","size","chunks","i","j","length","push","slice","BlockTypesList","items","onSelect","onHover","children","label","isDraggable","className","listId","useInstanceId","_react","createElement","InserterListboxGroup","map","row","InserterListboxRow","key","item","default","id","getBlockMenuDefaultClassName","isDisabled","isFirst","rowId","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-types-list/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockMenuDefaultClassName } from '@wordpress/blocks';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport InserterListItem from '../inserter-list-item';\nimport { InserterListboxGroup, InserterListboxRow } from '../inserter-listbox';\n\nfunction chunk( array, size ) {\n\tconst chunks = [];\n\tfor ( let i = 0, j = array.length; i < j; i += size ) {\n\t\tchunks.push( array.slice( i, i + size ) );\n\t}\n\treturn chunks;\n}\n\nfunction BlockTypesList( {\n\titems = [],\n\tonSelect,\n\tonHover = () => {},\n\tchildren,\n\tlabel,\n\tisDraggable = true,\n} ) {\n\tconst className = 'block-editor-block-types-list';\n\tconst listId = useInstanceId( BlockTypesList, className );\n\treturn (\n\t\t<InserterListboxGroup className={ className } aria-label={ label }>\n\t\t\t{ chunk( items, 3 ).map( ( row, i ) => (\n\t\t\t\t<InserterListboxRow key={ i }>\n\t\t\t\t\t{ row.map( ( item, j ) => (\n\t\t\t\t\t\t<InserterListItem\n\t\t\t\t\t\t\tkey={ item.id }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tclassName={ getBlockMenuDefaultClassName(\n\t\t\t\t\t\t\t\titem.id\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tonHover={ onHover }\n\t\t\t\t\t\t\tisDraggable={ isDraggable && ! item.isDisabled }\n\t\t\t\t\t\t\tisFirst={ i === 0 && j === 0 }\n\t\t\t\t\t\t\trowId={ `${ listId }-${ i }` }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</InserterListboxRow>\n\t\t\t) ) }\n\t\t\t{ children }\n\t\t</InserterListboxGroup>\n\t);\n}\n\nexport default BlockTypesList;\n"],"mappings":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,iBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,gBAAA,GAAAJ,OAAA;AAVA;AACA;AACA;;AAIA;AACA;AACA;;AAIA,SAASK,KAAKA,CAAEC,KAAK,EAAEC,IAAI,EAAG;EAC7B,MAAMC,MAAM,GAAG,EAAE;EACjB,KAAM,IAAIC,CAAC,GAAG,CAAC,EAAEC,CAAC,GAAGJ,KAAK,CAACK,MAAM,EAAEF,CAAC,GAAGC,CAAC,EAAED,CAAC,IAAIF,IAAI,EAAG;IACrDC,MAAM,CAACI,IAAI,CAAEN,KAAK,CAACO,KAAK,CAAEJ,CAAC,EAAEA,CAAC,GAAGF,IAAK,CAAE,CAAC;EAC1C;EACA,OAAOC,MAAM;AACd;AAEA,SAASM,cAAcA,CAAE;EACxBC,KAAK,GAAG,EAAE;EACVC,QAAQ;EACRC,OAAO,GAAGA,CAAA,KAAM,CAAC,CAAC;EAClBC,QAAQ;EACRC,KAAK;EACLC,WAAW,GAAG;AACf,CAAC,EAAG;EACH,MAAMC,SAAS,GAAG,+BAA+B;EACjD,MAAMC,MAAM,GAAG,IAAAC,sBAAa,EAAET,cAAc,EAAEO,SAAU,CAAC;EACzD,OACC,IAAAG,MAAA,CAAAC,aAAA,EAACrB,gBAAA,CAAAsB,oBAAoB;IAACL,SAAS,EAAGA,SAAW;IAAC,cAAaF;EAAO,GAC/Dd,KAAK,CAAEU,KAAK,EAAE,CAAE,CAAC,CAACY,GAAG,CAAE,CAAEC,GAAG,EAAEnB,CAAC,KAChC,IAAAe,MAAA,CAAAC,aAAA,EAACrB,gBAAA,CAAAyB,kBAAkB;IAACC,GAAG,EAAGrB;EAAG,GAC1BmB,GAAG,CAACD,GAAG,CAAE,CAAEI,IAAI,EAAErB,CAAC,KACnB,IAAAc,MAAA,CAAAC,aAAA,EAACvB,iBAAA,CAAA8B,OAAgB;IAChBF,GAAG,EAAGC,IAAI,CAACE,EAAI;IACfF,IAAI,EAAGA,IAAM;IACbV,SAAS,EAAG,IAAAa,oCAA4B,EACvCH,IAAI,CAACE,EACN,CAAG;IACHjB,QAAQ,EAAGA,QAAU;IACrBC,OAAO,EAAGA,OAAS;IACnBG,WAAW,EAAGA,WAAW,IAAI,CAAEW,IAAI,CAACI,UAAY;IAChDC,OAAO,EAAG3B,CAAC,KAAK,CAAC,IAAIC,CAAC,KAAK,CAAG;IAC9B2B,KAAK,EAAI,GAAGf,MAAQ,IAAIb,CAAG;EAAG,CAC9B,CACA,CACiB,CACnB,CAAC,EACDS,QACmB,CAAC;AAEzB;AAAC,IAAAoB,QAAA,GAEcxB,cAAc;AAAAyB,OAAA,CAAAP,OAAA,GAAAM,QAAA"}
@@ -11,6 +11,7 @@ var _element = require("@wordpress/element");
11
11
  var _components = require("@wordpress/components");
12
12
  var _compose = require("@wordpress/compose");
13
13
  var _style = _interopRequireDefault(require("./style.scss"));
14
+ var _inserterButton = _interopRequireDefault(require("../inserter-button"));
14
15
  /**
15
16
  * External dependencies
16
17
  */
@@ -46,10 +47,10 @@ function BlockTypesList({
46
47
  const {
47
48
  paddingLeft: itemPaddingLeft,
48
49
  paddingRight: itemPaddingRight
49
- } = _components.InserterButton.Styles.modalItem;
50
+ } = _inserterButton.default.Styles.modalItem;
50
51
  const {
51
52
  width
52
- } = _components.InserterButton.Styles.modalIconWrapper;
53
+ } = _inserterButton.default.Styles.modalIconWrapper;
53
54
  return width + itemPaddingLeft + itemPaddingRight;
54
55
  }
55
56
  function onLayout() {
@@ -90,7 +91,7 @@ function BlockTypesList({
90
91
  const renderListItem = ({
91
92
  item
92
93
  }) => {
93
- return (0, _react.createElement)(_components.InserterButton, {
94
+ return (0, _react.createElement)(_inserterButton.default, {
94
95
  item: item,
95
96
  itemWidth: itemWidth,
96
97
  maxWidth: maxWidth,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_element","_components","_compose","_style","_interopRequireDefault","MIN_COL_NUM","BlockTypesList","name","sections","onSelect","label","listProps","initialNumToRender","numberOfColumns","setNumberOfColumns","useState","itemWidth","setItemWidth","maxWidth","setMaxWidth","useEffect","dimensionsChangeSubscription","Dimensions","addEventListener","onLayout","remove","calculateItemWidth","paddingLeft","itemPaddingLeft","paddingRight","itemPaddingRight","InserterButton","Styles","modalItem","width","modalIconWrapper","columnStyle","styles","sumLeftRightPadding","bottomSheetWidth","BottomSheet","getWidth","containerTotalWidth","itemTotalWidth","columnsFitToWidth","Math","floor","numColumns","max","updatedItemWidth","contentContainerStyle","StyleSheet","flatten","renderSection","item","_react","createElement","TouchableWithoutFeedback","accessible","FlatList","data","list","key","ItemSeparatorComponent","View","style","scrollEnabled","renderItem","renderListItem","colorScheme","usePreferredColorScheme","sectionHeaderGradientValue","sectionHeaderTitleStyles","usePreferredColorSchemeStyle","renderSectionHeader","section","metadata","icon","title","Gradient","gradientValue","Text","SectionList","testID","accessibilityLabel","keyboardShouldPersistTaps","paddingBottom","safeAreaBottomInset"],"sources":["@wordpress/block-editor/src/components/block-types-list/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tDimensions,\n\tFlatList,\n\tSectionList,\n\tStyleSheet,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useEffect } from '@wordpress/element';\nimport { BottomSheet, Gradient, InserterButton } from '@wordpress/components';\nimport {\n\tusePreferredColorScheme,\n\tusePreferredColorSchemeStyle,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\nconst MIN_COL_NUM = 3;\n\nexport default function BlockTypesList( {\n\tname,\n\tsections,\n\tonSelect,\n\tlabel,\n\tlistProps,\n\tinitialNumToRender = 3,\n} ) {\n\tconst [ numberOfColumns, setNumberOfColumns ] = useState( MIN_COL_NUM );\n\tconst [ itemWidth, setItemWidth ] = useState();\n\tconst [ maxWidth, setMaxWidth ] = useState();\n\n\tuseEffect( () => {\n\t\tconst dimensionsChangeSubscription = Dimensions.addEventListener(\n\t\t\t'change',\n\t\t\tonLayout\n\t\t);\n\t\tonLayout();\n\t\treturn () => {\n\t\t\tdimensionsChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tfunction calculateItemWidth() {\n\t\tconst { paddingLeft: itemPaddingLeft, paddingRight: itemPaddingRight } =\n\t\t\tInserterButton.Styles.modalItem;\n\t\tconst { width } = InserterButton.Styles.modalIconWrapper;\n\t\treturn width + itemPaddingLeft + itemPaddingRight;\n\t}\n\n\tfunction onLayout() {\n\t\tconst columnStyle = styles[ 'block-types-list__column' ];\n\t\tconst sumLeftRightPadding =\n\t\t\tcolumnStyle.paddingLeft + columnStyle.paddingRight;\n\n\t\tconst bottomSheetWidth = BottomSheet.getWidth();\n\t\tconst containerTotalWidth = bottomSheetWidth - sumLeftRightPadding;\n\t\tconst itemTotalWidth = calculateItemWidth();\n\n\t\tconst columnsFitToWidth = Math.floor(\n\t\t\tcontainerTotalWidth / itemTotalWidth\n\t\t);\n\n\t\tconst numColumns = Math.max( MIN_COL_NUM, columnsFitToWidth );\n\n\t\tsetNumberOfColumns( numColumns );\n\t\tsetMaxWidth( containerTotalWidth / numColumns );\n\n\t\tif ( columnsFitToWidth < MIN_COL_NUM ) {\n\t\t\tconst updatedItemWidth =\n\t\t\t\t( bottomSheetWidth - 2 * sumLeftRightPadding ) / MIN_COL_NUM;\n\t\t\tsetItemWidth( updatedItemWidth );\n\t\t}\n\t}\n\n\tconst contentContainerStyle = StyleSheet.flatten(\n\t\tlistProps.contentContainerStyle\n\t);\n\n\tconst renderSection = ( { item } ) => {\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t<FlatList\n\t\t\t\t\tdata={ item.list }\n\t\t\t\t\tkey={ `InserterUI-${ name }-${ numberOfColumns }` } // Re-render when numberOfColumns changes.\n\t\t\t\t\tnumColumns={ numberOfColumns }\n\t\t\t\t\tItemSeparatorComponent={ () => (\n\t\t\t\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tstyles[ 'block-types-list__row-separator' ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t\t) }\n\t\t\t\t\tscrollEnabled={ false }\n\t\t\t\t\trenderItem={ renderListItem }\n\t\t\t\t/>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t};\n\n\tconst renderListItem = ( { item } ) => {\n\t\treturn (\n\t\t\t<InserterButton\n\t\t\t\titem={ item }\n\t\t\t\titemWidth={ itemWidth }\n\t\t\t\tmaxWidth={ maxWidth }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst colorScheme = usePreferredColorScheme();\n\tconst sectionHeaderGradientValue =\n\t\tcolorScheme === 'light'\n\t\t\t? 'linear-gradient(#fff 70%, rgba(255, 255, 255, 0))'\n\t\t\t: 'linear-gradient(#2e2e2e 70%, rgba(46, 46, 46, 0))';\n\tconst sectionHeaderTitleStyles = usePreferredColorSchemeStyle(\n\t\tstyles[ 'block-types-list__section-header-title' ],\n\t\tstyles[ 'block-types-list__section-header-title--dark' ]\n\t);\n\n\tconst renderSectionHeader = ( { section: { metadata } } ) => {\n\t\tif ( ! metadata?.icon || ! metadata?.title ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t<Gradient\n\t\t\t\t\tgradientValue={ sectionHeaderGradientValue }\n\t\t\t\t\tstyle={ styles[ 'block-types-list__section-header' ] }\n\t\t\t\t>\n\t\t\t\t\t{ metadata?.icon }\n\t\t\t\t\t<Text style={ sectionHeaderTitleStyles }>\n\t\t\t\t\t\t{ metadata?.title }\n\t\t\t\t\t</Text>\n\t\t\t\t</Gradient>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t};\n\n\treturn (\n\t\t<SectionList\n\t\t\tonLayout={ onLayout }\n\t\t\ttestID={ `InserterUI-${ name }` }\n\t\t\taccessibilityLabel={ label }\n\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\tsections={ sections }\n\t\t\tinitialNumToRender={ initialNumToRender }\n\t\t\trenderItem={ renderSection }\n\t\t\trenderSectionHeader={ renderSectionHeader }\n\t\t\t{ ...listProps }\n\t\t\tcontentContainerStyle={ {\n\t\t\t\t...contentContainerStyle,\n\t\t\t\tpaddingBottom: Math.max(\n\t\t\t\t\tlistProps.safeAreaBottomInset,\n\t\t\t\t\tcontentContainerStyle.paddingBottom\n\t\t\t\t),\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_element","_components","_compose","_style","_interopRequireDefault","_inserterButton","MIN_COL_NUM","BlockTypesList","name","sections","onSelect","label","listProps","initialNumToRender","numberOfColumns","setNumberOfColumns","useState","itemWidth","setItemWidth","maxWidth","setMaxWidth","useEffect","dimensionsChangeSubscription","Dimensions","addEventListener","onLayout","remove","calculateItemWidth","paddingLeft","itemPaddingLeft","paddingRight","itemPaddingRight","InserterButton","Styles","modalItem","width","modalIconWrapper","columnStyle","styles","sumLeftRightPadding","bottomSheetWidth","BottomSheet","getWidth","containerTotalWidth","itemTotalWidth","columnsFitToWidth","Math","floor","numColumns","max","updatedItemWidth","contentContainerStyle","StyleSheet","flatten","renderSection","item","_react","createElement","TouchableWithoutFeedback","accessible","FlatList","data","list","key","ItemSeparatorComponent","View","style","scrollEnabled","renderItem","renderListItem","default","colorScheme","usePreferredColorScheme","sectionHeaderGradientValue","sectionHeaderTitleStyles","usePreferredColorSchemeStyle","renderSectionHeader","section","metadata","icon","title","Gradient","gradientValue","Text","SectionList","testID","accessibilityLabel","keyboardShouldPersistTaps","paddingBottom","safeAreaBottomInset"],"sources":["@wordpress/block-editor/src/components/block-types-list/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tDimensions,\n\tFlatList,\n\tSectionList,\n\tStyleSheet,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useEffect } from '@wordpress/element';\nimport { BottomSheet, Gradient } from '@wordpress/components';\nimport {\n\tusePreferredColorScheme,\n\tusePreferredColorSchemeStyle,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport InserterButton from '../inserter-button';\n\nconst MIN_COL_NUM = 3;\n\nexport default function BlockTypesList( {\n\tname,\n\tsections,\n\tonSelect,\n\tlabel,\n\tlistProps,\n\tinitialNumToRender = 3,\n} ) {\n\tconst [ numberOfColumns, setNumberOfColumns ] = useState( MIN_COL_NUM );\n\tconst [ itemWidth, setItemWidth ] = useState();\n\tconst [ maxWidth, setMaxWidth ] = useState();\n\n\tuseEffect( () => {\n\t\tconst dimensionsChangeSubscription = Dimensions.addEventListener(\n\t\t\t'change',\n\t\t\tonLayout\n\t\t);\n\t\tonLayout();\n\t\treturn () => {\n\t\t\tdimensionsChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tfunction calculateItemWidth() {\n\t\tconst { paddingLeft: itemPaddingLeft, paddingRight: itemPaddingRight } =\n\t\t\tInserterButton.Styles.modalItem;\n\t\tconst { width } = InserterButton.Styles.modalIconWrapper;\n\t\treturn width + itemPaddingLeft + itemPaddingRight;\n\t}\n\n\tfunction onLayout() {\n\t\tconst columnStyle = styles[ 'block-types-list__column' ];\n\t\tconst sumLeftRightPadding =\n\t\t\tcolumnStyle.paddingLeft + columnStyle.paddingRight;\n\n\t\tconst bottomSheetWidth = BottomSheet.getWidth();\n\t\tconst containerTotalWidth = bottomSheetWidth - sumLeftRightPadding;\n\t\tconst itemTotalWidth = calculateItemWidth();\n\n\t\tconst columnsFitToWidth = Math.floor(\n\t\t\tcontainerTotalWidth / itemTotalWidth\n\t\t);\n\n\t\tconst numColumns = Math.max( MIN_COL_NUM, columnsFitToWidth );\n\n\t\tsetNumberOfColumns( numColumns );\n\t\tsetMaxWidth( containerTotalWidth / numColumns );\n\n\t\tif ( columnsFitToWidth < MIN_COL_NUM ) {\n\t\t\tconst updatedItemWidth =\n\t\t\t\t( bottomSheetWidth - 2 * sumLeftRightPadding ) / MIN_COL_NUM;\n\t\t\tsetItemWidth( updatedItemWidth );\n\t\t}\n\t}\n\n\tconst contentContainerStyle = StyleSheet.flatten(\n\t\tlistProps.contentContainerStyle\n\t);\n\n\tconst renderSection = ( { item } ) => {\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t<FlatList\n\t\t\t\t\tdata={ item.list }\n\t\t\t\t\tkey={ `InserterUI-${ name }-${ numberOfColumns }` } // Re-render when numberOfColumns changes.\n\t\t\t\t\tnumColumns={ numberOfColumns }\n\t\t\t\t\tItemSeparatorComponent={ () => (\n\t\t\t\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tstyles[ 'block-types-list__row-separator' ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</TouchableWithoutFeedback>\n\t\t\t\t\t) }\n\t\t\t\t\tscrollEnabled={ false }\n\t\t\t\t\trenderItem={ renderListItem }\n\t\t\t\t/>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t};\n\n\tconst renderListItem = ( { item } ) => {\n\t\treturn (\n\t\t\t<InserterButton\n\t\t\t\titem={ item }\n\t\t\t\titemWidth={ itemWidth }\n\t\t\t\tmaxWidth={ maxWidth }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst colorScheme = usePreferredColorScheme();\n\tconst sectionHeaderGradientValue =\n\t\tcolorScheme === 'light'\n\t\t\t? 'linear-gradient(#fff 70%, rgba(255, 255, 255, 0))'\n\t\t\t: 'linear-gradient(#2e2e2e 70%, rgba(46, 46, 46, 0))';\n\tconst sectionHeaderTitleStyles = usePreferredColorSchemeStyle(\n\t\tstyles[ 'block-types-list__section-header-title' ],\n\t\tstyles[ 'block-types-list__section-header-title--dark' ]\n\t);\n\n\tconst renderSectionHeader = ( { section: { metadata } } ) => {\n\t\tif ( ! metadata?.icon || ! metadata?.title ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback accessible={ false }>\n\t\t\t\t<Gradient\n\t\t\t\t\tgradientValue={ sectionHeaderGradientValue }\n\t\t\t\t\tstyle={ styles[ 'block-types-list__section-header' ] }\n\t\t\t\t>\n\t\t\t\t\t{ metadata?.icon }\n\t\t\t\t\t<Text style={ sectionHeaderTitleStyles }>\n\t\t\t\t\t\t{ metadata?.title }\n\t\t\t\t\t</Text>\n\t\t\t\t</Gradient>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t};\n\n\treturn (\n\t\t<SectionList\n\t\t\tonLayout={ onLayout }\n\t\t\ttestID={ `InserterUI-${ name }` }\n\t\t\taccessibilityLabel={ label }\n\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\tsections={ sections }\n\t\t\tinitialNumToRender={ initialNumToRender }\n\t\t\trenderItem={ renderSection }\n\t\t\trenderSectionHeader={ renderSectionHeader }\n\t\t\t{ ...listProps }\n\t\t\tcontentContainerStyle={ {\n\t\t\t\t...contentContainerStyle,\n\t\t\t\tpaddingBottom: Math.max(\n\t\t\t\t\tlistProps.safeAreaBottomInset,\n\t\t\t\t\tcontentContainerStyle.paddingBottom\n\t\t\t\t),\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
@@ -15,6 +15,7 @@ var _components = require("@wordpress/components");
15
15
  var _icons = require("@wordpress/icons");
16
16
  var _style = _interopRequireDefault(require("./style.scss"));
17
17
  var _store = require("../../store");
18
+ var _inserterButton = _interopRequireDefault(require("../inserter-button"));
18
19
  /**
19
20
  * External dependencies
20
21
  */
@@ -71,7 +72,7 @@ function BlockVariationPicker({
71
72
  showsHorizontalScrollIndicator: false,
72
73
  contentContainerStyle: _style.default.contentContainerStyle,
73
74
  style: _style.default.containerStyle
74
- }, variations.map(v => (0, _react.createElement)(_components.InserterButton, {
75
+ }, variations.map(v => (0, _react.createElement)(_inserterButton.default, {
75
76
  item: v,
76
77
  key: v.name,
77
78
  onSelect: () => onVariationSelect(v)
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_data","_compose","_blocks","_i18n","_components","_icons","_style","_interopRequireDefault","_store","hitSlop","top","bottom","left","right","BlockVariationPicker","isVisible","onClose","clientId","variations","replaceInnerBlocks","useDispatch","blockEditorStore","isIOS","Platform","OS","cancelButtonStyle","usePreferredColorSchemeStyle","styles","cancelButton","cancelButtonDark","leftButton","_react","createElement","TouchableWithoutFeedback","onPress","View","Text","style","maxFontSizeMultiplier","__","Icon","icon","close","size","closeIcon","onVariationSelect","variation","createBlocksFromInnerBlocksTemplate","innerBlocks","BottomSheet","title","contentStyle","testID","ScrollView","horizontal","showsHorizontalScrollIndicator","contentContainerStyle","containerStyle","map","v","InserterButton","item","key","name","onSelect","PanelBody","FooterMessageControl","label","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/block-variation-picker/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tScrollView,\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tPlatform,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { createBlocksFromInnerBlocksTemplate } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tBottomSheet,\n\tFooterMessageControl,\n\tInserterButton,\n} from '@wordpress/components';\nimport { Icon, close } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { store as blockEditorStore } from '../../store';\n\nconst hitSlop = { top: 22, bottom: 22, left: 22, right: 22 };\n\nfunction BlockVariationPicker( { isVisible, onClose, clientId, variations } ) {\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst isIOS = Platform.OS === 'ios';\n\n\tconst cancelButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.cancelButton,\n\t\tstyles.cancelButtonDark\n\t);\n\n\tconst leftButton = (\n\t\t<TouchableWithoutFeedback onPress={ onClose } hitSlop={ hitSlop }>\n\t\t\t<View>\n\t\t\t\t{ isIOS ? (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={ cancelButtonStyle }\n\t\t\t\t\t\tmaxFontSizeMultiplier={ 2 }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t) : (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\tstyle={ styles.closeIcon }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onVariationSelect = ( variation ) => {\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\tcreateBlocksFromInnerBlocksTemplate( variation.innerBlocks )\n\t\t);\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<BottomSheet\n\t\t\tisVisible={ isVisible }\n\t\t\tonClose={ onClose }\n\t\t\ttitle={ __( 'Select a layout' ) }\n\t\t\tcontentStyle={ styles.contentStyle }\n\t\t\tleftButton={ leftButton }\n\t\t\ttestID=\"block-variation-modal\"\n\t\t>\n\t\t\t<ScrollView\n\t\t\t\thorizontal\n\t\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\t\tcontentContainerStyle={ styles.contentContainerStyle }\n\t\t\t\tstyle={ styles.containerStyle }\n\t\t\t>\n\t\t\t\t{ variations.map( ( v ) => (\n\t\t\t\t\t<InserterButton\n\t\t\t\t\t\titem={ v }\n\t\t\t\t\t\tkey={ v.name }\n\t\t\t\t\t\tonSelect={ () => onVariationSelect( v ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ScrollView>\n\t\t\t<PanelBody>\n\t\t\t\t<FooterMessageControl\n\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</BottomSheet>\n\t);\n}\n\nexport default BlockVariationPicker;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_data","_compose","_blocks","_i18n","_components","_icons","_style","_interopRequireDefault","_store","_inserterButton","hitSlop","top","bottom","left","right","BlockVariationPicker","isVisible","onClose","clientId","variations","replaceInnerBlocks","useDispatch","blockEditorStore","isIOS","Platform","OS","cancelButtonStyle","usePreferredColorSchemeStyle","styles","cancelButton","cancelButtonDark","leftButton","_react","createElement","TouchableWithoutFeedback","onPress","View","Text","style","maxFontSizeMultiplier","__","Icon","icon","close","size","closeIcon","onVariationSelect","variation","createBlocksFromInnerBlocksTemplate","innerBlocks","BottomSheet","title","contentStyle","testID","ScrollView","horizontal","showsHorizontalScrollIndicator","contentContainerStyle","containerStyle","map","v","default","item","key","name","onSelect","PanelBody","FooterMessageControl","label","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-variation-picker/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tScrollView,\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tPlatform,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch } from '@wordpress/data';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { createBlocksFromInnerBlocksTemplate } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tBottomSheet,\n\tFooterMessageControl,\n} from '@wordpress/components';\nimport { Icon, close } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { store as blockEditorStore } from '../../store';\nimport InserterButton from '../inserter-button';\n\nconst hitSlop = { top: 22, bottom: 22, left: 22, right: 22 };\n\nfunction BlockVariationPicker( { isVisible, onClose, clientId, variations } ) {\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst isIOS = Platform.OS === 'ios';\n\n\tconst cancelButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.cancelButton,\n\t\tstyles.cancelButtonDark\n\t);\n\n\tconst leftButton = (\n\t\t<TouchableWithoutFeedback onPress={ onClose } hitSlop={ hitSlop }>\n\t\t\t<View>\n\t\t\t\t{ isIOS ? (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tstyle={ cancelButtonStyle }\n\t\t\t\t\t\tmaxFontSizeMultiplier={ 2 }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t) : (\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t\tstyle={ styles.closeIcon }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onVariationSelect = ( variation ) => {\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\tcreateBlocksFromInnerBlocksTemplate( variation.innerBlocks )\n\t\t);\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<BottomSheet\n\t\t\tisVisible={ isVisible }\n\t\t\tonClose={ onClose }\n\t\t\ttitle={ __( 'Select a layout' ) }\n\t\t\tcontentStyle={ styles.contentStyle }\n\t\t\tleftButton={ leftButton }\n\t\t\ttestID=\"block-variation-modal\"\n\t\t>\n\t\t\t<ScrollView\n\t\t\t\thorizontal\n\t\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\t\tcontentContainerStyle={ styles.contentContainerStyle }\n\t\t\t\tstyle={ styles.containerStyle }\n\t\t\t>\n\t\t\t\t{ variations.map( ( v ) => (\n\t\t\t\t\t<InserterButton\n\t\t\t\t\t\titem={ v }\n\t\t\t\t\t\tkey={ v.name }\n\t\t\t\t\t\tonSelect={ () => onVariationSelect( v ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ScrollView>\n\t\t\t<PanelBody>\n\t\t\t\t<FooterMessageControl\n\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</BottomSheet>\n\t);\n}\n\nexport default BlockVariationPicker;\n"],"mappings":"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"}
@@ -10,6 +10,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _i18n = require("@wordpress/i18n");
11
11
  var _components = require("@wordpress/components");
12
12
  var _useSettings = require("../use-settings");
13
+ var _lockUnlock = require("../../lock-unlock");
13
14
  /**
14
15
  * External dependencies
15
16
  */
@@ -23,17 +24,10 @@ var _useSettings = require("../use-settings");
23
24
  */
24
25
 
25
26
  const colorsAndGradientKeys = ['colors', 'disableCustomColors', 'gradients', 'disableCustomGradients'];
26
- const TAB_COLOR = {
27
- name: 'color',
28
- title: (0, _i18n.__)('Solid'),
29
- value: 'color'
27
+ const TAB_IDS = {
28
+ color: 'color',
29
+ gradient: 'gradient'
30
30
  };
31
- const TAB_GRADIENT = {
32
- name: 'gradient',
33
- title: (0, _i18n.__)('Gradient'),
34
- value: 'gradient'
35
- };
36
- const TABS_SETTINGS = [TAB_COLOR, TAB_GRADIENT];
37
31
  function ColorGradientControlInner({
38
32
  colors,
39
33
  gradients,
@@ -57,7 +51,7 @@ function ColorGradientControlInner({
57
51
  return null;
58
52
  }
59
53
  const tabPanels = {
60
- [TAB_COLOR.value]: (0, _react.createElement)(_components.ColorPalette, {
54
+ [TAB_IDS.color]: (0, _react.createElement)(_components.ColorPalette, {
61
55
  value: colorValue,
62
56
  onChange: canChooseAGradient ? newColor => {
63
57
  onColorChange(newColor);
@@ -70,7 +64,7 @@ function ColorGradientControlInner({
70
64
  enableAlpha: enableAlpha,
71
65
  headingLevel: headingLevel
72
66
  }),
73
- [TAB_GRADIENT.value]: (0, _react.createElement)(_components.GradientPicker, {
67
+ [TAB_IDS.gradient]: (0, _react.createElement)(_components.GradientPicker, {
74
68
  __nextHasNoMargin: true,
75
69
  value: gradientValue,
76
70
  onChange: canChooseAColor ? newGradient => {
@@ -87,6 +81,13 @@ function ColorGradientControlInner({
87
81
  const renderPanelType = type => (0, _react.createElement)("div", {
88
82
  className: "block-editor-color-gradient-control__panel"
89
83
  }, tabPanels[type]);
84
+
85
+ // Unlocking `Tabs` too early causes the `unlock` method to receive an empty
86
+ // object, due to circular dependencies.
87
+ // See https://github.com/WordPress/gutenberg/issues/52692
88
+ const {
89
+ Tabs
90
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
90
91
  return (0, _react.createElement)(_components.BaseControl, {
91
92
  __nextHasNoMarginBottom: true,
92
93
  className: (0, _classnames.default)('block-editor-color-gradient-control', className)
@@ -96,11 +97,21 @@ function ColorGradientControlInner({
96
97
  spacing: 1
97
98
  }, showTitle && (0, _react.createElement)("legend", null, (0, _react.createElement)("div", {
98
99
  className: "block-editor-color-gradient-control__color-indicator"
99
- }, (0, _react.createElement)(_components.BaseControl.VisualLabel, null, label))), canChooseAColor && canChooseAGradient && (0, _react.createElement)(_components.TabPanel, {
100
- className: "block-editor-color-gradient-control__tabs",
101
- tabs: TABS_SETTINGS,
102
- initialTabName: gradientValue ? TAB_GRADIENT.value : !!canChooseAColor && TAB_COLOR.value
103
- }, tab => renderPanelType(tab.value)), !canChooseAGradient && renderPanelType(TAB_COLOR.value), !canChooseAColor && renderPanelType(TAB_GRADIENT.value))));
100
+ }, (0, _react.createElement)(_components.BaseControl.VisualLabel, null, label))), canChooseAColor && canChooseAGradient && (0, _react.createElement)("div", null, (0, _react.createElement)(Tabs, {
101
+ initialTabId: gradientValue ? TAB_IDS.gradient : !!canChooseAColor && TAB_IDS.color
102
+ }, (0, _react.createElement)(Tabs.TabList, null, (0, _react.createElement)(Tabs.Tab, {
103
+ tabId: TAB_IDS.color
104
+ }, (0, _i18n.__)('Solid')), (0, _react.createElement)(Tabs.Tab, {
105
+ tabId: TAB_IDS.gradient
106
+ }, (0, _i18n.__)('Gradient'))), (0, _react.createElement)(Tabs.TabPanel, {
107
+ tabId: TAB_IDS.color,
108
+ className: 'block-editor-color-gradient-control__panel',
109
+ focusable: false
110
+ }, tabPanels.color), (0, _react.createElement)(Tabs.TabPanel, {
111
+ tabId: TAB_IDS.gradient,
112
+ className: 'block-editor-color-gradient-control__panel',
113
+ focusable: false
114
+ }, tabPanels.gradient))), !canChooseAGradient && renderPanelType(TAB_IDS.color), !canChooseAColor && renderPanelType(TAB_IDS.gradient))));
104
115
  }
105
116
  function ColorGradientControlSelect(props) {
106
117
  const [colors, gradients, customColors, customGradients] = (0, _useSettings.useSettings)('color.palette', 'color.gradients', 'color.custom', 'color.customGradient');
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_components","_useSettings","colorsAndGradientKeys","TAB_COLOR","name","title","__","value","TAB_GRADIENT","TABS_SETTINGS","ColorGradientControlInner","colors","gradients","disableCustomColors","disableCustomGradients","__experimentalIsRenderedInSidebar","className","label","onColorChange","onGradientChange","colorValue","gradientValue","clearable","showTitle","enableAlpha","headingLevel","canChooseAColor","length","canChooseAGradient","tabPanels","_react","createElement","ColorPalette","onChange","newColor","GradientPicker","__nextHasNoMargin","newGradient","renderPanelType","type","BaseControl","__nextHasNoMarginBottom","classnames","__experimentalVStack","spacing","VisualLabel","TabPanel","tabs","initialTabName","tab","ColorGradientControlSelect","props","customColors","customGradients","useSettings","ColorGradientControl","every","key","hasOwnProperty","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/colors-gradients/control.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBaseControl,\n\t__experimentalVStack as VStack,\n\tTabPanel,\n\tColorPalette,\n\tGradientPicker,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useSettings } from '../use-settings';\n\nconst colorsAndGradientKeys = [\n\t'colors',\n\t'disableCustomColors',\n\t'gradients',\n\t'disableCustomGradients',\n];\n\nconst TAB_COLOR = {\n\tname: 'color',\n\ttitle: __( 'Solid' ),\n\tvalue: 'color',\n};\nconst TAB_GRADIENT = {\n\tname: 'gradient',\n\ttitle: __( 'Gradient' ),\n\tvalue: 'gradient',\n};\n\nconst TABS_SETTINGS = [ TAB_COLOR, TAB_GRADIENT ];\n\nfunction ColorGradientControlInner( {\n\tcolors,\n\tgradients,\n\tdisableCustomColors,\n\tdisableCustomGradients,\n\t__experimentalIsRenderedInSidebar,\n\tclassName,\n\tlabel,\n\tonColorChange,\n\tonGradientChange,\n\tcolorValue,\n\tgradientValue,\n\tclearable,\n\tshowTitle = true,\n\tenableAlpha,\n\theadingLevel,\n} ) {\n\tconst canChooseAColor =\n\t\tonColorChange &&\n\t\t( ( colors && colors.length > 0 ) || ! disableCustomColors );\n\tconst canChooseAGradient =\n\t\tonGradientChange &&\n\t\t( ( gradients && gradients.length > 0 ) || ! disableCustomGradients );\n\n\tif ( ! canChooseAColor && ! canChooseAGradient ) {\n\t\treturn null;\n\t}\n\n\tconst tabPanels = {\n\t\t[ TAB_COLOR.value ]: (\n\t\t\t<ColorPalette\n\t\t\t\tvalue={ colorValue }\n\t\t\t\tonChange={\n\t\t\t\t\tcanChooseAGradient\n\t\t\t\t\t\t? ( newColor ) => {\n\t\t\t\t\t\t\t\tonColorChange( newColor );\n\t\t\t\t\t\t\t\tonGradientChange();\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: onColorChange\n\t\t\t\t}\n\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tclearable={ clearable }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t),\n\t\t[ TAB_GRADIENT.value ]: (\n\t\t\t<GradientPicker\n\t\t\t\t__nextHasNoMargin\n\t\t\t\tvalue={ gradientValue }\n\t\t\t\tonChange={\n\t\t\t\t\tcanChooseAColor\n\t\t\t\t\t\t? ( newGradient ) => {\n\t\t\t\t\t\t\t\tonGradientChange( newGradient );\n\t\t\t\t\t\t\t\tonColorChange();\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: onGradientChange\n\t\t\t\t}\n\t\t\t\t{ ...{ gradients, disableCustomGradients } }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tclearable={ clearable }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t),\n\t};\n\n\tconst renderPanelType = ( type ) => (\n\t\t<div className=\"block-editor-color-gradient-control__panel\">\n\t\t\t{ tabPanels[ type ] }\n\t\t</div>\n\t);\n\n\treturn (\n\t\t<BaseControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName={ classnames(\n\t\t\t\t'block-editor-color-gradient-control',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t>\n\t\t\t<fieldset className=\"block-editor-color-gradient-control__fieldset\">\n\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t{ showTitle && (\n\t\t\t\t\t\t<legend>\n\t\t\t\t\t\t\t<div className=\"block-editor-color-gradient-control__color-indicator\">\n\t\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</legend>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canChooseAColor && canChooseAGradient && (\n\t\t\t\t\t\t<TabPanel\n\t\t\t\t\t\t\tclassName=\"block-editor-color-gradient-control__tabs\"\n\t\t\t\t\t\t\ttabs={ TABS_SETTINGS }\n\t\t\t\t\t\t\tinitialTabName={\n\t\t\t\t\t\t\t\tgradientValue\n\t\t\t\t\t\t\t\t\t? TAB_GRADIENT.value\n\t\t\t\t\t\t\t\t\t: !! canChooseAColor && TAB_COLOR.value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( tab ) => renderPanelType( tab.value ) }\n\t\t\t\t\t\t</TabPanel>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! canChooseAGradient &&\n\t\t\t\t\t\trenderPanelType( TAB_COLOR.value ) }\n\t\t\t\t\t{ ! canChooseAColor &&\n\t\t\t\t\t\trenderPanelType( TAB_GRADIENT.value ) }\n\t\t\t\t</VStack>\n\t\t\t</fieldset>\n\t\t</BaseControl>\n\t);\n}\n\nfunction ColorGradientControlSelect( props ) {\n\tconst [ colors, gradients, customColors, customGradients ] = useSettings(\n\t\t'color.palette',\n\t\t'color.gradients',\n\t\t'color.custom',\n\t\t'color.customGradient'\n\t);\n\n\treturn (\n\t\t<ColorGradientControlInner\n\t\t\tcolors={ colors }\n\t\t\tgradients={ gradients }\n\t\t\tdisableCustomColors={ ! customColors }\n\t\t\tdisableCustomGradients={ ! customGradients }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction ColorGradientControl( props ) {\n\tif (\n\t\tcolorsAndGradientKeys.every( ( key ) => props.hasOwnProperty( key ) )\n\t) {\n\t\treturn <ColorGradientControlInner { ...props } />;\n\t}\n\treturn <ColorGradientControlSelect { ...props } />;\n}\n\nexport default ColorGradientControl;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_i18n","_components","_useSettings","_lockUnlock","colorsAndGradientKeys","TAB_IDS","color","gradient","ColorGradientControlInner","colors","gradients","disableCustomColors","disableCustomGradients","__experimentalIsRenderedInSidebar","className","label","onColorChange","onGradientChange","colorValue","gradientValue","clearable","showTitle","enableAlpha","headingLevel","canChooseAColor","length","canChooseAGradient","tabPanels","_react","createElement","ColorPalette","value","onChange","newColor","GradientPicker","__nextHasNoMargin","newGradient","renderPanelType","type","Tabs","unlock","componentsPrivateApis","BaseControl","__nextHasNoMarginBottom","classnames","__experimentalVStack","spacing","VisualLabel","initialTabId","TabList","Tab","tabId","__","TabPanel","focusable","ColorGradientControlSelect","props","customColors","customGradients","useSettings","ColorGradientControl","every","key","hasOwnProperty","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/colors-gradients/control.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBaseControl,\n\t__experimentalVStack as VStack,\n\tColorPalette,\n\tGradientPicker,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useSettings } from '../use-settings';\nimport { unlock } from '../../lock-unlock';\n\nconst colorsAndGradientKeys = [\n\t'colors',\n\t'disableCustomColors',\n\t'gradients',\n\t'disableCustomGradients',\n];\n\nconst TAB_IDS = { color: 'color', gradient: 'gradient' };\n\nfunction ColorGradientControlInner( {\n\tcolors,\n\tgradients,\n\tdisableCustomColors,\n\tdisableCustomGradients,\n\t__experimentalIsRenderedInSidebar,\n\tclassName,\n\tlabel,\n\tonColorChange,\n\tonGradientChange,\n\tcolorValue,\n\tgradientValue,\n\tclearable,\n\tshowTitle = true,\n\tenableAlpha,\n\theadingLevel,\n} ) {\n\tconst canChooseAColor =\n\t\tonColorChange &&\n\t\t( ( colors && colors.length > 0 ) || ! disableCustomColors );\n\tconst canChooseAGradient =\n\t\tonGradientChange &&\n\t\t( ( gradients && gradients.length > 0 ) || ! disableCustomGradients );\n\n\tif ( ! canChooseAColor && ! canChooseAGradient ) {\n\t\treturn null;\n\t}\n\n\tconst tabPanels = {\n\t\t[ TAB_IDS.color ]: (\n\t\t\t<ColorPalette\n\t\t\t\tvalue={ colorValue }\n\t\t\t\tonChange={\n\t\t\t\t\tcanChooseAGradient\n\t\t\t\t\t\t? ( newColor ) => {\n\t\t\t\t\t\t\t\tonColorChange( newColor );\n\t\t\t\t\t\t\t\tonGradientChange();\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: onColorChange\n\t\t\t\t}\n\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tclearable={ clearable }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t),\n\t\t[ TAB_IDS.gradient ]: (\n\t\t\t<GradientPicker\n\t\t\t\t__nextHasNoMargin\n\t\t\t\tvalue={ gradientValue }\n\t\t\t\tonChange={\n\t\t\t\t\tcanChooseAColor\n\t\t\t\t\t\t? ( newGradient ) => {\n\t\t\t\t\t\t\t\tonGradientChange( newGradient );\n\t\t\t\t\t\t\t\tonColorChange();\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: onGradientChange\n\t\t\t\t}\n\t\t\t\t{ ...{ gradients, disableCustomGradients } }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tclearable={ clearable }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t),\n\t};\n\n\tconst renderPanelType = ( type ) => (\n\t\t<div className=\"block-editor-color-gradient-control__panel\">\n\t\t\t{ tabPanels[ type ] }\n\t\t</div>\n\t);\n\n\t// Unlocking `Tabs` too early causes the `unlock` method to receive an empty\n\t// object, due to circular dependencies.\n\t// See https://github.com/WordPress/gutenberg/issues/52692\n\tconst { Tabs } = unlock( componentsPrivateApis );\n\n\treturn (\n\t\t<BaseControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tclassName={ classnames(\n\t\t\t\t'block-editor-color-gradient-control',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t>\n\t\t\t<fieldset className=\"block-editor-color-gradient-control__fieldset\">\n\t\t\t\t<VStack spacing={ 1 }>\n\t\t\t\t\t{ showTitle && (\n\t\t\t\t\t\t<legend>\n\t\t\t\t\t\t\t<div className=\"block-editor-color-gradient-control__color-indicator\">\n\t\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</legend>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canChooseAColor && canChooseAGradient && (\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<Tabs\n\t\t\t\t\t\t\t\tinitialTabId={\n\t\t\t\t\t\t\t\t\tgradientValue\n\t\t\t\t\t\t\t\t\t\t? TAB_IDS.gradient\n\t\t\t\t\t\t\t\t\t\t: !! canChooseAColor && TAB_IDS.color\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\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t<Tabs.Tab tabId={ TAB_IDS.color }>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Solid' ) }\n\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t<Tabs.Tab tabId={ TAB_IDS.gradient }>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Gradient' ) }\n\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t</Tabs.TabList>\n\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\ttabId={ TAB_IDS.color }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t'block-editor-color-gradient-control__panel'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ tabPanels.color }\n\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\ttabId={ TAB_IDS.gradient }\n\t\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\t\t'block-editor-color-gradient-control__panel'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ tabPanels.gradient }\n\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\n\t\t\t\t\t{ ! canChooseAGradient && renderPanelType( TAB_IDS.color ) }\n\t\t\t\t\t{ ! canChooseAColor && renderPanelType( TAB_IDS.gradient ) }\n\t\t\t\t</VStack>\n\t\t\t</fieldset>\n\t\t</BaseControl>\n\t);\n}\n\nfunction ColorGradientControlSelect( props ) {\n\tconst [ colors, gradients, customColors, customGradients ] = useSettings(\n\t\t'color.palette',\n\t\t'color.gradients',\n\t\t'color.custom',\n\t\t'color.customGradient'\n\t);\n\n\treturn (\n\t\t<ColorGradientControlInner\n\t\t\tcolors={ colors }\n\t\t\tgradients={ gradients }\n\t\t\tdisableCustomColors={ ! customColors }\n\t\t\tdisableCustomGradients={ ! customGradients }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction ColorGradientControl( props ) {\n\tif (\n\t\tcolorsAndGradientKeys.every( ( key ) => props.hasOwnProperty( key ) )\n\t) {\n\t\treturn <ColorGradientControlInner { ...props } />;\n\t}\n\treturn <ColorGradientControlSelect { ...props } />;\n}\n\nexport default ColorGradientControl;\n"],"mappings":"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"}
@@ -73,7 +73,14 @@ function NonDefaultControls({
73
73
  // 2022) in German (de). The resultant array is de-duplicated as some
74
74
  // languages will use the same format string for short, medium, and long
75
75
  // formats.
76
- const suggestedFormats = [...new Set(['Y-m-d', (0, _i18n._x)('n/j/Y', 'short date format'), (0, _i18n._x)('n/j/Y g:i A', 'short date format with time'), (0, _i18n._x)('M j, Y', 'medium date format'), (0, _i18n._x)('M j, Y g:i A', 'medium date format with time'), (0, _i18n._x)('F j, Y', 'long date format'), (0, _i18n._x)('M j', 'short date format without the year')])];
76
+ const suggestedFormats = [...new Set([/* translators: See https://www.php.net/manual/datetime.format.php */
77
+ 'Y-m-d', /* translators: See https://www.php.net/manual/datetime.format.php */
78
+ (0, _i18n._x)('n/j/Y', 'short date format'), /* translators: See https://www.php.net/manual/datetime.format.php */
79
+ (0, _i18n._x)('n/j/Y g:i A', 'short date format with time'), /* translators: See https://www.php.net/manual/datetime.format.php */
80
+ (0, _i18n._x)('M j, Y', 'medium date format'), /* translators: See https://www.php.net/manual/datetime.format.php */
81
+ (0, _i18n._x)('M j, Y g:i A', 'medium date format with time'), /* translators: See https://www.php.net/manual/datetime.format.php */
82
+ (0, _i18n._x)('F j, Y', 'long date format'), /* translators: See https://www.php.net/manual/datetime.format.php */
83
+ (0, _i18n._x)('M j', 'short date format without the year')])];
77
84
  const suggestedOptions = suggestedFormats.map((suggestedFormat, index) => ({
78
85
  key: `suggested-${index}`,
79
86
  name: (0, _date.dateI18n)(suggestedFormat, EXAMPLE_DATE),
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_date","_element","_components","EXAMPLE_DATE","Date","DateFormatPicker","format","defaultFormat","onChange","_react","createElement","className","VisuallyHidden","as","__","ToggleControl","__nextHasNoMarginBottom","label","help","dateI18n","checked","NonDefaultControls","_suggestedOptions$fin","suggestedFormats","Set","_x","suggestedOptions","map","suggestedFormat","index","key","name","customOption","__experimentalHint","isCustom","setIsCustom","useState","includes","__experimentalVStack","CustomSelectControl","__nextUnconstrainedWidth","options","value","find","option","selectedItem","TextControl","hideLabelFromVision","createInterpolateElement","Link","ExternalLink","href"],"sources":["@wordpress/block-editor/src/components/date-format-picker/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x, __ } from '@wordpress/i18n';\nimport { dateI18n } from '@wordpress/date';\nimport { useState, createInterpolateElement } from '@wordpress/element';\nimport {\n\tTextControl,\n\tExternalLink,\n\tVisuallyHidden,\n\tCustomSelectControl,\n\tToggleControl,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n// So that we can illustrate the different formats in the dropdown properly,\n// show a date that has a day greater than 12 and a month with more than three\n// letters. Here we're using 2022-01-25 which is when WordPress 5.9 was\n// released.\nconst EXAMPLE_DATE = new Date( 2022, 0, 25 );\n\n/**\n * The `DateFormatPicker` component renders controls that let the user choose a\n * _date format_. That is, how they want their dates to be formatted.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/date-format-picker/README.md\n *\n * @param {Object} props\n * @param {string|null} props.format The selected date\n * format. If\n * `null`,\n * _Default_ is\n * selected.\n * @param {string} props.defaultFormat The date format that\n * will be used if the\n * user selects\n * 'Default'.\n * @param {( format: string|null ) => void} props.onChange Called when a\n * selection is\n * made. If `null`,\n * _Default_ is\n * selected.\n */\nexport default function DateFormatPicker( {\n\tformat,\n\tdefaultFormat,\n\tonChange,\n} ) {\n\treturn (\n\t\t<fieldset className=\"block-editor-date-format-picker\">\n\t\t\t<VisuallyHidden as=\"legend\">{ __( 'Date format' ) }</VisuallyHidden>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Default format' ) }\n\t\t\t\thelp={ `${ __( 'Example:' ) } ${ dateI18n(\n\t\t\t\t\tdefaultFormat,\n\t\t\t\t\tEXAMPLE_DATE\n\t\t\t\t) }` }\n\t\t\t\tchecked={ ! format }\n\t\t\t\tonChange={ ( checked ) =>\n\t\t\t\t\tonChange( checked ? null : defaultFormat )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ format && (\n\t\t\t\t<NonDefaultControls format={ format } onChange={ onChange } />\n\t\t\t) }\n\t\t</fieldset>\n\t);\n}\n\nfunction NonDefaultControls( { format, onChange } ) {\n\t// Suggest a short format, medium format, long format, and a standardised\n\t// (YYYY-MM-DD) format. The short, medium, and long formats are localised as\n\t// different languages have different ways of writing these. For example, 'F\n\t// j, Y' (April 20, 2022) in American English (en_US) is 'j. F Y' (20. April\n\t// 2022) in German (de). The resultant array is de-duplicated as some\n\t// languages will use the same format string for short, medium, and long\n\t// formats.\n\tconst suggestedFormats = [\n\t\t...new Set( [\n\t\t\t'Y-m-d',\n\t\t\t_x( 'n/j/Y', 'short date format' ),\n\t\t\t_x( 'n/j/Y g:i A', 'short date format with time' ),\n\t\t\t_x( 'M j, Y', 'medium date format' ),\n\t\t\t_x( 'M j, Y g:i A', 'medium date format with time' ),\n\t\t\t_x( 'F j, Y', 'long date format' ),\n\t\t\t_x( 'M j', 'short date format without the year' ),\n\t\t] ),\n\t];\n\n\tconst suggestedOptions = suggestedFormats.map(\n\t\t( suggestedFormat, index ) => ( {\n\t\t\tkey: `suggested-${ index }`,\n\t\t\tname: dateI18n( suggestedFormat, EXAMPLE_DATE ),\n\t\t\tformat: suggestedFormat,\n\t\t} )\n\t);\n\tconst customOption = {\n\t\tkey: 'custom',\n\t\tname: __( 'Custom' ),\n\t\tclassName:\n\t\t\t'block-editor-date-format-picker__custom-format-select-control__custom-option',\n\t\t__experimentalHint: __( 'Enter your own date format' ),\n\t};\n\n\tconst [ isCustom, setIsCustom ] = useState(\n\t\t() => !! format && ! suggestedFormats.includes( format )\n\t);\n\n\treturn (\n\t\t<VStack>\n\t\t\t<CustomSelectControl\n\t\t\t\t__nextUnconstrainedWidth\n\t\t\t\tlabel={ __( 'Choose a format' ) }\n\t\t\t\toptions={ [ ...suggestedOptions, customOption ] }\n\t\t\t\tvalue={\n\t\t\t\t\tisCustom\n\t\t\t\t\t\t? customOption\n\t\t\t\t\t\t: suggestedOptions.find(\n\t\t\t\t\t\t\t\t( option ) => option.format === format\n\t\t\t\t\t\t ) ?? customOption\n\t\t\t\t}\n\t\t\t\tonChange={ ( { selectedItem } ) => {\n\t\t\t\t\tif ( selectedItem === customOption ) {\n\t\t\t\t\t\tsetIsCustom( true );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetIsCustom( false );\n\t\t\t\t\t\tonChange( selectedItem.format );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isCustom && (\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Custom format' ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\thelp={ createInterpolateElement(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Enter a date or time <Link>format string</Link>.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tLink: (\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/customize-date-and-time-format/'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\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\tvalue={ format }\n\t\t\t\t\tonChange={ ( value ) => onChange( value ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_date","_element","_components","EXAMPLE_DATE","Date","DateFormatPicker","format","defaultFormat","onChange","_react","createElement","className","VisuallyHidden","as","__","ToggleControl","__nextHasNoMarginBottom","label","help","dateI18n","checked","NonDefaultControls","_suggestedOptions$fin","suggestedFormats","Set","_x","suggestedOptions","map","suggestedFormat","index","key","name","customOption","__experimentalHint","isCustom","setIsCustom","useState","includes","__experimentalVStack","CustomSelectControl","__nextUnconstrainedWidth","options","value","find","option","selectedItem","TextControl","hideLabelFromVision","createInterpolateElement","Link","ExternalLink","href"],"sources":["@wordpress/block-editor/src/components/date-format-picker/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _x, __ } from '@wordpress/i18n';\nimport { dateI18n } from '@wordpress/date';\nimport { useState, createInterpolateElement } from '@wordpress/element';\nimport {\n\tTextControl,\n\tExternalLink,\n\tVisuallyHidden,\n\tCustomSelectControl,\n\tToggleControl,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n// So that we can illustrate the different formats in the dropdown properly,\n// show a date that has a day greater than 12 and a month with more than three\n// letters. Here we're using 2022-01-25 which is when WordPress 5.9 was\n// released.\nconst EXAMPLE_DATE = new Date( 2022, 0, 25 );\n\n/**\n * The `DateFormatPicker` component renders controls that let the user choose a\n * _date format_. That is, how they want their dates to be formatted.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/date-format-picker/README.md\n *\n * @param {Object} props\n * @param {string|null} props.format The selected date\n * format. If\n * `null`,\n * _Default_ is\n * selected.\n * @param {string} props.defaultFormat The date format that\n * will be used if the\n * user selects\n * 'Default'.\n * @param {( format: string|null ) => void} props.onChange Called when a\n * selection is\n * made. If `null`,\n * _Default_ is\n * selected.\n */\nexport default function DateFormatPicker( {\n\tformat,\n\tdefaultFormat,\n\tonChange,\n} ) {\n\treturn (\n\t\t<fieldset className=\"block-editor-date-format-picker\">\n\t\t\t<VisuallyHidden as=\"legend\">{ __( 'Date format' ) }</VisuallyHidden>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Default format' ) }\n\t\t\t\thelp={ `${ __( 'Example:' ) } ${ dateI18n(\n\t\t\t\t\tdefaultFormat,\n\t\t\t\t\tEXAMPLE_DATE\n\t\t\t\t) }` }\n\t\t\t\tchecked={ ! format }\n\t\t\t\tonChange={ ( checked ) =>\n\t\t\t\t\tonChange( checked ? null : defaultFormat )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ format && (\n\t\t\t\t<NonDefaultControls format={ format } onChange={ onChange } />\n\t\t\t) }\n\t\t</fieldset>\n\t);\n}\n\nfunction NonDefaultControls( { format, onChange } ) {\n\t// Suggest a short format, medium format, long format, and a standardised\n\t// (YYYY-MM-DD) format. The short, medium, and long formats are localised as\n\t// different languages have different ways of writing these. For example, 'F\n\t// j, Y' (April 20, 2022) in American English (en_US) is 'j. F Y' (20. April\n\t// 2022) in German (de). The resultant array is de-duplicated as some\n\t// languages will use the same format string for short, medium, and long\n\t// formats.\n\tconst suggestedFormats = [\n\t\t...new Set( [\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t'Y-m-d',\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'n/j/Y', 'short date format' ),\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'n/j/Y g:i A', 'short date format with time' ),\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'M j, Y', 'medium date format' ),\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'M j, Y g:i A', 'medium date format with time' ),\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'F j, Y', 'long date format' ),\n\t\t\t/* translators: See https://www.php.net/manual/datetime.format.php */\n\t\t\t_x( 'M j', 'short date format without the year' ),\n\t\t] ),\n\t];\n\n\tconst suggestedOptions = suggestedFormats.map(\n\t\t( suggestedFormat, index ) => ( {\n\t\t\tkey: `suggested-${ index }`,\n\t\t\tname: dateI18n( suggestedFormat, EXAMPLE_DATE ),\n\t\t\tformat: suggestedFormat,\n\t\t} )\n\t);\n\tconst customOption = {\n\t\tkey: 'custom',\n\t\tname: __( 'Custom' ),\n\t\tclassName:\n\t\t\t'block-editor-date-format-picker__custom-format-select-control__custom-option',\n\t\t__experimentalHint: __( 'Enter your own date format' ),\n\t};\n\n\tconst [ isCustom, setIsCustom ] = useState(\n\t\t() => !! format && ! suggestedFormats.includes( format )\n\t);\n\n\treturn (\n\t\t<VStack>\n\t\t\t<CustomSelectControl\n\t\t\t\t__nextUnconstrainedWidth\n\t\t\t\tlabel={ __( 'Choose a format' ) }\n\t\t\t\toptions={ [ ...suggestedOptions, customOption ] }\n\t\t\t\tvalue={\n\t\t\t\t\tisCustom\n\t\t\t\t\t\t? customOption\n\t\t\t\t\t\t: suggestedOptions.find(\n\t\t\t\t\t\t\t\t( option ) => option.format === format\n\t\t\t\t\t\t ) ?? customOption\n\t\t\t\t}\n\t\t\t\tonChange={ ( { selectedItem } ) => {\n\t\t\t\t\tif ( selectedItem === customOption ) {\n\t\t\t\t\t\tsetIsCustom( true );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetIsCustom( false );\n\t\t\t\t\t\tonChange( selectedItem.format );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isCustom && (\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Custom format' ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\thelp={ createInterpolateElement(\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Enter a date or time <Link>format string</Link>.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tLink: (\n\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\thref={ __(\n\t\t\t\t\t\t\t\t\t\t'https://wordpress.org/documentation/article/customize-date-and-time-format/'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t/>\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\tvalue={ format }\n\t\t\t\t\tonChange={ ( value ) => onChange( value ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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"}
@@ -67,10 +67,7 @@ function DuotoneControl({
67
67
  },
68
68
  renderContent: () => (0, _react.createElement)(_components.MenuGroup, {
69
69
  label: (0, _i18n.__)('Duotone')
70
- }, (0, _react.createElement)("div", {
71
- id: descriptionId,
72
- className: "block-editor-duotone-control__description"
73
- }, (0, _i18n.__)('Create a two-tone color effect without losing your original image.')), (0, _react.createElement)(_components.DuotonePicker, {
70
+ }, (0, _react.createElement)("p", null, (0, _i18n.__)('Create a two-tone color effect without losing your original image.')), (0, _react.createElement)(_components.DuotonePicker, {
74
71
  "aria-label": actionLabel,
75
72
  "aria-describedby": descriptionId,
76
73
  colorPalette: colorPalette,
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_i18n","_keycodes","_icons","_compose","DuotoneControl","id","idProp","colorPalette","duotonePalette","disableCustomColors","disableCustomDuotone","value","onChange","toolbarIcon","_react","createElement","ColorIndicator","className","DuotoneSwatch","values","Icon","icon","filter","actionLabel","__","useInstanceId","descriptionId","Dropdown","popoverProps","headerTitle","renderToggle","isOpen","onToggle","openOnArrowDown","event","keyCode","DOWN","preventDefault","ToolbarButton","showTooltip","onClick","onKeyDown","label","renderContent","MenuGroup","DuotonePicker","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/duotone-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tColorIndicator,\n\tDropdown,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tMenuGroup,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { Icon, filter } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\nfunction DuotoneControl( {\n\tid: idProp,\n\tcolorPalette,\n\tduotonePalette,\n\tdisableCustomColors,\n\tdisableCustomDuotone,\n\tvalue,\n\tonChange,\n} ) {\n\tlet toolbarIcon;\n\tif ( value === 'unset' ) {\n\t\ttoolbarIcon = (\n\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t);\n\t} else if ( value ) {\n\t\ttoolbarIcon = <DuotoneSwatch values={ value } />;\n\t} else {\n\t\ttoolbarIcon = <Icon icon={ filter } />;\n\t}\n\n\tconst actionLabel = __( 'Apply duotone filter' );\n\tconst id = useInstanceId( DuotoneControl, 'duotone-control', idProp );\n\tconst descriptionId = `${ id }__description`;\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ {\n\t\t\t\tclassName: 'block-editor-duotone-control__popover',\n\t\t\t\theaderTitle: __( 'Duotone' ),\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tconst openOnArrowDown = ( event ) => {\n\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t\tlabel={ actionLabel }\n\t\t\t\t\t\ticon={ toolbarIcon }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<MenuGroup label={ __( 'Duotone' ) }>\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={ descriptionId }\n\t\t\t\t\t\tclassName=\"block-editor-duotone-control__description\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Create a two-tone color effect without losing your original image.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\taria-label={ actionLabel }\n\t\t\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\tdisableCustomDuotone={ disableCustomDuotone }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default DuotoneControl;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAQA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAdA;AACA;AACA;;AAcA,SAASK,cAAcA,CAAE;EACxBC,EAAE,EAAEC,MAAM;EACVC,YAAY;EACZC,cAAc;EACdC,mBAAmB;EACnBC,oBAAoB;EACpBC,KAAK;EACLC;AACD,CAAC,EAAG;EACH,IAAIC,WAAW;EACf,IAAKF,KAAK,KAAK,OAAO,EAAG;IACxBE,WAAW,GACV,IAAAC,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAkB,cAAc;MAACC,SAAS,EAAC;IAA+C,CAAE,CAC3E;EACF,CAAC,MAAM,IAAKN,KAAK,EAAG;IACnBE,WAAW,GAAG,IAAAC,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAoB,aAAa;MAACC,MAAM,EAAGR;IAAO,CAAE,CAAC;EACjD,CAAC,MAAM;IACNE,WAAW,GAAG,IAAAC,MAAA,CAAAC,aAAA,EAACb,MAAA,CAAAkB,IAAI;MAACC,IAAI,EAAGC;IAAQ,CAAE,CAAC;EACvC;EAEA,MAAMC,WAAW,GAAG,IAAAC,QAAE,EAAE,sBAAuB,CAAC;EAChD,MAAMnB,EAAE,GAAG,IAAAoB,sBAAa,EAAErB,cAAc,EAAE,iBAAiB,EAAEE,MAAO,CAAC;EACrE,MAAMoB,aAAa,GAAI,GAAGrB,EAAI,eAAc;EAE5C,OACC,IAAAS,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA6B,QAAQ;IACRC,YAAY,EAAG;MACdX,SAAS,EAAE,uCAAuC;MAClDY,WAAW,EAAE,IAAAL,QAAE,EAAE,SAAU;IAC5B,CAAG;IACHM,YAAY,EAAGA,CAAE;MAAEC,MAAM;MAAEC;IAAS,CAAC,KAAM;MAC1C,MAAMC,eAAe,GAAKC,KAAK,IAAM;QACpC,IAAK,CAAEH,MAAM,IAAIG,KAAK,CAACC,OAAO,KAAKC,cAAI,EAAG;UACzCF,KAAK,CAACG,cAAc,CAAC,CAAC;UACtBL,QAAQ,CAAC,CAAC;QACX;MACD,CAAC;MACD,OACC,IAAAlB,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAwC,aAAa;QACbC,WAAW;QACXC,OAAO,EAAGR,QAAU;QACpB,iBAAc,MAAM;QACpB,iBAAgBD,MAAQ;QACxBU,SAAS,EAAGR,eAAiB;QAC7BS,KAAK,EAAGnB,WAAa;QACrBF,IAAI,EAAGR;MAAa,CACpB,CAAC;IAEJ,CAAG;IACH8B,aAAa,EAAGA,CAAA,KACf,IAAA7B,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA8C,SAAS;MAACF,KAAK,EAAG,IAAAlB,QAAE,EAAE,SAAU;IAAG,GACnC,IAAAV,MAAA,CAAAC,aAAA;MACCV,EAAE,EAAGqB,aAAe;MACpBT,SAAS,EAAC;IAA2C,GAEnD,IAAAO,QAAE,EACH,oEACD,CACI,CAAC,EACN,IAAAV,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA+C,aAAa;MACb,cAAatB,WAAa;MAC1B,oBAAmBG,aAAe;MAClCnB,YAAY,EAAGA,YAAc;MAC7BC,cAAc,EAAGA,cAAgB;MACjCC,mBAAmB,EAAGA,mBAAqB;MAC3CC,oBAAoB,EAAGA,oBAAsB;MAC7CC,KAAK,EAAGA,KAAO;MACfC,QAAQ,EAAGA;IAAU,CACrB,CACS;EACT,CACH,CAAC;AAEJ;AAAC,IAAAkC,QAAA,GAEc1C,cAAc;AAAA2C,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_components","require","_i18n","_keycodes","_icons","_compose","DuotoneControl","id","idProp","colorPalette","duotonePalette","disableCustomColors","disableCustomDuotone","value","onChange","toolbarIcon","_react","createElement","ColorIndicator","className","DuotoneSwatch","values","Icon","icon","filter","actionLabel","__","useInstanceId","descriptionId","Dropdown","popoverProps","headerTitle","renderToggle","isOpen","onToggle","openOnArrowDown","event","keyCode","DOWN","preventDefault","ToolbarButton","showTooltip","onClick","onKeyDown","label","renderContent","MenuGroup","DuotonePicker","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/duotone-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tColorIndicator,\n\tDropdown,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tMenuGroup,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { Icon, filter } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\nfunction DuotoneControl( {\n\tid: idProp,\n\tcolorPalette,\n\tduotonePalette,\n\tdisableCustomColors,\n\tdisableCustomDuotone,\n\tvalue,\n\tonChange,\n} ) {\n\tlet toolbarIcon;\n\tif ( value === 'unset' ) {\n\t\ttoolbarIcon = (\n\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t);\n\t} else if ( value ) {\n\t\ttoolbarIcon = <DuotoneSwatch values={ value } />;\n\t} else {\n\t\ttoolbarIcon = <Icon icon={ filter } />;\n\t}\n\n\tconst actionLabel = __( 'Apply duotone filter' );\n\tconst id = useInstanceId( DuotoneControl, 'duotone-control', idProp );\n\tconst descriptionId = `${ id }__description`;\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ {\n\t\t\t\tclassName: 'block-editor-duotone-control__popover',\n\t\t\t\theaderTitle: __( 'Duotone' ),\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => {\n\t\t\t\tconst openOnArrowDown = ( event ) => {\n\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\treturn (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\tonKeyDown={ openOnArrowDown }\n\t\t\t\t\t\tlabel={ actionLabel }\n\t\t\t\t\t\ticon={ toolbarIcon }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<MenuGroup label={ __( 'Duotone' ) }>\n\t\t\t\t\t<p>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Create a two-tone color effect without losing your original image.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</p>\n\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\taria-label={ actionLabel }\n\t\t\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\tdisableCustomDuotone={ disableCustomDuotone }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t/>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default DuotoneControl;\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAQA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAdA;AACA;AACA;;AAcA,SAASK,cAAcA,CAAE;EACxBC,EAAE,EAAEC,MAAM;EACVC,YAAY;EACZC,cAAc;EACdC,mBAAmB;EACnBC,oBAAoB;EACpBC,KAAK;EACLC;AACD,CAAC,EAAG;EACH,IAAIC,WAAW;EACf,IAAKF,KAAK,KAAK,OAAO,EAAG;IACxBE,WAAW,GACV,IAAAC,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAkB,cAAc;MAACC,SAAS,EAAC;IAA+C,CAAE,CAC3E;EACF,CAAC,MAAM,IAAKN,KAAK,EAAG;IACnBE,WAAW,GAAG,IAAAC,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAoB,aAAa;MAACC,MAAM,EAAGR;IAAO,CAAE,CAAC;EACjD,CAAC,MAAM;IACNE,WAAW,GAAG,IAAAC,MAAA,CAAAC,aAAA,EAACb,MAAA,CAAAkB,IAAI;MAACC,IAAI,EAAGC;IAAQ,CAAE,CAAC;EACvC;EAEA,MAAMC,WAAW,GAAG,IAAAC,QAAE,EAAE,sBAAuB,CAAC;EAChD,MAAMnB,EAAE,GAAG,IAAAoB,sBAAa,EAAErB,cAAc,EAAE,iBAAiB,EAAEE,MAAO,CAAC;EACrE,MAAMoB,aAAa,GAAI,GAAGrB,EAAI,eAAc;EAE5C,OACC,IAAAS,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA6B,QAAQ;IACRC,YAAY,EAAG;MACdX,SAAS,EAAE,uCAAuC;MAClDY,WAAW,EAAE,IAAAL,QAAE,EAAE,SAAU;IAC5B,CAAG;IACHM,YAAY,EAAGA,CAAE;MAAEC,MAAM;MAAEC;IAAS,CAAC,KAAM;MAC1C,MAAMC,eAAe,GAAKC,KAAK,IAAM;QACpC,IAAK,CAAEH,MAAM,IAAIG,KAAK,CAACC,OAAO,KAAKC,cAAI,EAAG;UACzCF,KAAK,CAACG,cAAc,CAAC,CAAC;UACtBL,QAAQ,CAAC,CAAC;QACX;MACD,CAAC;MACD,OACC,IAAAlB,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAAwC,aAAa;QACbC,WAAW;QACXC,OAAO,EAAGR,QAAU;QACpB,iBAAc,MAAM;QACpB,iBAAgBD,MAAQ;QACxBU,SAAS,EAAGR,eAAiB;QAC7BS,KAAK,EAAGnB,WAAa;QACrBF,IAAI,EAAGR;MAAa,CACpB,CAAC;IAEJ,CAAG;IACH8B,aAAa,EAAGA,CAAA,KACf,IAAA7B,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA8C,SAAS;MAACF,KAAK,EAAG,IAAAlB,QAAE,EAAE,SAAU;IAAG,GACnC,IAAAV,MAAA,CAAAC,aAAA,aACG,IAAAS,QAAE,EACH,oEACD,CACE,CAAC,EACJ,IAAAV,MAAA,CAAAC,aAAA,EAACjB,WAAA,CAAA+C,aAAa;MACb,cAAatB,WAAa;MAC1B,oBAAmBG,aAAe;MAClCnB,YAAY,EAAGA,YAAc;MAC7BC,cAAc,EAAGA,cAAgB;MACjCC,mBAAmB,EAAGA,mBAAqB;MAC3CC,oBAAoB,EAAGA,oBAAsB;MAC7CC,KAAK,EAAGA,KAAO;MACfC,QAAQ,EAAGA;IAAU,CACrB,CACS;EACT,CACH,CAAC;AAEJ;AAAC,IAAAkC,QAAA,GAEc1C,cAAc;AAAA2C,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -34,7 +34,7 @@ function AdvancedPanel({
34
34
  });
35
35
  if (cssError) {
36
36
  const [transformed] = (0, _transformStyles.default)([{
37
- css: value
37
+ css: newValue
38
38
  }], '.editor-styles-wrapper');
39
39
  if (transformed) {
40
40
  setCSSError(null);
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_i18n","_icons","_transformStyles","_interopRequireDefault","AdvancedPanel","value","onChange","inheritedValue","cssError","setCSSError","useState","customCSS","css","handleOnChange","newValue","transformed","transformStyles","handleOnBlur","event","target","__","_react","createElement","__experimentalVStack","spacing","TextareaControl","label","__nextHasNoMarginBottom","onBlur","className","spellCheck","Tooltip","text","Icon","icon","info"],"sources":["@wordpress/block-editor/src/components/global-styles/advanced-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tTextareaControl,\n\tTooltip,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, info } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { default as transformStyles } from '../../utils/transform-styles';\n\nexport default function AdvancedPanel( {\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n} ) {\n\t// Custom CSS\n\tconst [ cssError, setCSSError ] = useState( null );\n\tconst customCSS = inheritedValue?.css;\n\tfunction handleOnChange( newValue ) {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\tcss: newValue,\n\t\t} );\n\t\tif ( cssError ) {\n\t\t\tconst [ transformed ] = transformStyles(\n\t\t\t\t[ { css: value } ],\n\t\t\t\t'.editor-styles-wrapper'\n\t\t\t);\n\t\t\tif ( transformed ) {\n\t\t\t\tsetCSSError( null );\n\t\t\t}\n\t\t}\n\t}\n\tfunction handleOnBlur( event ) {\n\t\tif ( ! event?.target?.value ) {\n\t\t\tsetCSSError( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ transformed ] = transformStyles(\n\t\t\t[ { css: event.target.value } ],\n\t\t\t'.editor-styles-wrapper'\n\t\t);\n\n\t\tsetCSSError(\n\t\t\ttransformed === null\n\t\t\t\t? __( 'There is an error with your CSS structure.' )\n\t\t\t\t: null\n\t\t);\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t<TextareaControl\n\t\t\t\tlabel={ __( 'Additional CSS' ) }\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ customCSS }\n\t\t\t\tonChange={ ( newValue ) => handleOnChange( newValue ) }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tclassName=\"block-editor-global-styles-advanced-panel__custom-css-input\"\n\t\t\t\tspellCheck={ false }\n\t\t\t/>\n\t\t\t{ cssError && (\n\t\t\t\t<Tooltip text={ cssError }>\n\t\t\t\t\t<div className=\"block-editor-global-styles-advanced-panel__custom-css-validation-wrapper\">\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon={ info }\n\t\t\t\t\t\t\tclassName=\"block-editor-global-styles-advanced-panel__custom-css-validation-icon\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAKA,IAAAI,gBAAA,GAAAC,sBAAA,CAAAL,OAAA;AAfA;AACA;AACA;;AAUA;AACA;AACA;;AAGe,SAASM,aAAaA,CAAE;EACtCC,KAAK;EACLC,QAAQ;EACRC,cAAc,GAAGF;AAClB,CAAC,EAAG;EACH;EACA,MAAM,CAAEG,QAAQ,EAAEC,WAAW,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAClD,MAAMC,SAAS,GAAGJ,cAAc,EAAEK,GAAG;EACrC,SAASC,cAAcA,CAAEC,QAAQ,EAAG;IACnCR,QAAQ,CAAE;MACT,GAAGD,KAAK;MACRO,GAAG,EAAEE;IACN,CAAE,CAAC;IACH,IAAKN,QAAQ,EAAG;MACf,MAAM,CAAEO,WAAW,CAAE,GAAG,IAAAC,wBAAe,EACtC,CAAE;QAAEJ,GAAG,EAAEP;MAAM,CAAC,CAAE,EAClB,wBACD,CAAC;MACD,IAAKU,WAAW,EAAG;QAClBN,WAAW,CAAE,IAAK,CAAC;MACpB;IACD;EACD;EACA,SAASQ,YAAYA,CAAEC,KAAK,EAAG;IAC9B,IAAK,CAAEA,KAAK,EAAEC,MAAM,EAAEd,KAAK,EAAG;MAC7BI,WAAW,CAAE,IAAK,CAAC;MACnB;IACD;IAEA,MAAM,CAAEM,WAAW,CAAE,GAAG,IAAAC,wBAAe,EACtC,CAAE;MAAEJ,GAAG,EAAEM,KAAK,CAACC,MAAM,CAACd;IAAM,CAAC,CAAE,EAC/B,wBACD,CAAC;IAEDI,WAAW,CACVM,WAAW,KAAK,IAAI,GACjB,IAAAK,QAAE,EAAE,4CAA6C,CAAC,GAClD,IACJ,CAAC;EACF;EAEA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA0B,oBAAM;IAACC,OAAO,EAAG;EAAG,GACpB,IAAAH,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA4B,eAAe;IACfC,KAAK,EAAG,IAAAN,QAAE,EAAE,gBAAiB,CAAG;IAChCO,uBAAuB;IACvBtB,KAAK,EAAGM,SAAW;IACnBL,QAAQ,EAAKQ,QAAQ,IAAMD,cAAc,CAAEC,QAAS,CAAG;IACvDc,MAAM,EAAGX,YAAc;IACvBY,SAAS,EAAC,6DAA6D;IACvEC,UAAU,EAAG;EAAO,CACpB,CAAC,EACAtB,QAAQ,IACT,IAAAa,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAAkC,OAAO;IAACC,IAAI,EAAGxB;EAAU,GACzB,IAAAa,MAAA,CAAAC,aAAA;IAAKO,SAAS,EAAC;EAA0E,GACxF,IAAAR,MAAA,CAAAC,aAAA,EAACrB,MAAA,CAAAgC,IAAI;IACJC,IAAI,EAAGC,WAAM;IACbN,SAAS,EAAC;EAAuE,CACjF,CACG,CACG,CAEH,CAAC;AAEX"}
1
+ {"version":3,"names":["_components","require","_element","_i18n","_icons","_transformStyles","_interopRequireDefault","AdvancedPanel","value","onChange","inheritedValue","cssError","setCSSError","useState","customCSS","css","handleOnChange","newValue","transformed","transformStyles","handleOnBlur","event","target","__","_react","createElement","__experimentalVStack","spacing","TextareaControl","label","__nextHasNoMarginBottom","onBlur","className","spellCheck","Tooltip","text","Icon","icon","info"],"sources":["@wordpress/block-editor/src/components/global-styles/advanced-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tTextareaControl,\n\tTooltip,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Icon, info } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { default as transformStyles } from '../../utils/transform-styles';\n\nexport default function AdvancedPanel( {\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n} ) {\n\t// Custom CSS\n\tconst [ cssError, setCSSError ] = useState( null );\n\tconst customCSS = inheritedValue?.css;\n\tfunction handleOnChange( newValue ) {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\tcss: newValue,\n\t\t} );\n\t\tif ( cssError ) {\n\t\t\tconst [ transformed ] = transformStyles(\n\t\t\t\t[ { css: newValue } ],\n\t\t\t\t'.editor-styles-wrapper'\n\t\t\t);\n\t\t\tif ( transformed ) {\n\t\t\t\tsetCSSError( null );\n\t\t\t}\n\t\t}\n\t}\n\tfunction handleOnBlur( event ) {\n\t\tif ( ! event?.target?.value ) {\n\t\t\tsetCSSError( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ transformed ] = transformStyles(\n\t\t\t[ { css: event.target.value } ],\n\t\t\t'.editor-styles-wrapper'\n\t\t);\n\n\t\tsetCSSError(\n\t\t\ttransformed === null\n\t\t\t\t? __( 'There is an error with your CSS structure.' )\n\t\t\t\t: null\n\t\t);\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t<TextareaControl\n\t\t\t\tlabel={ __( 'Additional CSS' ) }\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ customCSS }\n\t\t\t\tonChange={ ( newValue ) => handleOnChange( newValue ) }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tclassName=\"block-editor-global-styles-advanced-panel__custom-css-input\"\n\t\t\t\tspellCheck={ false }\n\t\t\t/>\n\t\t\t{ cssError && (\n\t\t\t\t<Tooltip text={ cssError }>\n\t\t\t\t\t<div className=\"block-editor-global-styles-advanced-panel__custom-css-validation-wrapper\">\n\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\ticon={ info }\n\t\t\t\t\t\t\tclassName=\"block-editor-global-styles-advanced-panel__custom-css-validation-icon\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAKA,IAAAI,gBAAA,GAAAC,sBAAA,CAAAL,OAAA;AAfA;AACA;AACA;;AAUA;AACA;AACA;;AAGe,SAASM,aAAaA,CAAE;EACtCC,KAAK;EACLC,QAAQ;EACRC,cAAc,GAAGF;AAClB,CAAC,EAAG;EACH;EACA,MAAM,CAAEG,QAAQ,EAAEC,WAAW,CAAE,GAAG,IAAAC,iBAAQ,EAAE,IAAK,CAAC;EAClD,MAAMC,SAAS,GAAGJ,cAAc,EAAEK,GAAG;EACrC,SAASC,cAAcA,CAAEC,QAAQ,EAAG;IACnCR,QAAQ,CAAE;MACT,GAAGD,KAAK;MACRO,GAAG,EAAEE;IACN,CAAE,CAAC;IACH,IAAKN,QAAQ,EAAG;MACf,MAAM,CAAEO,WAAW,CAAE,GAAG,IAAAC,wBAAe,EACtC,CAAE;QAAEJ,GAAG,EAAEE;MAAS,CAAC,CAAE,EACrB,wBACD,CAAC;MACD,IAAKC,WAAW,EAAG;QAClBN,WAAW,CAAE,IAAK,CAAC;MACpB;IACD;EACD;EACA,SAASQ,YAAYA,CAAEC,KAAK,EAAG;IAC9B,IAAK,CAAEA,KAAK,EAAEC,MAAM,EAAEd,KAAK,EAAG;MAC7BI,WAAW,CAAE,IAAK,CAAC;MACnB;IACD;IAEA,MAAM,CAAEM,WAAW,CAAE,GAAG,IAAAC,wBAAe,EACtC,CAAE;MAAEJ,GAAG,EAAEM,KAAK,CAACC,MAAM,CAACd;IAAM,CAAC,CAAE,EAC/B,wBACD,CAAC;IAEDI,WAAW,CACVM,WAAW,KAAK,IAAI,GACjB,IAAAK,QAAE,EAAE,4CAA6C,CAAC,GAClD,IACJ,CAAC;EACF;EAEA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA0B,oBAAM;IAACC,OAAO,EAAG;EAAG,GACpB,IAAAH,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAA4B,eAAe;IACfC,KAAK,EAAG,IAAAN,QAAE,EAAE,gBAAiB,CAAG;IAChCO,uBAAuB;IACvBtB,KAAK,EAAGM,SAAW;IACnBL,QAAQ,EAAKQ,QAAQ,IAAMD,cAAc,CAAEC,QAAS,CAAG;IACvDc,MAAM,EAAGX,YAAc;IACvBY,SAAS,EAAC,6DAA6D;IACvEC,UAAU,EAAG;EAAO,CACpB,CAAC,EACAtB,QAAQ,IACT,IAAAa,MAAA,CAAAC,aAAA,EAACzB,WAAA,CAAAkC,OAAO;IAACC,IAAI,EAAGxB;EAAU,GACzB,IAAAa,MAAA,CAAAC,aAAA;IAAKO,SAAS,EAAC;EAA0E,GACxF,IAAAR,MAAA,CAAAC,aAAA,EAACrB,MAAA,CAAAgC,IAAI;IACJC,IAAI,EAAGC,WAAM;IACbN,SAAS,EAAC;EAAuE,CACjF,CACG,CACG,CAEH,CAAC;AAEX"}
@@ -21,6 +21,7 @@ var _control = _interopRequireDefault(require("../colors-gradients/control"));
21
21
  var _hooks = require("./hooks");
22
22
  var _utils = require("./utils");
23
23
  var _object = require("../../utils/object");
24
+ var _lockUnlock = require("../../lock-unlock");
24
25
  /**
25
26
  * External dependencies
26
27
  */
@@ -152,15 +153,13 @@ function ColorPanelDropdown({
152
153
  colorGradientControlSettings,
153
154
  panelId
154
155
  }) {
155
- const tabConfigs = tabs.map(({
156
- key,
157
- label: tabLabel
158
- }) => {
159
- return {
160
- name: key,
161
- title: tabLabel
162
- };
163
- });
156
+ const currentTab = tabs.find(tab => tab.userValue !== undefined);
157
+ // Unlocking `Tabs` too early causes the `unlock` method to receive an empty
158
+ // object, due to circular dependencies.
159
+ // See https://github.com/WordPress/gutenberg/issues/52692
160
+ const {
161
+ Tabs
162
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
164
163
  return (0, _react.createElement)(_components.__experimentalToolsPanelItem, {
165
164
  className: "block-editor-tools-panel-color-gradient-settings__item",
166
165
  hasValue: hasValue,
@@ -198,18 +197,21 @@ function ColorPanelDropdown({
198
197
  }, tabs.length === 1 && (0, _react.createElement)(ColorPanelTab, {
199
198
  ...tabs[0],
200
199
  colorGradientControlSettings: colorGradientControlSettings
201
- }), tabs.length > 1 && (0, _react.createElement)(_components.TabPanel, {
202
- tabs: tabConfigs
203
- }, tab => {
204
- const selectedTab = tabs.find(t => t.key === tab.name);
205
- if (!selectedTab) {
206
- return null;
207
- }
208
- return (0, _react.createElement)(ColorPanelTab, {
209
- ...selectedTab,
200
+ }), tabs.length > 1 && (0, _react.createElement)(Tabs, {
201
+ initialTabId: currentTab?.key
202
+ }, (0, _react.createElement)(Tabs.TabList, null, tabs.map(tab => (0, _react.createElement)(Tabs.Tab, {
203
+ key: tab.key,
204
+ tabId: tab.key
205
+ }, tab.label))), tabs.map(tab => {
206
+ return (0, _react.createElement)(Tabs.TabPanel, {
207
+ key: tab.key,
208
+ tabId: tab.key,
209
+ focusable: false
210
+ }, (0, _react.createElement)(ColorPanelTab, {
211
+ ...tab,
210
212
  colorGradientControlSettings: colorGradientControlSettings
211
- });
212
- })))
213
+ }));
214
+ }))))
213
215
  }));
214
216
  }
215
217
  function ColorPanel({