@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":["classnames","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalHStack","HStack","__experimentalZStack","ZStack","__experimentalDropdownContentWrapper","DropdownContentWrapper","TabPanel","ColorIndicator","Flex","FlexItem","Dropdown","Button","useCallback","__","sprintf","ColorGradientControl","useColorsPerOrigin","useGradientsPerOrigin","getValueFromVariable","setImmutably","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","color","text","length","custom","link","caption","gradients","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","hasInnerWrapper","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","LabeledColorIndicators","indicators","justify","isLayered","map","indicator","index","key","expanded","colorValue","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","headingLevel","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","tabConfigs","tabLabel","name","onDeselect","renderToggle","onToggle","isOpen","toggleProps","onClick","renderContent","paddingSize","tab","selectedTab","find","t","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","showPanel","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tTabPanel,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Color' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst tabConfigs = tabs.map( ( { key, label: tabLabel } ) => {\n\t\treturn {\n\t\t\tname: key,\n\t\t\ttitle: tabLabel,\n\t\t};\n\t} );\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: classnames(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button { ...toggleProps }>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t{ ...tabs[ 0 ] }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\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\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<TabPanel tabs={ tabConfigs }>\n\t\t\t\t\t\t\t\t\t{ ( tab ) => {\n\t\t\t\t\t\t\t\t\t\tconst selectedTab = tabs.find(\n\t\t\t\t\t\t\t\t\t\t\t( t ) => t.key === tab.name\n\t\t\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\t\t\tif ( ! selectedTab ) {\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t{ ...selectedTab }\n\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t</TabPanel>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}, {} ),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Solid' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) return;\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => (\n\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\tkey={ item.key }\n\t\t\t\t\t{ ...item }\n\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\tcolors,\n\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\tgradients,\n\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t} }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalHStack","HStack","__experimentalZStack","ZStack","__experimentalDropdownContentWrapper","DropdownContentWrapper","ColorIndicator","Flex","FlexItem","Dropdown","Button","privateApis","componentsPrivateApis","useCallback","__","sprintf","ColorGradientControl","useColorsPerOrigin","useGradientsPerOrigin","getValueFromVariable","setImmutably","unlock","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","color","text","length","custom","link","caption","gradients","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","hasInnerWrapper","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","LabeledColorIndicators","indicators","justify","isLayered","map","indicator","index","key","expanded","colorValue","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","headingLevel","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","currentTab","find","tab","Tabs","onDeselect","renderToggle","onToggle","isOpen","toggleProps","onClick","renderContent","paddingSize","initialTabId","TabList","Tab","tabId","TabPanel","focusable","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","name","showPanel","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { unlock } from '../../lock-unlock';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Color' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst currentTab = tabs.find( ( tab ) => tab.userValue !== undefined );\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<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: classnames(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button { ...toggleProps }>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t{ ...tabs[ 0 ] }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\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\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<Tabs initialTabId={ currentTab?.key }>\n\t\t\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ tab.label }\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t</Tabs.TabList>\n\n\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ ...tab }\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}, {} ),\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Solid' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) return;\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => (\n\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\tkey={ item.key }\n\t\t\t\t\t{ ...item }\n\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\tcolors,\n\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\tgradients,\n\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t} }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import classnames from 'classnames';
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
10
- import { __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem, __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack, __experimentalZStack as ZStack, __experimentalVStack as VStack, __experimentalDropdownContentWrapper as DropdownContentWrapper, Button, ColorIndicator, DuotonePicker, DuotoneSwatch, Dropdown, Flex, FlexItem } from '@wordpress/components';
10
+ import { __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem, __experimentalItemGroup as ItemGroup, __experimentalHStack as HStack, __experimentalZStack as ZStack, __experimentalDropdownContentWrapper as DropdownContentWrapper, Button, MenuGroup, ColorIndicator, DuotonePicker, DuotoneSwatch, Dropdown, Flex, FlexItem } from '@wordpress/components';
11
11
  import { __, _x } from '@wordpress/i18n';
12
12
  import { useCallback, useMemo } from '@wordpress/element';
13
13
 
@@ -47,7 +47,11 @@ function FiltersToolsPanel({
47
47
  return createElement(ToolsPanel, {
48
48
  label: _x('Filters', 'Name for applying graphical effects'),
49
49
  resetAll: resetAll,
50
- panelId: panelId
50
+ panelId: panelId,
51
+ dropdownMenuProps: {
52
+ placement: 'left-start',
53
+ offset: 258 // sidebar width (280px) - button width (24px) + border (2px)
54
+ }
51
55
  }, children);
52
56
  }
53
57
  const DEFAULT_CONTROLS = {
@@ -157,8 +161,10 @@ export default function FiltersPanel({
157
161
  })));
158
162
  },
