@wordpress/components 28.12.0 → 28.13.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 (442) hide show
  1. package/CHANGELOG.md +45 -1
  2. package/CONTRIBUTING.md +16 -16
  3. package/build/autocomplete/autocompleter-ui.js +1 -0
  4. package/build/autocomplete/autocompleter-ui.js.map +1 -1
  5. package/build/border-box-control/border-box-control/component.js +1 -0
  6. package/build/border-box-control/border-box-control/component.js.map +1 -1
  7. package/build/border-box-control/border-box-control-split-controls/component.js +2 -1
  8. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  9. package/build/border-control/border-control/component.js +2 -1
  10. package/build/border-control/border-control/component.js.map +1 -1
  11. package/build/border-control/border-control/hook.js +3 -1
  12. package/build/border-control/border-control/hook.js.map +1 -1
  13. package/build/border-control/types.js.map +1 -1
  14. package/build/box-control/all-input-control.js +1 -0
  15. package/build/box-control/all-input-control.js.map +1 -1
  16. package/build/box-control/axial-input-controls.js +1 -0
  17. package/build/box-control/axial-input-controls.js.map +1 -1
  18. package/build/box-control/index.js +13 -13
  19. package/build/box-control/index.js.map +1 -1
  20. package/build/box-control/input-controls.js +1 -0
  21. package/build/box-control/input-controls.js.map +1 -1
  22. package/build/box-control/types.js.map +1 -1
  23. package/build/circular-option-picker/circular-option-picker-actions.js +1 -0
  24. package/build/circular-option-picker/circular-option-picker-actions.js.map +1 -1
  25. package/build/circular-option-picker/circular-option-picker-option.js +1 -0
  26. package/build/circular-option-picker/circular-option-picker-option.js.map +1 -1
  27. package/build/color-palette/index.js +2 -0
  28. package/build/color-palette/index.js.map +1 -1
  29. package/build/color-picker/color-copy-button.js +6 -4
  30. package/build/color-picker/color-copy-button.js.map +1 -1
  31. package/build/color-picker/component.js +1 -0
  32. package/build/color-picker/component.js.map +1 -1
  33. package/build/color-picker/styles.js +21 -28
  34. package/build/color-picker/styles.js.map +1 -1
  35. package/build/combobox-control/index.js +17 -12
  36. package/build/combobox-control/index.js.map +1 -1
  37. package/build/composite/hover.js +1 -1
  38. package/build/composite/hover.js.map +1 -1
  39. package/build/composite/typeahead.js +1 -1
  40. package/build/composite/typeahead.js.map +1 -1
  41. package/build/custom-gradient-picker/gradient-bar/control-points.js +2 -0
  42. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  43. package/build/dashicon/types.js.map +1 -1
  44. package/build/dimension-control/index.js +7 -0
  45. package/build/dimension-control/index.js.map +1 -1
  46. package/build/disabled/index.js +8 -1
  47. package/build/disabled/index.js.map +1 -1
  48. package/build/duotone-picker/duotone-picker.js +2 -0
  49. package/build/duotone-picker/duotone-picker.js.map +1 -1
  50. package/build/font-size-picker/font-size-picker-toggle-group.js +1 -0
  51. package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  52. package/build/font-size-picker/index.js +7 -0
  53. package/build/font-size-picker/index.js.map +1 -1
  54. package/build/form-file-upload/index.js +3 -1
  55. package/build/form-file-upload/index.js.map +1 -1
  56. package/build/gradient-picker/index.js +34 -32
  57. package/build/gradient-picker/index.js.map +1 -1
  58. package/build/gradient-picker/types.js.map +1 -1
  59. package/build/icon/index.js +9 -0
  60. package/build/icon/index.js.map +1 -1
  61. package/build/menu/styles.js +16 -16
  62. package/build/menu/styles.js.map +1 -1
  63. package/build/modal/index.js +2 -2
  64. package/build/modal/index.js.map +1 -1
  65. package/build/private-apis.js +0 -2
  66. package/build/private-apis.js.map +1 -1
  67. package/build/range-control/index.js +11 -0
  68. package/build/range-control/index.js.map +1 -1
  69. package/build/range-control/types.js.map +1 -1
  70. package/build/slot-fill/bubbles-virtually/fill.js +14 -31
  71. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  72. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js +13 -4
  73. package/build/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  74. package/build/slot-fill/bubbles-virtually/slot.js +11 -9
  75. package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
  76. package/build/slot-fill/bubbles-virtually/use-slot.js +1 -8
  77. package/build/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
  78. package/build/slot-fill/fill.js +7 -24
  79. package/build/slot-fill/fill.js.map +1 -1
  80. package/build/slot-fill/index.js +5 -10
  81. package/build/slot-fill/index.js.map +1 -1
  82. package/build/slot-fill/provider.js +2 -2
  83. package/build/slot-fill/provider.js.map +1 -1
  84. package/build/slot-fill/slot.js +37 -77
  85. package/build/slot-fill/slot.js.map +1 -1
  86. package/build/slot-fill/types.js.map +1 -1
  87. package/build/text-control/index.js +7 -0
  88. package/build/text-control/index.js.map +1 -1
  89. package/build/toggle-group-control/toggle-group-control/component.js +9 -0
  90. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  91. package/build/toggle-group-control/toggle-group-control-option/component.js +1 -0
  92. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  93. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  94. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  95. package/build/toggle-group-control/types.js.map +1 -1
  96. package/build/utils/deprecated-36px-size.js +3 -2
  97. package/build/utils/deprecated-36px-size.js.map +1 -1
  98. package/build-module/autocomplete/autocompleter-ui.js +1 -0
  99. package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
  100. package/build-module/border-box-control/border-box-control/component.js +1 -0
  101. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  102. package/build-module/border-box-control/border-box-control-split-controls/component.js +2 -1
  103. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
  104. package/build-module/border-control/border-control/component.js +2 -1
  105. package/build-module/border-control/border-control/component.js.map +1 -1
  106. package/build-module/border-control/border-control/hook.js +3 -1
  107. package/build-module/border-control/border-control/hook.js.map +1 -1
  108. package/build-module/border-control/types.js.map +1 -1
  109. package/build-module/box-control/all-input-control.js +1 -0
  110. package/build-module/box-control/all-input-control.js.map +1 -1
  111. package/build-module/box-control/axial-input-controls.js +1 -0
  112. package/build-module/box-control/axial-input-controls.js.map +1 -1
  113. package/build-module/box-control/index.js +13 -13
  114. package/build-module/box-control/index.js.map +1 -1
  115. package/build-module/box-control/input-controls.js +1 -0
  116. package/build-module/box-control/input-controls.js.map +1 -1
  117. package/build-module/box-control/types.js.map +1 -1
  118. package/build-module/circular-option-picker/circular-option-picker-actions.js +1 -0
  119. package/build-module/circular-option-picker/circular-option-picker-actions.js.map +1 -1
  120. package/build-module/circular-option-picker/circular-option-picker-option.js +1 -0
  121. package/build-module/circular-option-picker/circular-option-picker-option.js.map +1 -1
  122. package/build-module/color-palette/index.js +2 -0
  123. package/build-module/color-palette/index.js.map +1 -1
  124. package/build-module/color-picker/color-copy-button.js +6 -4
  125. package/build-module/color-picker/color-copy-button.js.map +1 -1
  126. package/build-module/color-picker/component.js +1 -0
  127. package/build-module/color-picker/component.js.map +1 -1
  128. package/build-module/color-picker/styles.js +20 -27
  129. package/build-module/color-picker/styles.js.map +1 -1
  130. package/build-module/combobox-control/index.js +18 -13
  131. package/build-module/combobox-control/index.js.map +1 -1
  132. package/build-module/composite/hover.js +1 -1
  133. package/build-module/composite/hover.js.map +1 -1
  134. package/build-module/composite/typeahead.js +1 -1
  135. package/build-module/composite/typeahead.js.map +1 -1
  136. package/build-module/custom-gradient-picker/gradient-bar/control-points.js +2 -0
  137. package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  138. package/build-module/dashicon/types.js.map +1 -1
  139. package/build-module/dimension-control/index.js +7 -0
  140. package/build-module/dimension-control/index.js.map +1 -1
  141. package/build-module/disabled/index.js +8 -1
  142. package/build-module/disabled/index.js.map +1 -1
  143. package/build-module/duotone-picker/duotone-picker.js +2 -0
  144. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  145. package/build-module/font-size-picker/font-size-picker-toggle-group.js +1 -0
  146. package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  147. package/build-module/font-size-picker/index.js +7 -0
  148. package/build-module/font-size-picker/index.js.map +1 -1
  149. package/build-module/form-file-upload/index.js +3 -1
  150. package/build-module/form-file-upload/index.js.map +1 -1
  151. package/build-module/gradient-picker/index.js +34 -32
  152. package/build-module/gradient-picker/index.js.map +1 -1
  153. package/build-module/gradient-picker/types.js.map +1 -1
  154. package/build-module/icon/index.js +9 -0
  155. package/build-module/icon/index.js.map +1 -1
  156. package/build-module/menu/styles.js +16 -16
  157. package/build-module/menu/styles.js.map +1 -1
  158. package/build-module/modal/index.js +2 -2
  159. package/build-module/modal/index.js.map +1 -1
  160. package/build-module/private-apis.js +0 -2
  161. package/build-module/private-apis.js.map +1 -1
  162. package/build-module/range-control/index.js +11 -0
  163. package/build-module/range-control/index.js.map +1 -1
  164. package/build-module/range-control/types.js.map +1 -1
  165. package/build-module/slot-fill/bubbles-virtually/fill.js +15 -32
  166. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  167. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js +13 -4
  168. package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
  169. package/build-module/slot-fill/bubbles-virtually/slot.js +11 -9
  170. package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
  171. package/build-module/slot-fill/bubbles-virtually/use-slot.js +2 -9
  172. package/build-module/slot-fill/bubbles-virtually/use-slot.js.map +1 -1
  173. package/build-module/slot-fill/fill.js +7 -24
  174. package/build-module/slot-fill/fill.js.map +1 -1
  175. package/build-module/slot-fill/index.js +5 -8
  176. package/build-module/slot-fill/index.js.map +1 -1
  177. package/build-module/slot-fill/provider.js +2 -3
  178. package/build-module/slot-fill/provider.js.map +1 -1
  179. package/build-module/slot-fill/slot.js +38 -78
  180. package/build-module/slot-fill/slot.js.map +1 -1
  181. package/build-module/slot-fill/types.js.map +1 -1
  182. package/build-module/text-control/index.js +7 -0
  183. package/build-module/text-control/index.js.map +1 -1
  184. package/build-module/toggle-group-control/toggle-group-control/component.js +9 -0
  185. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  186. package/build-module/toggle-group-control/toggle-group-control-option/component.js +1 -0
  187. package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  188. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +1 -1
  189. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  190. package/build-module/toggle-group-control/types.js.map +1 -1
  191. package/build-module/utils/deprecated-36px-size.js +3 -2
  192. package/build-module/utils/deprecated-36px-size.js.map +1 -1
  193. package/build-style/style-rtl.css +3 -10
  194. package/build-style/style.css +3 -10
  195. package/build-types/autocomplete/autocompleter-ui.d.ts.map +1 -1
  196. package/build-types/base-control/stories/index.story.d.ts.map +1 -1
  197. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  198. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  199. package/build-types/border-control/border-control/component.d.ts +1 -0
  200. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  201. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  202. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  203. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  204. package/build-types/border-control/stories/index.story.d.ts +10 -5
  205. package/build-types/border-control/stories/index.story.d.ts.map +1 -1
  206. package/build-types/border-control/types.d.ts +7 -0
  207. package/build-types/border-control/types.d.ts.map +1 -1
  208. package/build-types/box-control/all-input-control.d.ts.map +1 -1
  209. package/build-types/box-control/axial-input-controls.d.ts.map +1 -1
  210. package/build-types/box-control/index.d.ts +13 -13
  211. package/build-types/box-control/input-controls.d.ts.map +1 -1
  212. package/build-types/box-control/styles/box-control-styles.d.ts +2 -1
  213. package/build-types/box-control/styles/box-control-styles.d.ts.map +1 -1
  214. package/build-types/box-control/types.d.ts +2 -0
  215. package/build-types/box-control/types.d.ts.map +1 -1
  216. package/build-types/checkbox-control/stories/index.story.d.ts.map +1 -1
  217. package/build-types/circular-option-picker/circular-option-picker-actions.d.ts.map +1 -1
  218. package/build-types/circular-option-picker/circular-option-picker-option.d.ts.map +1 -1
  219. package/build-types/circular-option-picker/stories/index.story.d.ts.map +1 -1
  220. package/build-types/color-indicator/stories/index.story.d.ts.map +1 -1
  221. package/build-types/color-palette/index.d.ts.map +1 -1
  222. package/build-types/color-palette/stories/index.story.d.ts.map +1 -1
  223. package/build-types/color-picker/color-copy-button.d.ts.map +1 -1
  224. package/build-types/color-picker/component.d.ts.map +1 -1
  225. package/build-types/color-picker/stories/index.story.d.ts.map +1 -1
  226. package/build-types/color-picker/styles.d.ts +2 -4
  227. package/build-types/color-picker/styles.d.ts.map +1 -1
  228. package/build-types/combobox-control/index.d.ts +1 -0
  229. package/build-types/combobox-control/index.d.ts.map +1 -1
  230. package/build-types/combobox-control/stories/index.story.d.ts.map +1 -1
  231. package/build-types/composite/typeahead.d.ts.map +1 -1
  232. package/build-types/custom-gradient-picker/gradient-bar/control-points.d.ts.map +1 -1
  233. package/build-types/custom-gradient-picker/stories/index.story.d.ts.map +1 -1
  234. package/build-types/custom-select-control/stories/index.story.d.ts.map +1 -1
  235. package/build-types/custom-select-control-v2/stories/index.story.d.ts.map +1 -1
  236. package/build-types/dashicon/types.d.ts +1 -1
  237. package/build-types/dashicon/types.d.ts.map +1 -1
  238. package/build-types/date-time/stories/date-time.story.d.ts.map +1 -1
  239. package/build-types/date-time/stories/date.story.d.ts.map +1 -1
  240. package/build-types/date-time/stories/time.story.d.ts.map +1 -1
  241. package/build-types/dimension-control/index.d.ts +1 -0
  242. package/build-types/dimension-control/index.d.ts.map +1 -1
  243. package/build-types/disabled/index.d.ts +8 -1
  244. package/build-types/disabled/index.d.ts.map +1 -1
  245. package/build-types/disabled/stories/index.story.d.ts.map +1 -1
  246. package/build-types/drop-zone/stories/index.story.d.ts.map +1 -1
  247. package/build-types/dropdown-menu/stories/index.story.d.ts.map +1 -1
  248. package/build-types/duotone-picker/duotone-picker.d.ts.map +1 -1
  249. package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
  250. package/build-types/font-size-picker/index.d.ts.map +1 -1
  251. package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
  252. package/build-types/form-file-upload/index.d.ts.map +1 -1
  253. package/build-types/form-file-upload/stories/index.story.d.ts.map +1 -1
  254. package/build-types/form-token-field/stories/index.story.d.ts.map +1 -1
  255. package/build-types/gradient-picker/index.d.ts +32 -32
  256. package/build-types/gradient-picker/index.d.ts.map +1 -1
  257. package/build-types/gradient-picker/stories/index.story.d.ts.map +1 -1
  258. package/build-types/gradient-picker/types.d.ts +1 -5
  259. package/build-types/gradient-picker/types.d.ts.map +1 -1
  260. package/build-types/h-stack/stories/index.story.d.ts.map +1 -1
  261. package/build-types/icon/index.d.ts +23 -7
  262. package/build-types/icon/index.d.ts.map +1 -1
  263. package/build-types/icon/stories/index.story.d.ts +7 -1
  264. package/build-types/icon/stories/index.story.d.ts.map +1 -1
  265. package/build-types/input-control/stories/index.story.d.ts.map +1 -1
  266. package/build-types/menu-group/stories/index.story.d.ts.map +1 -1
  267. package/build-types/menu-item/stories/index.story.d.ts.map +1 -1
  268. package/build-types/menu-items-choice/stories/index.story.d.ts.map +1 -1
  269. package/build-types/number-control/stories/index.story.d.ts.map +1 -1
  270. package/build-types/placeholder/stories/index.story.d.ts.map +1 -1
  271. package/build-types/private-apis.d.ts.map +1 -1
  272. package/build-types/radio-control/stories/index.story.d.ts.map +1 -1
  273. package/build-types/range-control/index.d.ts +3 -1
  274. package/build-types/range-control/index.d.ts.map +1 -1
  275. package/build-types/range-control/stories/index.story.d.ts.map +1 -1
  276. package/build-types/range-control/types.d.ts +7 -0
  277. package/build-types/range-control/types.d.ts.map +1 -1
  278. package/build-types/responsive-wrapper/stories/index.story.d.ts.map +1 -1
  279. package/build-types/search-control/stories/index.story.d.ts.map +1 -1
  280. package/build-types/select-control/stories/index.story.d.ts.map +1 -1
  281. package/build-types/slot-fill/bubbles-virtually/fill.d.ts +1 -1
  282. package/build-types/slot-fill/bubbles-virtually/fill.d.ts.map +1 -1
  283. package/build-types/slot-fill/bubbles-virtually/slot-fill-provider.d.ts.map +1 -1
  284. package/build-types/slot-fill/bubbles-virtually/slot.d.ts.map +1 -1
  285. package/build-types/slot-fill/bubbles-virtually/use-slot-fills.d.ts +1 -1
  286. package/build-types/slot-fill/bubbles-virtually/use-slot-fills.d.ts.map +1 -1
  287. package/build-types/slot-fill/bubbles-virtually/use-slot.d.ts +3 -7
  288. package/build-types/slot-fill/bubbles-virtually/use-slot.d.ts.map +1 -1
  289. package/build-types/slot-fill/fill.d.ts.map +1 -1
  290. package/build-types/slot-fill/index.d.ts +5 -12
  291. package/build-types/slot-fill/index.d.ts.map +1 -1
  292. package/build-types/slot-fill/provider.d.ts.map +1 -1
  293. package/build-types/slot-fill/slot.d.ts +1 -1
  294. package/build-types/slot-fill/slot.d.ts.map +1 -1
  295. package/build-types/slot-fill/types.d.ts +15 -18
  296. package/build-types/slot-fill/types.d.ts.map +1 -1
  297. package/build-types/slot-fill/use-slot.d.ts +1 -1
  298. package/build-types/slot-fill/use-slot.d.ts.map +1 -1
  299. package/build-types/text-control/index.d.ts +1 -0
  300. package/build-types/text-control/index.d.ts.map +1 -1
  301. package/build-types/text-control/stories/index.story.d.ts.map +1 -1
  302. package/build-types/textarea-control/stories/index.story.d.ts.map +1 -1
  303. package/build-types/toggle-control/stories/index.story.d.ts.map +1 -1
  304. package/build-types/toggle-group-control/stories/index.story.d.ts.map +1 -1
  305. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +2 -0
  306. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  307. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +1 -0
  308. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  309. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
  310. package/build-types/toggle-group-control/types.d.ts +7 -0
  311. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  312. package/build-types/tools-panel/stories/index.story.d.ts.map +1 -1
  313. package/build-types/tree-select/stories/index.story.d.ts.map +1 -1
  314. package/build-types/unit-control/stories/index.story.d.ts.map +1 -1
  315. package/build-types/utils/deprecated-36px-size.d.ts +2 -1
  316. package/build-types/utils/deprecated-36px-size.d.ts.map +1 -1
  317. package/build-types/v-stack/stories/index.story.d.ts.map +1 -1
  318. package/package.json +2 -2
  319. package/src/autocomplete/autocompleter-ui.tsx +1 -0
  320. package/src/base-control/stories/index.story.tsx +2 -1
  321. package/src/border-box-control/border-box-control/component.tsx +1 -0
  322. package/src/border-box-control/border-box-control-split-controls/component.tsx +1 -0
  323. package/src/border-control/border-control/component.tsx +1 -0
  324. package/src/border-control/border-control/hook.ts +2 -0
  325. package/src/border-control/types.ts +7 -0
  326. package/src/box-control/README.md +79 -60
  327. package/src/box-control/all-input-control.tsx +1 -0
  328. package/src/box-control/axial-input-controls.tsx +1 -0
  329. package/src/box-control/docs-manifest.json +5 -0
  330. package/src/box-control/index.tsx +13 -13
  331. package/src/box-control/input-controls.tsx +1 -0
  332. package/src/box-control/types.ts +2 -0
  333. package/src/checkbox-control/stories/index.story.tsx +2 -1
  334. package/src/circular-option-picker/circular-option-picker-actions.tsx +1 -0
  335. package/src/circular-option-picker/circular-option-picker-option.tsx +1 -0
  336. package/src/circular-option-picker/stories/index.story.tsx +2 -1
  337. package/src/circular-option-picker/style.scss +2 -2
  338. package/src/color-indicator/stories/index.story.tsx +2 -1
  339. package/src/color-palette/index.tsx +5 -1
  340. package/src/color-palette/stories/index.story.tsx +2 -1
  341. package/src/color-picker/color-copy-button.tsx +8 -10
  342. package/src/color-picker/component.tsx +1 -0
  343. package/src/color-picker/stories/index.story.tsx +2 -1
  344. package/src/color-picker/styles.ts +0 -13
  345. package/src/combobox-control/README.md +1 -0
  346. package/src/combobox-control/index.tsx +19 -13
  347. package/src/combobox-control/stories/index.story.tsx +3 -1
  348. package/src/combobox-control/style.scss +0 -6
  349. package/src/combobox-control/test/index.tsx +7 -1
  350. package/src/composite/hover.tsx +1 -1
  351. package/src/composite/typeahead.tsx +3 -1
  352. package/src/custom-gradient-picker/gradient-bar/control-points.tsx +2 -0
  353. package/src/custom-gradient-picker/stories/index.story.tsx +2 -1
  354. package/src/custom-gradient-picker/style.scss +1 -1
  355. package/src/custom-select-control/stories/index.story.tsx +2 -1
  356. package/src/custom-select-control-v2/stories/index.story.tsx +2 -1
  357. package/src/dashicon/types.ts +0 -2
  358. package/src/date-time/stories/date-time.story.tsx +2 -1
  359. package/src/date-time/stories/date.story.tsx +2 -1
  360. package/src/date-time/stories/time.story.tsx +2 -1
  361. package/src/dimension-control/README.md +1 -0
  362. package/src/dimension-control/index.tsx +8 -0
  363. package/src/dimension-control/stories/index.story.tsx +1 -0
  364. package/src/dimension-control/test/__snapshots__/index.test.js.snap +24 -24
  365. package/src/dimension-control/test/index.test.js +7 -1
  366. package/src/disabled/README.md +9 -7
  367. package/src/disabled/index.tsx +8 -1
  368. package/src/disabled/stories/index.story.tsx +1 -0
  369. package/src/drop-zone/stories/index.story.tsx +2 -1
  370. package/src/dropdown-menu/stories/index.story.tsx +2 -1
  371. package/src/duotone-picker/duotone-picker.tsx +2 -0
  372. package/src/font-size-picker/README.md +1 -0
  373. package/src/font-size-picker/font-size-picker-toggle-group.tsx +1 -0
  374. package/src/font-size-picker/index.tsx +8 -0
  375. package/src/font-size-picker/stories/index.story.tsx +1 -0
  376. package/src/font-size-picker/test/index.tsx +5 -1
  377. package/src/form-file-upload/index.tsx +9 -3
  378. package/src/form-file-upload/stories/index.story.tsx +2 -1
  379. package/src/form-token-field/stories/index.story.tsx +2 -1
  380. package/src/gradient-picker/README.md +107 -69
  381. package/src/gradient-picker/docs-manifest.json +5 -0
  382. package/src/gradient-picker/index.tsx +34 -32
  383. package/src/gradient-picker/stories/index.story.tsx +2 -1
  384. package/src/gradient-picker/types.ts +3 -5
  385. package/src/h-stack/stories/index.story.tsx +2 -1
  386. package/src/higher-order/with-constrained-tabbing/README.md +13 -3
  387. package/src/higher-order/with-focus-return/README.md +9 -2
  388. package/src/icon/README.md +22 -65
  389. package/src/icon/docs-manifest.json +5 -0
  390. package/src/icon/index.tsx +28 -13
  391. package/src/icon/stories/index.story.tsx +50 -8
  392. package/src/input-control/stories/index.story.tsx +2 -1
  393. package/src/menu/styles.ts +1 -1
  394. package/src/menu-group/stories/index.story.tsx +2 -1
  395. package/src/menu-item/stories/index.story.tsx +2 -1
  396. package/src/menu-items-choice/stories/index.story.tsx +2 -1
  397. package/src/modal/index.tsx +2 -2
  398. package/src/modal/stories/index.story.tsx +1 -1
  399. package/src/number-control/stories/index.story.tsx +2 -1
  400. package/src/placeholder/stories/index.story.tsx +1 -0
  401. package/src/private-apis.ts +0 -2
  402. package/src/radio-control/stories/index.story.tsx +2 -1
  403. package/src/range-control/README.md +4 -3
  404. package/src/range-control/index.tsx +11 -0
  405. package/src/range-control/stories/index.story.tsx +9 -1
  406. package/src/range-control/test/index.tsx +7 -1
  407. package/src/range-control/types.ts +7 -0
  408. package/src/responsive-wrapper/stories/index.story.tsx +2 -1
  409. package/src/search-control/stories/index.story.tsx +2 -1
  410. package/src/select-control/stories/index.story.tsx +2 -1
  411. package/src/slot-fill/README.md +26 -15
  412. package/src/slot-fill/bubbles-virtually/fill.tsx +18 -28
  413. package/src/slot-fill/bubbles-virtually/slot-fill-provider.tsx +26 -16
  414. package/src/slot-fill/bubbles-virtually/slot.tsx +13 -9
  415. package/src/slot-fill/bubbles-virtually/use-slot.ts +3 -26
  416. package/src/slot-fill/fill.ts +7 -22
  417. package/src/slot-fill/index.tsx +5 -7
  418. package/src/slot-fill/provider.tsx +8 -17
  419. package/src/slot-fill/slot.tsx +48 -85
  420. package/src/slot-fill/types.ts +14 -51
  421. package/src/text-control/README.md +1 -0
  422. package/src/text-control/index.tsx +8 -0
  423. package/src/text-control/stories/index.story.tsx +3 -1
  424. package/src/text-control/test/text-control.tsx +7 -1
  425. package/src/textarea-control/stories/index.story.tsx +2 -1
  426. package/src/toggle-control/stories/index.story.tsx +2 -1
  427. package/src/toggle-group-control/stories/index.story.tsx +3 -1
  428. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +12 -12
  429. package/src/toggle-group-control/test/index.tsx +7 -1
  430. package/src/toggle-group-control/toggle-group-control/README.md +2 -1
  431. package/src/toggle-group-control/toggle-group-control/component.tsx +10 -0
  432. package/src/toggle-group-control/toggle-group-control-option/README.md +1 -1
  433. package/src/toggle-group-control/toggle-group-control-option/component.tsx +1 -0
  434. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
  435. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +1 -1
  436. package/src/toggle-group-control/types.ts +7 -0
  437. package/src/tools-panel/stories/index.story.tsx +3 -0
  438. package/src/tree-select/stories/index.story.tsx +2 -1
  439. package/src/unit-control/stories/index.story.tsx +2 -1
  440. package/src/utils/deprecated-36px-size.ts +3 -0
  441. package/src/v-stack/stories/index.story.tsx +2 -1
  442. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_colord","_compose","_element","_i18n","_icons","_button","_hStack","_colorPicker","_visuallyHidden","_colorPalette","_utils","_constants","_dropdownContentWrapper","_jsxRuntime","ControlPointButton","isOpen","position","color","additionalProps","instanceId","useInstanceId","descriptionId","jsxs","Fragment","children","jsx","default","sprintf","__","className","clsx","VisuallyHidden","id","GradientColorPickerDropdown","isRenderedInSidebar","props","popoverProps","useMemo","placement","offset","resize","mergedClassName","CustomColorPickerDropdown","ControlPoints","disableRemove","disableAlpha","gradientPickerDomRef","ignoreMarkerPosition","value","controlPoints","onChange","onStartControlPointChange","onStopControlPointChange","__experimentalIsRenderedInSidebar","controlPointMoveStateRef","useRef","onMouseMove","event","current","undefined","relativePosition","getHorizontalRelativeGradientPosition","clientX","initialPosition","index","significantMoveHappened","Math","abs","MINIMUM_SIGNIFICANT_MOVE","updateControlPointPosition","cleanEventListeners","window","removeEventListener","listenersActivated","cleanEventListenersRef","useEffect","map","point","onClose","renderToggle","onToggle","onClick","onMouseDown","addEventListener","onKeyDown","code","stopPropagation","clampPercent","KEYBOARD_CONTROL_POINT_VARIATION","renderContent","paddingSize","ColorPicker","enableAlpha","updateControlPointColor","colord","toRgbString","length","HStack","alignment","removeControlPoint","variant","style","left","transform","InsertPoint","onOpenInserter","onCloseInserter","insertPosition","alreadyInsertedPoint","setAlreadyInsertedPoint","useState","icon","plus","addControlPoint","updateControlPointColorByPosition","_default","exports"],"sources":["@wordpress/components/src/custom-gradient-picker/gradient-bar/control-points.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport { colord } from 'colord';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useRef, useState, useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Button from '../../button';\nimport { HStack } from '../../h-stack';\nimport { ColorPicker } from '../../color-picker';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport { CustomColorPickerDropdown } from '../../color-palette';\n\nimport {\n\taddControlPoint,\n\tclampPercent,\n\tremoveControlPoint,\n\tupdateControlPointColor,\n\tupdateControlPointColorByPosition,\n\tupdateControlPointPosition,\n\tgetHorizontalRelativeGradientPosition,\n} from './utils';\nimport {\n\tMINIMUM_SIGNIFICANT_MOVE,\n\tKEYBOARD_CONTROL_POINT_VARIATION,\n} from './constants';\nimport type { WordPressComponentProps } from '../../context';\nimport type {\n\tControlPointButtonProps,\n\tControlPointMoveState,\n\tControlPointsProps,\n\tInsertPointProps,\n} from '../types';\nimport type { CustomColorPickerDropdownProps } from '../../color-palette/types';\nimport DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';\n\nfunction ControlPointButton( {\n\tisOpen,\n\tposition,\n\tcolor,\n\t...additionalProps\n}: WordPressComponentProps< ControlPointButtonProps, 'button', true > ) {\n\tconst instanceId = useInstanceId( ControlPointButton );\n\tconst descriptionId = `components-custom-gradient-picker__control-point-button-description-${ instanceId }`;\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t// translators: 1: gradient position e.g: 70. 2: gradient color code e.g: rgb(52,121,151).\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Gradient control point at position %1$s%% with color code %2$s.'\n\t\t\t\t\t),\n\t\t\t\t\tposition,\n\t\t\t\t\tcolor\n\t\t\t\t) }\n\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\taria-haspopup=\"true\"\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'components-custom-gradient-picker__control-point-button',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-active': isOpen,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\t{ ...additionalProps }\n\t\t\t/>\n\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t{ __(\n\t\t\t\t\t'Use your left or right arrow keys or drag and drop with the mouse to change the gradient position. Press the button to change the color or remove the control point.'\n\t\t\t\t) }\n\t\t\t</VisuallyHidden>\n\t\t</>\n\t);\n}\n\nfunction GradientColorPickerDropdown( {\n\tisRenderedInSidebar,\n\tclassName,\n\t...props\n}: CustomColorPickerDropdownProps ) {\n\t// Open the popover below the gradient control/insertion point\n\tconst popoverProps = useMemo(\n\t\t() =>\n\t\t\t( {\n\t\t\t\tplacement: 'bottom',\n\t\t\t\toffset: 8,\n\t\t\t\t// Disabling resize as it would otherwise cause the popover to show\n\t\t\t\t// scrollbars while dragging the color picker's handle close to the\n\t\t\t\t// popover edge.\n\t\t\t\tresize: false,\n\t\t\t} ) as const,\n\t\t[]\n\t);\n\n\tconst mergedClassName = clsx(\n\t\t'components-custom-gradient-picker__control-point-dropdown',\n\t\tclassName\n\t);\n\n\treturn (\n\t\t<CustomColorPickerDropdown\n\t\t\tisRenderedInSidebar={ isRenderedInSidebar }\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName={ mergedClassName }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction ControlPoints( {\n\tdisableRemove,\n\tdisableAlpha,\n\tgradientPickerDomRef,\n\tignoreMarkerPosition,\n\tvalue: controlPoints,\n\tonChange,\n\tonStartControlPointChange,\n\tonStopControlPointChange,\n\t__experimentalIsRenderedInSidebar,\n}: ControlPointsProps ) {\n\tconst controlPointMoveStateRef = useRef< ControlPointMoveState >();\n\n\tconst onMouseMove = ( event: MouseEvent ) => {\n\t\tif (\n\t\t\tcontrolPointMoveStateRef.current === undefined ||\n\t\t\tgradientPickerDomRef.current === null\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst relativePosition = getHorizontalRelativeGradientPosition(\n\t\t\tevent.clientX,\n\t\t\tgradientPickerDomRef.current\n\t\t);\n\n\t\tconst { initialPosition, index, significantMoveHappened } =\n\t\t\tcontrolPointMoveStateRef.current;\n\n\t\tif (\n\t\t\t! significantMoveHappened &&\n\t\t\tMath.abs( initialPosition - relativePosition ) >=\n\t\t\t\tMINIMUM_SIGNIFICANT_MOVE\n\t\t) {\n\t\t\tcontrolPointMoveStateRef.current.significantMoveHappened = true;\n\t\t}\n\n\t\tonChange(\n\t\t\tupdateControlPointPosition( controlPoints, index, relativePosition )\n\t\t);\n\t};\n\n\tconst cleanEventListeners = () => {\n\t\tif (\n\t\t\twindow &&\n\t\t\twindow.removeEventListener &&\n\t\t\tcontrolPointMoveStateRef.current &&\n\t\t\tcontrolPointMoveStateRef.current.listenersActivated\n\t\t) {\n\t\t\twindow.removeEventListener( 'mousemove', onMouseMove );\n\t\t\twindow.removeEventListener( 'mouseup', cleanEventListeners );\n\t\t\tonStopControlPointChange();\n\t\t\tcontrolPointMoveStateRef.current.listenersActivated = false;\n\t\t}\n\t};\n\n\t// Adding `cleanEventListeners` to the dependency array below requires the function itself to be wrapped in a `useCallback`\n\t// This memoization would prevent the event listeners from being properly cleaned.\n\t// Instead, we'll pass a ref to the function in our `useEffect` so `cleanEventListeners` itself is no longer a dependency.\n\tconst cleanEventListenersRef = useRef< () => void >();\n\tcleanEventListenersRef.current = cleanEventListeners;\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tcleanEventListenersRef.current?.();\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t{ controlPoints.map( ( point, index ) => {\n\t\t\t\tconst initialPosition = point?.position;\n\t\t\t\treturn (\n\t\t\t\t\tignoreMarkerPosition !== initialPosition && (\n\t\t\t\t\t\t<GradientColorPickerDropdown\n\t\t\t\t\t\t\tisRenderedInSidebar={\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tonClose={ onStopControlPointChange }\n\t\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t\t<ControlPointButton\n\t\t\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current &&\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current\n\t\t\t\t\t\t\t\t\t\t\t\t.significantMoveHappened\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t\t\t\t\t\t\tonStopControlPointChange();\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tonStartControlPointChange();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonMouseDown={ () => {\n\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\twindow &&\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current = {\n\t\t\t\t\t\t\t\t\t\t\t\tinitialPosition,\n\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\tsignificantMoveHappened: false,\n\t\t\t\t\t\t\t\t\t\t\t\tlistenersActivated: true,\n\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\tonStartControlPointChange();\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener(\n\t\t\t\t\t\t\t\t\t\t\t\t'mousemove',\n\t\t\t\t\t\t\t\t\t\t\t\tonMouseMove\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener(\n\t\t\t\t\t\t\t\t\t\t\t\t'mouseup',\n\t\t\t\t\t\t\t\t\t\t\t\tcleanEventListeners\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\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tif ( event.code === 'ArrowLeft' ) {\n\t\t\t\t\t\t\t\t\t\t\t// Stop propagation of the key press event to avoid focus moving\n\t\t\t\t\t\t\t\t\t\t\t// to another editor area.\n\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointPosition(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclampPercent(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpoint.position -\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tKEYBOARD_CONTROL_POINT_VARIATION\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);\n\t\t\t\t\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\t\t\t\t\tevent.code === 'ArrowRight'\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t// Stop propagation of the key press event to avoid focus moving\n\t\t\t\t\t\t\t\t\t\t\t// to another editor area.\n\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointPosition(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclampPercent(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpoint.position +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tKEYBOARD_CONTROL_POINT_VARIATION\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);\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\tisOpen={ isOpen }\n\t\t\t\t\t\t\t\t\tposition={ point.position }\n\t\t\t\t\t\t\t\t\tcolor={ point.color }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\t\tenableAlpha={ ! disableAlpha }\n\t\t\t\t\t\t\t\t\t\tcolor={ point.color }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( color ) => {\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointColor(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolord(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor\n\t\t\t\t\t\t\t\t\t\t\t\t\t).toRgbString()\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\t{ ! disableRemove &&\n\t\t\t\t\t\t\t\t\t\tcontrolPoints.length > 2 && (\n\t\t\t\t\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-custom-gradient-picker__remove-control-point-wrapper\"\n\t\t\t\t\t\t\t\t\t\t\t\talignment=\"center\"\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<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tremoveControlPoint(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tindex\n\t\t\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\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClose();\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\tvariant=\"link\"\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\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'Remove Control Point'\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</Button>\n\t\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tleft: `${ point.position }%`,\n\t\t\t\t\t\t\t\ttransform: 'translateX( -50% )',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</>\n\t);\n}\n\nfunction InsertPoint( {\n\tvalue: controlPoints,\n\tonChange,\n\tonOpenInserter,\n\tonCloseInserter,\n\tinsertPosition,\n\tdisableAlpha,\n\t__experimentalIsRenderedInSidebar,\n}: InsertPointProps ) {\n\tconst [ alreadyInsertedPoint, setAlreadyInsertedPoint ] = useState( false );\n\treturn (\n\t\t<GradientColorPickerDropdown\n\t\t\tisRenderedInSidebar={ __experimentalIsRenderedInSidebar }\n\t\t\tclassName=\"components-custom-gradient-picker__inserter\"\n\t\t\tonClose={ () => {\n\t\t\t\tonCloseInserter();\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<Button\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t\t\tonCloseInserter();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetAlreadyInsertedPoint( false );\n\t\t\t\t\t\t\tonOpenInserter();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t} }\n\t\t\t\t\tclassName=\"components-custom-gradient-picker__insert-point-dropdown\"\n\t\t\t\t\ticon={ plus }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tenableAlpha={ ! disableAlpha }\n\t\t\t\t\t\tonChange={ ( color ) => {\n\t\t\t\t\t\t\tif ( ! alreadyInsertedPoint ) {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\taddControlPoint(\n\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\tinsertPosition,\n\t\t\t\t\t\t\t\t\t\tcolord( color ).toRgbString()\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\tsetAlreadyInsertedPoint( true );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\tupdateControlPointColorByPosition(\n\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\tinsertPosition,\n\t\t\t\t\t\t\t\t\t\tcolord( color ).toRgbString()\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t\tstyle={\n\t\t\t\tinsertPosition !== null\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tleft: `${ insertPosition }%`,\n\t\t\t\t\t\t\ttransform: 'translateX( -50% )',\n\t\t\t\t\t }\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t/>\n\t);\n}\nControlPoints.InsertPoint = InsertPoint;\n\nexport default ControlPoints;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_colord","_compose","_element","_i18n","_icons","_button","_hStack","_colorPicker","_visuallyHidden","_colorPalette","_utils","_constants","_dropdownContentWrapper","_jsxRuntime","ControlPointButton","isOpen","position","color","additionalProps","instanceId","useInstanceId","descriptionId","jsxs","Fragment","children","jsx","default","sprintf","__","__next40pxDefaultSize","className","clsx","VisuallyHidden","id","GradientColorPickerDropdown","isRenderedInSidebar","props","popoverProps","useMemo","placement","offset","resize","mergedClassName","CustomColorPickerDropdown","ControlPoints","disableRemove","disableAlpha","gradientPickerDomRef","ignoreMarkerPosition","value","controlPoints","onChange","onStartControlPointChange","onStopControlPointChange","__experimentalIsRenderedInSidebar","controlPointMoveStateRef","useRef","onMouseMove","event","current","undefined","relativePosition","getHorizontalRelativeGradientPosition","clientX","initialPosition","index","significantMoveHappened","Math","abs","MINIMUM_SIGNIFICANT_MOVE","updateControlPointPosition","cleanEventListeners","window","removeEventListener","listenersActivated","cleanEventListenersRef","useEffect","map","point","onClose","renderToggle","onToggle","onClick","onMouseDown","addEventListener","onKeyDown","code","stopPropagation","clampPercent","KEYBOARD_CONTROL_POINT_VARIATION","renderContent","paddingSize","ColorPicker","enableAlpha","updateControlPointColor","colord","toRgbString","length","HStack","alignment","removeControlPoint","variant","style","left","transform","InsertPoint","onOpenInserter","onCloseInserter","insertPosition","alreadyInsertedPoint","setAlreadyInsertedPoint","useState","icon","plus","addControlPoint","updateControlPointColorByPosition","_default","exports"],"sources":["@wordpress/components/src/custom-gradient-picker/gradient-bar/control-points.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport { colord } from 'colord';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useRef, useState, useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { plus } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport Button from '../../button';\nimport { HStack } from '../../h-stack';\nimport { ColorPicker } from '../../color-picker';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport { CustomColorPickerDropdown } from '../../color-palette';\n\nimport {\n\taddControlPoint,\n\tclampPercent,\n\tremoveControlPoint,\n\tupdateControlPointColor,\n\tupdateControlPointColorByPosition,\n\tupdateControlPointPosition,\n\tgetHorizontalRelativeGradientPosition,\n} from './utils';\nimport {\n\tMINIMUM_SIGNIFICANT_MOVE,\n\tKEYBOARD_CONTROL_POINT_VARIATION,\n} from './constants';\nimport type { WordPressComponentProps } from '../../context';\nimport type {\n\tControlPointButtonProps,\n\tControlPointMoveState,\n\tControlPointsProps,\n\tInsertPointProps,\n} from '../types';\nimport type { CustomColorPickerDropdownProps } from '../../color-palette/types';\nimport DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';\n\nfunction ControlPointButton( {\n\tisOpen,\n\tposition,\n\tcolor,\n\t...additionalProps\n}: WordPressComponentProps< ControlPointButtonProps, 'button', true > ) {\n\tconst instanceId = useInstanceId( ControlPointButton );\n\tconst descriptionId = `components-custom-gradient-picker__control-point-button-description-${ instanceId }`;\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t// translators: 1: gradient position e.g: 70. 2: gradient color code e.g: rgb(52,121,151).\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Gradient control point at position %1$s%% with color code %2$s.'\n\t\t\t\t\t),\n\t\t\t\t\tposition,\n\t\t\t\t\tcolor\n\t\t\t\t) }\n\t\t\t\taria-describedby={ descriptionId }\n\t\t\t\taria-haspopup=\"true\"\n\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'components-custom-gradient-picker__control-point-button',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-active': isOpen,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\t{ ...additionalProps }\n\t\t\t/>\n\t\t\t<VisuallyHidden id={ descriptionId }>\n\t\t\t\t{ __(\n\t\t\t\t\t'Use your left or right arrow keys or drag and drop with the mouse to change the gradient position. Press the button to change the color or remove the control point.'\n\t\t\t\t) }\n\t\t\t</VisuallyHidden>\n\t\t</>\n\t);\n}\n\nfunction GradientColorPickerDropdown( {\n\tisRenderedInSidebar,\n\tclassName,\n\t...props\n}: CustomColorPickerDropdownProps ) {\n\t// Open the popover below the gradient control/insertion point\n\tconst popoverProps = useMemo(\n\t\t() =>\n\t\t\t( {\n\t\t\t\tplacement: 'bottom',\n\t\t\t\toffset: 8,\n\t\t\t\t// Disabling resize as it would otherwise cause the popover to show\n\t\t\t\t// scrollbars while dragging the color picker's handle close to the\n\t\t\t\t// popover edge.\n\t\t\t\tresize: false,\n\t\t\t} ) as const,\n\t\t[]\n\t);\n\n\tconst mergedClassName = clsx(\n\t\t'components-custom-gradient-picker__control-point-dropdown',\n\t\tclassName\n\t);\n\n\treturn (\n\t\t<CustomColorPickerDropdown\n\t\t\tisRenderedInSidebar={ isRenderedInSidebar }\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName={ mergedClassName }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction ControlPoints( {\n\tdisableRemove,\n\tdisableAlpha,\n\tgradientPickerDomRef,\n\tignoreMarkerPosition,\n\tvalue: controlPoints,\n\tonChange,\n\tonStartControlPointChange,\n\tonStopControlPointChange,\n\t__experimentalIsRenderedInSidebar,\n}: ControlPointsProps ) {\n\tconst controlPointMoveStateRef = useRef< ControlPointMoveState >();\n\n\tconst onMouseMove = ( event: MouseEvent ) => {\n\t\tif (\n\t\t\tcontrolPointMoveStateRef.current === undefined ||\n\t\t\tgradientPickerDomRef.current === null\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst relativePosition = getHorizontalRelativeGradientPosition(\n\t\t\tevent.clientX,\n\t\t\tgradientPickerDomRef.current\n\t\t);\n\n\t\tconst { initialPosition, index, significantMoveHappened } =\n\t\t\tcontrolPointMoveStateRef.current;\n\n\t\tif (\n\t\t\t! significantMoveHappened &&\n\t\t\tMath.abs( initialPosition - relativePosition ) >=\n\t\t\t\tMINIMUM_SIGNIFICANT_MOVE\n\t\t) {\n\t\t\tcontrolPointMoveStateRef.current.significantMoveHappened = true;\n\t\t}\n\n\t\tonChange(\n\t\t\tupdateControlPointPosition( controlPoints, index, relativePosition )\n\t\t);\n\t};\n\n\tconst cleanEventListeners = () => {\n\t\tif (\n\t\t\twindow &&\n\t\t\twindow.removeEventListener &&\n\t\t\tcontrolPointMoveStateRef.current &&\n\t\t\tcontrolPointMoveStateRef.current.listenersActivated\n\t\t) {\n\t\t\twindow.removeEventListener( 'mousemove', onMouseMove );\n\t\t\twindow.removeEventListener( 'mouseup', cleanEventListeners );\n\t\t\tonStopControlPointChange();\n\t\t\tcontrolPointMoveStateRef.current.listenersActivated = false;\n\t\t}\n\t};\n\n\t// Adding `cleanEventListeners` to the dependency array below requires the function itself to be wrapped in a `useCallback`\n\t// This memoization would prevent the event listeners from being properly cleaned.\n\t// Instead, we'll pass a ref to the function in our `useEffect` so `cleanEventListeners` itself is no longer a dependency.\n\tconst cleanEventListenersRef = useRef< () => void >();\n\tcleanEventListenersRef.current = cleanEventListeners;\n\n\tuseEffect( () => {\n\t\treturn () => {\n\t\t\tcleanEventListenersRef.current?.();\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t{ controlPoints.map( ( point, index ) => {\n\t\t\t\tconst initialPosition = point?.position;\n\t\t\t\treturn (\n\t\t\t\t\tignoreMarkerPosition !== initialPosition && (\n\t\t\t\t\t\t<GradientColorPickerDropdown\n\t\t\t\t\t\t\tisRenderedInSidebar={\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tonClose={ onStopControlPointChange }\n\t\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t\t<ControlPointButton\n\t\t\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current &&\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current\n\t\t\t\t\t\t\t\t\t\t\t\t.significantMoveHappened\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t\t\t\t\t\t\tonStopControlPointChange();\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tonStartControlPointChange();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonMouseDown={ () => {\n\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\twindow &&\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\tcontrolPointMoveStateRef.current = {\n\t\t\t\t\t\t\t\t\t\t\t\tinitialPosition,\n\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\tsignificantMoveHappened: false,\n\t\t\t\t\t\t\t\t\t\t\t\tlistenersActivated: true,\n\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\tonStartControlPointChange();\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener(\n\t\t\t\t\t\t\t\t\t\t\t\t'mousemove',\n\t\t\t\t\t\t\t\t\t\t\t\tonMouseMove\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\twindow.addEventListener(\n\t\t\t\t\t\t\t\t\t\t\t\t'mouseup',\n\t\t\t\t\t\t\t\t\t\t\t\tcleanEventListeners\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\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tif ( event.code === 'ArrowLeft' ) {\n\t\t\t\t\t\t\t\t\t\t\t// Stop propagation of the key press event to avoid focus moving\n\t\t\t\t\t\t\t\t\t\t\t// to another editor area.\n\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointPosition(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclampPercent(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpoint.position -\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tKEYBOARD_CONTROL_POINT_VARIATION\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);\n\t\t\t\t\t\t\t\t\t\t} else if (\n\t\t\t\t\t\t\t\t\t\t\tevent.code === 'ArrowRight'\n\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t// Stop propagation of the key press event to avoid focus moving\n\t\t\t\t\t\t\t\t\t\t\t// to another editor area.\n\t\t\t\t\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointPosition(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclampPercent(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpoint.position +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tKEYBOARD_CONTROL_POINT_VARIATION\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);\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\tisOpen={ isOpen }\n\t\t\t\t\t\t\t\t\tposition={ point.position }\n\t\t\t\t\t\t\t\t\tcolor={ point.color }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\t\tenableAlpha={ ! disableAlpha }\n\t\t\t\t\t\t\t\t\t\tcolor={ point.color }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( color ) => {\n\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\tupdateControlPointColor(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\tindex,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolord(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor\n\t\t\t\t\t\t\t\t\t\t\t\t\t).toRgbString()\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\t{ ! disableRemove &&\n\t\t\t\t\t\t\t\t\t\tcontrolPoints.length > 2 && (\n\t\t\t\t\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-custom-gradient-picker__remove-control-point-wrapper\"\n\t\t\t\t\t\t\t\t\t\t\t\talignment=\"center\"\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<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tremoveControlPoint(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tindex\n\t\t\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\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClose();\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\tvariant=\"link\"\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\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'Remove Control Point'\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</Button>\n\t\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tleft: `${ point.position }%`,\n\t\t\t\t\t\t\t\ttransform: 'translateX( -50% )',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</>\n\t);\n}\n\nfunction InsertPoint( {\n\tvalue: controlPoints,\n\tonChange,\n\tonOpenInserter,\n\tonCloseInserter,\n\tinsertPosition,\n\tdisableAlpha,\n\t__experimentalIsRenderedInSidebar,\n}: InsertPointProps ) {\n\tconst [ alreadyInsertedPoint, setAlreadyInsertedPoint ] = useState( false );\n\treturn (\n\t\t<GradientColorPickerDropdown\n\t\t\tisRenderedInSidebar={ __experimentalIsRenderedInSidebar }\n\t\t\tclassName=\"components-custom-gradient-picker__inserter\"\n\t\t\tonClose={ () => {\n\t\t\t\tonCloseInserter();\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tif ( isOpen ) {\n\t\t\t\t\t\t\tonCloseInserter();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetAlreadyInsertedPoint( false );\n\t\t\t\t\t\t\tonOpenInserter();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonToggle();\n\t\t\t\t\t} }\n\t\t\t\t\tclassName=\"components-custom-gradient-picker__insert-point-dropdown\"\n\t\t\t\t\ticon={ plus }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tenableAlpha={ ! disableAlpha }\n\t\t\t\t\t\tonChange={ ( color ) => {\n\t\t\t\t\t\t\tif ( ! alreadyInsertedPoint ) {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\taddControlPoint(\n\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\tinsertPosition,\n\t\t\t\t\t\t\t\t\t\tcolord( color ).toRgbString()\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\tsetAlreadyInsertedPoint( true );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\tupdateControlPointColorByPosition(\n\t\t\t\t\t\t\t\t\t\tcontrolPoints,\n\t\t\t\t\t\t\t\t\t\tinsertPosition,\n\t\t\t\t\t\t\t\t\t\tcolord( color ).toRgbString()\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t\tstyle={\n\t\t\t\tinsertPosition !== null\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tleft: `${ insertPosition }%`,\n\t\t\t\t\t\t\ttransform: 'translateX( -50% )',\n\t\t\t\t\t }\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t/>\n\t);\n}\nControlPoints.InsertPoint = InsertPoint;\n\nexport default ControlPoints;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/components/src/dashicon/types.ts"],"sourcesContent":["export type DashiconProps = {\n\t/**\n\t * The icon name\n\t */\n\ticon: IconKey;\n\t/**\n\t * Size of the icon\n\t */\n\tsize?: number;\n};\n\nexport type IconKey =\n\t| 'admin-appearance'\n\t| 'admin-collapse'\n\t| 'admin-comments'\n\t| 'admin-customizer'\n\t| 'admin-generic'\n\t| 'admin-home'\n\t| 'admin-links'\n\t| 'admin-media'\n\t| 'admin-multisite'\n\t| 'admin-network'\n\t| 'admin-page'\n\t| 'admin-plugins'\n\t| 'admin-post'\n\t| 'admin-settings'\n\t| 'admin-site-alt'\n\t| 'admin-site-alt2'\n\t| 'admin-site-alt3'\n\t| 'admin-site'\n\t| 'admin-tools'\n\t| 'admin-users'\n\t| 'airplane'\n\t| 'album'\n\t| 'align-center'\n\t| 'align-full-width'\n\t| 'align-left'\n\t| 'align-none'\n\t| 'align-pull-left'\n\t| 'align-pull-right'\n\t| 'align-right'\n\t| 'align-wide'\n\t| 'amazon'\n\t| 'analytics'\n\t| 'archive'\n\t| 'arrow-down-alt'\n\t| 'arrow-down-alt2'\n\t| 'arrow-down'\n\t| 'arrow-left-alt'\n\t| 'arrow-left-alt2'\n\t| 'arrow-left'\n\t| 'arrow-right-alt'\n\t| 'arrow-right-alt2'\n\t| 'arrow-right'\n\t| 'arrow-up-alt'\n\t| 'arrow-up-alt2'\n\t| 'arrow-up'\n\t| 'arrow-up-duplicate'\n\t| 'art'\n\t| 'awards'\n\t| 'backup'\n\t| 'bank'\n\t| 'beer'\n\t| 'bell'\n\t| 'block-default'\n\t| 'book-alt'\n\t| 'book'\n\t| 'buddicons-activity'\n\t| 'buddicons-bbpress-logo'\n\t| 'buddicons-buddypress-logo'\n\t| 'buddicons-community'\n\t| 'buddicons-forums'\n\t| 'buddicons-friends'\n\t| 'buddicons-groups'\n\t| 'buddicons-pm'\n\t| 'buddicons-replies'\n\t| 'buddicons-topics'\n\t| 'buddicons-tracking'\n\t| 'building'\n\t| 'businessman'\n\t| 'businessperson'\n\t| 'businesswoman'\n\t| 'button'\n\t| 'calculator'\n\t| 'camera-alt'\n\t| 'car'\n\t| 'calendar-alt'\n\t| 'calendar'\n\t| 'camera'\n\t| 'carrot'\n\t| 'cart'\n\t| 'category'\n\t| 'chart-area'\n\t| 'chart-bar'\n\t| 'chart-line'\n\t| 'chart-pie'\n\t| 'clipboard'\n\t| 'clock'\n\t| 'cloud-saved'\n\t| 'cloud-upload'\n\t| 'cloud'\n\t| 'columns'\n\t| 'code-standards'\n\t| 'coffee'\n\t| 'color-picker'\n\t| 'controls-back'\n\t| 'controls-forward'\n\t| 'controls-pause'\n\t| 'controls-play'\n\t| 'controls-repeat'\n\t| 'controls-skipback'\n\t| 'controls-skipforward'\n\t| 'controls-volumeoff'\n\t| 'controls-volumeon'\n\t| 'cover-image'\n\t| 'dashboard'\n\t| 'database'\n\t| 'database-add'\n\t| 'database-export'\n\t| 'database-import'\n\t| 'database-remove'\n\t| 'database-view'\n\t| 'desktop'\n\t| 'dismiss'\n\t| 'download'\n\t| 'drumstick'\n\t| 'edit'\n\t| 'edit-large'\n\t| 'edit-page'\n\t| 'editor-aligncenter'\n\t| 'editor-alignleft'\n\t| 'editor-alignright'\n\t| 'editor-bold'\n\t| 'editor-break'\n\t| 'editor-code'\n\t| 'editor-code-duplicate'\n\t| 'editor-contract'\n\t| 'editor-customchar'\n\t| 'editor-expand'\n\t| 'editor-help'\n\t| 'editor-indent'\n\t| 'editor-insertmore'\n\t| 'editor-italic'\n\t| 'editor-justify'\n\t| 'editor-kitchensink'\n\t| 'editor-ltr'\n\t| 'editor-ol-rtl'\n\t| 'editor-ol'\n\t| 'editor-outdent'\n\t| 'editor-paragraph'\n\t| 'editor-paste-text'\n\t| 'editor-paste-word'\n\t| 'editor-quote'\n\t| 'editor-removeformatting'\n\t| 'editor-rtl'\n\t| 'editor-spellcheck'\n\t| 'editor-strikethrough'\n\t| 'editor-table'\n\t| 'editor-textcolor'\n\t| 'editor-ul'\n\t| 'editor-underline'\n\t| 'editor-unlink'\n\t| 'editor-video'\n\t| 'ellipsis'\n\t| 'email-alt'\n\t| 'email-alt2'\n\t| 'email'\n\t| 'embed-audio'\n\t| 'embed-generic'\n\t| 'embed-photo'\n\t| 'embed-post'\n\t| 'embed-video'\n\t| 'excerpt-view'\n\t| 'exit'\n\t| 'external'\n\t| 'facebook-alt'\n\t| 'facebook'\n\t| 'feedback'\n\t| 'filter'\n\t| 'flag'\n\t| 'food'\n\t| 'format-aside'\n\t| 'format-audio'\n\t| 'format-chat'\n\t| 'format-gallery'\n\t| 'format-image'\n\t| 'format-quote'\n\t| 'format-status'\n\t| 'format-video'\n\t| 'forms'\n\t| 'fullscreen-alt'\n\t| 'fullscreen-exit-alt'\n\t| 'games'\n\t| 'google'\n\t| 'googleplus'\n\t| 'grid-view'\n\t| 'groups'\n\t| 'hammer'\n\t| 'heading'\n\t| 'heart'\n\t| 'hidden'\n\t| 'hourglass'\n\t| 'html'\n\t| 'id-alt'\n\t| 'id'\n\t| 'image-crop'\n\t| 'image-filter'\n\t| 'image-flip-horizontal'\n\t| 'image-flip-vertical'\n\t| 'image-rotate-left'\n\t| 'image-rotate-right'\n\t| 'image-rotate'\n\t| 'images-alt'\n\t| 'images-alt2'\n\t| 'index-card'\n\t| 'info-outline'\n\t| 'info'\n\t| 'insert-after'\n\t| 'insert-before'\n\t| 'insert'\n\t| 'instagram'\n\t| 'keyboard-hide'\n\t| 'laptop'\n\t| 'layout'\n\t| 'leftright'\n\t| 'lightbulb'\n\t| 'list-view'\n\t| 'linkedin'\n\t| 'location-alt'\n\t| 'location'\n\t| 'lock-duplicate'\n\t| 'lock'\n\t| 'marker'\n\t| 'media-archive'\n\t| 'media-audio'\n\t| 'media-code'\n\t| 'media-default'\n\t| 'media-document'\n\t| 'media-interactive'\n\t| 'media-spreadsheet'\n\t| 'media-text'\n\t| 'media-video'\n\t| 'megaphone'\n\t| 'menu-alt'\n\t| 'menu-alt2'\n\t| 'menu-alt3'\n\t| 'menu'\n\t| 'money-alt'\n\t| 'microphone'\n\t| 'migrate'\n\t| 'minus'\n\t| 'money'\n\t| 'move'\n\t| 'nametag'\n\t| 'networking'\n\t| 'no-alt'\n\t| 'no'\n\t| 'open-folder'\n\t| 'palmtree'\n\t| 'paperclip'\n\t| 'performance'\n\t| 'pets'\n\t| 'pdf'\n\t| 'phone'\n\t| 'pinterest'\n\t| 'playlist-audio'\n\t| 'playlist-video'\n\t| 'plus-alt'\n\t| 'plus-light'\n\t| 'plus'\n\t| 'portfolio'\n\t| 'post-status'\n\t| 'pressthis'\n\t| 'products'\n\t| 'plugins-checked'\n\t| 'plus-alt2'\n\t| 'podio'\n\t| 'printer'\n\t| 'privacy'\n\t| 'randomize'\n\t| 'reddit'\n\t| 'redo'\n\t| 'remove'\n\t| 'rest-api'\n\t| 'rss'\n\t| 'saved'\n\t| 'schedule'\n\t| 'screenoptions'\n\t| 'search'\n\t| 'share-alt'\n\t| 'share-alt2'\n\t| 'share'\n\t| 'shield-alt'\n\t| 'shield'\n\t| 'shortcode'\n\t| 'slides'\n\t| 'smartphone'\n\t| 'smiley'\n\t| 'sort'\n\t| 'sos'\n\t| 'star-empty'\n\t| 'star-filled'\n\t| 'star-half'\n\t| 'sticky'\n\t| 'store'\n\t| 'spotify'\n\t| 'superhero'\n\t| 'superhero-alt'\n\t| 'table-col-after'\n\t| 'table-col-before'\n\t| 'table-col-delete'\n\t| 'table-row-after'\n\t| 'table-row-before'\n\t| 'table-row-delete'\n\t| 'tablet'\n\t| 'tag'\n\t| 'tagcloud'\n\t| 'testimonial'\n\t| 'text'\n\t| 'text-page'\n\t| 'thumbs-down'\n\t| 'thumbs-up'\n\t| 'tickets-alt'\n\t| 'tickets'\n\t| 'tide'\n\t| 'translation'\n\t| 'trash'\n\t| 'twitch'\n\t| 'twitter'\n\t| 'twitter-alt'\n\t| 'undo'\n\t| 'universal-access-alt'\n\t| 'universal-access'\n\t| 'unlock'\n\t| 'update-alt'\n\t| 'update'\n\t| 'upload'\n\t| 'vault'\n\t| 'video-alt'\n\t| 'video-alt2'\n\t| 'video-alt3'\n\t| 'visibility'\n\t| 'warning'\n\t| 'welcome-add-page'\n\t| 'welcome-comments'\n\t| 'welcome-learn-more'\n\t| 'welcome-view-site'\n\t| 'welcome-widgets-menus'\n\t| 'welcome-write-blog'\n\t| 'whatsapp'\n\t| 'wordpress-alt'\n\t| 'wordpress'\n\t| 'xing'\n\t| 'yes-alt'\n\t| 'yes'\n\t| 'youtube';\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["@wordpress/components/src/dashicon/types.ts"],"sourcesContent":["export type DashiconProps = {\n\t/**\n\t * The icon name\n\t */\n\ticon: IconKey;\n\t/**\n\t * Size of the icon\n\t */\n\tsize?: number;\n};\n\nexport type IconKey =\n\t| 'admin-appearance'\n\t| 'admin-collapse'\n\t| 'admin-comments'\n\t| 'admin-customizer'\n\t| 'admin-generic'\n\t| 'admin-home'\n\t| 'admin-links'\n\t| 'admin-media'\n\t| 'admin-multisite'\n\t| 'admin-network'\n\t| 'admin-page'\n\t| 'admin-plugins'\n\t| 'admin-post'\n\t| 'admin-settings'\n\t| 'admin-site-alt'\n\t| 'admin-site-alt2'\n\t| 'admin-site-alt3'\n\t| 'admin-site'\n\t| 'admin-tools'\n\t| 'admin-users'\n\t| 'airplane'\n\t| 'album'\n\t| 'align-center'\n\t| 'align-full-width'\n\t| 'align-left'\n\t| 'align-none'\n\t| 'align-pull-left'\n\t| 'align-pull-right'\n\t| 'align-right'\n\t| 'align-wide'\n\t| 'amazon'\n\t| 'analytics'\n\t| 'archive'\n\t| 'arrow-down-alt'\n\t| 'arrow-down-alt2'\n\t| 'arrow-down'\n\t| 'arrow-left-alt'\n\t| 'arrow-left-alt2'\n\t| 'arrow-left'\n\t| 'arrow-right-alt'\n\t| 'arrow-right-alt2'\n\t| 'arrow-right'\n\t| 'arrow-up-alt'\n\t| 'arrow-up-alt2'\n\t| 'arrow-up'\n\t| 'arrow-up-duplicate'\n\t| 'art'\n\t| 'awards'\n\t| 'backup'\n\t| 'bank'\n\t| 'beer'\n\t| 'bell'\n\t| 'block-default'\n\t| 'book-alt'\n\t| 'book'\n\t| 'buddicons-activity'\n\t| 'buddicons-bbpress-logo'\n\t| 'buddicons-buddypress-logo'\n\t| 'buddicons-community'\n\t| 'buddicons-forums'\n\t| 'buddicons-friends'\n\t| 'buddicons-groups'\n\t| 'buddicons-pm'\n\t| 'buddicons-replies'\n\t| 'buddicons-topics'\n\t| 'buddicons-tracking'\n\t| 'building'\n\t| 'businessman'\n\t| 'businessperson'\n\t| 'businesswoman'\n\t| 'button'\n\t| 'calculator'\n\t| 'camera-alt'\n\t| 'car'\n\t| 'calendar-alt'\n\t| 'calendar'\n\t| 'camera'\n\t| 'carrot'\n\t| 'cart'\n\t| 'category'\n\t| 'chart-area'\n\t| 'chart-bar'\n\t| 'chart-line'\n\t| 'chart-pie'\n\t| 'clipboard'\n\t| 'clock'\n\t| 'cloud-saved'\n\t| 'cloud-upload'\n\t| 'cloud'\n\t| 'columns'\n\t| 'code-standards'\n\t| 'coffee'\n\t| 'color-picker'\n\t| 'controls-back'\n\t| 'controls-forward'\n\t| 'controls-pause'\n\t| 'controls-play'\n\t| 'controls-repeat'\n\t| 'controls-skipback'\n\t| 'controls-skipforward'\n\t| 'controls-volumeoff'\n\t| 'controls-volumeon'\n\t| 'cover-image'\n\t| 'dashboard'\n\t| 'database'\n\t| 'database-add'\n\t| 'database-export'\n\t| 'database-import'\n\t| 'database-remove'\n\t| 'database-view'\n\t| 'desktop'\n\t| 'dismiss'\n\t| 'download'\n\t| 'drumstick'\n\t| 'edit'\n\t| 'edit-large'\n\t| 'edit-page'\n\t| 'editor-aligncenter'\n\t| 'editor-alignleft'\n\t| 'editor-alignright'\n\t| 'editor-bold'\n\t| 'editor-break'\n\t| 'editor-code'\n\t| 'editor-code-duplicate'\n\t| 'editor-contract'\n\t| 'editor-customchar'\n\t| 'editor-expand'\n\t| 'editor-help'\n\t| 'editor-indent'\n\t| 'editor-insertmore'\n\t| 'editor-italic'\n\t| 'editor-justify'\n\t| 'editor-kitchensink'\n\t| 'editor-ltr'\n\t| 'editor-ol-rtl'\n\t| 'editor-ol'\n\t| 'editor-outdent'\n\t| 'editor-paragraph'\n\t| 'editor-paste-text'\n\t| 'editor-paste-word'\n\t| 'editor-quote'\n\t| 'editor-removeformatting'\n\t| 'editor-rtl'\n\t| 'editor-spellcheck'\n\t| 'editor-strikethrough'\n\t| 'editor-table'\n\t| 'editor-textcolor'\n\t| 'editor-ul'\n\t| 'editor-underline'\n\t| 'editor-unlink'\n\t| 'editor-video'\n\t| 'ellipsis'\n\t| 'email-alt'\n\t| 'email-alt2'\n\t| 'email'\n\t| 'embed-audio'\n\t| 'embed-generic'\n\t| 'embed-photo'\n\t| 'embed-post'\n\t| 'embed-video'\n\t| 'excerpt-view'\n\t| 'exit'\n\t| 'external'\n\t| 'facebook-alt'\n\t| 'facebook'\n\t| 'feedback'\n\t| 'filter'\n\t| 'flag'\n\t| 'food'\n\t| 'format-aside'\n\t| 'format-audio'\n\t| 'format-chat'\n\t| 'format-gallery'\n\t| 'format-image'\n\t| 'format-quote'\n\t| 'format-status'\n\t| 'format-video'\n\t| 'forms'\n\t| 'fullscreen-alt'\n\t| 'fullscreen-exit-alt'\n\t| 'games'\n\t| 'google'\n\t| 'googleplus'\n\t| 'grid-view'\n\t| 'groups'\n\t| 'hammer'\n\t| 'heading'\n\t| 'heart'\n\t| 'hidden'\n\t| 'hourglass'\n\t| 'html'\n\t| 'id-alt'\n\t| 'id'\n\t| 'image-crop'\n\t| 'image-filter'\n\t| 'image-flip-horizontal'\n\t| 'image-flip-vertical'\n\t| 'image-rotate-left'\n\t| 'image-rotate-right'\n\t| 'image-rotate'\n\t| 'images-alt'\n\t| 'images-alt2'\n\t| 'index-card'\n\t| 'info-outline'\n\t| 'info'\n\t| 'insert-after'\n\t| 'insert-before'\n\t| 'insert'\n\t| 'instagram'\n\t| 'laptop'\n\t| 'layout'\n\t| 'leftright'\n\t| 'lightbulb'\n\t| 'list-view'\n\t| 'linkedin'\n\t| 'location-alt'\n\t| 'location'\n\t| 'lock-duplicate'\n\t| 'lock'\n\t| 'marker'\n\t| 'media-archive'\n\t| 'media-audio'\n\t| 'media-code'\n\t| 'media-default'\n\t| 'media-document'\n\t| 'media-interactive'\n\t| 'media-spreadsheet'\n\t| 'media-text'\n\t| 'media-video'\n\t| 'megaphone'\n\t| 'menu-alt'\n\t| 'menu-alt2'\n\t| 'menu-alt3'\n\t| 'menu'\n\t| 'money-alt'\n\t| 'microphone'\n\t| 'migrate'\n\t| 'minus'\n\t| 'money'\n\t| 'move'\n\t| 'nametag'\n\t| 'networking'\n\t| 'no-alt'\n\t| 'no'\n\t| 'open-folder'\n\t| 'palmtree'\n\t| 'paperclip'\n\t| 'performance'\n\t| 'pets'\n\t| 'pdf'\n\t| 'phone'\n\t| 'pinterest'\n\t| 'playlist-audio'\n\t| 'playlist-video'\n\t| 'plus-alt'\n\t| 'plus'\n\t| 'portfolio'\n\t| 'post-status'\n\t| 'pressthis'\n\t| 'products'\n\t| 'plugins-checked'\n\t| 'plus-alt2'\n\t| 'podio'\n\t| 'printer'\n\t| 'privacy'\n\t| 'randomize'\n\t| 'reddit'\n\t| 'redo'\n\t| 'remove'\n\t| 'rest-api'\n\t| 'rss'\n\t| 'saved'\n\t| 'schedule'\n\t| 'screenoptions'\n\t| 'search'\n\t| 'share-alt'\n\t| 'share-alt2'\n\t| 'share'\n\t| 'shield-alt'\n\t| 'shield'\n\t| 'shortcode'\n\t| 'slides'\n\t| 'smartphone'\n\t| 'smiley'\n\t| 'sort'\n\t| 'sos'\n\t| 'star-empty'\n\t| 'star-filled'\n\t| 'star-half'\n\t| 'sticky'\n\t| 'store'\n\t| 'spotify'\n\t| 'superhero'\n\t| 'superhero-alt'\n\t| 'table-col-after'\n\t| 'table-col-before'\n\t| 'table-col-delete'\n\t| 'table-row-after'\n\t| 'table-row-before'\n\t| 'table-row-delete'\n\t| 'tablet'\n\t| 'tag'\n\t| 'tagcloud'\n\t| 'testimonial'\n\t| 'text'\n\t| 'text-page'\n\t| 'thumbs-down'\n\t| 'thumbs-up'\n\t| 'tickets-alt'\n\t| 'tickets'\n\t| 'tide'\n\t| 'translation'\n\t| 'trash'\n\t| 'twitch'\n\t| 'twitter'\n\t| 'twitter-alt'\n\t| 'undo'\n\t| 'universal-access-alt'\n\t| 'universal-access'\n\t| 'unlock'\n\t| 'update-alt'\n\t| 'update'\n\t| 'upload'\n\t| 'vault'\n\t| 'video-alt'\n\t| 'video-alt2'\n\t| 'video-alt3'\n\t| 'visibility'\n\t| 'warning'\n\t| 'welcome-add-page'\n\t| 'welcome-comments'\n\t| 'welcome-learn-more'\n\t| 'welcome-view-site'\n\t| 'welcome-widgets-menus'\n\t| 'welcome-write-blog'\n\t| 'whatsapp'\n\t| 'wordpress-alt'\n\t| 'wordpress'\n\t| 'xing'\n\t| 'yes-alt'\n\t| 'yes'\n\t| 'youtube';\n"],"mappings":"","ignoreList":[]}
@@ -13,6 +13,7 @@ var _selectControl = _interopRequireDefault(require("../select-control"));
13
13
  var _sizes = _interopRequireWildcard(require("./sizes"));
14
14
  var _context = require("../context");
15
15
  var _deprecated = _interopRequireDefault(require("@wordpress/deprecated"));
16
+ var _deprecated36pxSize = require("../utils/deprecated-36px-size");
16
17
  var _jsxRuntime = require("react/jsx-runtime");
17
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -52,6 +53,7 @@ const CONTEXT_VALUE = {
52
53
  *
53
54
  * return (
54
55
  * <DimensionControl
56
+ * __next40pxDefaultSize
55
57
  * __nextHasNoMarginBottom
56
58
  * label={ 'Padding' }
57
59
  * icon={ 'desktop' }
@@ -77,6 +79,11 @@ function DimensionControl(props) {
77
79
  since: '6.7',
78
80
  version: '7.0'
79
81
  });
82
+ (0, _deprecated36pxSize.maybeWarnDeprecated36pxSize)({
83
+ componentName: 'DimensionControl',
84
+ __next40pxDefaultSize,
85
+ size: undefined
86
+ });
80
87
  const onChangeSpacingSize = val => {
81
88
  const theSize = (0, _sizes.findSizeBySlug)(sizes, val);
82
89
  if (!theSize || value === theSize.slug) {
@@ -1 +1 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_icon","_selectControl","_sizes","_interopRequireWildcard","_context","_deprecated","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CONTEXT_VALUE","BaseControl","_overrides","__associatedWPComponentName","DimensionControl","props","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","sizes","sizesTable","icon","onChange","className","deprecated","since","version","onChangeSpacingSize","val","theSize","findSizeBySlug","slug","undefined","formatSizesAsOptions","theSizes","options","map","name","__","selectLabel","jsxs","Fragment","children","jsx","ContextSystemProvider","clsx","hideLabelFromVision","_default","exports"],"sources":["@wordpress/components/src/dimension-control/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport Icon from '../icon';\nimport SelectControl from '../select-control';\nimport sizesTable, { findSizeBySlug } from './sizes';\nimport type { DimensionControlProps, Size } from './types';\nimport type { SelectControlSingleSelectionProps } from '../select-control/types';\nimport { ContextSystemProvider } from '../context';\nimport deprecated from '@wordpress/deprecated';\n\nconst CONTEXT_VALUE = {\n\tBaseControl: {\n\t\t// Temporary during deprecation grace period: Overrides the underlying `__associatedWPComponentName`\n\t\t// via the context system to override the value set by SelectControl.\n\t\t_overrides: { __associatedWPComponentName: 'DimensionControl' },\n\t},\n};\n\n/**\n * `DimensionControl` is a component designed to provide a UI to control spacing and/or dimensions.\n *\n * @deprecated\n *\n * ```jsx\n * import { __experimentalDimensionControl as DimensionControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * export default function MyCustomDimensionControl() {\n * \tconst [ paddingSize, setPaddingSize ] = useState( '' );\n *\n * \treturn (\n * \t\t<DimensionControl\n * \t\t\t__nextHasNoMarginBottom\n * \t\t\tlabel={ 'Padding' }\n * \t\t\ticon={ 'desktop' }\n * \t\t\tonChange={ ( value ) => setPaddingSize( value ) }\n * \t\t\tvalue={ paddingSize }\n * \t\t/>\n * \t);\n * }\n * ```\n */\nexport function DimensionControl( props: DimensionControlProps ) {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\t__nextHasNoMarginBottom = false,\n\t\tlabel,\n\t\tvalue,\n\t\tsizes = sizesTable,\n\t\ticon,\n\t\tonChange,\n\t\tclassName = '',\n\t} = props;\n\n\tdeprecated( 'wp.components.DimensionControl', {\n\t\tsince: '6.7',\n\t\tversion: '7.0',\n\t} );\n\n\tconst onChangeSpacingSize: SelectControlSingleSelectionProps[ 'onChange' ] =\n\t\t( val ) => {\n\t\t\tconst theSize = findSizeBySlug( sizes, val );\n\n\t\t\tif ( ! theSize || value === theSize.slug ) {\n\t\t\t\tonChange?.( undefined );\n\t\t\t} else if ( typeof onChange === 'function' ) {\n\t\t\t\tonChange( theSize.slug );\n\t\t\t}\n\t\t};\n\n\tconst formatSizesAsOptions = ( theSizes: Size[] ) => {\n\t\tconst options = theSizes.map( ( { name, slug } ) => ( {\n\t\t\tlabel: name,\n\t\t\tvalue: slug,\n\t\t} ) );\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\tvalue: '',\n\t\t\t},\n\t\t\t...options,\n\t\t];\n\t};\n\n\tconst selectLabel = (\n\t\t<>\n\t\t\t{ icon && <Icon icon={ icon } /> }\n\t\t\t{ label }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<ContextSystemProvider value={ CONTEXT_VALUE }>\n\t\t\t<SelectControl\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\tclassName,\n\t\t\t\t\t'block-editor-dimension-control'\n\t\t\t\t) }\n\t\t\t\tlabel={ selectLabel }\n\t\t\t\thideLabelFromVision={ false }\n\t\t\t\tvalue={ value }\n\t\t\t\tonChange={ onChangeSpacingSize }\n\t\t\t\toptions={ formatSizesAsOptions( sizes ) }\n\t\t\t/>\n\t\t</ContextSystemProvider>\n\t);\n}\n\nexport default DimensionControl;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_icon","_selectControl","_sizes","_interopRequireWildcard","_context","_deprecated","_deprecated36pxSize","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CONTEXT_VALUE","BaseControl","_overrides","__associatedWPComponentName","DimensionControl","props","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","sizes","sizesTable","icon","onChange","className","deprecated","since","version","maybeWarnDeprecated36pxSize","componentName","size","undefined","onChangeSpacingSize","val","theSize","findSizeBySlug","slug","formatSizesAsOptions","theSizes","options","map","name","__","selectLabel","jsxs","Fragment","children","jsx","ContextSystemProvider","clsx","hideLabelFromVision","_default","exports"],"sources":["@wordpress/components/src/dimension-control/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport Icon from '../icon';\nimport SelectControl from '../select-control';\nimport sizesTable, { findSizeBySlug } from './sizes';\nimport type { DimensionControlProps, Size } from './types';\nimport type { SelectControlSingleSelectionProps } from '../select-control/types';\nimport { ContextSystemProvider } from '../context';\nimport deprecated from '@wordpress/deprecated';\nimport { maybeWarnDeprecated36pxSize } from '../utils/deprecated-36px-size';\n\nconst CONTEXT_VALUE = {\n\tBaseControl: {\n\t\t// Temporary during deprecation grace period: Overrides the underlying `__associatedWPComponentName`\n\t\t// via the context system to override the value set by SelectControl.\n\t\t_overrides: { __associatedWPComponentName: 'DimensionControl' },\n\t},\n};\n\n/**\n * `DimensionControl` is a component designed to provide a UI to control spacing and/or dimensions.\n *\n * @deprecated\n *\n * ```jsx\n * import { __experimentalDimensionControl as DimensionControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * export default function MyCustomDimensionControl() {\n * \tconst [ paddingSize, setPaddingSize ] = useState( '' );\n *\n * \treturn (\n * \t\t<DimensionControl\n * \t\t\t__next40pxDefaultSize\n * \t\t\t__nextHasNoMarginBottom\n * \t\t\tlabel={ 'Padding' }\n * \t\t\ticon={ 'desktop' }\n * \t\t\tonChange={ ( value ) => setPaddingSize( value ) }\n * \t\t\tvalue={ paddingSize }\n * \t\t/>\n * \t);\n * }\n * ```\n */\nexport function DimensionControl( props: DimensionControlProps ) {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\t__nextHasNoMarginBottom = false,\n\t\tlabel,\n\t\tvalue,\n\t\tsizes = sizesTable,\n\t\ticon,\n\t\tonChange,\n\t\tclassName = '',\n\t} = props;\n\n\tdeprecated( 'wp.components.DimensionControl', {\n\t\tsince: '6.7',\n\t\tversion: '7.0',\n\t} );\n\n\tmaybeWarnDeprecated36pxSize( {\n\t\tcomponentName: 'DimensionControl',\n\t\t__next40pxDefaultSize,\n\t\tsize: undefined,\n\t} );\n\n\tconst onChangeSpacingSize: SelectControlSingleSelectionProps[ 'onChange' ] =\n\t\t( val ) => {\n\t\t\tconst theSize = findSizeBySlug( sizes, val );\n\n\t\t\tif ( ! theSize || value === theSize.slug ) {\n\t\t\t\tonChange?.( undefined );\n\t\t\t} else if ( typeof onChange === 'function' ) {\n\t\t\t\tonChange( theSize.slug );\n\t\t\t}\n\t\t};\n\n\tconst formatSizesAsOptions = ( theSizes: Size[] ) => {\n\t\tconst options = theSizes.map( ( { name, slug } ) => ( {\n\t\t\tlabel: name,\n\t\t\tvalue: slug,\n\t\t} ) );\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\tvalue: '',\n\t\t\t},\n\t\t\t...options,\n\t\t];\n\t};\n\n\tconst selectLabel = (\n\t\t<>\n\t\t\t{ icon && <Icon icon={ icon } /> }\n\t\t\t{ label }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<ContextSystemProvider value={ CONTEXT_VALUE }>\n\t\t\t<SelectControl\n\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\tclassName,\n\t\t\t\t\t'block-editor-dimension-control'\n\t\t\t\t) }\n\t\t\t\tlabel={ selectLabel }\n\t\t\t\thideLabelFromVision={ false }\n\t\t\t\tvalue={ value }\n\t\t\t\tonChange={ onChangeSpacingSize }\n\t\t\t\toptions={ formatSizesAsOptions( sizes ) }\n\t\t\t/>\n\t\t</ContextSystemProvider>\n\t);\n}\n\nexport default DimensionControl;\n"],"mappings":"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","ignoreList":[]}
@@ -39,7 +39,14 @@ const {
39
39
  * const MyDisabled = () => {
40
40
  * const [ isDisabled, setIsDisabled ] = useState( true );
41
41
  *
42
- * let input = <TextControl label="Input" onChange={ () => {} } />;
42
+ * let input = (
43
+ * <TextControl
44
+ * __next40pxDefaultSize
45
+ * __nextHasNoMarginBottom
46
+ * label="Input"
47
+ * onChange={ () => {} }
48
+ * />
49
+ * );
43
50
  * if ( isDisabled ) {
44
51
  * input = <Disabled>{ input }</Disabled>;
45
52
  * }
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_disabledStyles","_utils","_jsxRuntime","Context","createContext","Consumer","Provider","Disabled","className","children","isDisabled","props","cx","useCx","jsx","value","inert","undefined","disabledStyles","_default","exports","default"],"sources":["@wordpress/components/src/disabled/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { disabledStyles } from './styles/disabled-styles';\nimport type { DisabledProps } from './types';\nimport type { WordPressComponentProps } from '../context';\nimport { useCx } from '../utils';\n\nconst Context = createContext< boolean >( false );\nconst { Consumer, Provider } = Context;\n\n/**\n * `Disabled` is a component which disables descendant tabbable elements and\n * prevents pointer interaction.\n *\n * _Note: this component may not behave as expected in browsers that don't\n * support the `inert` HTML attribute. We recommend adding the official WICG\n * polyfill when using this component in your project._\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert\n *\n * ```jsx\n * import { Button, Disabled, TextControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyDisabled = () => {\n * \tconst [ isDisabled, setIsDisabled ] = useState( true );\n *\n * \tlet input = <TextControl label=\"Input\" onChange={ () => {} } />;\n * \tif ( isDisabled ) {\n * \t\tinput = <Disabled>{ input }</Disabled>;\n * \t}\n *\n * \tconst toggleDisabled = () => {\n * \t\tsetIsDisabled( ( state ) => ! state );\n * \t};\n *\n * \treturn (\n * \t\t<div>\n * \t\t\t{ input }\n * \t\t\t<Button variant=\"primary\" onClick={ toggleDisabled }>\n * \t\t\t\tToggle Disabled\n * \t\t\t</Button>\n * \t\t</div>\n * \t);\n * };\n * ```\n */\nfunction Disabled( {\n\tclassName,\n\tchildren,\n\tisDisabled = true,\n\t...props\n}: WordPressComponentProps< DisabledProps, 'div' > ) {\n\tconst cx = useCx();\n\n\treturn (\n\t\t<Provider value={ isDisabled }>\n\t\t\t<div\n\t\t\t\t// @ts-ignore Reason: inert is a recent HTML attribute\n\t\t\t\tinert={ isDisabled ? 'true' : undefined }\n\t\t\t\tclassName={\n\t\t\t\t\tisDisabled\n\t\t\t\t\t\t? cx( disabledStyles, className, 'components-disabled' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</Provider>\n\t);\n}\n\nDisabled.Context = Context;\nDisabled.Consumer = Consumer;\n\nexport default Disabled;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,eAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAAiC,IAAAG,WAAA,GAAAH,OAAA;AAXjC;AACA;AACA;;AAGA;AACA;AACA;;AAMA,MAAMI,OAAO,GAAG,IAAAC,sBAAa,EAAa,KAAM,CAAC;AACjD,MAAM;EAAEC,QAAQ;EAAEC;AAAS,CAAC,GAAGH,OAAO;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,QAAQA,CAAE;EAClBC,SAAS;EACTC,QAAQ;EACRC,UAAU,GAAG,IAAI;EACjB,GAAGC;AAC6C,CAAC,EAAG;EACpD,MAAMC,EAAE,GAAG,IAAAC,YAAK,EAAC,CAAC;EAElB,oBACC,IAAAX,WAAA,CAAAY,GAAA,EAACR,QAAQ;IAACS,KAAK,EAAGL,UAAY;IAAAD,QAAA,eAC7B,IAAAP,WAAA,CAAAY,GAAA;MACC;MACAE,KAAK,EAAGN,UAAU,GAAG,MAAM,GAAGO,SAAW;MACzCT,SAAS,EACRE,UAAU,GACPE,EAAE,CAAEM,8BAAc,EAAEV,SAAS,EAAE,qBAAsB,CAAC,GACtDS,SACH;MAAA,GACIN,KAAK;MAAAF,QAAA,EAERA;IAAQ,CACN;EAAC,CACG,CAAC;AAEb;AAEAF,QAAQ,CAACJ,OAAO,GAAGA,OAAO;AAC1BI,QAAQ,CAACF,QAAQ,GAAGA,QAAQ;AAAC,IAAAc,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEdd,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_disabledStyles","_utils","_jsxRuntime","Context","createContext","Consumer","Provider","Disabled","className","children","isDisabled","props","cx","useCx","jsx","value","inert","undefined","disabledStyles","_default","exports","default"],"sources":["@wordpress/components/src/disabled/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { disabledStyles } from './styles/disabled-styles';\nimport type { DisabledProps } from './types';\nimport type { WordPressComponentProps } from '../context';\nimport { useCx } from '../utils';\n\nconst Context = createContext< boolean >( false );\nconst { Consumer, Provider } = Context;\n\n/**\n * `Disabled` is a component which disables descendant tabbable elements and\n * prevents pointer interaction.\n *\n * _Note: this component may not behave as expected in browsers that don't\n * support the `inert` HTML attribute. We recommend adding the official WICG\n * polyfill when using this component in your project._\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert\n *\n * ```jsx\n * import { Button, Disabled, TextControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyDisabled = () => {\n * \tconst [ isDisabled, setIsDisabled ] = useState( true );\n *\n *\tlet input = (\n *\t\t<TextControl\n *\t\t\t__next40pxDefaultSize\n *\t\t\t__nextHasNoMarginBottom\n *\t\t\tlabel=\"Input\"\n *\t\t\tonChange={ () => {} }\n *\t\t/>\n *\t);\n * \tif ( isDisabled ) {\n * \t\tinput = <Disabled>{ input }</Disabled>;\n * \t}\n *\n * \tconst toggleDisabled = () => {\n * \t\tsetIsDisabled( ( state ) => ! state );\n * \t};\n *\n * \treturn (\n * \t\t<div>\n * \t\t\t{ input }\n * \t\t\t<Button variant=\"primary\" onClick={ toggleDisabled }>\n * \t\t\t\tToggle Disabled\n * \t\t\t</Button>\n * \t\t</div>\n * \t);\n * };\n * ```\n */\nfunction Disabled( {\n\tclassName,\n\tchildren,\n\tisDisabled = true,\n\t...props\n}: WordPressComponentProps< DisabledProps, 'div' > ) {\n\tconst cx = useCx();\n\n\treturn (\n\t\t<Provider value={ isDisabled }>\n\t\t\t<div\n\t\t\t\t// @ts-ignore Reason: inert is a recent HTML attribute\n\t\t\t\tinert={ isDisabled ? 'true' : undefined }\n\t\t\t\tclassName={\n\t\t\t\t\tisDisabled\n\t\t\t\t\t\t? cx( disabledStyles, className, 'components-disabled' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</Provider>\n\t);\n}\n\nDisabled.Context = Context;\nDisabled.Consumer = Consumer;\n\nexport default Disabled;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,eAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAAiC,IAAAG,WAAA,GAAAH,OAAA;AAXjC;AACA;AACA;;AAGA;AACA;AACA;;AAMA,MAAMI,OAAO,GAAG,IAAAC,sBAAa,EAAa,KAAM,CAAC;AACjD,MAAM;EAAEC,QAAQ;EAAEC;AAAS,CAAC,GAAGH,OAAO;;AAEtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASI,QAAQA,CAAE;EAClBC,SAAS;EACTC,QAAQ;EACRC,UAAU,GAAG,IAAI;EACjB,GAAGC;AAC6C,CAAC,EAAG;EACpD,MAAMC,EAAE,GAAG,IAAAC,YAAK,EAAC,CAAC;EAElB,oBACC,IAAAX,WAAA,CAAAY,GAAA,EAACR,QAAQ;IAACS,KAAK,EAAGL,UAAY;IAAAD,QAAA,eAC7B,IAAAP,WAAA,CAAAY,GAAA;MACC;MACAE,KAAK,EAAGN,UAAU,GAAG,MAAM,GAAGO,SAAW;MACzCT,SAAS,EACRE,UAAU,GACPE,EAAE,CAAEM,8BAAc,EAAEV,SAAS,EAAE,qBAAsB,CAAC,GACtDS,SACH;MAAA,GACIN,KAAK;MAAAF,QAAA,EAERA;IAAQ,CACN;EAAC,CACG,CAAC;AAEb;AAEAF,QAAQ,CAACJ,OAAO,GAAGA,OAAO;AAC1BI,QAAQ,CAACF,QAAQ,GAAGA,QAAQ;AAAC,IAAAc,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEdd,QAAQ","ignoreList":[]}
@@ -149,6 +149,8 @@ function DuotonePicker({
149
149
  options: options,
150
150
  actions: !!clearable && /*#__PURE__*/(0, _jsxRuntime.jsx)(_circularOptionPicker.default.ButtonAction, {
151
151
  onClick: () => onChange(undefined),
152
+ accessibleWhenDisabled: true,
153
+ disabled: !value,
152
154
  children: (0, _i18n.__)('Clear')
153
155
  }),
154
156
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_spacer.Spacer, {
@@ -1 +1 @@
1
- {"version":3,"names":["_es","_interopRequireDefault","require","_element","_i18n","_colorListPicker","_circularOptionPicker","_vStack","_customDuotoneBar","_utils","_spacer","_jsxRuntime","DuotonePicker","asButtons","loop","clearable","unsetable","colorPalette","duotonePalette","disableCustomColors","disableCustomDuotone","value","onChange","ariaLabel","ariaLabelledby","otherProps","defaultDark","defaultLight","useMemo","getDefaultColors","isUnset","unsetOptionLabel","__","unsetOption","jsx","default","Option","isSelected","tooltipText","className","onClick","undefined","duotoneOptions","map","colors","slug","name","style","background","getGradientFromCSSColors","color","sprintf","label","fastDeepEqual","metaProps","_metaProps","options","actions","ButtonAction","children","Spacer","paddingTop","length","jsxs","VStack","spacing","labels","enableAlpha","newColors","newValue","_default","exports"],"sources":["@wordpress/components/src/duotone-picker/duotone-picker.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorListPicker from './color-list-picker';\nimport CircularOptionPicker from '../circular-option-picker';\nimport { VStack } from '../v-stack';\n\nimport CustomDuotoneBar from './custom-duotone-bar';\nimport { getDefaultColors, getGradientFromCSSColors } from './utils';\nimport { Spacer } from '../spacer';\nimport type { DuotonePickerProps } from './types';\n\n/**\n * ```jsx\n * import { DuotonePicker, DuotoneSwatch } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const DUOTONE_PALETTE = [\n * \t{ colors: [ '#8c00b7', '#fcff41' ], name: 'Purple and yellow', slug: 'purple-yellow' },\n * \t{ colors: [ '#000097', '#ff4747' ], name: 'Blue and red', slug: 'blue-red' },\n * ];\n *\n * const COLOR_PALETTE = [\n * \t{ color: '#ff4747', name: 'Red', slug: 'red' },\n * \t{ color: '#fcff41', name: 'Yellow', slug: 'yellow' },\n * \t{ color: '#000097', name: 'Blue', slug: 'blue' },\n * \t{ color: '#8c00b7', name: 'Purple', slug: 'purple' },\n * ];\n *\n * const Example = () => {\n * \tconst [ duotone, setDuotone ] = useState( [ '#000000', '#ffffff' ] );\n * \treturn (\n * \t\t<>\n * \t\t\t<DuotonePicker\n * \t\t\t\tduotonePalette={ DUOTONE_PALETTE }\n * \t\t\t\tcolorPalette={ COLOR_PALETTE }\n * \t\t\t\tvalue={ duotone }\n * \t\t\t\tonChange={ setDuotone }\n * \t\t\t/>\n * \t\t\t<DuotoneSwatch values={ duotone } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nfunction DuotonePicker( {\n\tasButtons,\n\tloop,\n\tclearable = true,\n\tunsetable = true,\n\tcolorPalette,\n\tduotonePalette,\n\tdisableCustomColors,\n\tdisableCustomDuotone,\n\tvalue,\n\tonChange,\n\t'aria-label': ariaLabel,\n\t'aria-labelledby': ariaLabelledby,\n\t...otherProps\n}: DuotonePickerProps ) {\n\tconst [ defaultDark, defaultLight ] = useMemo(\n\t\t() => getDefaultColors( colorPalette ),\n\t\t[ colorPalette ]\n\t);\n\n\tconst isUnset = value === 'unset';\n\tconst unsetOptionLabel = __( 'Unset' );\n\n\tconst unsetOption = (\n\t\t<CircularOptionPicker.Option\n\t\t\tkey=\"unset\"\n\t\t\tvalue=\"unset\"\n\t\t\tisSelected={ isUnset }\n\t\t\ttooltipText={ unsetOptionLabel }\n\t\t\taria-label={ unsetOptionLabel }\n\t\t\tclassName=\"components-duotone-picker__color-indicator\"\n\t\t\tonClick={ () => {\n\t\t\t\tonChange( isUnset ? undefined : 'unset' );\n\t\t\t} }\n\t\t/>\n\t);\n\n\tconst duotoneOptions = duotonePalette.map( ( { colors, slug, name } ) => {\n\t\tconst style = {\n\t\t\tbackground: getGradientFromCSSColors( colors, '135deg' ),\n\t\t\tcolor: 'transparent',\n\t\t};\n\t\tconst tooltipText =\n\t\t\tname ??\n\t\t\tsprintf(\n\t\t\t\t// translators: %s: duotone code e.g: \"dark-grayscale\" or \"7f7f7f-ffffff\".\n\t\t\t\t__( 'Duotone code: %s' ),\n\t\t\t\tslug\n\t\t\t);\n\t\tconst label = name\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %s: The name of the option e.g: \"Dark grayscale\".\n\t\t\t\t\t__( 'Duotone: %s' ),\n\t\t\t\t\tname\n\t\t\t )\n\t\t\t: tooltipText;\n\t\tconst isSelected = fastDeepEqual( colors, value );\n\n\t\treturn (\n\t\t\t<CircularOptionPicker.Option\n\t\t\t\tkey={ slug }\n\t\t\t\tvalue={ colors }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\taria-label={ label }\n\t\t\t\ttooltipText={ tooltipText }\n\t\t\t\tstyle={ style }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tonChange( isSelected ? undefined : colors );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} );\n\n\tlet metaProps:\n\t\t| { asButtons: false; loop?: boolean; 'aria-label': string }\n\t\t| { asButtons: false; loop?: boolean; 'aria-labelledby': string }\n\t\t| { asButtons: true };\n\n\tif ( asButtons ) {\n\t\tmetaProps = { asButtons: true };\n\t} else {\n\t\tconst _metaProps: { asButtons: false; loop?: boolean } = {\n\t\t\tasButtons: false,\n\t\t\tloop,\n\t\t};\n\n\t\tif ( ariaLabel ) {\n\t\t\tmetaProps = { ..._metaProps, 'aria-label': ariaLabel };\n\t\t} else if ( ariaLabelledby ) {\n\t\t\tmetaProps = {\n\t\t\t\t..._metaProps,\n\t\t\t\t'aria-labelledby': ariaLabelledby,\n\t\t\t};\n\t\t} else {\n\t\t\tmetaProps = {\n\t\t\t\t..._metaProps,\n\t\t\t\t'aria-label': __( 'Custom color picker.' ),\n\t\t\t};\n\t\t}\n\t}\n\n\tconst options = unsetable\n\t\t? [ unsetOption, ...duotoneOptions ]\n\t\t: duotoneOptions;\n\n\treturn (\n\t\t<CircularOptionPicker\n\t\t\t{ ...otherProps }\n\t\t\t{ ...metaProps }\n\t\t\toptions={ options }\n\t\t\tactions={\n\t\t\t\t!! clearable && (\n\t\t\t\t\t<CircularOptionPicker.ButtonAction\n\t\t\t\t\t\tonClick={ () => onChange( undefined ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</CircularOptionPicker.ButtonAction>\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<Spacer paddingTop={ options.length === 0 ? 0 : 4 }>\n\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t{ ! disableCustomColors && ! disableCustomDuotone && (\n\t\t\t\t\t\t<CustomDuotoneBar\n\t\t\t\t\t\t\tvalue={ isUnset ? undefined : value }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! disableCustomDuotone && (\n\t\t\t\t\t\t<ColorListPicker\n\t\t\t\t\t\t\tlabels={ [ __( 'Shadows' ), __( 'Highlights' ) ] }\n\t\t\t\t\t\t\tcolors={ colorPalette }\n\t\t\t\t\t\t\tvalue={ isUnset ? undefined : value }\n\t\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\t\tonChange={ ( newColors ) => {\n\t\t\t\t\t\t\t\tif ( ! newColors[ 0 ] ) {\n\t\t\t\t\t\t\t\t\tnewColors[ 0 ] = defaultDark;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( ! newColors[ 1 ] ) {\n\t\t\t\t\t\t\t\t\tnewColors[ 1 ] = defaultLight;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tconst newValue =\n\t\t\t\t\t\t\t\t\tnewColors.length >= 2\n\t\t\t\t\t\t\t\t\t\t? newColors\n\t\t\t\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\t\t\t\t// @ts-expect-error TODO: The color arrays for a DuotonePicker should be a tuple of two colors,\n\t\t\t\t\t\t\t\t// but it's currently typed as a string[].\n\t\t\t\t\t\t\t\t// See also https://github.com/WordPress/gutenberg/pull/49060#discussion_r1136951035\n\t\t\t\t\t\t\t\tonChange( newValue );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t</Spacer>\n\t\t</CircularOptionPicker>\n\t);\n}\n\nexport default DuotonePicker;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_es","_interopRequireDefault","require","_element","_i18n","_colorListPicker","_circularOptionPicker","_vStack","_customDuotoneBar","_utils","_spacer","_jsxRuntime","DuotonePicker","asButtons","loop","clearable","unsetable","colorPalette","duotonePalette","disableCustomColors","disableCustomDuotone","value","onChange","ariaLabel","ariaLabelledby","otherProps","defaultDark","defaultLight","useMemo","getDefaultColors","isUnset","unsetOptionLabel","__","unsetOption","jsx","default","Option","isSelected","tooltipText","className","onClick","undefined","duotoneOptions","map","colors","slug","name","style","background","getGradientFromCSSColors","color","sprintf","label","fastDeepEqual","metaProps","_metaProps","options","actions","ButtonAction","accessibleWhenDisabled","disabled","children","Spacer","paddingTop","length","jsxs","VStack","spacing","labels","enableAlpha","newColors","newValue","_default","exports"],"sources":["@wordpress/components/src/duotone-picker/duotone-picker.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport fastDeepEqual from 'fast-deep-equal/es6';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorListPicker from './color-list-picker';\nimport CircularOptionPicker from '../circular-option-picker';\nimport { VStack } from '../v-stack';\n\nimport CustomDuotoneBar from './custom-duotone-bar';\nimport { getDefaultColors, getGradientFromCSSColors } from './utils';\nimport { Spacer } from '../spacer';\nimport type { DuotonePickerProps } from './types';\n\n/**\n * ```jsx\n * import { DuotonePicker, DuotoneSwatch } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const DUOTONE_PALETTE = [\n * \t{ colors: [ '#8c00b7', '#fcff41' ], name: 'Purple and yellow', slug: 'purple-yellow' },\n * \t{ colors: [ '#000097', '#ff4747' ], name: 'Blue and red', slug: 'blue-red' },\n * ];\n *\n * const COLOR_PALETTE = [\n * \t{ color: '#ff4747', name: 'Red', slug: 'red' },\n * \t{ color: '#fcff41', name: 'Yellow', slug: 'yellow' },\n * \t{ color: '#000097', name: 'Blue', slug: 'blue' },\n * \t{ color: '#8c00b7', name: 'Purple', slug: 'purple' },\n * ];\n *\n * const Example = () => {\n * \tconst [ duotone, setDuotone ] = useState( [ '#000000', '#ffffff' ] );\n * \treturn (\n * \t\t<>\n * \t\t\t<DuotonePicker\n * \t\t\t\tduotonePalette={ DUOTONE_PALETTE }\n * \t\t\t\tcolorPalette={ COLOR_PALETTE }\n * \t\t\t\tvalue={ duotone }\n * \t\t\t\tonChange={ setDuotone }\n * \t\t\t/>\n * \t\t\t<DuotoneSwatch values={ duotone } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nfunction DuotonePicker( {\n\tasButtons,\n\tloop,\n\tclearable = true,\n\tunsetable = true,\n\tcolorPalette,\n\tduotonePalette,\n\tdisableCustomColors,\n\tdisableCustomDuotone,\n\tvalue,\n\tonChange,\n\t'aria-label': ariaLabel,\n\t'aria-labelledby': ariaLabelledby,\n\t...otherProps\n}: DuotonePickerProps ) {\n\tconst [ defaultDark, defaultLight ] = useMemo(\n\t\t() => getDefaultColors( colorPalette ),\n\t\t[ colorPalette ]\n\t);\n\n\tconst isUnset = value === 'unset';\n\tconst unsetOptionLabel = __( 'Unset' );\n\n\tconst unsetOption = (\n\t\t<CircularOptionPicker.Option\n\t\t\tkey=\"unset\"\n\t\t\tvalue=\"unset\"\n\t\t\tisSelected={ isUnset }\n\t\t\ttooltipText={ unsetOptionLabel }\n\t\t\taria-label={ unsetOptionLabel }\n\t\t\tclassName=\"components-duotone-picker__color-indicator\"\n\t\t\tonClick={ () => {\n\t\t\t\tonChange( isUnset ? undefined : 'unset' );\n\t\t\t} }\n\t\t/>\n\t);\n\n\tconst duotoneOptions = duotonePalette.map( ( { colors, slug, name } ) => {\n\t\tconst style = {\n\t\t\tbackground: getGradientFromCSSColors( colors, '135deg' ),\n\t\t\tcolor: 'transparent',\n\t\t};\n\t\tconst tooltipText =\n\t\t\tname ??\n\t\t\tsprintf(\n\t\t\t\t// translators: %s: duotone code e.g: \"dark-grayscale\" or \"7f7f7f-ffffff\".\n\t\t\t\t__( 'Duotone code: %s' ),\n\t\t\t\tslug\n\t\t\t);\n\t\tconst label = name\n\t\t\t? sprintf(\n\t\t\t\t\t// translators: %s: The name of the option e.g: \"Dark grayscale\".\n\t\t\t\t\t__( 'Duotone: %s' ),\n\t\t\t\t\tname\n\t\t\t )\n\t\t\t: tooltipText;\n\t\tconst isSelected = fastDeepEqual( colors, value );\n\n\t\treturn (\n\t\t\t<CircularOptionPicker.Option\n\t\t\t\tkey={ slug }\n\t\t\t\tvalue={ colors }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\taria-label={ label }\n\t\t\t\ttooltipText={ tooltipText }\n\t\t\t\tstyle={ style }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tonChange( isSelected ? undefined : colors );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t} );\n\n\tlet metaProps:\n\t\t| { asButtons: false; loop?: boolean; 'aria-label': string }\n\t\t| { asButtons: false; loop?: boolean; 'aria-labelledby': string }\n\t\t| { asButtons: true };\n\n\tif ( asButtons ) {\n\t\tmetaProps = { asButtons: true };\n\t} else {\n\t\tconst _metaProps: { asButtons: false; loop?: boolean } = {\n\t\t\tasButtons: false,\n\t\t\tloop,\n\t\t};\n\n\t\tif ( ariaLabel ) {\n\t\t\tmetaProps = { ..._metaProps, 'aria-label': ariaLabel };\n\t\t} else if ( ariaLabelledby ) {\n\t\t\tmetaProps = {\n\t\t\t\t..._metaProps,\n\t\t\t\t'aria-labelledby': ariaLabelledby,\n\t\t\t};\n\t\t} else {\n\t\t\tmetaProps = {\n\t\t\t\t..._metaProps,\n\t\t\t\t'aria-label': __( 'Custom color picker.' ),\n\t\t\t};\n\t\t}\n\t}\n\n\tconst options = unsetable\n\t\t? [ unsetOption, ...duotoneOptions ]\n\t\t: duotoneOptions;\n\n\treturn (\n\t\t<CircularOptionPicker\n\t\t\t{ ...otherProps }\n\t\t\t{ ...metaProps }\n\t\t\toptions={ options }\n\t\t\tactions={\n\t\t\t\t!! clearable && (\n\t\t\t\t\t<CircularOptionPicker.ButtonAction\n\t\t\t\t\t\tonClick={ () => onChange( undefined ) }\n\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\tdisabled={ ! value }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</CircularOptionPicker.ButtonAction>\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<Spacer paddingTop={ options.length === 0 ? 0 : 4 }>\n\t\t\t\t<VStack spacing={ 3 }>\n\t\t\t\t\t{ ! disableCustomColors && ! disableCustomDuotone && (\n\t\t\t\t\t\t<CustomDuotoneBar\n\t\t\t\t\t\t\tvalue={ isUnset ? undefined : value }\n\t\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! disableCustomDuotone && (\n\t\t\t\t\t\t<ColorListPicker\n\t\t\t\t\t\t\tlabels={ [ __( 'Shadows' ), __( 'Highlights' ) ] }\n\t\t\t\t\t\t\tcolors={ colorPalette }\n\t\t\t\t\t\t\tvalue={ isUnset ? undefined : value }\n\t\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\t\tenableAlpha\n\t\t\t\t\t\t\tonChange={ ( newColors ) => {\n\t\t\t\t\t\t\t\tif ( ! newColors[ 0 ] ) {\n\t\t\t\t\t\t\t\t\tnewColors[ 0 ] = defaultDark;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( ! newColors[ 1 ] ) {\n\t\t\t\t\t\t\t\t\tnewColors[ 1 ] = defaultLight;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tconst newValue =\n\t\t\t\t\t\t\t\t\tnewColors.length >= 2\n\t\t\t\t\t\t\t\t\t\t? newColors\n\t\t\t\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\t\t\t\t// @ts-expect-error TODO: The color arrays for a DuotonePicker should be a tuple of two colors,\n\t\t\t\t\t\t\t\t// but it's currently typed as a string[].\n\t\t\t\t\t\t\t\t// See also https://github.com/WordPress/gutenberg/pull/49060#discussion_r1136951035\n\t\t\t\t\t\t\t\tonChange( newValue );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t</Spacer>\n\t\t</CircularOptionPicker>\n\t);\n}\n\nexport default DuotonePicker;\n"],"mappings":"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","ignoreList":[]}
@@ -27,6 +27,7 @@ const FontSizePickerToggleGroup = props => {
27
27
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_toggleGroupControl.ToggleGroupControl, {
28
28
  __nextHasNoMarginBottom: true,
29
29
  __next40pxDefaultSize: __next40pxDefaultSize,
30
+ __shouldNotWarnDeprecated36pxSize: true,
30
31
  label: (0, _i18n.__)('Font size'),
31
32
  hideLabelFromVision: true,
32
33
  value: value,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_toggleGroupControl","_constants","_jsxRuntime","FontSizePickerToggleGroup","props","fontSizes","value","__next40pxDefaultSize","size","onChange","jsx","ToggleGroupControl","__nextHasNoMarginBottom","label","__","hideLabelFromVision","isBlock","children","map","fontSize","index","ToggleGroupControlOption","T_SHIRT_ABBREVIATIONS","name","T_SHIRT_NAMES","showTooltip","slug","_default","exports","default"],"sources":["@wordpress/components/src/font-size-picker/font-size-picker-toggle-group.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tToggleGroupControl,\n\tToggleGroupControlOption,\n} from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport type { FontSizePickerToggleGroupProps } from './types';\n\nconst FontSizePickerToggleGroup = ( props: FontSizePickerToggleGroupProps ) => {\n\tconst { fontSizes, value, __next40pxDefaultSize, size, onChange } = props;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\tlabel={ __( 'Font size' ) }\n\t\t\thideLabelFromVision\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tisBlock\n\t\t\tsize={ size }\n\t\t>\n\t\t\t{ fontSizes.map( ( fontSize, index ) => (\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey={ fontSize.slug }\n\t\t\t\t\tvalue={ fontSize.size }\n\t\t\t\t\tlabel={ T_SHIRT_ABBREVIATIONS[ index ] }\n\t\t\t\t\taria-label={ fontSize.name || T_SHIRT_NAMES[ index ] }\n\t\t\t\t\tshowTooltip\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</ToggleGroupControl>\n\t);\n};\n\nexport default FontSizePickerToggleGroup;\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAKA,IAAAC,mBAAA,GAAAD,OAAA;AAIA,IAAAE,UAAA,GAAAF,OAAA;AAAmE,IAAAG,WAAA,GAAAH,OAAA;AAZnE;AACA;AACA;;AAGA;AACA;AACA;;AAQA,MAAMI,yBAAyB,GAAKC,KAAqC,IAAM;EAC9E,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,qBAAqB;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGL,KAAK;EACzE,oBACC,IAAAF,WAAA,CAAAQ,GAAA,EAACV,mBAAA,CAAAW,kBAAkB;IAClBC,uBAAuB;IACvBL,qBAAqB,EAAGA,qBAAuB;IAC/CM,KAAK,EAAG,IAAAC,QAAE,EAAE,WAAY,CAAG;IAC3BC,mBAAmB;IACnBT,KAAK,EAAGA,KAAO;IACfG,QAAQ,EAAGA,QAAU;IACrBO,OAAO;IACPR,IAAI,EAAGA,IAAM;IAAAS,QAAA,EAEXZ,SAAS,CAACa,GAAG,CAAE,CAAEC,QAAQ,EAAEC,KAAK,kBACjC,IAAAlB,WAAA,CAAAQ,GAAA,EAACV,mBAAA,CAAAqB,wBAAwB;MAExBf,KAAK,EAAGa,QAAQ,CAACX,IAAM;MACvBK,KAAK,EAAGS,gCAAqB,CAAEF,KAAK,CAAI;MACxC,cAAaD,QAAQ,CAACI,IAAI,IAAIC,wBAAa,CAAEJ,KAAK,CAAI;MACtDK,WAAW;IAAA,GAJLN,QAAQ,CAACO,IAKf,CACA;EAAC,CACgB,CAAC;AAEvB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa1B,yBAAyB","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_toggleGroupControl","_constants","_jsxRuntime","FontSizePickerToggleGroup","props","fontSizes","value","__next40pxDefaultSize","size","onChange","jsx","ToggleGroupControl","__nextHasNoMarginBottom","__shouldNotWarnDeprecated36pxSize","label","__","hideLabelFromVision","isBlock","children","map","fontSize","index","ToggleGroupControlOption","T_SHIRT_ABBREVIATIONS","name","T_SHIRT_NAMES","showTooltip","slug","_default","exports","default"],"sources":["@wordpress/components/src/font-size-picker/font-size-picker-toggle-group.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tToggleGroupControl,\n\tToggleGroupControlOption,\n} from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport type { FontSizePickerToggleGroupProps } from './types';\n\nconst FontSizePickerToggleGroup = ( props: FontSizePickerToggleGroupProps ) => {\n\tconst { fontSizes, value, __next40pxDefaultSize, size, onChange } = props;\n\treturn (\n\t\t<ToggleGroupControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t__shouldNotWarnDeprecated36pxSize\n\t\t\tlabel={ __( 'Font size' ) }\n\t\t\thideLabelFromVision\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tisBlock\n\t\t\tsize={ size }\n\t\t>\n\t\t\t{ fontSizes.map( ( fontSize, index ) => (\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tkey={ fontSize.slug }\n\t\t\t\t\tvalue={ fontSize.size }\n\t\t\t\t\tlabel={ T_SHIRT_ABBREVIATIONS[ index ] }\n\t\t\t\t\taria-label={ fontSize.name || T_SHIRT_NAMES[ index ] }\n\t\t\t\t\tshowTooltip\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</ToggleGroupControl>\n\t);\n};\n\nexport default FontSizePickerToggleGroup;\n"],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAKA,IAAAC,mBAAA,GAAAD,OAAA;AAIA,IAAAE,UAAA,GAAAF,OAAA;AAAmE,IAAAG,WAAA,GAAAH,OAAA;AAZnE;AACA;AACA;;AAGA;AACA;AACA;;AAQA,MAAMI,yBAAyB,GAAKC,KAAqC,IAAM;EAC9E,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,qBAAqB;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGL,KAAK;EACzE,oBACC,IAAAF,WAAA,CAAAQ,GAAA,EAACV,mBAAA,CAAAW,kBAAkB;IAClBC,uBAAuB;IACvBL,qBAAqB,EAAGA,qBAAuB;IAC/CM,iCAAiC;IACjCC,KAAK,EAAG,IAAAC,QAAE,EAAE,WAAY,CAAG;IAC3BC,mBAAmB;IACnBV,KAAK,EAAGA,KAAO;IACfG,QAAQ,EAAGA,QAAU;IACrBQ,OAAO;IACPT,IAAI,EAAGA,IAAM;IAAAU,QAAA,EAEXb,SAAS,CAACc,GAAG,CAAE,CAAEC,QAAQ,EAAEC,KAAK,kBACjC,IAAAnB,WAAA,CAAAQ,GAAA,EAACV,mBAAA,CAAAsB,wBAAwB;MAExBhB,KAAK,EAAGc,QAAQ,CAACZ,IAAM;MACvBM,KAAK,EAAGS,gCAAqB,CAAEF,KAAK,CAAI;MACxC,cAAaD,QAAQ,CAACI,IAAI,IAAIC,wBAAa,CAAEJ,KAAK,CAAI;MACtDK,WAAW;IAAA,GAJLN,QAAQ,CAACO,IAKf,CACA;EAAC,CACgB,CAAC;AAEvB,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa3B,yBAAyB","ignoreList":[]}
@@ -19,6 +19,7 @@ var _spacer = require("../spacer");
19
19
  var _fontSizePickerSelect = _interopRequireDefault(require("./font-size-picker-select"));
20
20
  var _fontSizePickerToggleGroup = _interopRequireDefault(require("./font-size-picker-toggle-group"));
21
21
  var _constants = require("./constants");
22
+ var _deprecated36pxSize = require("../utils/deprecated-36px-size");
22
23
  var _jsxRuntime = require("react/jsx-runtime");
23
24
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
25
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -94,6 +95,11 @@ const UnforwardedFontSizePicker = (props, ref) => {
94
95
  const [valueQuantity, valueUnit] = (0, _unitControl.parseQuantityAndUnitFromRawValue)(value, units);
95
96
  const isValueUnitRelative = !!valueUnit && ['em', 'rem', 'vw', 'vh'].includes(valueUnit);
96
97
  const isDisabled = value === undefined;
98
+ (0, _deprecated36pxSize.maybeWarnDeprecated36pxSize)({
99
+ componentName: 'FontSizePicker',
100
+ __next40pxDefaultSize,
101
+ size
102
+ });
97
103
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.Container, {
98
104
  ref: ref,
99
105
  className: "components-font-size-picker",
@@ -174,6 +180,7 @@ const UnforwardedFontSizePicker = (props, ref) => {
174
180
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_rangeControl.default, {
175
181
  __nextHasNoMarginBottom: true,
176
182
  __next40pxDefaultSize: __next40pxDefaultSize,
183
+ __shouldNotWarnDeprecated36pxSize: true,
177
184
  className: "components-font-size-picker__custom-input",
178
185
  label: (0, _i18n.__)('Custom Size'),
179
186
  hideLabelFromVision: true,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_icons","_element","_button","_rangeControl","_interopRequireDefault","_flex","_unitControl","_interopRequireWildcard","_visuallyHidden","_utils","_styles","_spacer","_fontSizePickerSelect","_fontSizePickerToggleGroup","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DEFAULT_UNITS","MAX_TOGGLE_GROUP_SIZES","UnforwardedFontSizePicker","props","ref","__next40pxDefaultSize","fallbackFontSize","fontSizes","disableCustomFontSizes","onChange","size","units","unitsProp","value","withSlider","withReset","useCustomUnits","availableUnits","selectedFontSize","find","fontSize","isCustomValue","userRequestedCustom","setUserRequestedCustom","useState","currentPickerType","length","headerHint","useMemo","__","name","T_SHIRT_NAMES","indexOf","commonUnit","getCommonSizeUnit","hasUnits","valueQuantity","valueUnit","parseQuantityAndUnitFromRawValue","isValueUnitRelative","includes","isDisabled","undefined","jsxs","Container","className","children","jsx","VisuallyHidden","as","Spacer","Header","HeaderLabel","HeaderHint","HeaderToggle","label","icon","settings","onClick","isPressed","newValue","Number","onSelectCustom","Flex","FlexItem","isBlock","labelPosition","hideLabelFromVision","parseInt","min","marginX","marginBottom","__nextHasNoMarginBottom","initialPosition","withInputField","max","step","Button","disabled","accessibleWhenDisabled","variant","FontSizePicker","exports","forwardRef","_default"],"sources":["@wordpress/components/src/font-size-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, useMemo, forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport {\n\tdefault as UnitControl,\n\tparseQuantityAndUnitFromRawValue,\n\tuseCustomUnits,\n} from '../unit-control';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { getCommonSizeUnit } from './utils';\nimport type { FontSizePickerProps } from './types';\nimport {\n\tContainer,\n\tHeader,\n\tHeaderHint,\n\tHeaderLabel,\n\tHeaderToggle,\n} from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport { T_SHIRT_NAMES } from './constants';\n\nconst DEFAULT_UNITS = [ 'px', 'em', 'rem', 'vw', 'vh' ];\n\nconst MAX_TOGGLE_GROUP_SIZES = 5;\n\nconst UnforwardedFontSizePicker = (\n\tprops: FontSizePickerProps,\n\tref: ForwardedRef< any >\n) => {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\tfallbackFontSize,\n\t\tfontSizes = [],\n\t\tdisableCustomFontSizes = false,\n\t\tonChange,\n\t\tsize = 'default',\n\t\tunits: unitsProp = DEFAULT_UNITS,\n\t\tvalue,\n\t\twithSlider = false,\n\t\twithReset = true,\n\t} = props;\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: unitsProp,\n\t} );\n\n\tconst selectedFontSize = fontSizes.find(\n\t\t( fontSize ) => fontSize.size === value\n\t);\n\tconst isCustomValue = !! value && ! selectedFontSize;\n\n\t// Initially request a custom picker if the value is not from the predef list.\n\tconst [ userRequestedCustom, setUserRequestedCustom ] =\n\t\tuseState( isCustomValue );\n\n\tlet currentPickerType;\n\tif ( ! disableCustomFontSizes && userRequestedCustom ) {\n\t\t// While showing the custom value picker, switch back to predef only if\n\t\t// `disableCustomFontSizes` is set to `true`.\n\t\tcurrentPickerType = 'custom' as const;\n\t} else {\n\t\tcurrentPickerType =\n\t\t\tfontSizes.length > MAX_TOGGLE_GROUP_SIZES\n\t\t\t\t? ( 'select' as const )\n\t\t\t\t: ( 'togglegroup' as const );\n\t}\n\n\tconst headerHint = useMemo( () => {\n\t\tswitch ( currentPickerType ) {\n\t\t\tcase 'custom':\n\t\t\t\treturn __( 'Custom' );\n\t\t\tcase 'togglegroup':\n\t\t\t\tif ( selectedFontSize ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tselectedFontSize.name ||\n\t\t\t\t\t\tT_SHIRT_NAMES[ fontSizes.indexOf( selectedFontSize ) ]\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'select':\n\t\t\t\tconst commonUnit = getCommonSizeUnit( fontSizes );\n\t\t\t\tif ( commonUnit ) {\n\t\t\t\t\treturn `(${ commonUnit })`;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn '';\n\t}, [ currentPickerType, selectedFontSize, fontSizes ] );\n\n\tif ( fontSizes.length === 0 && disableCustomFontSizes ) {\n\t\treturn null;\n\t}\n\n\t// If neither the value or first font size is a string, then FontSizePicker\n\t// operates in a legacy \"unitless\" mode where UnitControl can only be used\n\t// to select px values and onChange() is always called with number values.\n\tconst hasUnits =\n\t\ttypeof value === 'string' || typeof fontSizes[ 0 ]?.size === 'string';\n\n\tconst [ valueQuantity, valueUnit ] = parseQuantityAndUnitFromRawValue(\n\t\tvalue,\n\t\tunits\n\t);\n\tconst isValueUnitRelative =\n\t\t!! valueUnit && [ 'em', 'rem', 'vw', 'vh' ].includes( valueUnit );\n\tconst isDisabled = value === undefined;\n\n\treturn (\n\t\t<Container ref={ ref } className=\"components-font-size-picker\">\n\t\t\t<VisuallyHidden as=\"legend\">{ __( 'Font size' ) }</VisuallyHidden>\n\t\t\t<Spacer>\n\t\t\t\t<Header className=\"components-font-size-picker__header\">\n\t\t\t\t\t<HeaderLabel\n\t\t\t\t\t\taria-label={ `${ __( 'Size' ) } ${ headerHint || '' }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Size' ) }\n\t\t\t\t\t\t{ headerHint && (\n\t\t\t\t\t\t\t<HeaderHint className=\"components-font-size-picker__header__hint\">\n\t\t\t\t\t\t\t\t{ headerHint }\n\t\t\t\t\t\t\t</HeaderHint>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HeaderLabel>\n\t\t\t\t\t{ ! disableCustomFontSizes && (\n\t\t\t\t\t\t<HeaderToggle\n\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\tcurrentPickerType === 'custom'\n\t\t\t\t\t\t\t\t\t? __( 'Use size preset' )\n\t\t\t\t\t\t\t\t\t: __( 'Set custom size' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ settings }\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tsetUserRequestedCustom( ! userRequestedCustom )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisPressed={ currentPickerType === 'custom' }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Header>\n\t\t\t</Spacer>\n\t\t\t<div>\n\t\t\t\t{ currentPickerType === 'select' && (\n\t\t\t\t\t<FontSizePickerSelect\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tdisableCustomFontSizes={ disableCustomFontSizes }\n\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\thasUnits ? newValue : Number( newValue ),\n\t\t\t\t\t\t\t\t\tfontSizes.find(\n\t\t\t\t\t\t\t\t\t\t( fontSize ) =>\n\t\t\t\t\t\t\t\t\t\t\tfontSize.size === newValue\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonSelectCustom={ () => setUserRequestedCustom( true ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ currentPickerType === 'togglegroup' && (\n\t\t\t\t\t<FontSizePickerToggleGroup\n\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\thasUnits ? newValue : Number( newValue ),\n\t\t\t\t\t\t\t\t\tfontSizes.find(\n\t\t\t\t\t\t\t\t\t\t( fontSize ) =>\n\t\t\t\t\t\t\t\t\t\t\tfontSize.size === newValue\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ currentPickerType === 'custom' && (\n\t\t\t\t\t<Flex className=\"components-font-size-picker__custom-size-control\">\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\t\t\tlabel={ __( 'Custom' ) }\n\t\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\t\t\tsetUserRequestedCustom( true );\n\n\t\t\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\t\t\thasUnits\n\t\t\t\t\t\t\t\t\t\t\t\t? newValue\n\t\t\t\t\t\t\t\t\t\t\t\t: parseInt( newValue, 10 )\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} }\n\t\t\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\t\t\tunits={ hasUnits ? units : [] }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ withSlider && (\n\t\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t\t<Spacer marginX={ 2 } marginBottom={ 0 }>\n\t\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize={\n\t\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tclassName=\"components-font-size-picker__custom-input\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Custom Size' ) }\n\t\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\t\tvalue={ valueQuantity }\n\t\t\t\t\t\t\t\t\t\tinitialPosition={ fallbackFontSize }\n\t\t\t\t\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetUserRequestedCustom( true );\n\n\t\t\t\t\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t\t\t} else if ( hasUnits ) {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewValue +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t( valueUnit ?? 'px' )\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} else {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.( newValue );\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\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tmax={ isValueUnitRelative ? 10 : 100 }\n\t\t\t\t\t\t\t\t\t\tstep={ isValueUnitRelative ? 0.1 : 1 }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ withReset && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tsize={\n\t\t\t\t\t\t\t\t\t\tsize === '__unstable-large' ||\n\t\t\t\t\t\t\t\t\t\tprops.__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t\t? 'default'\n\t\t\t\t\t\t\t\t\t\t\t: 'small'\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\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</Container>\n\t);\n};\n\nexport const FontSizePicker = forwardRef( UnforwardedFontSizePicker );\n\nexport default FontSizePicker;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_i18n","require","_icons","_element","_button","_rangeControl","_interopRequireDefault","_flex","_unitControl","_interopRequireWildcard","_visuallyHidden","_utils","_styles","_spacer","_fontSizePickerSelect","_fontSizePickerToggleGroup","_constants","_deprecated36pxSize","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DEFAULT_UNITS","MAX_TOGGLE_GROUP_SIZES","UnforwardedFontSizePicker","props","ref","__next40pxDefaultSize","fallbackFontSize","fontSizes","disableCustomFontSizes","onChange","size","units","unitsProp","value","withSlider","withReset","useCustomUnits","availableUnits","selectedFontSize","find","fontSize","isCustomValue","userRequestedCustom","setUserRequestedCustom","useState","currentPickerType","length","headerHint","useMemo","__","name","T_SHIRT_NAMES","indexOf","commonUnit","getCommonSizeUnit","hasUnits","valueQuantity","valueUnit","parseQuantityAndUnitFromRawValue","isValueUnitRelative","includes","isDisabled","undefined","maybeWarnDeprecated36pxSize","componentName","jsxs","Container","className","children","jsx","VisuallyHidden","as","Spacer","Header","HeaderLabel","HeaderHint","HeaderToggle","label","icon","settings","onClick","isPressed","newValue","Number","onSelectCustom","Flex","FlexItem","isBlock","labelPosition","hideLabelFromVision","parseInt","min","marginX","marginBottom","__nextHasNoMarginBottom","__shouldNotWarnDeprecated36pxSize","initialPosition","withInputField","max","step","Button","disabled","accessibleWhenDisabled","variant","FontSizePicker","exports","forwardRef","_default"],"sources":["@wordpress/components/src/font-size-picker/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, useMemo, forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport {\n\tdefault as UnitControl,\n\tparseQuantityAndUnitFromRawValue,\n\tuseCustomUnits,\n} from '../unit-control';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { getCommonSizeUnit } from './utils';\nimport type { FontSizePickerProps } from './types';\nimport {\n\tContainer,\n\tHeader,\n\tHeaderHint,\n\tHeaderLabel,\n\tHeaderToggle,\n} from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport { T_SHIRT_NAMES } from './constants';\nimport { maybeWarnDeprecated36pxSize } from '../utils/deprecated-36px-size';\n\nconst DEFAULT_UNITS = [ 'px', 'em', 'rem', 'vw', 'vh' ];\n\nconst MAX_TOGGLE_GROUP_SIZES = 5;\n\nconst UnforwardedFontSizePicker = (\n\tprops: FontSizePickerProps,\n\tref: ForwardedRef< any >\n) => {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\tfallbackFontSize,\n\t\tfontSizes = [],\n\t\tdisableCustomFontSizes = false,\n\t\tonChange,\n\t\tsize = 'default',\n\t\tunits: unitsProp = DEFAULT_UNITS,\n\t\tvalue,\n\t\twithSlider = false,\n\t\twithReset = true,\n\t} = props;\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: unitsProp,\n\t} );\n\n\tconst selectedFontSize = fontSizes.find(\n\t\t( fontSize ) => fontSize.size === value\n\t);\n\tconst isCustomValue = !! value && ! selectedFontSize;\n\n\t// Initially request a custom picker if the value is not from the predef list.\n\tconst [ userRequestedCustom, setUserRequestedCustom ] =\n\t\tuseState( isCustomValue );\n\n\tlet currentPickerType;\n\tif ( ! disableCustomFontSizes && userRequestedCustom ) {\n\t\t// While showing the custom value picker, switch back to predef only if\n\t\t// `disableCustomFontSizes` is set to `true`.\n\t\tcurrentPickerType = 'custom' as const;\n\t} else {\n\t\tcurrentPickerType =\n\t\t\tfontSizes.length > MAX_TOGGLE_GROUP_SIZES\n\t\t\t\t? ( 'select' as const )\n\t\t\t\t: ( 'togglegroup' as const );\n\t}\n\n\tconst headerHint = useMemo( () => {\n\t\tswitch ( currentPickerType ) {\n\t\t\tcase 'custom':\n\t\t\t\treturn __( 'Custom' );\n\t\t\tcase 'togglegroup':\n\t\t\t\tif ( selectedFontSize ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tselectedFontSize.name ||\n\t\t\t\t\t\tT_SHIRT_NAMES[ fontSizes.indexOf( selectedFontSize ) ]\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 'select':\n\t\t\t\tconst commonUnit = getCommonSizeUnit( fontSizes );\n\t\t\t\tif ( commonUnit ) {\n\t\t\t\t\treturn `(${ commonUnit })`;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn '';\n\t}, [ currentPickerType, selectedFontSize, fontSizes ] );\n\n\tif ( fontSizes.length === 0 && disableCustomFontSizes ) {\n\t\treturn null;\n\t}\n\n\t// If neither the value or first font size is a string, then FontSizePicker\n\t// operates in a legacy \"unitless\" mode where UnitControl can only be used\n\t// to select px values and onChange() is always called with number values.\n\tconst hasUnits =\n\t\ttypeof value === 'string' || typeof fontSizes[ 0 ]?.size === 'string';\n\n\tconst [ valueQuantity, valueUnit ] = parseQuantityAndUnitFromRawValue(\n\t\tvalue,\n\t\tunits\n\t);\n\tconst isValueUnitRelative =\n\t\t!! valueUnit && [ 'em', 'rem', 'vw', 'vh' ].includes( valueUnit );\n\tconst isDisabled = value === undefined;\n\n\tmaybeWarnDeprecated36pxSize( {\n\t\tcomponentName: 'FontSizePicker',\n\t\t__next40pxDefaultSize,\n\t\tsize,\n\t} );\n\n\treturn (\n\t\t<Container ref={ ref } className=\"components-font-size-picker\">\n\t\t\t<VisuallyHidden as=\"legend\">{ __( 'Font size' ) }</VisuallyHidden>\n\t\t\t<Spacer>\n\t\t\t\t<Header className=\"components-font-size-picker__header\">\n\t\t\t\t\t<HeaderLabel\n\t\t\t\t\t\taria-label={ `${ __( 'Size' ) } ${ headerHint || '' }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Size' ) }\n\t\t\t\t\t\t{ headerHint && (\n\t\t\t\t\t\t\t<HeaderHint className=\"components-font-size-picker__header__hint\">\n\t\t\t\t\t\t\t\t{ headerHint }\n\t\t\t\t\t\t\t</HeaderHint>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HeaderLabel>\n\t\t\t\t\t{ ! disableCustomFontSizes && (\n\t\t\t\t\t\t<HeaderToggle\n\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\tcurrentPickerType === 'custom'\n\t\t\t\t\t\t\t\t\t? __( 'Use size preset' )\n\t\t\t\t\t\t\t\t\t: __( 'Set custom size' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ticon={ settings }\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tsetUserRequestedCustom( ! userRequestedCustom )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisPressed={ currentPickerType === 'custom' }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Header>\n\t\t\t</Spacer>\n\t\t\t<div>\n\t\t\t\t{ currentPickerType === 'select' && (\n\t\t\t\t\t<FontSizePickerSelect\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tdisableCustomFontSizes={ disableCustomFontSizes }\n\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\thasUnits ? newValue : Number( newValue ),\n\t\t\t\t\t\t\t\t\tfontSizes.find(\n\t\t\t\t\t\t\t\t\t\t( fontSize ) =>\n\t\t\t\t\t\t\t\t\t\t\tfontSize.size === newValue\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonSelectCustom={ () => setUserRequestedCustom( true ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ currentPickerType === 'togglegroup' && (\n\t\t\t\t\t<FontSizePickerToggleGroup\n\t\t\t\t\t\tfontSizes={ fontSizes }\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\thasUnits ? newValue : Number( newValue ),\n\t\t\t\t\t\t\t\t\tfontSizes.find(\n\t\t\t\t\t\t\t\t\t\t( fontSize ) =>\n\t\t\t\t\t\t\t\t\t\t\tfontSize.size === newValue\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ currentPickerType === 'custom' && (\n\t\t\t\t\t<Flex className=\"components-font-size-picker__custom-size-control\">\n\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t\t\t\tlabel={ __( 'Custom' ) }\n\t\t\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\t\t\tsetUserRequestedCustom( true );\n\n\t\t\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\t\t\thasUnits\n\t\t\t\t\t\t\t\t\t\t\t\t? newValue\n\t\t\t\t\t\t\t\t\t\t\t\t: parseInt( newValue, 10 )\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} }\n\t\t\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\t\t\tunits={ hasUnits ? units : [] }\n\t\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ withSlider && (\n\t\t\t\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t\t\t\t<Spacer marginX={ 2 } marginBottom={ 0 }>\n\t\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize={\n\t\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t__shouldNotWarnDeprecated36pxSize\n\t\t\t\t\t\t\t\t\t\tclassName=\"components-font-size-picker__custom-input\"\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Custom Size' ) }\n\t\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\t\tvalue={ valueQuantity }\n\t\t\t\t\t\t\t\t\t\tinitialPosition={ fallbackFontSize }\n\t\t\t\t\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetUserRequestedCustom( true );\n\n\t\t\t\t\t\t\t\t\t\t\tif ( newValue === undefined ) {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t\t\t} else if ( hasUnits ) {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.(\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewValue +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t( valueUnit ?? 'px' )\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} else {\n\t\t\t\t\t\t\t\t\t\t\t\tonChange?.( newValue );\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\tmin={ 0 }\n\t\t\t\t\t\t\t\t\t\tmax={ isValueUnitRelative ? 10 : 100 }\n\t\t\t\t\t\t\t\t\t\tstep={ isValueUnitRelative ? 0.1 : 1 }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ withReset && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tdisabled={ isDisabled }\n\t\t\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tonChange?.( undefined );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tsize={\n\t\t\t\t\t\t\t\t\t\tsize === '__unstable-large' ||\n\t\t\t\t\t\t\t\t\t\tprops.__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t\t? 'default'\n\t\t\t\t\t\t\t\t\t\t\t: 'small'\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\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</Container>\n\t);\n};\n\nexport const FontSizePicker = forwardRef( UnforwardedFontSizePicker );\n\nexport default FontSizePicker;\n"],"mappings":"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","ignoreList":[]}
@@ -56,7 +56,9 @@ function FormFileUpload({
56
56
  // @todo: Temporary fix a bug that prevents Chromium browsers from selecting ".heic" files
57
57
  // from the file upload. See https://core.trac.wordpress.org/ticket/62268#comment:4.
58
58
  // This can be removed once the Chromium fix is in the stable channel.
59
- const compatAccept = !!accept?.includes('image/*') ? `${accept}, image/heic, image/heif` : accept;
59
+ // Prevent Safari from adding "image/heic" and "image/heif" to the accept attribute.
60
+ const isSafari = globalThis.window?.navigator.userAgent.includes('Safari') && !globalThis.window?.navigator.userAgent.includes('Chrome') && !globalThis.window?.navigator.userAgent.includes('Chromium');
61
+ const compatAccept = !isSafari && !!accept?.includes('image/*') ? `${accept}, image/heic, image/heif` : accept;
60
62
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
61
63
  className: "components-form-file-upload",
62
64
  children: [ui, /*#__PURE__*/(0, _jsxRuntime.jsx)("input", {
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_button","_interopRequireDefault","_jsxRuntime","FormFileUpload","accept","children","multiple","onChange","onClick","render","props","ref","useRef","openFileDialog","current","click","ui","jsx","default","compatAccept","includes","jsxs","className","type","style","display","_default","exports"],"sources":["@wordpress/components/src/form-file-upload/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\nimport type { WordPressComponentProps } from '../context';\nimport type { FormFileUploadProps } from './types';\n\n/**\n * FormFileUpload is a component that allows users to select files from their local device.\n *\n * ```jsx\n * import { FormFileUpload } from '@wordpress/components';\n *\n * const MyFormFileUpload = () => (\n * <FormFileUpload\n * accept=\"image/*\"\n * onChange={ ( event ) => console.log( event.currentTarget.files ) }\n * >\n * Upload\n * </FormFileUpload>\n * );\n * ```\n */\nexport function FormFileUpload( {\n\taccept,\n\tchildren,\n\tmultiple = false,\n\tonChange,\n\tonClick,\n\trender,\n\t...props\n}: WordPressComponentProps< FormFileUploadProps, 'button', false > ) {\n\tconst ref = useRef< HTMLInputElement >( null );\n\tconst openFileDialog = () => {\n\t\tref.current?.click();\n\t};\n\n\tconst ui = render ? (\n\t\trender( { openFileDialog } )\n\t) : (\n\t\t<Button onClick={ openFileDialog } { ...props }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n\t// @todo: Temporary fix a bug that prevents Chromium browsers from selecting \".heic\" files\n\t// from the file upload. See https://core.trac.wordpress.org/ticket/62268#comment:4.\n\t// This can be removed once the Chromium fix is in the stable channel.\n\tconst compatAccept = !! accept?.includes( 'image/*' )\n\t\t? `${ accept }, image/heic, image/heif`\n\t\t: accept;\n\n\treturn (\n\t\t<div className=\"components-form-file-upload\">\n\t\t\t{ ui }\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\tref={ ref }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tstyle={ { display: 'none' } }\n\t\t\t\taccept={ compatAccept }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tdata-testid=\"form-file-upload-input\"\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport default FormFileUpload;\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+B,IAAAG,WAAA,GAAAH,OAAA;AAR/B;AACA;AACA;;AAGA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASI,cAAcA,CAAE;EAC/BC,MAAM;EACNC,QAAQ;EACRC,QAAQ,GAAG,KAAK;EAChBC,QAAQ;EACRC,OAAO;EACPC,MAAM;EACN,GAAGC;AAC6D,CAAC,EAAG;EACpE,MAAMC,GAAG,GAAG,IAAAC,eAAM,EAAsB,IAAK,CAAC;EAC9C,MAAMC,cAAc,GAAGA,CAAA,KAAM;IAC5BF,GAAG,CAACG,OAAO,EAAEC,KAAK,CAAC,CAAC;EACrB,CAAC;EAED,MAAMC,EAAE,GAAGP,MAAM,GAChBA,MAAM,CAAE;IAAEI;EAAe,CAAE,CAAC,gBAE5B,IAAAX,WAAA,CAAAe,GAAA,EAACjB,OAAA,CAAAkB,OAAM;IAACV,OAAO,EAAGK,cAAgB;IAAA,GAAMH,KAAK;IAAAL,QAAA,EAC1CA;EAAQ,CACH,CACR;EACD;EACA;EACA;EACA,MAAMc,YAAY,GAAG,CAAC,CAAEf,MAAM,EAAEgB,QAAQ,CAAE,SAAU,CAAC,GAClD,GAAIhB,MAAM,0BAA2B,GACrCA,MAAM;EAET,oBACC,IAAAF,WAAA,CAAAmB,IAAA;IAAKC,SAAS,EAAC,6BAA6B;IAAAjB,QAAA,GACzCW,EAAE,eACJ,IAAAd,WAAA,CAAAe,GAAA;MACCM,IAAI,EAAC,MAAM;MACXZ,GAAG,EAAGA,GAAK;MACXL,QAAQ,EAAGA,QAAU;MACrBkB,KAAK,EAAG;QAAEC,OAAO,EAAE;MAAO,CAAG;MAC7BrB,MAAM,EAAGe,YAAc;MACvBZ,QAAQ,EAAGA,QAAU;MACrBC,OAAO,EAAGA,OAAS;MACnB,eAAY;IAAwB,CACpC,CAAC;EAAA,CACE,CAAC;AAER;AAAC,IAAAkB,QAAA,GAAAC,OAAA,CAAAT,OAAA,GAEcf,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["_element","require","_button","_interopRequireDefault","_jsxRuntime","FormFileUpload","accept","children","multiple","onChange","onClick","render","props","ref","useRef","openFileDialog","current","click","ui","jsx","default","isSafari","globalThis","window","navigator","userAgent","includes","compatAccept","jsxs","className","type","style","display","_default","exports"],"sources":["@wordpress/components/src/form-file-upload/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\nimport type { WordPressComponentProps } from '../context';\nimport type { FormFileUploadProps } from './types';\n\n/**\n * FormFileUpload is a component that allows users to select files from their local device.\n *\n * ```jsx\n * import { FormFileUpload } from '@wordpress/components';\n *\n * const MyFormFileUpload = () => (\n * <FormFileUpload\n * accept=\"image/*\"\n * onChange={ ( event ) => console.log( event.currentTarget.files ) }\n * >\n * Upload\n * </FormFileUpload>\n * );\n * ```\n */\nexport function FormFileUpload( {\n\taccept,\n\tchildren,\n\tmultiple = false,\n\tonChange,\n\tonClick,\n\trender,\n\t...props\n}: WordPressComponentProps< FormFileUploadProps, 'button', false > ) {\n\tconst ref = useRef< HTMLInputElement >( null );\n\tconst openFileDialog = () => {\n\t\tref.current?.click();\n\t};\n\n\tconst ui = render ? (\n\t\trender( { openFileDialog } )\n\t) : (\n\t\t<Button onClick={ openFileDialog } { ...props }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n\t// @todo: Temporary fix a bug that prevents Chromium browsers from selecting \".heic\" files\n\t// from the file upload. See https://core.trac.wordpress.org/ticket/62268#comment:4.\n\t// This can be removed once the Chromium fix is in the stable channel.\n\t// Prevent Safari from adding \"image/heic\" and \"image/heif\" to the accept attribute.\n\tconst isSafari =\n\t\tglobalThis.window?.navigator.userAgent.includes( 'Safari' ) &&\n\t\t! globalThis.window?.navigator.userAgent.includes( 'Chrome' ) &&\n\t\t! globalThis.window?.navigator.userAgent.includes( 'Chromium' );\n\tconst compatAccept =\n\t\t! isSafari && !! accept?.includes( 'image/*' )\n\t\t\t? `${ accept }, image/heic, image/heif`\n\t\t\t: accept;\n\n\treturn (\n\t\t<div className=\"components-form-file-upload\">\n\t\t\t{ ui }\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\tref={ ref }\n\t\t\t\tmultiple={ multiple }\n\t\t\t\tstyle={ { display: 'none' } }\n\t\t\t\taccept={ compatAccept }\n\t\t\t\tonChange={ onChange }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tdata-testid=\"form-file-upload-input\"\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport default FormFileUpload;\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+B,IAAAG,WAAA,GAAAH,OAAA;AAR/B;AACA;AACA;;AAGA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASI,cAAcA,CAAE;EAC/BC,MAAM;EACNC,QAAQ;EACRC,QAAQ,GAAG,KAAK;EAChBC,QAAQ;EACRC,OAAO;EACPC,MAAM;EACN,GAAGC;AAC6D,CAAC,EAAG;EACpE,MAAMC,GAAG,GAAG,IAAAC,eAAM,EAAsB,IAAK,CAAC;EAC9C,MAAMC,cAAc,GAAGA,CAAA,KAAM;IAC5BF,GAAG,CAACG,OAAO,EAAEC,KAAK,CAAC,CAAC;EACrB,CAAC;EAED,MAAMC,EAAE,GAAGP,MAAM,GAChBA,MAAM,CAAE;IAAEI;EAAe,CAAE,CAAC,gBAE5B,IAAAX,WAAA,CAAAe,GAAA,EAACjB,OAAA,CAAAkB,OAAM;IAACV,OAAO,EAAGK,cAAgB;IAAA,GAAMH,KAAK;IAAAL,QAAA,EAC1CA;EAAQ,CACH,CACR;EACD;EACA;EACA;EACA;EACA,MAAMc,QAAQ,GACbC,UAAU,CAACC,MAAM,EAAEC,SAAS,CAACC,SAAS,CAACC,QAAQ,CAAE,QAAS,CAAC,IAC3D,CAAEJ,UAAU,CAACC,MAAM,EAAEC,SAAS,CAACC,SAAS,CAACC,QAAQ,CAAE,QAAS,CAAC,IAC7D,CAAEJ,UAAU,CAACC,MAAM,EAAEC,SAAS,CAACC,SAAS,CAACC,QAAQ,CAAE,UAAW,CAAC;EAChE,MAAMC,YAAY,GACjB,CAAEN,QAAQ,IAAI,CAAC,CAAEf,MAAM,EAAEoB,QAAQ,CAAE,SAAU,CAAC,GAC3C,GAAIpB,MAAM,0BAA2B,GACrCA,MAAM;EAEV,oBACC,IAAAF,WAAA,CAAAwB,IAAA;IAAKC,SAAS,EAAC,6BAA6B;IAAAtB,QAAA,GACzCW,EAAE,eACJ,IAAAd,WAAA,CAAAe,GAAA;MACCW,IAAI,EAAC,MAAM;MACXjB,GAAG,EAAGA,GAAK;MACXL,QAAQ,EAAGA,QAAU;MACrBuB,KAAK,EAAG;QAAEC,OAAO,EAAE;MAAO,CAAG;MAC7B1B,MAAM,EAAGqB,YAAc;MACvBlB,QAAQ,EAAGA,QAAU;MACrBC,OAAO,EAAGA,OAAS;MACnB,eAAY;IAAwB,CACpC,CAAC;EAAA,CACE,CAAC;AAER;AAAC,IAAAuB,QAAA,GAAAC,OAAA,CAAAd,OAAA,GAEcf,cAAc","ignoreList":[]}