159
163
  renderContent: () => createElement(DropdownContentWrapper, {
160
- paddingSize: "medium"
161
- }, createElement(VStack, null, createElement("p", null, __('Create a two-tone color effect without losing your original image.')), createElement(DuotonePicker, {
164
+ paddingSize: "small"
165
+ }, createElement(MenuGroup, {
166
+ label: __('Duotone')
167
+ }, createElement("p", null, __('Create a two-tone color effect without losing your original image.')), createElement(DuotonePicker, {
162
168
  colorPalette: colorPalette,
163
169
  duotonePalette: duotonePalette
164
170
  // TODO: Re-enable both when custom colors are supported for block-level styles.
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalZStack","ZStack","__experimentalVStack","VStack","__experimentalDropdownContentWrapper","DropdownContentWrapper","Button","ColorIndicator","DuotonePicker","DuotoneSwatch","Dropdown","Flex","FlexItem","__","_x","useCallback","useMemo","getValueFromVariable","setImmutably","EMPTY_ARRAY","useMultiOriginColorPresets","settings","presetSetting","defaultSetting","disableDefault","color","userPresets","custom","themePresets","theme","defaultPresets","default","useHasFiltersPanel","useHasDuotoneControl","customDuotone","defaultDuotone","duotone","length","FiltersToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","className","headerTitle","LabeledColorIndicator","indicator","justify","isLayered","expanded","values","title","FiltersPanel","as","Wrapper","inheritedValue","defaultControls","decodeValue","rawValue","hasDuotoneEnabled","duotonePalette","colorPalette","filter","setDuotone","newValue","duotonePreset","find","colors","settedValue","slug","hasDuotone","resetDuotone","undefined","previousValue","hasValue","onDeselect","isShownByDefault","renderToggle","onToggle","isOpen","toggleProps","onClick","isBordered","isSeparated","renderContent","paddingSize","disableCustomColors","disableCustomDuotone"],"sources":["@wordpress/block-editor/src/components/global-styles/filters-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalVStack as VStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tColorIndicator,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tDropdown,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst EMPTY_ARRAY = [];\nfunction useMultiOriginColorPresets(\n\tsettings,\n\t{ presetSetting, defaultSetting }\n) {\n\tconst disableDefault = ! settings?.color?.[ defaultSetting ];\n\tconst userPresets =\n\t\tsettings?.color?.[ presetSetting ]?.custom || EMPTY_ARRAY;\n\tconst themePresets =\n\t\tsettings?.color?.[ presetSetting ]?.theme || EMPTY_ARRAY;\n\tconst defaultPresets =\n\t\tsettings?.color?.[ presetSetting ]?.default || EMPTY_ARRAY;\n\treturn useMemo(\n\t\t() => [\n\t\t\t...userPresets,\n\t\t\t...themePresets,\n\t\t\t...( disableDefault ? EMPTY_ARRAY : defaultPresets ),\n\t\t],\n\t\t[ disableDefault, userPresets, themePresets, defaultPresets ]\n\t);\n}\n\nexport function useHasFiltersPanel( settings ) {\n\treturn useHasDuotoneControl( settings );\n}\n\nfunction useHasDuotoneControl( settings ) {\n\treturn (\n\t\tsettings.color.customDuotone ||\n\t\tsettings.color.defaultDuotone ||\n\t\tsettings.color.duotone.length > 0\n\t);\n}\n\nfunction FiltersToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ _x( 'Filters', 'Name for applying graphical effects' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tduotone: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n\tclassName: 'block-editor-duotone-control__popover',\n\theaderTitle: __( 'Duotone' ),\n};\n\nconst LabeledColorIndicator = ( { indicator, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t<Flex expanded={ false }>\n\t\t\t\t{ indicator === 'unset' || ! indicator ? (\n\t\t\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t\t\t) : (\n\t\t\t\t\t<DuotoneSwatch values={ indicator } />\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</ZStack>\n\t\t<FlexItem title={ label }>{ label }</FlexItem>\n\t</HStack>\n);\n\nexport default function FiltersPanel( {\n\tas: Wrapper = FiltersToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Duotone\n\tconst hasDuotoneEnabled = useHasDuotoneControl( settings );\n\tconst duotonePalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'duotone',\n\t\tdefaultSetting: 'defaultDuotone',\n\t} );\n\tconst colorPalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'palette',\n\t\tdefaultSetting: 'defaultPalette',\n\t} );\n\tconst duotone = decodeValue( inheritedValue?.filter?.duotone );\n\tconst setDuotone = ( newValue ) => {\n\t\tconst duotonePreset = duotonePalette.find( ( { colors } ) => {\n\t\t\treturn colors === newValue;\n\t\t} );\n\t\tconst settedValue = duotonePreset\n\t\t\t? `var:preset|duotone|${ duotonePreset.slug }`\n\t\t\t: newValue;\n\t\tonChange( setImmutably( value, [ 'filter', 'duotone' ], settedValue ) );\n\t};\n\tconst hasDuotone = () => !! value?.filter?.duotone;\n\tconst resetDuotone = () => setDuotone( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tfilter: {\n\t\t\t\t...previousValue.filter,\n\t\t\t\tduotone: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasDuotoneEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\thasValue={ hasDuotone }\n\t\t\t\t\tonDeselect={ resetDuotone }\n\t\t\t\t\tisShownByDefault={ defaultControls.duotone }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\t\t\tclassName=\"block-editor-global-styles-filters-panel__dropdown\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\t\t\tclassName: classnames( { 'is-open': isOpen } ),\n\t\t\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t\t\t<Button { ...toggleProps }>\n\t\t\t\t\t\t\t\t\t\t<LabeledColorIndicator\n\t\t\t\t\t\t\t\t\t\t\tindicator={ duotone }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\t\t\t\t\t// TODO: Re-enable both when custom colors are supported for block-level styles.\n\t\t\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\t\t\tdisableCustomDuotone\n\t\t\t\t\t\t\t\t\t\tvalue={ duotone }\n\t\t\t\t\t\t\t\t\t\tonChange={ setDuotone }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalZStack","ZStack","__experimentalDropdownContentWrapper","DropdownContentWrapper","Button","MenuGroup","ColorIndicator","DuotonePicker","DuotoneSwatch","Dropdown","Flex","FlexItem","__","_x","useCallback","useMemo","getValueFromVariable","setImmutably","EMPTY_ARRAY","useMultiOriginColorPresets","settings","presetSetting","defaultSetting","disableDefault","color","userPresets","custom","themePresets","theme","defaultPresets","default","useHasFiltersPanel","useHasDuotoneControl","customDuotone","defaultDuotone","duotone","length","FiltersToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","dropdownMenuProps","placement","offset","DEFAULT_CONTROLS","popoverProps","shift","className","headerTitle","LabeledColorIndicator","indicator","justify","isLayered","expanded","values","title","FiltersPanel","as","Wrapper","inheritedValue","defaultControls","decodeValue","rawValue","hasDuotoneEnabled","duotonePalette","colorPalette","filter","setDuotone","newValue","duotonePreset","find","colors","settedValue","slug","hasDuotone","resetDuotone","undefined","previousValue","hasValue","onDeselect","isShownByDefault","renderToggle","onToggle","isOpen","toggleProps","onClick","isBordered","isSeparated","renderContent","paddingSize","disableCustomColors","disableCustomDuotone"],"sources":["@wordpress/block-editor/src/components/global-styles/filters-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tMenuGroup,\n\tColorIndicator,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tDropdown,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst EMPTY_ARRAY = [];\nfunction useMultiOriginColorPresets(\n\tsettings,\n\t{ presetSetting, defaultSetting }\n) {\n\tconst disableDefault = ! settings?.color?.[ defaultSetting ];\n\tconst userPresets =\n\t\tsettings?.color?.[ presetSetting ]?.custom || EMPTY_ARRAY;\n\tconst themePresets =\n\t\tsettings?.color?.[ presetSetting ]?.theme || EMPTY_ARRAY;\n\tconst defaultPresets =\n\t\tsettings?.color?.[ presetSetting ]?.default || EMPTY_ARRAY;\n\treturn useMemo(\n\t\t() => [\n\t\t\t...userPresets,\n\t\t\t...themePresets,\n\t\t\t...( disableDefault ? EMPTY_ARRAY : defaultPresets ),\n\t\t],\n\t\t[ disableDefault, userPresets, themePresets, defaultPresets ]\n\t);\n}\n\nexport function useHasFiltersPanel( settings ) {\n\treturn useHasDuotoneControl( settings );\n}\n\nfunction useHasDuotoneControl( settings ) {\n\treturn (\n\t\tsettings.color.customDuotone ||\n\t\tsettings.color.defaultDuotone ||\n\t\tsettings.color.duotone.length > 0\n\t);\n}\n\nfunction FiltersToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ _x( 'Filters', 'Name for applying graphical effects' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ {\n\t\t\t\tplacement: 'left-start',\n\t\t\t\toffset: 258, // sidebar width (280px) - button width (24px) + border (2px)\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tduotone: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n\tclassName: 'block-editor-duotone-control__popover',\n\theaderTitle: __( 'Duotone' ),\n};\n\nconst LabeledColorIndicator = ( { indicator, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t<Flex expanded={ false }>\n\t\t\t\t{ indicator === 'unset' || ! indicator ? (\n\t\t\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t\t\t) : (\n\t\t\t\t\t<DuotoneSwatch values={ indicator } />\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</ZStack>\n\t\t<FlexItem title={ label }>{ label }</FlexItem>\n\t</HStack>\n);\n\nexport default function FiltersPanel( {\n\tas: Wrapper = FiltersToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Duotone\n\tconst hasDuotoneEnabled = useHasDuotoneControl( settings );\n\tconst duotonePalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'duotone',\n\t\tdefaultSetting: 'defaultDuotone',\n\t} );\n\tconst colorPalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'palette',\n\t\tdefaultSetting: 'defaultPalette',\n\t} );\n\tconst duotone = decodeValue( inheritedValue?.filter?.duotone );\n\tconst setDuotone = ( newValue ) => {\n\t\tconst duotonePreset = duotonePalette.find( ( { colors } ) => {\n\t\t\treturn colors === newValue;\n\t\t} );\n\t\tconst settedValue = duotonePreset\n\t\t\t? `var:preset|duotone|${ duotonePreset.slug }`\n\t\t\t: newValue;\n\t\tonChange( setImmutably( value, [ 'filter', 'duotone' ], settedValue ) );\n\t};\n\tconst hasDuotone = () => !! value?.filter?.duotone;\n\tconst resetDuotone = () => setDuotone( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tfilter: {\n\t\t\t\t...previousValue.filter,\n\t\t\t\tduotone: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasDuotoneEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\thasValue={ hasDuotone }\n\t\t\t\t\tonDeselect={ resetDuotone }\n\t\t\t\t\tisShownByDefault={ defaultControls.duotone }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\t\t\tclassName=\"block-editor-global-styles-filters-panel__dropdown\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\t\t\tclassName: classnames( { 'is-open': isOpen } ),\n\t\t\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t\t\t<Button { ...toggleProps }>\n\t\t\t\t\t\t\t\t\t\t<LabeledColorIndicator\n\t\t\t\t\t\t\t\t\t\t\tindicator={ duotone }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"small\">\n\t\t\t\t\t\t\t\t<MenuGroup label={ __( 'Duotone' ) }>\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\t\t\t\t\t// TODO: Re-enable both when custom colors are supported for block-level styles.\n\t\t\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\t\t\tdisableCustomDuotone\n\t\t\t\t\t\t\t\t\t\tvalue={ duotone }\n\t\t\t\t\t\t\t\t\t\tonChange={ setDuotone }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}
@@ -9,6 +9,7 @@ import { useCallback } from '@wordpress/element';
9
9
  /**
10
10
  * Internal dependencies
11
11
  */
12
+ import { mergeOrigins, hasMergedOrigins } from '../use-settings';
12
13
  import FontFamilyControl from '../font-family';
13
14
  import FontAppearanceControl from '../font-appearance-control';
14
15
  import LineHeightControl from '../line-height-control';
@@ -33,33 +34,22 @@ export function useHasTypographyPanel(settings) {
33
34
  return hasFontFamily || hasLineHeight || hasFontAppearance || hasLetterSpacing || hasTextTransform || hasFontSize || hasTextDecoration || hasWritingMode || hasTextColumns;
34
35
  }
35
36
  function useHasFontSizeControl(settings) {
36
- var _settings$typography$, _fontSizesPerOrigin$c, _fontSizesPerOrigin$t, _fontSizesPerOrigin$d;
37
- const disableCustomFontSizes = !settings?.typography?.customFontSize;
38
- const fontSizesPerOrigin = (_settings$typography$ = settings?.typography?.fontSizes) !== null && _settings$typography$ !== void 0 ? _settings$typography$ : {};
39
- const fontSizes = [].concat((_fontSizesPerOrigin$c = fontSizesPerOrigin?.custom) !== null && _fontSizesPerOrigin$c !== void 0 ? _fontSizesPerOrigin$c : []).concat((_fontSizesPerOrigin$t = fontSizesPerOrigin?.theme) !== null && _fontSizesPerOrigin$t !== void 0 ? _fontSizesPerOrigin$t : []).concat((_fontSizesPerOrigin$d = fontSizesPerOrigin.default) !== null && _fontSizesPerOrigin$d !== void 0 ? _fontSizesPerOrigin$d : []);
40
- return !!fontSizes?.length || !disableCustomFontSizes;
37
+ return hasMergedOrigins(settings?.typography?.fontSizes) || settings?.typography?.customFontSize;
41
38
  }
42
39
  function useHasFontFamilyControl(settings) {
43
- var _fontFamiliesPerOrigi, _fontFamiliesPerOrigi2, _fontFamiliesPerOrigi3;
44
- const fontFamiliesPerOrigin = settings?.typography?.fontFamilies;
45
- const fontFamilies = [].concat((_fontFamiliesPerOrigi = fontFamiliesPerOrigin?.custom) !== null && _fontFamiliesPerOrigi !== void 0 ? _fontFamiliesPerOrigi : []).concat((_fontFamiliesPerOrigi2 = fontFamiliesPerOrigin?.theme) !== null && _fontFamiliesPerOrigi2 !== void 0 ? _fontFamiliesPerOrigi2 : []).concat((_fontFamiliesPerOrigi3 = fontFamiliesPerOrigin?.default) !== null && _fontFamiliesPerOrigi3 !== void 0 ? _fontFamiliesPerOrigi3 : []).sort((a, b) => (a?.name || a?.slug)?.localeCompare(b?.name || a?.slug));
46
- return !!fontFamilies?.length;
40
+ return hasMergedOrigins(settings?.typography?.fontFamilies);
47
41
  }
48
42
  function useHasLineHeightControl(settings) {
49
43
  return settings?.typography?.lineHeight;
50
44
  }
51
45
  function useHasAppearanceControl(settings) {
52
- const hasFontStyles = settings?.typography?.fontStyle;
53
- const hasFontWeights = settings?.typography?.fontWeight;
54
- return hasFontStyles || hasFontWeights;
46
+ return settings?.typography?.fontStyle || settings?.typography?.fontWeight;
55
47
  }
56
48
  function useAppearanceControlLabel(settings) {
57
- const hasFontStyles = settings?.typography?.fontStyle;
58
- const hasFontWeights = settings?.typography?.fontWeight;
59
- if (!hasFontStyles) {
49
+ if (!settings?.typography?.fontStyle) {
60
50
  return __('Font weight');
61
51
  }
62
- if (!hasFontWeights) {
52
+ if (!settings?.typography?.fontWeight) {
63
53
  return __('Font style');
64
54
  }
65
55
  return __('Appearance');
@@ -80,17 +70,17 @@ function useHasTextColumnsControl(settings) {
80
70
  return settings?.typography?.textColumns;
81
71
  }
82
72
  function getUniqueFontSizesBySlug(settings) {
83
- var _settings$typography$2, _fontSizesPerOrigin$c2, _fontSizesPerOrigin$t2, _fontSizesPerOrigin$d2;
84
- const fontSizesPerOrigin = (_settings$typography$2 = settings?.typography?.fontSizes) !== null && _settings$typography$2 !== void 0 ? _settings$typography$2 : {};
85
- const fontSizes = [].concat((_fontSizesPerOrigin$c2 = fontSizesPerOrigin?.custom) !== null && _fontSizesPerOrigin$c2 !== void 0 ? _fontSizesPerOrigin$c2 : []).concat((_fontSizesPerOrigin$t2 = fontSizesPerOrigin?.theme) !== null && _fontSizesPerOrigin$t2 !== void 0 ? _fontSizesPerOrigin$t2 : []).concat((_fontSizesPerOrigin$d2 = fontSizesPerOrigin.default) !== null && _fontSizesPerOrigin$d2 !== void 0 ? _fontSizesPerOrigin$d2 : []);
86
- return fontSizes.reduce((acc, currentSize) => {
87
- if (!acc.some(({
73
+ const fontSizes = settings?.typography?.fontSizes;
74
+ const mergedFontSizes = fontSizes ? mergeOrigins(fontSizes) : [];
75
+ const uniqueSizes = [];
76
+ for (const currentSize of mergedFontSizes) {
77
+ if (!uniqueSizes.some(({
88
78
  slug
89
79
  }) => slug === currentSize.slug)) {
90
- acc.push(currentSize);
80
+ uniqueSizes.push(currentSize);
91
81
  }
92
- return acc;
93
- }, []);
82
+ }
83
+ return uniqueSizes;
94
84
  }
95
85
  function TypographyToolsPanel({
96
86
  resetAllFilter,
@@ -129,18 +119,17 @@ export default function TypographyPanel({
129
119
  panelId,
130
120
  defaultControls = DEFAULT_CONTROLS
131
121
  }) {
132
- var _fontFamiliesPerOrigi4, _fontFamiliesPerOrigi5, _fontFamiliesPerOrigi6;
133
122
  const decodeValue = rawValue => getValueFromVariable({
134
123
  settings
135
124
  }, '', rawValue);
136
125
 
137
126
  // Font Family
138
127
  const hasFontFamilyEnabled = useHasFontFamilyControl(settings);
139
- const fontFamiliesPerOrigin = settings?.typography?.fontFamilies;
140
- const fontFamilies = [].concat((_fontFamiliesPerOrigi4 = fontFamiliesPerOrigin?.custom) !== null && _fontFamiliesPerOrigi4 !== void 0 ? _fontFamiliesPerOrigi4 : []).concat((_fontFamiliesPerOrigi5 = fontFamiliesPerOrigin?.theme) !== null && _fontFamiliesPerOrigi5 !== void 0 ? _fontFamiliesPerOrigi5 : []).concat((_fontFamiliesPerOrigi6 = fontFamiliesPerOrigin?.default) !== null && _fontFamiliesPerOrigi6 !== void 0 ? _fontFamiliesPerOrigi6 : []);
128
+ const fontFamilies = settings?.typography?.fontFamilies;
129
+ const mergedFontFamilies = fontFamilies ? mergeOrigins(fontFamilies) : [];
141
130
  const fontFamily = decodeValue(inheritedValue?.typography?.fontFamily);
142
131
  const setFontFamily = newValue => {
143
- const slug = fontFamilies?.find(({
132
+ const slug = mergedFontFamilies?.find(({
144
133
  fontFamily: f
145
134
  }) => f === newValue)?.slug;
146
135
  onChange(setImmutably(value, ['typography', 'fontFamily'], slug ? `var:preset|font-family|${slug}` : newValue || undefined));
@@ -151,7 +140,7 @@ export default function TypographyPanel({
151
140
  // Font Size
152
141
  const hasFontSizeEnabled = useHasFontSizeControl(settings);
153
142
  const disableCustomFontSizes = !settings?.typography?.customFontSize;
154
- const fontSizes = getUniqueFontSizesBySlug(settings);
143
+ const mergedFontSizes = getUniqueFontSizesBySlug(settings);
155
144
  const fontSize = decodeValue(inheritedValue?.typography?.fontSize);
156
145
  const setFontSize = (newValue, metadata) => {
157
146
  const actualValue = !!metadata?.slug ? `var:preset|font-size|${metadata?.slug}` : newValue;
@@ -256,7 +245,7 @@ export default function TypographyPanel({
256
245
  isShownByDefault: defaultControls.fontFamily,
257
246
  panelId: panelId
258
247
  }, createElement(FontFamilyControl, {
259
- fontFamilies: fontFamilies,
248
+ fontFamilies: mergedFontFamilies,
260
249
  value: fontFamily,
261
250
  onChange: setFontFamily,
262
251
  size: "__unstable-large",
@@ -270,7 +259,7 @@ export default function TypographyPanel({
270
259
  }, createElement(FontSizePicker, {
271
260
  value: fontSize,
272
261
  onChange: setFontSize,
273
- fontSizes: fontSizes,
262
+ fontSizes: mergedFontSizes,
274
263
  disableCustomFontSizes: disableCustomFontSizes,
275
264
  withReset: false,
276
265
  withSlider: true,
@@ -1 +1 @@
1
- {"version":3,"names":["FontSizePicker","__experimentalNumberControl","NumberControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","useCallback","FontFamilyControl","FontAppearanceControl","LineHeightControl","LetterSpacingControl","TextTransformControl","TextDecorationControl","WritingModeControl","getValueFromVariable","setImmutably","MIN_TEXT_COLUMNS","MAX_TEXT_COLUMNS","useHasTypographyPanel","settings","hasFontFamily","useHasFontFamilyControl","hasLineHeight","useHasLineHeightControl","hasFontAppearance","useHasAppearanceControl","hasLetterSpacing","useHasLetterSpacingControl","hasTextTransform","useHasTextTransformControl","hasTextDecoration","useHasTextDecorationControl","hasWritingMode","useHasWritingModeControl","hasTextColumns","useHasTextColumnsControl","hasFontSize","useHasFontSizeControl","_settings$typography$","_fontSizesPerOrigin$c","_fontSizesPerOrigin$t","_fontSizesPerOrigin$d","disableCustomFontSizes","typography","customFontSize","fontSizesPerOrigin","fontSizes","concat","custom","theme","default","length","_fontFamiliesPerOrigi","_fontFamiliesPerOrigi2","_fontFamiliesPerOrigi3","fontFamiliesPerOrigin","fontFamilies","sort","a","b","name","slug","localeCompare","lineHeight","hasFontStyles","fontStyle","hasFontWeights","fontWeight","useAppearanceControlLabel","letterSpacing","textTransform","textDecoration","writingMode","textColumns","getUniqueFontSizesBySlug","_settings$typography$2","_fontSizesPerOrigin$c2","_fontSizesPerOrigin$t2","_fontSizesPerOrigin$d2","reduce","acc","currentSize","some","push","TypographyToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","DEFAULT_CONTROLS","fontFamily","fontSize","fontAppearance","TypographyPanel","as","Wrapper","inheritedValue","defaultControls","_fontFamiliesPerOrigi4","_fontFamiliesPerOrigi5","_fontFamiliesPerOrigi6","decodeValue","rawValue","hasFontFamilyEnabled","setFontFamily","newValue","find","f","undefined","resetFontFamily","hasFontSizeEnabled","setFontSize","metadata","actualValue","resetFontSize","hasAppearanceControl","appearanceControlLabel","setFontAppearance","newFontStyle","newFontWeight","resetFontAppearance","hasLineHeightEnabled","setLineHeight","resetLineHeight","hasLetterSpacingControl","setLetterSpacing","resetLetterSpacing","hasTextColumnsControl","setTextColumns","resetTextColumns","hasTextTransformControl","setTextTransform","resetTextTransform","hasTextDecorationControl","setTextDecoration","resetTextDecoration","hasWritingModeControl","setWritingMode","resetWritingMode","previousValue","hasValue","onDeselect","isShownByDefault","size","__nextHasNoMarginBottom","withReset","withSlider","className","__unstableInputWidth","max","min","spinControls","initialPosition","showNone","isBlock"],"sources":["@wordpress/block-editor/src/components/global-styles/typography-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFontSizePicker,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontFamilyControl from '../font-family';\nimport FontAppearanceControl from '../font-appearance-control';\nimport LineHeightControl from '../line-height-control';\nimport LetterSpacingControl from '../letter-spacing-control';\nimport TextTransformControl from '../text-transform-control';\nimport TextDecorationControl from '../text-decoration-control';\nimport WritingModeControl from '../writing-mode-control';\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst MIN_TEXT_COLUMNS = 1;\nconst MAX_TEXT_COLUMNS = 6;\n\nexport function useHasTypographyPanel( settings ) {\n\tconst hasFontFamily = useHasFontFamilyControl( settings );\n\tconst hasLineHeight = useHasLineHeightControl( settings );\n\tconst hasFontAppearance = useHasAppearanceControl( settings );\n\tconst hasLetterSpacing = useHasLetterSpacingControl( settings );\n\tconst hasTextTransform = useHasTextTransformControl( settings );\n\tconst hasTextDecoration = useHasTextDecorationControl( settings );\n\tconst hasWritingMode = useHasWritingModeControl( settings );\n\tconst hasTextColumns = useHasTextColumnsControl( settings );\n\tconst hasFontSize = useHasFontSizeControl( settings );\n\n\treturn (\n\t\thasFontFamily ||\n\t\thasLineHeight ||\n\t\thasFontAppearance ||\n\t\thasLetterSpacing ||\n\t\thasTextTransform ||\n\t\thasFontSize ||\n\t\thasTextDecoration ||\n\t\thasWritingMode ||\n\t\thasTextColumns\n\t);\n}\n\nfunction useHasFontSizeControl( settings ) {\n\tconst disableCustomFontSizes = ! settings?.typography?.customFontSize;\n\tconst fontSizesPerOrigin = settings?.typography?.fontSizes ?? {};\n\tconst fontSizes = []\n\t\t.concat( fontSizesPerOrigin?.custom ?? [] )\n\t\t.concat( fontSizesPerOrigin?.theme ?? [] )\n\t\t.concat( fontSizesPerOrigin.default ?? [] );\n\treturn !! fontSizes?.length || ! disableCustomFontSizes;\n}\n\nfunction useHasFontFamilyControl( settings ) {\n\tconst fontFamiliesPerOrigin = settings?.typography?.fontFamilies;\n\tconst fontFamilies = []\n\t\t.concat( fontFamiliesPerOrigin?.custom ?? [] )\n\t\t.concat( fontFamiliesPerOrigin?.theme ?? [] )\n\t\t.concat( fontFamiliesPerOrigin?.default ?? [] )\n\t\t.sort( ( a, b ) =>\n\t\t\t( a?.name || a?.slug )?.localeCompare( b?.name || a?.slug )\n\t\t);\n\treturn !! fontFamilies?.length;\n}\n\nfunction useHasLineHeightControl( settings ) {\n\treturn settings?.typography?.lineHeight;\n}\n\nfunction useHasAppearanceControl( settings ) {\n\tconst hasFontStyles = settings?.typography?.fontStyle;\n\tconst hasFontWeights = settings?.typography?.fontWeight;\n\treturn hasFontStyles || hasFontWeights;\n}\n\nfunction useAppearanceControlLabel( settings ) {\n\tconst hasFontStyles = settings?.typography?.fontStyle;\n\tconst hasFontWeights = settings?.typography?.fontWeight;\n\tif ( ! hasFontStyles ) {\n\t\treturn __( 'Font weight' );\n\t}\n\tif ( ! hasFontWeights ) {\n\t\treturn __( 'Font style' );\n\t}\n\treturn __( 'Appearance' );\n}\n\nfunction useHasLetterSpacingControl( settings ) {\n\treturn settings?.typography?.letterSpacing;\n}\n\nfunction useHasTextTransformControl( settings ) {\n\treturn settings?.typography?.textTransform;\n}\n\nfunction useHasTextDecorationControl( settings ) {\n\treturn settings?.typography?.textDecoration;\n}\n\nfunction useHasWritingModeControl( settings ) {\n\treturn settings?.typography?.writingMode;\n}\n\nfunction useHasTextColumnsControl( settings ) {\n\treturn settings?.typography?.textColumns;\n}\n\nfunction getUniqueFontSizesBySlug( settings ) {\n\tconst fontSizesPerOrigin = settings?.typography?.fontSizes ?? {};\n\tconst fontSizes = []\n\t\t.concat( fontSizesPerOrigin?.custom ?? [] )\n\t\t.concat( fontSizesPerOrigin?.theme ?? [] )\n\t\t.concat( fontSizesPerOrigin.default ?? [] );\n\n\treturn fontSizes.reduce( ( acc, currentSize ) => {\n\t\tif ( ! acc.some( ( { slug } ) => slug === currentSize.slug ) ) {\n\t\t\tacc.push( currentSize );\n\t\t}\n\t\treturn acc;\n\t}, [] );\n}\n\nfunction TypographyToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Typography' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tfontFamily: true,\n\tfontSize: true,\n\tfontAppearance: true,\n\tlineHeight: true,\n\tletterSpacing: true,\n\ttextTransform: true,\n\ttextDecoration: true,\n\twritingMode: true,\n\ttextColumns: true,\n};\n\nexport default function TypographyPanel( {\n\tas: Wrapper = TypographyToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Font Family\n\tconst hasFontFamilyEnabled = useHasFontFamilyControl( settings );\n\tconst fontFamiliesPerOrigin = settings?.typography?.fontFamilies;\n\tconst fontFamilies = []\n\t\t.concat( fontFamiliesPerOrigin?.custom ?? [] )\n\t\t.concat( fontFamiliesPerOrigin?.theme ?? [] )\n\t\t.concat( fontFamiliesPerOrigin?.default ?? [] );\n\tconst fontFamily = decodeValue( inheritedValue?.typography?.fontFamily );\n\tconst setFontFamily = ( newValue ) => {\n\t\tconst slug = fontFamilies?.find(\n\t\t\t( { fontFamily: f } ) => f === newValue\n\t\t)?.slug;\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'fontFamily' ],\n\t\t\t\tslug\n\t\t\t\t\t? `var:preset|font-family|${ slug }`\n\t\t\t\t\t: newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasFontFamily = () => !! value?.typography?.fontFamily;\n\tconst resetFontFamily = () => setFontFamily( undefined );\n\n\t// Font Size\n\tconst hasFontSizeEnabled = useHasFontSizeControl( settings );\n\tconst disableCustomFontSizes = ! settings?.typography?.customFontSize;\n\tconst fontSizes = getUniqueFontSizesBySlug( settings );\n\n\tconst fontSize = decodeValue( inheritedValue?.typography?.fontSize );\n\tconst setFontSize = ( newValue, metadata ) => {\n\t\tconst actualValue = !! metadata?.slug\n\t\t\t? `var:preset|font-size|${ metadata?.slug }`\n\t\t\t: newValue;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'fontSize' ],\n\t\t\t\tactualValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasFontSize = () => !! value?.typography?.fontSize;\n\tconst resetFontSize = () => setFontSize( undefined );\n\n\t// Appearance\n\tconst hasAppearanceControl = useHasAppearanceControl( settings );\n\tconst appearanceControlLabel = useAppearanceControlLabel( settings );\n\tconst hasFontStyles = settings?.typography?.fontStyle;\n\tconst hasFontWeights = settings?.typography?.fontWeight;\n\tconst fontStyle = decodeValue( inheritedValue?.typography?.fontStyle );\n\tconst fontWeight = decodeValue( inheritedValue?.typography?.fontWeight );\n\tconst setFontAppearance = ( {\n\t\tfontStyle: newFontStyle,\n\t\tfontWeight: newFontWeight,\n\t} ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\ttypography: {\n\t\t\t\t...value?.typography,\n\t\t\t\tfontStyle: newFontStyle || undefined,\n\t\t\t\tfontWeight: newFontWeight || undefined,\n\t\t\t},\n\t\t} );\n\t};\n\tconst hasFontAppearance = () =>\n\t\t!! value?.typography?.fontStyle || !! value?.typography?.fontWeight;\n\tconst resetFontAppearance = () => {\n\t\tsetFontAppearance( {} );\n\t};\n\n\t// Line Height\n\tconst hasLineHeightEnabled = useHasLineHeightControl( settings );\n\tconst lineHeight = decodeValue( inheritedValue?.typography?.lineHeight );\n\tconst setLineHeight = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'lineHeight' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLineHeight = () => value?.typography?.lineHeight !== undefined;\n\tconst resetLineHeight = () => setLineHeight( undefined );\n\n\t// Letter Spacing\n\tconst hasLetterSpacingControl = useHasLetterSpacingControl( settings );\n\tconst letterSpacing = decodeValue(\n\t\tinheritedValue?.typography?.letterSpacing\n\t);\n\tconst setLetterSpacing = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'letterSpacing' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLetterSpacing = () => !! value?.typography?.letterSpacing;\n\tconst resetLetterSpacing = () => setLetterSpacing( undefined );\n\n\t// Text Columns\n\tconst hasTextColumnsControl = useHasTextColumnsControl( settings );\n\tconst textColumns = decodeValue( inheritedValue?.typography?.textColumns );\n\tconst setTextColumns = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textColumns' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextColumns = () => !! value?.typography?.textColumns;\n\tconst resetTextColumns = () => setTextColumns( undefined );\n\n\t// Text Transform\n\tconst hasTextTransformControl = useHasTextTransformControl( settings );\n\tconst textTransform = decodeValue(\n\t\tinheritedValue?.typography?.textTransform\n\t);\n\tconst setTextTransform = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textTransform' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextTransform = () => !! value?.typography?.textTransform;\n\tconst resetTextTransform = () => setTextTransform( undefined );\n\n\t// Text Decoration\n\tconst hasTextDecorationControl = useHasTextDecorationControl( settings );\n\tconst textDecoration = decodeValue(\n\t\tinheritedValue?.typography?.textDecoration\n\t);\n\tconst setTextDecoration = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textDecoration' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextDecoration = () => !! value?.typography?.textDecoration;\n\tconst resetTextDecoration = () => setTextDecoration( undefined );\n\n\t// Text Orientation\n\tconst hasWritingModeControl = useHasWritingModeControl( settings );\n\tconst writingMode = decodeValue( inheritedValue?.typography?.writingMode );\n\tconst setWritingMode = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'writingMode' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasWritingMode = () => !! value?.typography?.writingMode;\n\tconst resetWritingMode = () => setWritingMode( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\ttypography: {},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasFontFamilyEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Font family' ) }\n\t\t\t\t\thasValue={ hasFontFamily }\n\t\t\t\t\tonDeselect={ resetFontFamily }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontFamily }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontFamilyControl\n\t\t\t\t\t\tfontFamilies={ fontFamilies }\n\t\t\t\t\t\tvalue={ fontFamily }\n\t\t\t\t\t\tonChange={ setFontFamily }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasFontSizeEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Font size' ) }\n\t\t\t\t\thasValue={ hasFontSize }\n\t\t\t\t\tonDeselect={ resetFontSize }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontSize }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontSizePicker\n\t\t\t\t\t\tvalue={ fontSize }\n\t\t\t\t\t\tonChange={ setFontSize }\n\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\tdisableCustomFontSizes={ disableCustomFontSizes }\n\t\t\t\t\t\twithReset={ false }\n\t\t\t\t\t\twithSlider\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasAppearanceControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ appearanceControlLabel }\n\t\t\t\t\thasValue={ hasFontAppearance }\n\t\t\t\t\tonDeselect={ resetFontAppearance }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontAppearance }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontAppearanceControl\n\t\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t\tfontStyle,\n\t\t\t\t\t\t\tfontWeight,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonChange={ setFontAppearance }\n\t\t\t\t\t\thasFontStyles={ hasFontStyles }\n\t\t\t\t\t\thasFontWeights={ hasFontWeights }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasLineHeightEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Line height' ) }\n\t\t\t\t\thasValue={ hasLineHeight }\n\t\t\t\t\tonDeselect={ resetLineHeight }\n\t\t\t\t\tisShownByDefault={ defaultControls.lineHeight }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<LineHeightControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t\tvalue={ lineHeight }\n\t\t\t\t\t\tonChange={ setLineHeight }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasLetterSpacingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Letter spacing' ) }\n\t\t\t\t\thasValue={ hasLetterSpacing }\n\t\t\t\t\tonDeselect={ resetLetterSpacing }\n\t\t\t\t\tisShownByDefault={ defaultControls.letterSpacing }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<LetterSpacingControl\n\t\t\t\t\t\tvalue={ letterSpacing }\n\t\t\t\t\t\tonChange={ setLetterSpacing }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextColumnsControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text columns' ) }\n\t\t\t\t\thasValue={ hasTextColumns }\n\t\t\t\t\tonDeselect={ resetTextColumns }\n\t\t\t\t\tisShownByDefault={ defaultControls.textColumns }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tlabel={ __( 'Text columns' ) }\n\t\t\t\t\t\tmax={ MAX_TEXT_COLUMNS }\n\t\t\t\t\t\tmin={ MIN_TEXT_COLUMNS }\n\t\t\t\t\t\tonChange={ setTextColumns }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tvalue={ textColumns }\n\t\t\t\t\t\tinitialPosition={ 1 }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextDecorationControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text decoration' ) }\n\t\t\t\t\thasValue={ hasTextDecoration }\n\t\t\t\t\tonDeselect={ resetTextDecoration }\n\t\t\t\t\tisShownByDefault={ defaultControls.textDecoration }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<TextDecorationControl\n\t\t\t\t\t\tvalue={ textDecoration }\n\t\t\t\t\t\tonChange={ setTextDecoration }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasWritingModeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text orientation' ) }\n\t\t\t\t\thasValue={ hasWritingMode }\n\t\t\t\t\tonDeselect={ resetWritingMode }\n\t\t\t\t\tisShownByDefault={ defaultControls.writingMode }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<WritingModeControl\n\t\t\t\t\t\tvalue={ writingMode }\n\t\t\t\t\t\tonChange={ setWritingMode }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextTransformControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Letter case' ) }\n\t\t\t\t\thasValue={ hasTextTransform }\n\t\t\t\t\tonDeselect={ resetTextTransform }\n\t\t\t\t\tisShownByDefault={ defaultControls.textTransform }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<TextTransformControl\n\t\t\t\t\t\tvalue={ textTransform }\n\t\t\t\t\t\tonChange={ setTextTransform }\n\t\t\t\t\t\tshowNone\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,cAAc,EACdC,2BAA2B,IAAIC,aAAa,EAC5CC,wBAAwB,IAAIC,UAAU,EACtCC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;AACA,OAAOC,iBAAiB,MAAM,gBAAgB;AAC9C,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,iBAAiB,MAAM,wBAAwB;AACtD,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,oBAAoB,MAAM,2BAA2B;AAC5D,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,kBAAkB,MAAM,yBAAyB;AACxD,SAASC,oBAAoB,QAAQ,SAAS;AAC9C,SAASC,YAAY,QAAQ,oBAAoB;AAEjD,MAAMC,gBAAgB,GAAG,CAAC;AAC1B,MAAMC,gBAAgB,GAAG,CAAC;AAE1B,OAAO,SAASC,qBAAqBA,CAAEC,QAAQ,EAAG;EACjD,MAAMC,aAAa,GAAGC,uBAAuB,CAAEF,QAAS,CAAC;EACzD,MAAMG,aAAa,GAAGC,uBAAuB,CAAEJ,QAAS,CAAC;EACzD,MAAMK,iBAAiB,GAAGC,uBAAuB,CAAEN,QAAS,CAAC;EAC7D,MAAMO,gBAAgB,GAAGC,0BAA0B,CAAER,QAAS,CAAC;EAC/D,MAAMS,gBAAgB,GAAGC,0BAA0B,CAAEV,QAAS,CAAC;EAC/D,MAAMW,iBAAiB,GAAGC,2BAA2B,CAAEZ,QAAS,CAAC;EACjE,MAAMa,cAAc,GAAGC,wBAAwB,CAAEd,QAAS,CAAC;EAC3D,MAAMe,cAAc,GAAGC,wBAAwB,CAAEhB,QAAS,CAAC;EAC3D,MAAMiB,WAAW,GAAGC,qBAAqB,CAAElB,QAAS,CAAC;EAErD,OACCC,aAAa,IACbE,aAAa,IACbE,iBAAiB,IACjBE,gBAAgB,IAChBE,gBAAgB,IAChBQ,WAAW,IACXN,iBAAiB,IACjBE,cAAc,IACdE,cAAc;AAEhB;AAEA,SAASG,qBAAqBA,CAAElB,QAAQ,EAAG;EAAA,IAAAmB,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA;EAC1C,MAAMC,sBAAsB,GAAG,CAAEvB,QAAQ,EAAEwB,UAAU,EAAEC,cAAc;EACrE,MAAMC,kBAAkB,IAAAP,qBAAA,GAAGnB,QAAQ,EAAEwB,UAAU,EAAEG,SAAS,cAAAR,qBAAA,cAAAA,qBAAA,GAAI,CAAC,CAAC;EAChE,MAAMQ,SAAS,GAAG,EAAE,CAClBC,MAAM,EAAAR,qBAAA,GAAEM,kBAAkB,EAAEG,MAAM,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,EAAG,CAAC,CAC1CQ,MAAM,EAAAP,qBAAA,GAAEK,kBAAkB,EAAEI,KAAK,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,EAAG,CAAC,CACzCO,MAAM,EAAAN,qBAAA,GAAEI,kBAAkB,CAACK,OAAO,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,EAAG,CAAC;EAC5C,OAAO,CAAC,CAAEK,SAAS,EAAEK,MAAM,IAAI,CAAET,sBAAsB;AACxD;AAEA,SAASrB,uBAAuBA,CAAEF,QAAQ,EAAG;EAAA,IAAAiC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EAC5C,MAAMC,qBAAqB,GAAGpC,QAAQ,EAAEwB,UAAU,EAAEa,YAAY;EAChE,MAAMA,YAAY,GAAG,EAAE,CACrBT,MAAM,EAAAK,qBAAA,GAAEG,qBAAqB,EAAEP,MAAM,cAAAI,qBAAA,cAAAA,qBAAA,GAAI,EAAG,CAAC,CAC7CL,MAAM,EAAAM,sBAAA,GAAEE,qBAAqB,EAAEN,KAAK,cAAAI,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CAC5CN,MAAM,EAAAO,sBAAA,GAAEC,qBAAqB,EAAEL,OAAO,cAAAI,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CAC9CG,IAAI,CAAE,CAAEC,CAAC,EAAEC,CAAC,KACZ,CAAED,CAAC,EAAEE,IAAI,IAAIF,CAAC,EAAEG,IAAI,GAAIC,aAAa,CAAEH,CAAC,EAAEC,IAAI,IAAIF,CAAC,EAAEG,IAAK,CAC3D,CAAC;EACF,OAAO,CAAC,CAAEL,YAAY,EAAEL,MAAM;AAC/B;AAEA,SAAS5B,uBAAuBA,CAAEJ,QAAQ,EAAG;EAC5C,OAAOA,QAAQ,EAAEwB,UAAU,EAAEoB,UAAU;AACxC;AAEA,SAAStC,uBAAuBA,CAAEN,QAAQ,EAAG;EAC5C,MAAM6C,aAAa,GAAG7C,QAAQ,EAAEwB,UAAU,EAAEsB,SAAS;EACrD,MAAMC,cAAc,GAAG/C,QAAQ,EAAEwB,UAAU,EAAEwB,UAAU;EACvD,OAAOH,aAAa,IAAIE,cAAc;AACvC;AAEA,SAASE,yBAAyBA,CAAEjD,QAAQ,EAAG;EAC9C,MAAM6C,aAAa,GAAG7C,QAAQ,EAAEwB,UAAU,EAAEsB,SAAS;EACrD,MAAMC,cAAc,GAAG/C,QAAQ,EAAEwB,UAAU,EAAEwB,UAAU;EACvD,IAAK,CAAEH,aAAa,EAAG;IACtB,OAAO3D,EAAE,CAAE,aAAc,CAAC;EAC3B;EACA,IAAK,CAAE6D,cAAc,EAAG;IACvB,OAAO7D,EAAE,CAAE,YAAa,CAAC;EAC1B;EACA,OAAOA,EAAE,CAAE,YAAa,CAAC;AAC1B;AAEA,SAASsB,0BAA0BA,CAAER,QAAQ,EAAG;EAC/C,OAAOA,QAAQ,EAAEwB,UAAU,EAAE0B,aAAa;AAC3C;AAEA,SAASxC,0BAA0BA,CAAEV,QAAQ,EAAG;EAC/C,OAAOA,QAAQ,EAAEwB,UAAU,EAAE2B,aAAa;AAC3C;AAEA,SAASvC,2BAA2BA,CAAEZ,QAAQ,EAAG;EAChD,OAAOA,QAAQ,EAAEwB,UAAU,EAAE4B,cAAc;AAC5C;AAEA,SAAStC,wBAAwBA,CAAEd,QAAQ,EAAG;EAC7C,OAAOA,QAAQ,EAAEwB,UAAU,EAAE6B,WAAW;AACzC;AAEA,SAASrC,wBAAwBA,CAAEhB,QAAQ,EAAG;EAC7C,OAAOA,QAAQ,EAAEwB,UAAU,EAAE8B,WAAW;AACzC;AAEA,SAASC,wBAAwBA,CAAEvD,QAAQ,EAAG;EAAA,IAAAwD,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EAC7C,MAAMjC,kBAAkB,IAAA8B,sBAAA,GAAGxD,QAAQ,EAAEwB,UAAU,EAAEG,SAAS,cAAA6B,sBAAA,cAAAA,sBAAA,GAAI,CAAC,CAAC;EAChE,MAAM7B,SAAS,GAAG,EAAE,CAClBC,MAAM,EAAA6B,sBAAA,GAAE/B,kBAAkB,EAAEG,MAAM,cAAA4B,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CAC1C7B,MAAM,EAAA8B,sBAAA,GAAEhC,kBAAkB,EAAEI,KAAK,cAAA4B,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CACzC9B,MAAM,EAAA+B,sBAAA,GAAEjC,kBAAkB,CAACK,OAAO,cAAA4B,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC;EAE5C,OAAOhC,SAAS,CAACiC,MAAM,CAAE,CAAEC,GAAG,EAAEC,WAAW,KAAM;IAChD,IAAK,CAAED,GAAG,CAACE,IAAI,CAAE,CAAE;MAAErB;IAAK,CAAC,KAAMA,IAAI,KAAKoB,WAAW,CAACpB,IAAK,CAAC,EAAG;MAC9DmB,GAAG,CAACG,IAAI,CAAEF,WAAY,CAAC;IACxB;IACA,OAAOD,GAAG;EACX,CAAC,EAAE,EAAG,CAAC;AACR;AAEA,SAASI,oBAAoBA,CAAE;EAC9BC,cAAc;EACdC,QAAQ;EACRC,KAAK;EACLC,OAAO;EACPC;AACD,CAAC,EAAG;EACH,MAAMC,QAAQ,GAAGA,CAAA,KAAM;IACtB,MAAMC,YAAY,GAAGN,cAAc,CAAEE,KAAM,CAAC;IAC5CD,QAAQ,CAAEK,YAAa,CAAC;EACzB,CAAC;EAED,OACCC,aAAA,CAAC1F,UAAU;IACV2F,KAAK,EAAGxF,EAAE,CAAE,YAAa,CAAG;IAC5BqF,QAAQ,EAAGA,QAAU;IACrBF,OAAO,EAAGA;EAAS,GAEjBC,QACS,CAAC;AAEf;AAEA,MAAMK,gBAAgB,GAAG;EACxBC,UAAU,EAAE,IAAI;EAChBC,QAAQ,EAAE,IAAI;EACdC,cAAc,EAAE,IAAI;EACpBlC,UAAU,EAAE,IAAI;EAChBM,aAAa,EAAE,IAAI;EACnBC,aAAa,EAAE,IAAI;EACnBC,cAAc,EAAE,IAAI;EACpBC,WAAW,EAAE,IAAI;EACjBC,WAAW,EAAE;AACd,CAAC;AAED,eAAe,SAASyB,eAAeA,CAAE;EACxCC,EAAE,EAAEC,OAAO,GAAGhB,oBAAoB;EAClCG,KAAK;EACLD,QAAQ;EACRe,cAAc,GAAGd,KAAK;EACtBpE,QAAQ;EACRqE,OAAO;EACPc,eAAe,GAAGR;AACnB,CAAC,EAAG;EAAA,IAAAS,sBAAA,EAAAC,sBAAA,EAAAC,sBAAA;EACH,MAAMC,WAAW,GAAKC,QAAQ,IAC7B7F,oBAAoB,CAAE;IAAEK;EAAS,CAAC,EAAE,EAAE,EAAEwF,QAAS,CAAC;;EAEnD;EACA,MAAMC,oBAAoB,GAAGvF,uBAAuB,CAAEF,QAAS,CAAC;EAChE,MAAMoC,qBAAqB,GAAGpC,QAAQ,EAAEwB,UAAU,EAAEa,YAAY;EAChE,MAAMA,YAAY,GAAG,EAAE,CACrBT,MAAM,EAAAwD,sBAAA,GAAEhD,qBAAqB,EAAEP,MAAM,cAAAuD,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CAC7CxD,MAAM,EAAAyD,sBAAA,GAAEjD,qBAAqB,EAAEN,KAAK,cAAAuD,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC,CAC5CzD,MAAM,EAAA0D,sBAAA,GAAElD,qBAAqB,EAAEL,OAAO,cAAAuD,sBAAA,cAAAA,sBAAA,GAAI,EAAG,CAAC;EAChD,MAAMV,UAAU,GAAGW,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAEoD,UAAW,CAAC;EACxE,MAAMc,aAAa,GAAKC,QAAQ,IAAM;IACrC,MAAMjD,IAAI,GAAGL,YAAY,EAAEuD,IAAI,CAC9B,CAAE;MAAEhB,UAAU,EAAEiB;IAAE,CAAC,KAAMA,CAAC,KAAKF,QAChC,CAAC,EAAEjD,IAAI;IACPyB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,YAAY,CAAE,EAC9B1B,IAAI,GACA,0BAA0BA,IAAM,EAAC,GAClCiD,QAAQ,IAAIG,SAChB,CACD,CAAC;EACF,CAAC;EACD,MAAM7F,aAAa,GAAGA,CAAA,KAAM,CAAC,CAAEmE,KAAK,EAAE5C,UAAU,EAAEoD,UAAU;EAC5D,MAAMmB,eAAe,GAAGA,CAAA,KAAML,aAAa,CAAEI,SAAU,CAAC;;EAExD;EACA,MAAME,kBAAkB,GAAG9E,qBAAqB,CAAElB,QAAS,CAAC;EAC5D,MAAMuB,sBAAsB,GAAG,CAAEvB,QAAQ,EAAEwB,UAAU,EAAEC,cAAc;EACrE,MAAME,SAAS,GAAG4B,wBAAwB,CAAEvD,QAAS,CAAC;EAEtD,MAAM6E,QAAQ,GAAGU,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAEqD,QAAS,CAAC;EACpE,MAAMoB,WAAW,GAAGA,CAAEN,QAAQ,EAAEO,QAAQ,KAAM;IAC7C,MAAMC,WAAW,GAAG,CAAC,CAAED,QAAQ,EAAExD,IAAI,GACjC,wBAAwBwD,QAAQ,EAAExD,IAAM,EAAC,GAC1CiD,QAAQ;IAEXxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,UAAU,CAAE,EAC5B+B,WAAW,IAAIL,SAChB,CACD,CAAC;EACF,CAAC;EACD,MAAM7E,WAAW,GAAGA,CAAA,KAAM,CAAC,CAAEmD,KAAK,EAAE5C,UAAU,EAAEqD,QAAQ;EACxD,MAAMuB,aAAa,GAAGA,CAAA,KAAMH,WAAW,CAAEH,SAAU,CAAC;;EAEpD;EACA,MAAMO,oBAAoB,GAAG/F,uBAAuB,CAAEN,QAAS,CAAC;EAChE,MAAMsG,sBAAsB,GAAGrD,yBAAyB,CAAEjD,QAAS,CAAC;EACpE,MAAM6C,aAAa,GAAG7C,QAAQ,EAAEwB,UAAU,EAAEsB,SAAS;EACrD,MAAMC,cAAc,GAAG/C,QAAQ,EAAEwB,UAAU,EAAEwB,UAAU;EACvD,MAAMF,SAAS,GAAGyC,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAEsB,SAAU,CAAC;EACtE,MAAME,UAAU,GAAGuC,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAEwB,UAAW,CAAC;EACxE,MAAMuD,iBAAiB,GAAGA,CAAE;IAC3BzD,SAAS,EAAE0D,YAAY;IACvBxD,UAAU,EAAEyD;EACb,CAAC,KAAM;IACNtC,QAAQ,CAAE;MACT,GAAGC,KAAK;MACR5C,UAAU,EAAE;QACX,GAAG4C,KAAK,EAAE5C,UAAU;QACpBsB,SAAS,EAAE0D,YAAY,IAAIV,SAAS;QACpC9C,UAAU,EAAEyD,aAAa,IAAIX;MAC9B;IACD,CAAE,CAAC;EACJ,CAAC;EACD,MAAMzF,iBAAiB,GAAGA,CAAA,KACzB,CAAC,CAAE+D,KAAK,EAAE5C,UAAU,EAAEsB,SAAS,IAAI,CAAC,CAAEsB,KAAK,EAAE5C,UAAU,EAAEwB,UAAU;EACpE,MAAM0D,mBAAmB,GAAGA,CAAA,KAAM;IACjCH,iBAAiB,CAAE,CAAC,CAAE,CAAC;EACxB,CAAC;;EAED;EACA,MAAMI,oBAAoB,GAAGvG,uBAAuB,CAAEJ,QAAS,CAAC;EAChE,MAAM4C,UAAU,GAAG2C,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAEoB,UAAW,CAAC;EACxE,MAAMgE,aAAa,GAAKjB,QAAQ,IAAM;IACrCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,YAAY,CAAE,EAC9BuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAM3F,aAAa,GAAGA,CAAA,KAAMiE,KAAK,EAAE5C,UAAU,EAAEoB,UAAU,KAAKkD,SAAS;EACvE,MAAMe,eAAe,GAAGA,CAAA,KAAMD,aAAa,CAAEd,SAAU,CAAC;;EAExD;EACA,MAAMgB,uBAAuB,GAAGtG,0BAA0B,CAAER,QAAS,CAAC;EACtE,MAAMkD,aAAa,GAAGqC,WAAW,CAChCL,cAAc,EAAE1D,UAAU,EAAE0B,aAC7B,CAAC;EACD,MAAM6D,gBAAgB,GAAKpB,QAAQ,IAAM;IACxCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,eAAe,CAAE,EACjCuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAMvF,gBAAgB,GAAGA,CAAA,KAAM,CAAC,CAAE6D,KAAK,EAAE5C,UAAU,EAAE0B,aAAa;EAClE,MAAM8D,kBAAkB,GAAGA,CAAA,KAAMD,gBAAgB,CAAEjB,SAAU,CAAC;;EAE9D;EACA,MAAMmB,qBAAqB,GAAGjG,wBAAwB,CAAEhB,QAAS,CAAC;EAClE,MAAMsD,WAAW,GAAGiC,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAE8B,WAAY,CAAC;EAC1E,MAAM4D,cAAc,GAAKvB,QAAQ,IAAM;IACtCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,aAAa,CAAE,EAC/BuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAM/E,cAAc,GAAGA,CAAA,KAAM,CAAC,CAAEqD,KAAK,EAAE5C,UAAU,EAAE8B,WAAW;EAC9D,MAAM6D,gBAAgB,GAAGA,CAAA,KAAMD,cAAc,CAAEpB,SAAU,CAAC;;EAE1D;EACA,MAAMsB,uBAAuB,GAAG1G,0BAA0B,CAAEV,QAAS,CAAC;EACtE,MAAMmD,aAAa,GAAGoC,WAAW,CAChCL,cAAc,EAAE1D,UAAU,EAAE2B,aAC7B,CAAC;EACD,MAAMkE,gBAAgB,GAAK1B,QAAQ,IAAM;IACxCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,eAAe,CAAE,EACjCuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAMrF,gBAAgB,GAAGA,CAAA,KAAM,CAAC,CAAE2D,KAAK,EAAE5C,UAAU,EAAE2B,aAAa;EAClE,MAAMmE,kBAAkB,GAAGA,CAAA,KAAMD,gBAAgB,CAAEvB,SAAU,CAAC;;EAE9D;EACA,MAAMyB,wBAAwB,GAAG3G,2BAA2B,CAAEZ,QAAS,CAAC;EACxE,MAAMoD,cAAc,GAAGmC,WAAW,CACjCL,cAAc,EAAE1D,UAAU,EAAE4B,cAC7B,CAAC;EACD,MAAMoE,iBAAiB,GAAK7B,QAAQ,IAAM;IACzCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,gBAAgB,CAAE,EAClCuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAMnF,iBAAiB,GAAGA,CAAA,KAAM,CAAC,CAAEyD,KAAK,EAAE5C,UAAU,EAAE4B,cAAc;EACpE,MAAMqE,mBAAmB,GAAGA,CAAA,KAAMD,iBAAiB,CAAE1B,SAAU,CAAC;;EAEhE;EACA,MAAM4B,qBAAqB,GAAG5G,wBAAwB,CAAEd,QAAS,CAAC;EAClE,MAAMqD,WAAW,GAAGkC,WAAW,CAAEL,cAAc,EAAE1D,UAAU,EAAE6B,WAAY,CAAC;EAC1E,MAAMsE,cAAc,GAAKhC,QAAQ,IAAM;IACtCxB,QAAQ,CACPvE,YAAY,CACXwE,KAAK,EACL,CAAE,YAAY,EAAE,aAAa,CAAE,EAC/BuB,QAAQ,IAAIG,SACb,CACD,CAAC;EACF,CAAC;EACD,MAAMjF,cAAc,GAAGA,CAAA,KAAM,CAAC,CAAEuD,KAAK,EAAE5C,UAAU,EAAE6B,WAAW;EAC9D,MAAMuE,gBAAgB,GAAGA,CAAA,KAAMD,cAAc,CAAE7B,SAAU,CAAC;EAE1D,MAAM5B,cAAc,GAAG/E,WAAW,CAAI0I,aAAa,IAAM;IACxD,OAAO;MACN,GAAGA,aAAa;MAChBrG,UAAU,EAAE,CAAC;IACd,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,OACCiD,aAAA,CAACQ,OAAO;IACPf,cAAc,EAAGA,cAAgB;IACjCE,KAAK,EAAGA,KAAO;IACfD,QAAQ,EAAGA,QAAU;IACrBE,OAAO,EAAGA;EAAS,GAEjBoB,oBAAoB,IACrBhB,aAAA,CAACxF,cAAc;IACdyF,KAAK,EAAGxF,EAAE,CAAE,aAAc,CAAG;IAC7B4I,QAAQ,EAAG7H,aAAe;IAC1B8H,UAAU,EAAGhC,eAAiB;IAC9BiC,gBAAgB,EAAG7C,eAAe,CAACP,UAAY;IAC/CP,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAACrF,iBAAiB;IACjBiD,YAAY,EAAGA,YAAc;IAC7B+B,KAAK,EAAGQ,UAAY;IACpBT,QAAQ,EAAGuB,aAAe;IAC1BuC,IAAI,EAAC,kBAAkB;IACvBC,uBAAuB;EAAA,CACvB,CACc,CAChB,EACClC,kBAAkB,IACnBvB,aAAA,CAACxF,cAAc;IACdyF,KAAK,EAAGxF,EAAE,CAAE,WAAY,CAAG;IAC3B4I,QAAQ,EAAG7G,WAAa;IACxB8G,UAAU,EAAG3B,aAAe;IAC5B4B,gBAAgB,EAAG7C,eAAe,CAACN,QAAU;IAC7CR,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAAC9F,cAAc;IACdyF,KAAK,EAAGS,QAAU;IAClBV,QAAQ,EAAG8B,WAAa;IACxBtE,SAAS,EAAGA,SAAW;IACvBJ,sBAAsB,EAAGA,sBAAwB;IACjD4G,SAAS,EAAG,KAAO;IACnBC,UAAU;IACVH,IAAI,EAAC,kBAAkB;IACvBC,uBAAuB;EAAA,CACvB,CACc,CAChB,EACC7B,oBAAoB,IACrB5B,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAG4B,sBAAwB;IAChCwB,QAAQ,EAAGzH,iBAAmB;IAC9B0H,UAAU,EAAGrB,mBAAqB;IAClCsB,gBAAgB,EAAG7C,eAAe,CAACL,cAAgB;IACnDT,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAACpF,qBAAqB;IACrB+E,KAAK,EAAG;MACPtB,SAAS;MACTE;IACD,CAAG;IACHmB,QAAQ,EAAGoC,iBAAmB;IAC9B1D,aAAa,EAAGA,aAAe;IAC/BE,cAAc,EAAGA,cAAgB;IACjCkF,IAAI,EAAC,kBAAkB;IACvBC,uBAAuB;EAAA,CACvB,CACc,CAChB,EACCvB,oBAAoB,IACrBlC,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAGxF,EAAE,CAAE,aAAc,CAAG;IAC7B4I,QAAQ,EAAG3H,aAAe;IAC1B4H,UAAU,EAAGlB,eAAiB;IAC9BmB,gBAAgB,EAAG7C,eAAe,CAACvC,UAAY;IAC/CyB,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAACnF,iBAAiB;IACjB4I,uBAAuB;IACvBI,oBAAoB,EAAC,MAAM;IAC3BlE,KAAK,EAAGxB,UAAY;IACpBuB,QAAQ,EAAGyC,aAAe;IAC1BqB,IAAI,EAAC;EAAkB,CACvB,CACc,CAChB,EACCnB,uBAAuB,IACxBrC,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAGxF,EAAE,CAAE,gBAAiB,CAAG;IAChC4I,QAAQ,EAAGvH,gBAAkB;IAC7BwH,UAAU,EAAGf,kBAAoB;IACjCgB,gBAAgB,EAAG7C,eAAe,CAACjC,aAAe;IAClDmB,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAAClF,oBAAoB;IACpB6E,KAAK,EAAGlB,aAAe;IACvBiB,QAAQ,EAAG4C,gBAAkB;IAC7BkB,IAAI,EAAC,kBAAkB;IACvBK,oBAAoB,EAAC;EAAM,CAC3B,CACc,CAChB,EACCrB,qBAAqB,IACtBxC,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAGxF,EAAE,CAAE,cAAe,CAAG;IAC9B4I,QAAQ,EAAG/G,cAAgB;IAC3BgH,UAAU,EAAGZ,gBAAkB;IAC/Ba,gBAAgB,EAAG7C,eAAe,CAAC7B,WAAa;IAChDe,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAAC5F,aAAa;IACb6F,KAAK,EAAGxF,EAAE,CAAE,cAAe,CAAG;IAC9BqJ,GAAG,EAAGzI,gBAAkB;IACxB0I,GAAG,EAAG3I,gBAAkB;IACxBsE,QAAQ,EAAG+C,cAAgB;IAC3Be,IAAI,EAAC,kBAAkB;IACvBQ,YAAY,EAAC,QAAQ;IACrBrE,KAAK,EAAGd,WAAa;IACrBoF,eAAe,EAAG;EAAG,CACrB,CACc,CAChB,EACCnB,wBAAwB,IACzB9C,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAGxF,EAAE,CAAE,iBAAkB,CAAG;IACjC4I,QAAQ,EAAGnH,iBAAmB;IAC9BoH,UAAU,EAAGN,mBAAqB;IAClCO,gBAAgB,EAAG7C,eAAe,CAAC/B,cAAgB;IACnDiB,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAAChF,qBAAqB;IACrB2E,KAAK,EAAGhB,cAAgB;IACxBe,QAAQ,EAAGqD,iBAAmB;IAC9BS,IAAI,EAAC,kBAAkB;IACvBK,oBAAoB,EAAC;EAAM,CAC3B,CACc,CAChB,EACCZ,qBAAqB,IACtBjD,aAAA,CAACxF,cAAc;IACdoJ,SAAS,EAAC,eAAe;IACzB3D,KAAK,EAAGxF,EAAE,CAAE,kBAAmB,CAAG;IAClC4I,QAAQ,EAAGjH,cAAgB;IAC3BkH,UAAU,EAAGH,gBAAkB;IAC/BI,gBAAgB,EAAG7C,eAAe,CAAC9B,WAAa;IAChDgB,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAAC/E,kBAAkB;IAClB0E,KAAK,EAAGf,WAAa;IACrBc,QAAQ,EAAGwD,cAAgB;IAC3BM,IAAI,EAAC,kBAAkB;IACvBC,uBAAuB;EAAA,CACvB,CACc,CAChB,EACCd,uBAAuB,IACxB3C,aAAA,CAACxF,cAAc;IACdyF,KAAK,EAAGxF,EAAE,CAAE,aAAc,CAAG;IAC7B4I,QAAQ,EAAGrH,gBAAkB;IAC7BsH,UAAU,EAAGT,kBAAoB;IACjCU,gBAAgB,EAAG7C,eAAe,CAAChC,aAAe;IAClDkB,OAAO,EAAGA;EAAS,GAEnBI,aAAA,CAACjF,oBAAoB;IACpB4E,KAAK,EAAGjB,aAAe;IACvBgB,QAAQ,EAAGkD,gBAAkB;IAC7BsB,QAAQ;IACRC,OAAO;IACPX,IAAI,EAAC,kBAAkB;IACvBC,uBAAuB;EAAA,CACvB,CACc,CAET,CAAC;AAEZ"}
1
+ {"version":3,"names":["FontSizePicker","__experimentalNumberControl","NumberControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","useCallback","mergeOrigins","hasMergedOrigins","FontFamilyControl","FontAppearanceControl","LineHeightControl","LetterSpacingControl","TextTransformControl","TextDecorationControl","WritingModeControl","getValueFromVariable","setImmutably","MIN_TEXT_COLUMNS","MAX_TEXT_COLUMNS","useHasTypographyPanel","settings","hasFontFamily","useHasFontFamilyControl","hasLineHeight","useHasLineHeightControl","hasFontAppearance","useHasAppearanceControl","hasLetterSpacing","useHasLetterSpacingControl","hasTextTransform","useHasTextTransformControl","hasTextDecoration","useHasTextDecorationControl","hasWritingMode","useHasWritingModeControl","hasTextColumns","useHasTextColumnsControl","hasFontSize","useHasFontSizeControl","typography","fontSizes","customFontSize","fontFamilies","lineHeight","fontStyle","fontWeight","useAppearanceControlLabel","letterSpacing","textTransform","textDecoration","writingMode","textColumns","getUniqueFontSizesBySlug","mergedFontSizes","uniqueSizes","currentSize","some","slug","push","TypographyToolsPanel","resetAllFilter","onChange","value","panelId","children","resetAll","updatedValue","createElement","label","DEFAULT_CONTROLS","fontFamily","fontSize","fontAppearance","TypographyPanel","as","Wrapper","inheritedValue","defaultControls","decodeValue","rawValue","hasFontFamilyEnabled","mergedFontFamilies","setFontFamily","newValue","find","f","undefined","resetFontFamily","hasFontSizeEnabled","disableCustomFontSizes","setFontSize","metadata","actualValue","resetFontSize","hasAppearanceControl","appearanceControlLabel","hasFontStyles","hasFontWeights","setFontAppearance","newFontStyle","newFontWeight","resetFontAppearance","hasLineHeightEnabled","setLineHeight","resetLineHeight","hasLetterSpacingControl","setLetterSpacing","resetLetterSpacing","hasTextColumnsControl","setTextColumns","resetTextColumns","hasTextTransformControl","setTextTransform","resetTextTransform","hasTextDecorationControl","setTextDecoration","resetTextDecoration","hasWritingModeControl","setWritingMode","resetWritingMode","previousValue","hasValue","onDeselect","isShownByDefault","size","__nextHasNoMarginBottom","withReset","withSlider","className","__unstableInputWidth","max","min","spinControls","initialPosition","showNone","isBlock"],"sources":["@wordpress/block-editor/src/components/global-styles/typography-panel.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFontSizePicker,\n\t__experimentalNumberControl as NumberControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { mergeOrigins, hasMergedOrigins } from '../use-settings';\nimport FontFamilyControl from '../font-family';\nimport FontAppearanceControl from '../font-appearance-control';\nimport LineHeightControl from '../line-height-control';\nimport LetterSpacingControl from '../letter-spacing-control';\nimport TextTransformControl from '../text-transform-control';\nimport TextDecorationControl from '../text-decoration-control';\nimport WritingModeControl from '../writing-mode-control';\nimport { getValueFromVariable } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst MIN_TEXT_COLUMNS = 1;\nconst MAX_TEXT_COLUMNS = 6;\n\nexport function useHasTypographyPanel( settings ) {\n\tconst hasFontFamily = useHasFontFamilyControl( settings );\n\tconst hasLineHeight = useHasLineHeightControl( settings );\n\tconst hasFontAppearance = useHasAppearanceControl( settings );\n\tconst hasLetterSpacing = useHasLetterSpacingControl( settings );\n\tconst hasTextTransform = useHasTextTransformControl( settings );\n\tconst hasTextDecoration = useHasTextDecorationControl( settings );\n\tconst hasWritingMode = useHasWritingModeControl( settings );\n\tconst hasTextColumns = useHasTextColumnsControl( settings );\n\tconst hasFontSize = useHasFontSizeControl( settings );\n\n\treturn (\n\t\thasFontFamily ||\n\t\thasLineHeight ||\n\t\thasFontAppearance ||\n\t\thasLetterSpacing ||\n\t\thasTextTransform ||\n\t\thasFontSize ||\n\t\thasTextDecoration ||\n\t\thasWritingMode ||\n\t\thasTextColumns\n\t);\n}\n\nfunction useHasFontSizeControl( settings ) {\n\treturn (\n\t\thasMergedOrigins( settings?.typography?.fontSizes ) ||\n\t\tsettings?.typography?.customFontSize\n\t);\n}\n\nfunction useHasFontFamilyControl( settings ) {\n\treturn hasMergedOrigins( settings?.typography?.fontFamilies );\n}\n\nfunction useHasLineHeightControl( settings ) {\n\treturn settings?.typography?.lineHeight;\n}\n\nfunction useHasAppearanceControl( settings ) {\n\treturn settings?.typography?.fontStyle || settings?.typography?.fontWeight;\n}\n\nfunction useAppearanceControlLabel( settings ) {\n\tif ( ! settings?.typography?.fontStyle ) {\n\t\treturn __( 'Font weight' );\n\t}\n\tif ( ! settings?.typography?.fontWeight ) {\n\t\treturn __( 'Font style' );\n\t}\n\treturn __( 'Appearance' );\n}\n\nfunction useHasLetterSpacingControl( settings ) {\n\treturn settings?.typography?.letterSpacing;\n}\n\nfunction useHasTextTransformControl( settings ) {\n\treturn settings?.typography?.textTransform;\n}\n\nfunction useHasTextDecorationControl( settings ) {\n\treturn settings?.typography?.textDecoration;\n}\n\nfunction useHasWritingModeControl( settings ) {\n\treturn settings?.typography?.writingMode;\n}\n\nfunction useHasTextColumnsControl( settings ) {\n\treturn settings?.typography?.textColumns;\n}\n\nfunction getUniqueFontSizesBySlug( settings ) {\n\tconst fontSizes = settings?.typography?.fontSizes;\n\tconst mergedFontSizes = fontSizes ? mergeOrigins( fontSizes ) : [];\n\tconst uniqueSizes = [];\n\tfor ( const currentSize of mergedFontSizes ) {\n\t\tif ( ! uniqueSizes.some( ( { slug } ) => slug === currentSize.slug ) ) {\n\t\t\tuniqueSizes.push( currentSize );\n\t\t}\n\t}\n\treturn uniqueSizes;\n}\n\nfunction TypographyToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Typography' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tfontFamily: true,\n\tfontSize: true,\n\tfontAppearance: true,\n\tlineHeight: true,\n\tletterSpacing: true,\n\ttextTransform: true,\n\ttextDecoration: true,\n\twritingMode: true,\n\ttextColumns: true,\n};\n\nexport default function TypographyPanel( {\n\tas: Wrapper = TypographyToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Font Family\n\tconst hasFontFamilyEnabled = useHasFontFamilyControl( settings );\n\tconst fontFamilies = settings?.typography?.fontFamilies;\n\tconst mergedFontFamilies = fontFamilies ? mergeOrigins( fontFamilies ) : [];\n\tconst fontFamily = decodeValue( inheritedValue?.typography?.fontFamily );\n\tconst setFontFamily = ( newValue ) => {\n\t\tconst slug = mergedFontFamilies?.find(\n\t\t\t( { fontFamily: f } ) => f === newValue\n\t\t)?.slug;\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'fontFamily' ],\n\t\t\t\tslug\n\t\t\t\t\t? `var:preset|font-family|${ slug }`\n\t\t\t\t\t: newValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasFontFamily = () => !! value?.typography?.fontFamily;\n\tconst resetFontFamily = () => setFontFamily( undefined );\n\n\t// Font Size\n\tconst hasFontSizeEnabled = useHasFontSizeControl( settings );\n\tconst disableCustomFontSizes = ! settings?.typography?.customFontSize;\n\tconst mergedFontSizes = getUniqueFontSizesBySlug( settings );\n\n\tconst fontSize = decodeValue( inheritedValue?.typography?.fontSize );\n\tconst setFontSize = ( newValue, metadata ) => {\n\t\tconst actualValue = !! metadata?.slug\n\t\t\t? `var:preset|font-size|${ metadata?.slug }`\n\t\t\t: newValue;\n\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'fontSize' ],\n\t\t\t\tactualValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasFontSize = () => !! value?.typography?.fontSize;\n\tconst resetFontSize = () => setFontSize( undefined );\n\n\t// Appearance\n\tconst hasAppearanceControl = useHasAppearanceControl( settings );\n\tconst appearanceControlLabel = useAppearanceControlLabel( settings );\n\tconst hasFontStyles = settings?.typography?.fontStyle;\n\tconst hasFontWeights = settings?.typography?.fontWeight;\n\tconst fontStyle = decodeValue( inheritedValue?.typography?.fontStyle );\n\tconst fontWeight = decodeValue( inheritedValue?.typography?.fontWeight );\n\tconst setFontAppearance = ( {\n\t\tfontStyle: newFontStyle,\n\t\tfontWeight: newFontWeight,\n\t} ) => {\n\t\tonChange( {\n\t\t\t...value,\n\t\t\ttypography: {\n\t\t\t\t...value?.typography,\n\t\t\t\tfontStyle: newFontStyle || undefined,\n\t\t\t\tfontWeight: newFontWeight || undefined,\n\t\t\t},\n\t\t} );\n\t};\n\tconst hasFontAppearance = () =>\n\t\t!! value?.typography?.fontStyle || !! value?.typography?.fontWeight;\n\tconst resetFontAppearance = () => {\n\t\tsetFontAppearance( {} );\n\t};\n\n\t// Line Height\n\tconst hasLineHeightEnabled = useHasLineHeightControl( settings );\n\tconst lineHeight = decodeValue( inheritedValue?.typography?.lineHeight );\n\tconst setLineHeight = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'lineHeight' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLineHeight = () => value?.typography?.lineHeight !== undefined;\n\tconst resetLineHeight = () => setLineHeight( undefined );\n\n\t// Letter Spacing\n\tconst hasLetterSpacingControl = useHasLetterSpacingControl( settings );\n\tconst letterSpacing = decodeValue(\n\t\tinheritedValue?.typography?.letterSpacing\n\t);\n\tconst setLetterSpacing = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'letterSpacing' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLetterSpacing = () => !! value?.typography?.letterSpacing;\n\tconst resetLetterSpacing = () => setLetterSpacing( undefined );\n\n\t// Text Columns\n\tconst hasTextColumnsControl = useHasTextColumnsControl( settings );\n\tconst textColumns = decodeValue( inheritedValue?.typography?.textColumns );\n\tconst setTextColumns = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textColumns' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextColumns = () => !! value?.typography?.textColumns;\n\tconst resetTextColumns = () => setTextColumns( undefined );\n\n\t// Text Transform\n\tconst hasTextTransformControl = useHasTextTransformControl( settings );\n\tconst textTransform = decodeValue(\n\t\tinheritedValue?.typography?.textTransform\n\t);\n\tconst setTextTransform = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textTransform' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextTransform = () => !! value?.typography?.textTransform;\n\tconst resetTextTransform = () => setTextTransform( undefined );\n\n\t// Text Decoration\n\tconst hasTextDecorationControl = useHasTextDecorationControl( settings );\n\tconst textDecoration = decodeValue(\n\t\tinheritedValue?.typography?.textDecoration\n\t);\n\tconst setTextDecoration = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'textDecoration' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasTextDecoration = () => !! value?.typography?.textDecoration;\n\tconst resetTextDecoration = () => setTextDecoration( undefined );\n\n\t// Text Orientation\n\tconst hasWritingModeControl = useHasWritingModeControl( settings );\n\tconst writingMode = decodeValue( inheritedValue?.typography?.writingMode );\n\tconst setWritingMode = ( newValue ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'typography', 'writingMode' ],\n\t\t\t\tnewValue || undefined\n\t\t\t)\n\t\t);\n\t};\n\tconst hasWritingMode = () => !! value?.typography?.writingMode;\n\tconst resetWritingMode = () => setWritingMode( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\ttypography: {},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasFontFamilyEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Font family' ) }\n\t\t\t\t\thasValue={ hasFontFamily }\n\t\t\t\t\tonDeselect={ resetFontFamily }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontFamily }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontFamilyControl\n\t\t\t\t\t\tfontFamilies={ mergedFontFamilies }\n\t\t\t\t\t\tvalue={ fontFamily }\n\t\t\t\t\t\tonChange={ setFontFamily }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasFontSizeEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Font size' ) }\n\t\t\t\t\thasValue={ hasFontSize }\n\t\t\t\t\tonDeselect={ resetFontSize }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontSize }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontSizePicker\n\t\t\t\t\t\tvalue={ fontSize }\n\t\t\t\t\t\tonChange={ setFontSize }\n\t\t\t\t\t\tfontSizes={ mergedFontSizes }\n\t\t\t\t\t\tdisableCustomFontSizes={ disableCustomFontSizes }\n\t\t\t\t\t\twithReset={ false }\n\t\t\t\t\t\twithSlider\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasAppearanceControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ appearanceControlLabel }\n\t\t\t\t\thasValue={ hasFontAppearance }\n\t\t\t\t\tonDeselect={ resetFontAppearance }\n\t\t\t\t\tisShownByDefault={ defaultControls.fontAppearance }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<FontAppearanceControl\n\t\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t\tfontStyle,\n\t\t\t\t\t\t\tfontWeight,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonChange={ setFontAppearance }\n\t\t\t\t\t\thasFontStyles={ hasFontStyles }\n\t\t\t\t\t\thasFontWeights={ hasFontWeights }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasLineHeightEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Line height' ) }\n\t\t\t\t\thasValue={ hasLineHeight }\n\t\t\t\t\tonDeselect={ resetLineHeight }\n\t\t\t\t\tisShownByDefault={ defaultControls.lineHeight }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<LineHeightControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t\tvalue={ lineHeight }\n\t\t\t\t\t\tonChange={ setLineHeight }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasLetterSpacingControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Letter spacing' ) }\n\t\t\t\t\thasValue={ hasLetterSpacing }\n\t\t\t\t\tonDeselect={ resetLetterSpacing }\n\t\t\t\t\tisShownByDefault={ defaultControls.letterSpacing }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<LetterSpacingControl\n\t\t\t\t\t\tvalue={ letterSpacing }\n\t\t\t\t\t\tonChange={ setLetterSpacing }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextColumnsControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text columns' ) }\n\t\t\t\t\thasValue={ hasTextColumns }\n\t\t\t\t\tonDeselect={ resetTextColumns }\n\t\t\t\t\tisShownByDefault={ defaultControls.textColumns }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<NumberControl\n\t\t\t\t\t\tlabel={ __( 'Text columns' ) }\n\t\t\t\t\t\tmax={ MAX_TEXT_COLUMNS }\n\t\t\t\t\t\tmin={ MIN_TEXT_COLUMNS }\n\t\t\t\t\t\tonChange={ setTextColumns }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\tspinControls=\"custom\"\n\t\t\t\t\t\tvalue={ textColumns }\n\t\t\t\t\t\tinitialPosition={ 1 }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextDecorationControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text decoration' ) }\n\t\t\t\t\thasValue={ hasTextDecoration }\n\t\t\t\t\tonDeselect={ resetTextDecoration }\n\t\t\t\t\tisShownByDefault={ defaultControls.textDecoration }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<TextDecorationControl\n\t\t\t\t\t\tvalue={ textDecoration }\n\t\t\t\t\t\tonChange={ setTextDecoration }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__unstableInputWidth=\"auto\"\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasWritingModeControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tclassName=\"single-column\"\n\t\t\t\t\tlabel={ __( 'Text orientation' ) }\n\t\t\t\t\thasValue={ hasWritingMode }\n\t\t\t\t\tonDeselect={ resetWritingMode }\n\t\t\t\t\tisShownByDefault={ defaultControls.writingMode }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<WritingModeControl\n\t\t\t\t\t\tvalue={ writingMode }\n\t\t\t\t\t\tonChange={ setWritingMode }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ hasTextTransformControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Letter case' ) }\n\t\t\t\t\thasValue={ hasTextTransform }\n\t\t\t\t\tonDeselect={ resetTextTransform }\n\t\t\t\t\tisShownByDefault={ defaultControls.textTransform }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<TextTransformControl\n\t\t\t\t\t\tvalue={ textTransform }\n\t\t\t\t\t\tonChange={ setTextTransform }\n\t\t\t\t\t\tshowNone\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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"}