@wordpress/components 36.1.0 → 37.0.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 (1026) hide show
  1. package/CHANGELOG.md +78 -3
  2. package/CONTRIBUTING.md +6 -4
  3. package/build/angle-picker-control/index.cjs +0 -1
  4. package/build/angle-picker-control/index.cjs.map +2 -2
  5. package/build/autocomplete/index.cjs +3 -3
  6. package/build/autocomplete/index.cjs.map +3 -3
  7. package/build/border-box-control/border-box-control/component.cjs +4 -9
  8. package/build/border-box-control/border-box-control/component.cjs.map +2 -2
  9. package/build/border-box-control/border-box-control/hook.cjs +3 -10
  10. package/build/border-box-control/border-box-control/hook.cjs.map +2 -2
  11. package/build/border-box-control/border-box-control-linked-button/hook.cjs +2 -3
  12. package/build/border-box-control/border-box-control-linked-button/hook.cjs.map +2 -2
  13. package/build/border-box-control/border-box-control-split-controls/component.cjs +2 -6
  14. package/build/border-box-control/border-box-control-split-controls/component.cjs.map +2 -2
  15. package/build/border-box-control/border-box-control-split-controls/hook.cjs +2 -4
  16. package/build/border-box-control/border-box-control-split-controls/hook.cjs.map +2 -2
  17. package/build/border-box-control/border-box-control-visualizer/hook.cjs +2 -3
  18. package/build/border-box-control/border-box-control-visualizer/hook.cjs.map +2 -2
  19. package/build/border-box-control/styles.cjs +21 -18
  20. package/build/border-box-control/styles.cjs.map +2 -2
  21. package/build/border-control/border-control/component.cjs +3 -11
  22. package/build/border-control/border-control/component.cjs.map +2 -2
  23. package/build/border-control/border-control/hook.cjs +11 -21
  24. package/build/border-control/border-control/hook.cjs.map +3 -3
  25. package/build/border-control/border-control-dropdown/component.cjs +1 -2
  26. package/build/border-control/border-control-dropdown/component.cjs.map +2 -2
  27. package/build/border-control/border-control-dropdown/hook.cjs +2 -4
  28. package/build/border-control/border-control-dropdown/hook.cjs.map +2 -2
  29. package/build/border-control/border-control-style-picker/component.cjs +0 -1
  30. package/build/border-control/border-control-style-picker/component.cjs.map +2 -2
  31. package/build/border-control/styles.cjs +27 -15
  32. package/build/border-control/styles.cjs.map +2 -2
  33. package/build/box-control/box-input-control.cjs +0 -5
  34. package/build/box-control/box-input-control.cjs.map +2 -2
  35. package/build/card/card/hook.cjs +4 -1
  36. package/build/card/card/hook.cjs.map +2 -2
  37. package/build/card/card-footer/hook.cjs +12 -12
  38. package/build/card/card-footer/hook.cjs.map +2 -2
  39. package/build/card/card-header/hook.cjs +12 -12
  40. package/build/card/card-header/hook.cjs.map +2 -2
  41. package/build/card/styles.cjs +43 -13
  42. package/build/card/styles.cjs.map +2 -2
  43. package/build/color-palette/styles.cjs +1 -1
  44. package/build/color-palette/styles.cjs.map +2 -2
  45. package/build/color-picker/component.cjs.map +2 -2
  46. package/build/color-picker/hex-input.cjs +0 -1
  47. package/build/color-picker/hex-input.cjs.map +2 -2
  48. package/build/color-picker/input-with-slider.cjs +0 -2
  49. package/build/color-picker/input-with-slider.cjs.map +2 -2
  50. package/build/combobox-control/index.cjs +1 -10
  51. package/build/combobox-control/index.cjs.map +2 -2
  52. package/build/combobox-control/styles.cjs +1 -5
  53. package/build/combobox-control/styles.cjs.map +2 -2
  54. package/build/content-editable-control/docs-manifest.json +5 -0
  55. package/build/content-editable-control/index.cjs +171 -0
  56. package/build/content-editable-control/index.cjs.map +7 -0
  57. package/build/content-editable-control/types.cjs +19 -0
  58. package/build/content-editable-control/types.cjs.map +7 -0
  59. package/build/custom-gradient-picker/index.cjs +0 -1
  60. package/build/custom-gradient-picker/index.cjs.map +2 -2
  61. package/build/custom-select-control/index.cjs +4 -19
  62. package/build/custom-select-control/index.cjs.map +2 -2
  63. package/build/custom-select-control-v2/custom-select.cjs +0 -1
  64. package/build/custom-select-control-v2/custom-select.cjs.map +2 -2
  65. package/build/date-time/date-picker/styles.cjs +8 -8
  66. package/build/date-time/date-picker/styles.cjs.map +2 -2
  67. package/build/date-time/time-picker/index.cjs +0 -3
  68. package/build/date-time/time-picker/index.cjs.map +2 -2
  69. package/build/date-time/time-picker/time-input/index.cjs +0 -3
  70. package/build/date-time/time-picker/time-input/index.cjs.map +2 -2
  71. package/build/divider/component.cjs +1 -1
  72. package/build/divider/component.cjs.map +2 -2
  73. package/build/elevation/hook.cjs +6 -5
  74. package/build/elevation/hook.cjs.map +2 -2
  75. package/build/external-link/index.cjs +0 -3
  76. package/build/external-link/index.cjs.map +2 -2
  77. package/build/flex/flex/hook.cjs +97 -18
  78. package/build/flex/flex/hook.cjs.map +4 -4
  79. package/build/flex/flex-item/hook.cjs +94 -10
  80. package/build/flex/flex-item/hook.cjs.map +4 -4
  81. package/build/focal-point-picker/controls.cjs +0 -1
  82. package/build/focal-point-picker/controls.cjs.map +2 -2
  83. package/build/focal-point-picker/index.cjs +1 -0
  84. package/build/focal-point-picker/index.cjs.map +2 -2
  85. package/build/font-size-picker/font-size-picker-select.cjs +1 -6
  86. package/build/font-size-picker/font-size-picker-select.cjs.map +2 -2
  87. package/build/font-size-picker/font-size-picker-toggle-group.cjs +0 -5
  88. package/build/font-size-picker/font-size-picker-toggle-group.cjs.map +2 -2
  89. package/build/font-size-picker/index.cjs +1 -18
  90. package/build/font-size-picker/index.cjs.map +2 -2
  91. package/build/form-file-upload/index.cjs +7 -18
  92. package/build/form-file-upload/index.cjs.map +2 -2
  93. package/build/form-token-field/index.cjs +1 -11
  94. package/build/form-token-field/index.cjs.map +2 -2
  95. package/build/form-token-field/styles.cjs +1 -7
  96. package/build/form-token-field/styles.cjs.map +2 -2
  97. package/build/heading/hook.cjs +1 -1
  98. package/build/heading/hook.cjs.map +1 -1
  99. package/build/input-control/index.cjs +5 -14
  100. package/build/input-control/index.cjs.map +2 -2
  101. package/build/input-control/input-base.cjs +2 -6
  102. package/build/input-control/input-base.cjs.map +2 -2
  103. package/build/input-control/styles/input-control-styles.cjs +24 -30
  104. package/build/input-control/styles/input-control-styles.cjs.map +2 -2
  105. package/build/menu/group-label.cjs +2 -1
  106. package/build/menu/group-label.cjs.map +2 -2
  107. package/build/number-control/index.cjs +1 -11
  108. package/build/number-control/index.cjs.map +2 -2
  109. package/build/palette-edit/styles.cjs +9 -9
  110. package/build/palette-edit/styles.cjs.map +2 -2
  111. package/build/private-apis.cjs +3 -0
  112. package/build/private-apis.cjs.map +3 -3
  113. package/build/query-controls/author-select.cjs +1 -3
  114. package/build/query-controls/author-select.cjs.map +2 -2
  115. package/build/query-controls/category-select.cjs +1 -3
  116. package/build/query-controls/category-select.cjs.map +2 -2
  117. package/build/query-controls/index.cjs +0 -5
  118. package/build/query-controls/index.cjs.map +2 -2
  119. package/build/radio-group/radio.cjs +6 -14
  120. package/build/radio-group/radio.cjs.map +2 -2
  121. package/build/range-control/index.cjs +5 -15
  122. package/build/range-control/index.cjs.map +2 -2
  123. package/build/range-control/styles/range-control-styles.cjs +32 -30
  124. package/build/range-control/styles/range-control-styles.cjs.map +2 -2
  125. package/build/resizable-box/index.cjs.map +2 -2
  126. package/build/sandbox/index.cjs +73 -69
  127. package/build/sandbox/index.cjs.map +2 -2
  128. package/build/search-control/index.cjs +2 -2
  129. package/build/search-control/index.cjs.map +2 -2
  130. package/build/select-control/index.cjs +6 -15
  131. package/build/select-control/index.cjs.map +2 -2
  132. package/build/select-control/styles/select-control-styles.cjs +8 -16
  133. package/build/select-control/styles/select-control-styles.cjs.map +2 -2
  134. package/build/slot-fill/index.cjs.map +2 -2
  135. package/build/spacer/hook.cjs +150 -13
  136. package/build/spacer/hook.cjs.map +4 -4
  137. package/build/surface/hook.cjs +103 -16
  138. package/build/surface/hook.cjs.map +4 -4
  139. package/build/text/hook.cjs +11 -11
  140. package/build/text/hook.cjs.map +2 -2
  141. package/build/theme/index.cjs +119 -7
  142. package/build/theme/index.cjs.map +4 -4
  143. package/build/toggle-group-control/toggle-group-control/as-button-group.cjs +1 -3
  144. package/build/toggle-group-control/toggle-group-control/as-button-group.cjs.map +2 -2
  145. package/build/toggle-group-control/toggle-group-control/as-radio-group.cjs +1 -3
  146. package/build/toggle-group-control/toggle-group-control/as-radio-group.cjs.map +2 -2
  147. package/build/toggle-group-control/toggle-group-control/component.cjs +6 -16
  148. package/build/toggle-group-control/toggle-group-control/component.cjs.map +2 -2
  149. package/build/toggle-group-control/toggle-group-control/styles.cjs +11 -37
  150. package/build/toggle-group-control/toggle-group-control/styles.cjs.map +2 -2
  151. package/build/toggle-group-control/toggle-group-control-option/component.cjs.map +2 -2
  152. package/build/toggle-group-control/toggle-group-control-option-base/component.cjs +3 -5
  153. package/build/toggle-group-control/toggle-group-control-option-base/component.cjs.map +2 -2
  154. package/build/toggle-group-control/toggle-group-control-option-base/styles.cjs +14 -18
  155. package/build/toggle-group-control/toggle-group-control-option-base/styles.cjs.map +2 -2
  156. package/build/toggle-group-control/toggle-group-control-option-icon/component.cjs.map +1 -1
  157. package/build/tools-panel/styles.cjs +25 -16
  158. package/build/tools-panel/styles.cjs.map +2 -2
  159. package/build/tools-panel/tools-panel/component.cjs.map +2 -2
  160. package/build/tools-panel/tools-panel/hook.cjs +5 -3
  161. package/build/tools-panel/tools-panel/hook.cjs.map +2 -2
  162. package/build/tree-select/index.cjs +9 -20
  163. package/build/tree-select/index.cjs.map +2 -2
  164. package/build/truncate/hook.cjs +95 -9
  165. package/build/truncate/hook.cjs.map +4 -4
  166. package/build/unit-control/index.cjs +2 -12
  167. package/build/unit-control/index.cjs.map +2 -2
  168. package/build/utils/base-label.cjs +1 -1
  169. package/build/utils/base-label.cjs.map +2 -2
  170. package/build/utils/config-values.cjs +1 -9
  171. package/build/utils/config-values.cjs.map +2 -2
  172. package/build/utils/font-values.cjs +1 -1
  173. package/build/utils/font-values.cjs.map +1 -1
  174. package/build/utils/hooks/use-cx.cjs.map +2 -2
  175. package/build/utils/polymorphic-element.cjs +123 -0
  176. package/build/utils/polymorphic-element.cjs.map +7 -0
  177. package/build/validated-form-controls/components/combobox-control.cjs +0 -1
  178. package/build/validated-form-controls/components/combobox-control.cjs.map +2 -2
  179. package/build/validated-form-controls/components/content-editable-control.cjs +84 -0
  180. package/build/validated-form-controls/components/content-editable-control.cjs.map +7 -0
  181. package/build/validated-form-controls/components/custom-select-control.cjs +0 -1
  182. package/build/validated-form-controls/components/custom-select-control.cjs.map +2 -2
  183. package/build/validated-form-controls/components/form-token-field.cjs +0 -1
  184. package/build/validated-form-controls/components/form-token-field.cjs.map +2 -2
  185. package/build/validated-form-controls/components/index.cjs +2 -0
  186. package/build/validated-form-controls/components/index.cjs.map +2 -2
  187. package/build/validated-form-controls/components/input-control.cjs +0 -1
  188. package/build/validated-form-controls/components/input-control.cjs.map +2 -2
  189. package/build/validated-form-controls/components/number-control.cjs +0 -1
  190. package/build/validated-form-controls/components/number-control.cjs.map +2 -2
  191. package/build/validated-form-controls/components/range-control.cjs +0 -1
  192. package/build/validated-form-controls/components/range-control.cjs.map +2 -2
  193. package/build/validated-form-controls/components/select-control.cjs +0 -1
  194. package/build/validated-form-controls/components/select-control.cjs.map +2 -2
  195. package/build/validated-form-controls/components/toggle-group-control.cjs +0 -1
  196. package/build/validated-form-controls/components/toggle-group-control.cjs.map +2 -2
  197. package/build/validated-form-controls/control-with-error.cjs +1 -4
  198. package/build/validated-form-controls/control-with-error.cjs.map +2 -2
  199. package/build/view/component.cjs +4 -20
  200. package/build/view/component.cjs.map +3 -3
  201. package/build-module/angle-picker-control/index.mjs +0 -1
  202. package/build-module/angle-picker-control/index.mjs.map +2 -2
  203. package/build-module/autocomplete/index.mjs +5 -5
  204. package/build-module/autocomplete/index.mjs.map +2 -2
  205. package/build-module/border-box-control/border-box-control/component.mjs +4 -9
  206. package/build-module/border-box-control/border-box-control/component.mjs.map +2 -2
  207. package/build-module/border-box-control/border-box-control/hook.mjs +3 -10
  208. package/build-module/border-box-control/border-box-control/hook.mjs.map +2 -2
  209. package/build-module/border-box-control/border-box-control-linked-button/hook.mjs +2 -3
  210. package/build-module/border-box-control/border-box-control-linked-button/hook.mjs.map +2 -2
  211. package/build-module/border-box-control/border-box-control-split-controls/component.mjs +2 -6
  212. package/build-module/border-box-control/border-box-control-split-controls/component.mjs.map +2 -2
  213. package/build-module/border-box-control/border-box-control-split-controls/hook.mjs +2 -4
  214. package/build-module/border-box-control/border-box-control-split-controls/hook.mjs.map +2 -2
  215. package/build-module/border-box-control/border-box-control-visualizer/hook.mjs +2 -3
  216. package/build-module/border-box-control/border-box-control-visualizer/hook.mjs.map +2 -2
  217. package/build-module/border-box-control/styles.mjs +21 -18
  218. package/build-module/border-box-control/styles.mjs.map +2 -2
  219. package/build-module/border-control/border-control/component.mjs +3 -11
  220. package/build-module/border-control/border-control/component.mjs.map +2 -2
  221. package/build-module/border-control/border-control/hook.mjs +11 -21
  222. package/build-module/border-control/border-control/hook.mjs.map +3 -3
  223. package/build-module/border-control/border-control-dropdown/component.mjs +1 -2
  224. package/build-module/border-control/border-control-dropdown/component.mjs.map +2 -2
  225. package/build-module/border-control/border-control-dropdown/hook.mjs +2 -4
  226. package/build-module/border-control/border-control-dropdown/hook.mjs.map +2 -2
  227. package/build-module/border-control/border-control-style-picker/component.mjs +0 -1
  228. package/build-module/border-control/border-control-style-picker/component.mjs.map +2 -2
  229. package/build-module/border-control/styles.mjs +26 -15
  230. package/build-module/border-control/styles.mjs.map +2 -2
  231. package/build-module/box-control/box-input-control.mjs +0 -5
  232. package/build-module/box-control/box-input-control.mjs.map +2 -2
  233. package/build-module/card/card/hook.mjs +4 -1
  234. package/build-module/card/card/hook.mjs.map +2 -2
  235. package/build-module/card/card-footer/hook.mjs +12 -12
  236. package/build-module/card/card-footer/hook.mjs.map +2 -2
  237. package/build-module/card/card-header/hook.mjs +12 -12
  238. package/build-module/card/card-header/hook.mjs.map +2 -2
  239. package/build-module/card/styles.mjs +40 -13
  240. package/build-module/card/styles.mjs.map +2 -2
  241. package/build-module/color-palette/styles.mjs +1 -1
  242. package/build-module/color-palette/styles.mjs.map +2 -2
  243. package/build-module/color-picker/component.mjs.map +2 -2
  244. package/build-module/color-picker/hex-input.mjs +0 -1
  245. package/build-module/color-picker/hex-input.mjs.map +2 -2
  246. package/build-module/color-picker/input-with-slider.mjs +0 -2
  247. package/build-module/color-picker/input-with-slider.mjs.map +2 -2
  248. package/build-module/combobox-control/index.mjs +1 -10
  249. package/build-module/combobox-control/index.mjs.map +2 -2
  250. package/build-module/combobox-control/styles.mjs +1 -5
  251. package/build-module/combobox-control/styles.mjs.map +2 -2
  252. package/build-module/content-editable-control/docs-manifest.json +5 -0
  253. package/build-module/content-editable-control/index.mjs +136 -0
  254. package/build-module/content-editable-control/index.mjs.map +7 -0
  255. package/build-module/content-editable-control/types.mjs +1 -0
  256. package/build-module/content-editable-control/types.mjs.map +7 -0
  257. package/build-module/custom-gradient-picker/index.mjs +0 -1
  258. package/build-module/custom-gradient-picker/index.mjs.map +2 -2
  259. package/build-module/custom-select-control/index.mjs +4 -19
  260. package/build-module/custom-select-control/index.mjs.map +2 -2
  261. package/build-module/custom-select-control-v2/custom-select.mjs +0 -1
  262. package/build-module/custom-select-control-v2/custom-select.mjs.map +2 -2
  263. package/build-module/date-time/date-picker/styles.mjs +8 -8
  264. package/build-module/date-time/date-picker/styles.mjs.map +2 -2
  265. package/build-module/date-time/time-picker/index.mjs +0 -3
  266. package/build-module/date-time/time-picker/index.mjs.map +2 -2
  267. package/build-module/date-time/time-picker/time-input/index.mjs +0 -3
  268. package/build-module/date-time/time-picker/time-input/index.mjs.map +2 -2
  269. package/build-module/divider/component.mjs +1 -1
  270. package/build-module/divider/component.mjs.map +2 -2
  271. package/build-module/elevation/hook.mjs +6 -5
  272. package/build-module/elevation/hook.mjs.map +2 -2
  273. package/build-module/external-link/index.mjs +0 -3
  274. package/build-module/external-link/index.mjs.map +2 -2
  275. package/build-module/flex/flex/hook.mjs +97 -18
  276. package/build-module/flex/flex/hook.mjs.map +3 -3
  277. package/build-module/flex/flex-item/hook.mjs +94 -10
  278. package/build-module/flex/flex-item/hook.mjs.map +3 -3
  279. package/build-module/focal-point-picker/controls.mjs +0 -1
  280. package/build-module/focal-point-picker/controls.mjs.map +2 -2
  281. package/build-module/focal-point-picker/index.mjs +1 -0
  282. package/build-module/focal-point-picker/index.mjs.map +2 -2
  283. package/build-module/font-size-picker/font-size-picker-select.mjs +1 -6
  284. package/build-module/font-size-picker/font-size-picker-select.mjs.map +2 -2
  285. package/build-module/font-size-picker/font-size-picker-toggle-group.mjs +0 -5
  286. package/build-module/font-size-picker/font-size-picker-toggle-group.mjs.map +2 -2
  287. package/build-module/font-size-picker/index.mjs +1 -18
  288. package/build-module/font-size-picker/index.mjs.map +2 -2
  289. package/build-module/form-file-upload/index.mjs +7 -18
  290. package/build-module/form-file-upload/index.mjs.map +2 -2
  291. package/build-module/form-token-field/index.mjs +1 -11
  292. package/build-module/form-token-field/index.mjs.map +2 -2
  293. package/build-module/form-token-field/styles.mjs +1 -7
  294. package/build-module/form-token-field/styles.mjs.map +2 -2
  295. package/build-module/heading/hook.mjs +1 -1
  296. package/build-module/heading/hook.mjs.map +1 -1
  297. package/build-module/input-control/index.mjs +5 -14
  298. package/build-module/input-control/index.mjs.map +2 -2
  299. package/build-module/input-control/input-base.mjs +2 -6
  300. package/build-module/input-control/input-base.mjs.map +2 -2
  301. package/build-module/input-control/styles/input-control-styles.mjs +24 -30
  302. package/build-module/input-control/styles/input-control-styles.mjs.map +2 -2
  303. package/build-module/menu/group-label.mjs +2 -1
  304. package/build-module/menu/group-label.mjs.map +2 -2
  305. package/build-module/number-control/index.mjs +1 -11
  306. package/build-module/number-control/index.mjs.map +2 -2
  307. package/build-module/palette-edit/styles.mjs +9 -9
  308. package/build-module/palette-edit/styles.mjs.map +2 -2
  309. package/build-module/private-apis.mjs +4 -1
  310. package/build-module/private-apis.mjs.map +2 -2
  311. package/build-module/query-controls/author-select.mjs +1 -3
  312. package/build-module/query-controls/author-select.mjs.map +2 -2
  313. package/build-module/query-controls/category-select.mjs +1 -3
  314. package/build-module/query-controls/category-select.mjs.map +2 -2
  315. package/build-module/query-controls/index.mjs +0 -5
  316. package/build-module/query-controls/index.mjs.map +2 -2
  317. package/build-module/radio-group/radio.mjs +6 -14
  318. package/build-module/radio-group/radio.mjs.map +2 -2
  319. package/build-module/range-control/index.mjs +5 -15
  320. package/build-module/range-control/index.mjs.map +2 -2
  321. package/build-module/range-control/styles/range-control-styles.mjs +32 -30
  322. package/build-module/range-control/styles/range-control-styles.mjs.map +2 -2
  323. package/build-module/resizable-box/index.mjs.map +2 -2
  324. package/build-module/sandbox/index.mjs +71 -68
  325. package/build-module/sandbox/index.mjs.map +2 -2
  326. package/build-module/search-control/index.mjs +2 -2
  327. package/build-module/search-control/index.mjs.map +2 -2
  328. package/build-module/select-control/index.mjs +6 -15
  329. package/build-module/select-control/index.mjs.map +2 -2
  330. package/build-module/select-control/styles/select-control-styles.mjs +8 -16
  331. package/build-module/select-control/styles/select-control-styles.mjs.map +2 -2
  332. package/build-module/slot-fill/index.mjs.map +2 -2
  333. package/build-module/spacer/hook.mjs +140 -13
  334. package/build-module/spacer/hook.mjs.map +3 -3
  335. package/build-module/surface/hook.mjs +103 -16
  336. package/build-module/surface/hook.mjs.map +3 -3
  337. package/build-module/text/hook.mjs +11 -11
  338. package/build-module/text/hook.mjs.map +2 -2
  339. package/build-module/theme/index.mjs +109 -7
  340. package/build-module/theme/index.mjs.map +3 -3
  341. package/build-module/toggle-group-control/toggle-group-control/as-button-group.mjs +1 -3
  342. package/build-module/toggle-group-control/toggle-group-control/as-button-group.mjs.map +2 -2
  343. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.mjs +1 -3
  344. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.mjs.map +2 -2
  345. package/build-module/toggle-group-control/toggle-group-control/component.mjs +6 -16
  346. package/build-module/toggle-group-control/toggle-group-control/component.mjs.map +2 -2
  347. package/build-module/toggle-group-control/toggle-group-control/styles.mjs +10 -35
  348. package/build-module/toggle-group-control/toggle-group-control/styles.mjs.map +2 -2
  349. package/build-module/toggle-group-control/toggle-group-control-option/component.mjs.map +2 -2
  350. package/build-module/toggle-group-control/toggle-group-control-option-base/component.mjs +3 -5
  351. package/build-module/toggle-group-control/toggle-group-control-option-base/component.mjs.map +2 -2
  352. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.mjs +14 -18
  353. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.mjs.map +2 -2
  354. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.mjs.map +1 -1
  355. package/build-module/tools-panel/styles.mjs +23 -15
  356. package/build-module/tools-panel/styles.mjs.map +2 -2
  357. package/build-module/tools-panel/tools-panel/component.mjs.map +2 -2
  358. package/build-module/tools-panel/tools-panel/hook.mjs +5 -3
  359. package/build-module/tools-panel/tools-panel/hook.mjs.map +2 -2
  360. package/build-module/tree-select/index.mjs +9 -20
  361. package/build-module/tree-select/index.mjs.map +2 -2
  362. package/build-module/truncate/hook.mjs +95 -9
  363. package/build-module/truncate/hook.mjs.map +3 -3
  364. package/build-module/unit-control/index.mjs +2 -12
  365. package/build-module/unit-control/index.mjs.map +2 -2
  366. package/build-module/utils/base-label.mjs +1 -1
  367. package/build-module/utils/base-label.mjs.map +2 -2
  368. package/build-module/utils/config-values.mjs +1 -9
  369. package/build-module/utils/config-values.mjs.map +2 -2
  370. package/build-module/utils/font-values.mjs +1 -1
  371. package/build-module/utils/font-values.mjs.map +1 -1
  372. package/build-module/utils/hooks/use-cx.mjs.map +2 -2
  373. package/build-module/utils/polymorphic-element.mjs +98 -0
  374. package/build-module/utils/polymorphic-element.mjs.map +7 -0
  375. package/build-module/validated-form-controls/components/combobox-control.mjs +0 -1
  376. package/build-module/validated-form-controls/components/combobox-control.mjs.map +2 -2
  377. package/build-module/validated-form-controls/components/content-editable-control.mjs +49 -0
  378. package/build-module/validated-form-controls/components/content-editable-control.mjs.map +7 -0
  379. package/build-module/validated-form-controls/components/custom-select-control.mjs +0 -1
  380. package/build-module/validated-form-controls/components/custom-select-control.mjs.map +2 -2
  381. package/build-module/validated-form-controls/components/form-token-field.mjs +0 -1
  382. package/build-module/validated-form-controls/components/form-token-field.mjs.map +2 -2
  383. package/build-module/validated-form-controls/components/index.mjs +1 -0
  384. package/build-module/validated-form-controls/components/index.mjs.map +2 -2
  385. package/build-module/validated-form-controls/components/input-control.mjs +0 -1
  386. package/build-module/validated-form-controls/components/input-control.mjs.map +2 -2
  387. package/build-module/validated-form-controls/components/number-control.mjs +0 -1
  388. package/build-module/validated-form-controls/components/number-control.mjs.map +2 -2
  389. package/build-module/validated-form-controls/components/range-control.mjs +0 -1
  390. package/build-module/validated-form-controls/components/range-control.mjs.map +2 -2
  391. package/build-module/validated-form-controls/components/select-control.mjs +0 -1
  392. package/build-module/validated-form-controls/components/select-control.mjs.map +2 -2
  393. package/build-module/validated-form-controls/components/toggle-group-control.mjs +0 -1
  394. package/build-module/validated-form-controls/components/toggle-group-control.mjs.map +2 -2
  395. package/build-module/validated-form-controls/control-with-error.mjs +1 -4
  396. package/build-module/validated-form-controls/control-with-error.mjs.map +2 -2
  397. package/build-module/view/component.mjs +4 -10
  398. package/build-module/view/component.mjs.map +2 -2
  399. package/build-style/style-rtl.css +67 -91
  400. package/build-style/style.css +67 -91
  401. package/build-types/angle-picker-control/index.d.ts.map +1 -1
  402. package/build-types/autocomplete/autocompleter-ui.d.ts +1 -1
  403. package/build-types/autocomplete/autocompleter-ui.d.ts.map +1 -1
  404. package/build-types/autocomplete/index.d.ts +1 -1
  405. package/build-types/autocomplete/index.d.ts.map +1 -1
  406. package/build-types/border-box-control/border-box-control/component.d.ts +2 -2
  407. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  408. package/build-types/border-box-control/border-box-control/hook.d.ts +0 -1
  409. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
  410. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +2 -4
  411. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -1
  412. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
  413. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +1 -1
  414. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  415. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +0 -1
  416. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
  417. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +2 -3
  418. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -1
  419. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
  420. package/build-types/border-box-control/stories/index.story.d.ts +2 -1
  421. package/build-types/border-box-control/stories/index.story.d.ts.map +1 -1
  422. package/build-types/border-box-control/styles.d.ts +3 -3
  423. package/build-types/border-box-control/styles.d.ts.map +1 -1
  424. package/build-types/border-box-control/types.d.ts +13 -5
  425. package/build-types/border-box-control/types.d.ts.map +1 -1
  426. package/build-types/border-control/border-control/component.d.ts +0 -2
  427. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  428. package/build-types/border-control/border-control/hook.d.ts +0 -2
  429. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  430. package/build-types/border-control/border-control-dropdown/component.d.ts +1 -1
  431. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  432. package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
  433. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  434. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  435. package/build-types/border-control/stories/index.story.d.ts +5 -10
  436. package/build-types/border-control/stories/index.story.d.ts.map +1 -1
  437. package/build-types/border-control/styles.d.ts +5 -2
  438. package/build-types/border-control/styles.d.ts.map +1 -1
  439. package/build-types/border-control/types.d.ts +5 -10
  440. package/build-types/border-control/types.d.ts.map +1 -1
  441. package/build-types/box-control/box-input-control.d.ts.map +1 -1
  442. package/build-types/box-control/index.d.ts +1 -1
  443. package/build-types/box-control/index.d.ts.map +1 -1
  444. package/build-types/box-control/styles/box-control-styles.d.ts +2 -1
  445. package/build-types/box-control/styles/box-control-styles.d.ts.map +1 -1
  446. package/build-types/button/stories/e2e/index.story.d.ts.map +1 -1
  447. package/build-types/calendar/date-range-calendar/index.d.ts +1 -1
  448. package/build-types/calendar/date-range-calendar/index.d.ts.map +1 -1
  449. package/build-types/calendar/utils/use-localization-props.d.ts +6 -2
  450. package/build-types/calendar/utils/use-localization-props.d.ts.map +1 -1
  451. package/build-types/card/card/hook.d.ts +1 -1
  452. package/build-types/card/card/hook.d.ts.map +1 -1
  453. package/build-types/card/card-footer/hook.d.ts.map +1 -1
  454. package/build-types/card/card-header/hook.d.ts.map +1 -1
  455. package/build-types/card/styles.d.ts +4 -0
  456. package/build-types/card/styles.d.ts.map +1 -1
  457. package/build-types/circular-option-picker/circular-option-picker-actions.d.ts +1 -1
  458. package/build-types/circular-option-picker/circular-option-picker-actions.d.ts.map +1 -1
  459. package/build-types/circular-option-picker/circular-option-picker.d.ts +8 -13
  460. package/build-types/circular-option-picker/circular-option-picker.d.ts.map +1 -1
  461. package/build-types/color-picker/component.d.ts +4 -0
  462. package/build-types/color-picker/component.d.ts.map +1 -1
  463. package/build-types/color-picker/hex-input.d.ts.map +1 -1
  464. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  465. package/build-types/color-picker/stories/index.story.d.ts.map +1 -1
  466. package/build-types/color-picker/styles.d.ts +2 -1
  467. package/build-types/color-picker/styles.d.ts.map +1 -1
  468. package/build-types/combobox-control/index.d.ts +0 -1
  469. package/build-types/combobox-control/index.d.ts.map +1 -1
  470. package/build-types/combobox-control/stories/index.story.d.ts.map +1 -1
  471. package/build-types/combobox-control/styles.d.ts +1 -2
  472. package/build-types/combobox-control/styles.d.ts.map +1 -1
  473. package/build-types/combobox-control/types.d.ts +2 -1
  474. package/build-types/combobox-control/types.d.ts.map +1 -1
  475. package/build-types/composite/legacy/stories/utils.d.ts.map +1 -1
  476. package/build-types/content-editable-control/index.d.ts +31 -0
  477. package/build-types/content-editable-control/index.d.ts.map +1 -0
  478. package/build-types/content-editable-control/stories/index.story.d.ts +13 -0
  479. package/build-types/content-editable-control/stories/index.story.d.ts.map +1 -0
  480. package/build-types/content-editable-control/test/index.d.ts +2 -0
  481. package/build-types/content-editable-control/test/index.d.ts.map +1 -0
  482. package/build-types/content-editable-control/types.d.ts +32 -0
  483. package/build-types/content-editable-control/types.d.ts.map +1 -0
  484. package/build-types/context/context-system-provider.d.ts +21 -2
  485. package/build-types/context/context-system-provider.d.ts.map +1 -1
  486. package/build-types/custom-gradient-picker/gradient-bar/control-points.d.ts +3 -2
  487. package/build-types/custom-gradient-picker/gradient-bar/control-points.d.ts.map +1 -1
  488. package/build-types/custom-gradient-picker/gradient-bar/index.d.ts +1 -1
  489. package/build-types/custom-gradient-picker/gradient-bar/index.d.ts.map +1 -1
  490. package/build-types/custom-gradient-picker/index.d.ts +1 -1
  491. package/build-types/custom-gradient-picker/index.d.ts.map +1 -1
  492. package/build-types/custom-gradient-picker/serializer.d.ts +3 -3
  493. package/build-types/custom-gradient-picker/serializer.d.ts.map +1 -1
  494. package/build-types/custom-select-control/index.d.ts +5 -0
  495. package/build-types/custom-select-control/index.d.ts.map +1 -1
  496. package/build-types/custom-select-control/stories/index.story.d.ts.map +1 -1
  497. package/build-types/custom-select-control/types.d.ts +2 -1
  498. package/build-types/custom-select-control/types.d.ts.map +1 -1
  499. package/build-types/custom-select-control-v2/custom-select.d.ts.map +1 -1
  500. package/build-types/custom-select-control-v2/index.d.ts +2 -1
  501. package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
  502. package/build-types/custom-select-control-v2/item.d.ts.map +1 -1
  503. package/build-types/date-time/date-picker/index.d.ts +1 -1
  504. package/build-types/date-time/date-picker/index.d.ts.map +1 -1
  505. package/build-types/date-time/time-picker/index.d.ts +3 -2
  506. package/build-types/date-time/time-picker/index.d.ts.map +1 -1
  507. package/build-types/date-time/time-picker/styles.d.ts +8 -4
  508. package/build-types/date-time/time-picker/styles.d.ts.map +1 -1
  509. package/build-types/date-time/time-picker/time-input/index.d.ts +1 -1
  510. package/build-types/date-time/time-picker/time-input/index.d.ts.map +1 -1
  511. package/build-types/disabled/index.d.ts +4 -4
  512. package/build-types/disabled/index.d.ts.map +1 -1
  513. package/build-types/disabled/stories/index.story.d.ts.map +1 -1
  514. package/build-types/draggable/index.d.ts +1 -1
  515. package/build-types/draggable/index.d.ts.map +1 -1
  516. package/build-types/drop-zone/provider.d.ts +1 -1
  517. package/build-types/drop-zone/provider.d.ts.map +1 -1
  518. package/build-types/duotone-picker/color-list-picker/index.d.ts +1 -1
  519. package/build-types/duotone-picker/color-list-picker/index.d.ts.map +1 -1
  520. package/build-types/duotone-picker/custom-duotone-bar.d.ts +1 -1
  521. package/build-types/duotone-picker/custom-duotone-bar.d.ts.map +1 -1
  522. package/build-types/elevation/hook.d.ts.map +1 -1
  523. package/build-types/external-link/index.d.ts.map +1 -1
  524. package/build-types/flex/flex/hook.d.ts +864 -4
  525. package/build-types/flex/flex/hook.d.ts.map +1 -1
  526. package/build-types/flex/flex-block/hook.d.ts +860 -1
  527. package/build-types/flex/flex-block/hook.d.ts.map +1 -1
  528. package/build-types/flex/flex-item/hook.d.ts +860 -4
  529. package/build-types/flex/flex-item/hook.d.ts.map +1 -1
  530. package/build-types/focal-point-picker/controls.d.ts +1 -1
  531. package/build-types/focal-point-picker/controls.d.ts.map +1 -1
  532. package/build-types/focal-point-picker/index.d.ts +1 -1
  533. package/build-types/focal-point-picker/index.d.ts.map +1 -1
  534. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +252 -1
  535. package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -1
  536. package/build-types/font-size-picker/font-size-picker-select.d.ts.map +1 -1
  537. package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
  538. package/build-types/font-size-picker/index.d.ts.map +1 -1
  539. package/build-types/font-size-picker/stories/e2e/index.story.d.ts.map +1 -1
  540. package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
  541. package/build-types/font-size-picker/types.d.ts +6 -5
  542. package/build-types/font-size-picker/types.d.ts.map +1 -1
  543. package/build-types/form-file-upload/index.d.ts +1 -2
  544. package/build-types/form-file-upload/index.d.ts.map +1 -1
  545. package/build-types/form-file-upload/stories/index.story.d.ts.map +1 -1
  546. package/build-types/form-file-upload/types.d.ts +2 -2
  547. package/build-types/form-file-upload/types.d.ts.map +1 -1
  548. package/build-types/form-token-field/index.d.ts.map +1 -1
  549. package/build-types/form-token-field/stories/index.story.d.ts.map +1 -1
  550. package/build-types/form-token-field/styles.d.ts +1 -6
  551. package/build-types/form-token-field/styles.d.ts.map +1 -1
  552. package/build-types/form-token-field/suggestions-list.d.ts +1 -1
  553. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  554. package/build-types/form-token-field/token.d.ts +1 -1
  555. package/build-types/form-token-field/token.d.ts.map +1 -1
  556. package/build-types/form-token-field/types.d.ts +2 -1
  557. package/build-types/form-token-field/types.d.ts.map +1 -1
  558. package/build-types/guide/index.d.ts +1 -1
  559. package/build-types/guide/index.d.ts.map +1 -1
  560. package/build-types/guide/page-control.d.ts +1 -1
  561. package/build-types/guide/page-control.d.ts.map +1 -1
  562. package/build-types/h-stack/hook.d.ts +864 -1
  563. package/build-types/h-stack/hook.d.ts.map +1 -1
  564. package/build-types/heading/hook.d.ts +1 -1
  565. package/build-types/higher-order/with-fallback-styles/index.d.ts +3 -3
  566. package/build-types/higher-order/with-fallback-styles/index.d.ts.map +1 -1
  567. package/build-types/input-control/index.d.ts +0 -1
  568. package/build-types/input-control/index.d.ts.map +1 -1
  569. package/build-types/input-control/input-base.d.ts.map +1 -1
  570. package/build-types/input-control/stories/index.story.d.ts.map +1 -1
  571. package/build-types/input-control/styles/input-control-styles.d.ts +1 -2
  572. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  573. package/build-types/input-control/types.d.ts +21 -28
  574. package/build-types/input-control/types.d.ts.map +1 -1
  575. package/build-types/keyboard-shortcuts/index.d.ts +1 -1
  576. package/build-types/keyboard-shortcuts/index.d.ts.map +1 -1
  577. package/build-types/menu/group-label.d.ts.map +1 -1
  578. package/build-types/menu-items-choice/index.d.ts +1 -1
  579. package/build-types/menu-items-choice/index.d.ts.map +1 -1
  580. package/build-types/modal/stories/index.story.d.ts.map +1 -1
  581. package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts +1 -1
  582. package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts.map +1 -1
  583. package/build-types/navigator/stories/index.story.d.ts.map +1 -1
  584. package/build-types/notice/index.d.ts +1 -1
  585. package/build-types/notice/index.d.ts.map +1 -1
  586. package/build-types/notice/list.d.ts +1 -1
  587. package/build-types/notice/list.d.ts.map +1 -1
  588. package/build-types/number-control/index.d.ts +6 -1
  589. package/build-types/number-control/index.d.ts.map +1 -1
  590. package/build-types/number-control/stories/index.story.d.ts +2 -1
  591. package/build-types/number-control/stories/index.story.d.ts.map +1 -1
  592. package/build-types/number-control/types.d.ts +8 -1
  593. package/build-types/number-control/types.d.ts.map +1 -1
  594. package/build-types/palette-edit/index.d.ts +1 -1
  595. package/build-types/palette-edit/index.d.ts.map +1 -1
  596. package/build-types/palette-edit/styles.d.ts +750 -0
  597. package/build-types/palette-edit/styles.d.ts.map +1 -1
  598. package/build-types/private-apis.d.ts.map +1 -1
  599. package/build-types/query-controls/author-select.d.ts +1 -1
  600. package/build-types/query-controls/author-select.d.ts.map +1 -1
  601. package/build-types/query-controls/category-select.d.ts +1 -1
  602. package/build-types/query-controls/category-select.d.ts.map +1 -1
  603. package/build-types/query-controls/index.d.ts.map +1 -1
  604. package/build-types/query-controls/types.d.ts +0 -2
  605. package/build-types/query-controls/types.d.ts.map +1 -1
  606. package/build-types/radio-group/radio.d.ts +2 -4
  607. package/build-types/radio-group/radio.d.ts.map +1 -1
  608. package/build-types/radio-group/stories/index.story.d.ts.map +1 -1
  609. package/build-types/radio-group/types.d.ts +8 -5
  610. package/build-types/radio-group/types.d.ts.map +1 -1
  611. package/build-types/range-control/index.d.ts +0 -1
  612. package/build-types/range-control/index.d.ts.map +1 -1
  613. package/build-types/range-control/stories/index.story.d.ts.map +1 -1
  614. package/build-types/range-control/styles/range-control-styles.d.ts +4 -5
  615. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  616. package/build-types/range-control/types.d.ts +3 -1
  617. package/build-types/range-control/types.d.ts.map +1 -1
  618. package/build-types/resizable-box/index.d.ts +4 -0
  619. package/build-types/resizable-box/index.d.ts.map +1 -1
  620. package/build-types/resizable-box/resize-tooltip/utils.d.ts +1 -1
  621. package/build-types/resizable-box/resize-tooltip/utils.d.ts.map +1 -1
  622. package/build-types/responsive-wrapper/index.d.ts +1 -1
  623. package/build-types/responsive-wrapper/index.d.ts.map +1 -1
  624. package/build-types/sandbox/index.d.ts +34 -0
  625. package/build-types/sandbox/index.d.ts.map +1 -1
  626. package/build-types/search-control/index.d.ts.map +1 -1
  627. package/build-types/select-control/index.d.ts +0 -1
  628. package/build-types/select-control/index.d.ts.map +1 -1
  629. package/build-types/select-control/stories/index.story.d.ts.map +1 -1
  630. package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
  631. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  632. package/build-types/select-control/types.d.ts +23 -1
  633. package/build-types/select-control/types.d.ts.map +1 -1
  634. package/build-types/slot-fill/index.d.ts +6 -1
  635. package/build-types/slot-fill/index.d.ts.map +1 -1
  636. package/build-types/snackbar/list.d.ts +1 -1
  637. package/build-types/snackbar/list.d.ts.map +1 -1
  638. package/build-types/spacer/hook.d.ts +2 -4
  639. package/build-types/spacer/hook.d.ts.map +1 -1
  640. package/build-types/spacer/stories/index.story.d.ts +1 -6
  641. package/build-types/spacer/stories/index.story.d.ts.map +1 -1
  642. package/build-types/surface/hook.d.ts +1 -1
  643. package/build-types/surface/hook.d.ts.map +1 -1
  644. package/build-types/text/hook.d.ts +2 -2
  645. package/build-types/text/hook.d.ts.map +1 -1
  646. package/build-types/text/types.d.ts +4 -4
  647. package/build-types/text/types.d.ts.map +1 -1
  648. package/build-types/text/utils.d.ts +1 -1
  649. package/build-types/text/utils.d.ts.map +1 -1
  650. package/build-types/theme/index.d.ts +1 -4
  651. package/build-types/theme/index.d.ts.map +1 -1
  652. package/build-types/toggle-group-control/stories/index.story.d.ts.map +1 -1
  653. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +1 -1
  654. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -1
  655. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +1 -1
  656. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -1
  657. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +0 -1
  658. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  659. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +1 -4
  660. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  661. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +0 -1
  662. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  663. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  664. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +1 -1
  665. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  666. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
  667. package/build-types/toggle-group-control/types.d.ts +5 -4
  668. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  669. package/build-types/tools-panel/stories/index.story.d.ts.map +1 -1
  670. package/build-types/tools-panel/styles.d.ts +5 -0
  671. package/build-types/tools-panel/styles.d.ts.map +1 -1
  672. package/build-types/tools-panel/tools-panel/component.d.ts +0 -2
  673. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  674. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  675. package/build-types/tree-grid/roving-tab-index.d.ts +1 -1
  676. package/build-types/tree-grid/roving-tab-index.d.ts.map +1 -1
  677. package/build-types/tree-grid/stories/index.story.d.ts.map +1 -1
  678. package/build-types/tree-select/index.d.ts +0 -1
  679. package/build-types/tree-select/index.d.ts.map +1 -1
  680. package/build-types/tree-select/stories/index.story.d.ts.map +1 -1
  681. package/build-types/tree-select/types.d.ts +8 -1
  682. package/build-types/tree-select/types.d.ts.map +1 -1
  683. package/build-types/truncate/hook.d.ts +1 -1
  684. package/build-types/truncate/hook.d.ts.map +1 -1
  685. package/build-types/unit-control/index.d.ts +3 -2
  686. package/build-types/unit-control/index.d.ts.map +1 -1
  687. package/build-types/unit-control/stories/index.story.d.ts.map +1 -1
  688. package/build-types/unit-control/styles/unit-control-styles.d.ts +2 -1
  689. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  690. package/build-types/unit-control/types.d.ts +8 -1
  691. package/build-types/unit-control/types.d.ts.map +1 -1
  692. package/build-types/utils/config-values.d.ts +1 -8
  693. package/build-types/utils/hooks/use-animated-offset-rect.d.ts +1 -1
  694. package/build-types/utils/hooks/use-animated-offset-rect.d.ts.map +1 -1
  695. package/build-types/utils/hooks/use-controlled-state.d.ts +6 -0
  696. package/build-types/utils/hooks/use-controlled-state.d.ts.map +1 -1
  697. package/build-types/utils/hooks/use-controlled-value.d.ts +1 -1
  698. package/build-types/utils/hooks/use-controlled-value.d.ts.map +1 -1
  699. package/build-types/utils/hooks/use-cx.d.ts +4 -0
  700. package/build-types/utils/hooks/use-cx.d.ts.map +1 -1
  701. package/build-types/utils/polymorphic-element.d.ts +17 -0
  702. package/build-types/utils/polymorphic-element.d.ts.map +1 -0
  703. package/build-types/utils/rtl.d.ts.map +1 -1
  704. package/build-types/utils/test/polymorphic-element.d.ts +2 -0
  705. package/build-types/utils/test/polymorphic-element.d.ts.map +1 -0
  706. package/build-types/v-stack/hook.d.ts +864 -1
  707. package/build-types/v-stack/hook.d.ts.map +1 -1
  708. package/build-types/validated-form-controls/components/combobox-control.d.ts +1 -1
  709. package/build-types/validated-form-controls/components/content-editable-control.d.ts +16 -0
  710. package/build-types/validated-form-controls/components/content-editable-control.d.ts.map +1 -0
  711. package/build-types/validated-form-controls/components/custom-select-control.d.ts +1 -1
  712. package/build-types/validated-form-controls/components/custom-select-control.d.ts.map +1 -1
  713. package/build-types/validated-form-controls/components/form-token-field.d.ts +1 -1
  714. package/build-types/validated-form-controls/components/form-token-field.d.ts.map +1 -1
  715. package/build-types/validated-form-controls/components/index.d.ts +1 -0
  716. package/build-types/validated-form-controls/components/index.d.ts.map +1 -1
  717. package/build-types/validated-form-controls/components/input-control.d.ts +1 -1
  718. package/build-types/validated-form-controls/components/input-control.d.ts.map +1 -1
  719. package/build-types/validated-form-controls/components/number-control.d.ts +3 -2
  720. package/build-types/validated-form-controls/components/number-control.d.ts.map +1 -1
  721. package/build-types/validated-form-controls/components/range-control.d.ts +2 -2
  722. package/build-types/validated-form-controls/components/range-control.d.ts.map +1 -1
  723. package/build-types/validated-form-controls/components/select-control.d.ts +1 -1
  724. package/build-types/validated-form-controls/components/select-control.d.ts.map +1 -1
  725. package/build-types/validated-form-controls/components/stories/content-editable-control.story.d.ts +9 -0
  726. package/build-types/validated-form-controls/components/stories/content-editable-control.story.d.ts.map +1 -0
  727. package/build-types/validated-form-controls/components/toggle-group-control.d.ts +2 -2
  728. package/build-types/validated-form-controls/components/toggle-group-control.d.ts.map +1 -1
  729. package/build-types/validated-form-controls/test/content-editable-control.d.ts +2 -0
  730. package/build-types/validated-form-controls/test/content-editable-control.d.ts.map +1 -0
  731. package/build-types/validated-form-controls/validity-indicator.d.ts +1 -1
  732. package/build-types/validated-form-controls/validity-indicator.d.ts.map +1 -1
  733. package/build-types/view/component.d.ts +1125 -0
  734. package/build-types/view/component.d.ts.map +1 -1
  735. package/package.json +27 -27
  736. package/src/angle-picker-control/index.tsx +0 -1
  737. package/src/autocomplete/index.tsx +4 -8
  738. package/src/autocomplete/style.scss +1 -0
  739. package/src/badge/stories/index.story.tsx +1 -1
  740. package/src/base-control/stories/index.story.tsx +1 -1
  741. package/src/border-box-control/border-box-control/README.md +0 -16
  742. package/src/border-box-control/border-box-control/component.tsx +1 -9
  743. package/src/border-box-control/border-box-control/hook.ts +3 -13
  744. package/src/border-box-control/border-box-control-linked-button/hook.ts +6 -7
  745. package/src/border-box-control/border-box-control-split-controls/component.tsx +1 -12
  746. package/src/border-box-control/border-box-control-split-controls/hook.ts +2 -4
  747. package/src/border-box-control/border-box-control-visualizer/hook.ts +6 -11
  748. package/src/border-box-control/stories/index.story.tsx +0 -2
  749. package/src/border-box-control/styles.ts +28 -36
  750. package/src/border-box-control/test/index.tsx +1 -3
  751. package/src/border-box-control/types.ts +13 -5
  752. package/src/border-control/border-control/README.md +0 -15
  753. package/src/border-control/border-control/component.tsx +0 -9
  754. package/src/border-control/border-control/hook.ts +10 -22
  755. package/src/border-control/border-control-dropdown/component.tsx +1 -2
  756. package/src/border-control/border-control-dropdown/hook.ts +2 -4
  757. package/src/border-control/border-control-style-picker/component.tsx +0 -1
  758. package/src/border-control/stories/index.story.tsx +0 -2
  759. package/src/border-control/styles.ts +11 -12
  760. package/src/border-control/test/index.js +32 -1
  761. package/src/border-control/types.ts +5 -10
  762. package/src/box-control/box-input-control.tsx +0 -5
  763. package/src/button/stories/e2e/index.story.tsx +10 -2
  764. package/src/button/stories/index.story.tsx +1 -1
  765. package/src/button/style.scss +42 -83
  766. package/src/button-group/style.scss +1 -6
  767. package/src/calendar/style.scss +1 -1
  768. package/src/card/card/hook.ts +4 -3
  769. package/src/card/card-footer/hook.ts +12 -16
  770. package/src/card/card-header/hook.ts +12 -16
  771. package/src/card/stories/index.story.tsx +1 -1
  772. package/src/card/styles.ts +49 -0
  773. package/src/card/test/__snapshots__/index.tsx.snap +94 -139
  774. package/src/card/test/index.tsx +97 -0
  775. package/src/checkbox-control/stories/index.story.tsx +1 -1
  776. package/src/checkbox-control/test/__snapshots__/index.tsx.snap +1 -1
  777. package/src/circular-option-picker/style.scss +0 -1
  778. package/src/color-palette/styles.ts +1 -1
  779. package/src/color-picker/component.tsx +4 -0
  780. package/src/color-picker/hex-input.tsx +0 -1
  781. package/src/color-picker/input-with-slider.tsx +0 -2
  782. package/src/color-picker/stories/index.story.tsx +5 -0
  783. package/src/combobox-control/README.md +0 -9
  784. package/src/combobox-control/index.tsx +2 -14
  785. package/src/combobox-control/stories/index.story.tsx +0 -2
  786. package/src/combobox-control/styles.ts +0 -21
  787. package/src/combobox-control/test/index.tsx +1 -1
  788. package/src/combobox-control/types.ts +2 -1
  789. package/src/confirm-dialog/stories/index.story.tsx +1 -1
  790. package/src/content-editable-control/README.md +88 -0
  791. package/src/content-editable-control/docs-manifest.json +5 -0
  792. package/src/content-editable-control/index.tsx +91 -0
  793. package/src/content-editable-control/stories/index.story.tsx +32 -0
  794. package/src/content-editable-control/style.module.scss +34 -0
  795. package/src/content-editable-control/test/index.tsx +164 -0
  796. package/src/content-editable-control/types.ts +35 -0
  797. package/src/context/stories/ComponentsProvider.stories.jsx +3 -3
  798. package/src/custom-gradient-picker/index.tsx +0 -1
  799. package/src/custom-select-control/README.md +0 -9
  800. package/src/custom-select-control/index.tsx +9 -24
  801. package/src/custom-select-control/stories/index.story.tsx +1 -3
  802. package/src/custom-select-control/test/index.tsx +1 -1
  803. package/src/custom-select-control/types.ts +2 -1
  804. package/src/custom-select-control-v2/custom-select.tsx +1 -5
  805. package/src/custom-select-control-v2/stories/index.story.tsx +1 -1
  806. package/src/date-time/date-picker/styles.ts +1 -1
  807. package/src/date-time/time-picker/index.tsx +0 -3
  808. package/src/date-time/time-picker/time-input/index.tsx +0 -3
  809. package/src/disabled/stories/index.story.tsx +0 -1
  810. package/src/divider/style.module.scss +4 -2
  811. package/src/dropdown-menu/style.scss +1 -1
  812. package/src/elevation/hook.ts +4 -3
  813. package/src/elevation/stories/index.story.tsx +1 -1
  814. package/src/elevation/test/__snapshots__/index.tsx.snap +6 -6
  815. package/src/elevation/test/index.tsx +21 -0
  816. package/src/external-link/index.tsx +1 -7
  817. package/src/external-link/stories/index.story.tsx +1 -1
  818. package/src/external-link/style.scss +1 -1
  819. package/src/flex/flex/hook.ts +24 -43
  820. package/src/flex/flex-item/hook.ts +10 -27
  821. package/src/flex/stories/index.story.tsx +1 -1
  822. package/src/flex/style.module.scss +40 -0
  823. package/src/flex/test/__snapshots__/index.tsx.snap +6 -156
  824. package/src/flex/test/index.tsx +80 -49
  825. package/src/focal-point-picker/controls.tsx +0 -1
  826. package/src/focal-point-picker/index.tsx +1 -0
  827. package/src/font-size-picker/README.md +0 -15
  828. package/src/font-size-picker/font-size-picker-select.tsx +1 -11
  829. package/src/font-size-picker/font-size-picker-toggle-group.tsx +1 -11
  830. package/src/font-size-picker/index.tsx +1 -26
  831. package/src/font-size-picker/stories/e2e/index.story.tsx +0 -2
  832. package/src/font-size-picker/stories/index.story.tsx +0 -2
  833. package/src/font-size-picker/test/font-size-picker-select.tsx +0 -16
  834. package/src/font-size-picker/test/font-size-picker-toggle-group.tsx +0 -22
  835. package/src/font-size-picker/test/index.tsx +2 -16
  836. package/src/font-size-picker/types.ts +6 -5
  837. package/src/form-file-upload/README.md +0 -10
  838. package/src/form-file-upload/index.tsx +2 -14
  839. package/src/form-file-upload/stories/index.story.tsx +1 -2
  840. package/src/form-file-upload/test/index.tsx +1 -16
  841. package/src/form-file-upload/types.ts +2 -2
  842. package/src/form-token-field/README.md +0 -2
  843. package/src/form-token-field/index.tsx +1 -12
  844. package/src/form-token-field/stories/index.story.tsx +0 -4
  845. package/src/form-token-field/styles.ts +0 -19
  846. package/src/form-token-field/test/index.tsx +1 -5
  847. package/src/form-token-field/types.ts +2 -1
  848. package/src/h-stack/stories/index.story.tsx +1 -1
  849. package/src/h-stack/test/__snapshots__/index.tsx.snap +12 -91
  850. package/src/heading/hook.ts +1 -1
  851. package/src/heading/stories/index.story.tsx +1 -1
  852. package/src/heading/test/__snapshots__/index.tsx.snap +1 -1
  853. package/src/icon/stories/index.story.tsx +1 -1
  854. package/src/input-control/README.md +0 -8
  855. package/src/input-control/index.tsx +5 -16
  856. package/src/input-control/input-base.tsx +4 -8
  857. package/src/input-control/stories/index.story.tsx +2 -4
  858. package/src/input-control/styles/input-control-styles.tsx +1 -11
  859. package/src/input-control/test/index.js +1 -7
  860. package/src/input-control/types.ts +21 -29
  861. package/src/item-group/test/__snapshots__/index.js.snap +27 -21
  862. package/src/menu/group-label.tsx +2 -1
  863. package/src/menu-group/style.scss +1 -1
  864. package/src/menu-item/style.scss +1 -1
  865. package/src/modal/stories/index.story.tsx +2 -5
  866. package/src/modal/style.scss +1 -1
  867. package/src/navigator/stories/index.story.tsx +5 -0
  868. package/src/notice/stories/index.story.tsx +1 -1
  869. package/src/notice/test/__snapshots__/index.tsx.snap +1 -1
  870. package/src/number-control/README.md +0 -8
  871. package/src/number-control/index.tsx +5 -12
  872. package/src/number-control/stories/index.story.tsx +1 -3
  873. package/src/number-control/test/index.tsx +1 -1
  874. package/src/number-control/types.ts +15 -1
  875. package/src/palette-edit/styles.ts +1 -1
  876. package/src/panel/stories/index.story.tsx +4 -4
  877. package/src/panel/style.scss +2 -5
  878. package/src/placeholder/style.scss +1 -1
  879. package/src/private-apis.ts +4 -0
  880. package/src/query-controls/README.md +0 -7
  881. package/src/query-controls/author-select.tsx +0 -2
  882. package/src/query-controls/category-select.tsx +0 -2
  883. package/src/query-controls/index.tsx +0 -5
  884. package/src/query-controls/types.ts +0 -2
  885. package/src/radio-group/README.md +8 -8
  886. package/src/radio-group/radio.tsx +2 -9
  887. package/src/radio-group/stories/index.story.tsx +3 -9
  888. package/src/radio-group/types.ts +8 -6
  889. package/src/range-control/README.md +0 -8
  890. package/src/range-control/index.tsx +6 -26
  891. package/src/range-control/stories/index.story.tsx +0 -11
  892. package/src/range-control/styles/range-control-styles.ts +1 -10
  893. package/src/range-control/test/index.tsx +1 -14
  894. package/src/range-control/types.ts +3 -1
  895. package/src/resizable-box/index.tsx +4 -0
  896. package/src/sandbox/index.tsx +143 -96
  897. package/src/sandbox/test/index.tsx +42 -1
  898. package/src/scrollable/test/__snapshots__/index.tsx.snap +16 -11
  899. package/src/search-control/index.tsx +3 -2
  900. package/src/select-control/README.md +0 -11
  901. package/src/select-control/index.tsx +6 -16
  902. package/src/select-control/stories/index.story.tsx +1 -5
  903. package/src/select-control/styles/select-control-styles.ts +3 -22
  904. package/src/select-control/test/select-control.tsx +6 -12
  905. package/src/select-control/types.ts +22 -3
  906. package/src/slot-fill/index.tsx +5 -0
  907. package/src/slot-fill/test/__snapshots__/slot.js.snap +4 -12
  908. package/src/spacer/hook.ts +93 -76
  909. package/src/spacer/stories/index.story.tsx +8 -6
  910. package/src/spacer/style.module.scss +25 -0
  911. package/src/spacer/test/__snapshots__/index.tsx.snap +2 -222
  912. package/src/spacer/test/index.tsx +111 -87
  913. package/src/surface/hook.ts +30 -36
  914. package/src/surface/style.module.scss +53 -0
  915. package/src/surface/test/index.tsx +22 -29
  916. package/src/tab-panel/stories/index.story.tsx +1 -1
  917. package/src/tab-panel/style.scss +1 -1
  918. package/src/tabs/stories/index.story.tsx +1 -1
  919. package/src/text/README.md +1 -1
  920. package/src/text/hook.ts +11 -12
  921. package/src/text/stories/index.story.tsx +1 -1
  922. package/src/text/test/__snapshots__/index.tsx.snap +2 -2
  923. package/src/text/test/index.tsx +19 -4
  924. package/src/text/types.ts +5 -5
  925. package/src/textarea-control/stories/index.story.tsx +1 -1
  926. package/src/theme/index.tsx +43 -18
  927. package/src/theme/style.module.scss +4 -0
  928. package/src/theme/test/index.tsx +23 -6
  929. package/src/toggle-group-control/stories/index.story.tsx +0 -1
  930. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +86 -86
  931. package/src/toggle-group-control/test/index.tsx +20 -4
  932. package/src/toggle-group-control/toggle-group-control/README.md +0 -8
  933. package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +0 -3
  934. package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +0 -3
  935. package/src/toggle-group-control/toggle-group-control/component.tsx +6 -20
  936. package/src/toggle-group-control/toggle-group-control/styles.ts +8 -25
  937. package/src/toggle-group-control/toggle-group-control-option/README.md +0 -1
  938. package/src/toggle-group-control/toggle-group-control-option/component.tsx +0 -1
  939. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +3 -7
  940. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +9 -19
  941. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
  942. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +1 -1
  943. package/src/toggle-group-control/types.ts +5 -4
  944. package/src/toolbar/toolbar-button/style.scss +1 -1
  945. package/src/tools-panel/stories/index.story.tsx +0 -15
  946. package/src/tools-panel/styles.ts +18 -2
  947. package/src/tools-panel/test/index.tsx +39 -0
  948. package/src/tools-panel/tools-panel/component.tsx +0 -2
  949. package/src/tools-panel/tools-panel/hook.ts +5 -9
  950. package/src/tooltip/stories/index.story.tsx +1 -1
  951. package/src/tree-grid/stories/index.story.tsx +0 -2
  952. package/src/tree-select/README.md +0 -9
  953. package/src/tree-select/index.tsx +4 -14
  954. package/src/tree-select/stories/index.story.tsx +0 -2
  955. package/src/tree-select/types.ts +8 -1
  956. package/src/truncate/hook.ts +23 -28
  957. package/src/truncate/style.module.scss +21 -0
  958. package/src/unit-control/README.md +3 -9
  959. package/src/unit-control/index.tsx +3 -17
  960. package/src/unit-control/stories/index.story.tsx +0 -3
  961. package/src/unit-control/test/index.tsx +1 -5
  962. package/src/unit-control/types.ts +11 -1
  963. package/src/utils/base-label.ts +1 -1
  964. package/src/utils/config-values.js +1 -8
  965. package/src/utils/font-values.js +1 -1
  966. package/src/utils/hooks/use-cx.ts +4 -0
  967. package/src/utils/polymorphic-element.tsx +152 -0
  968. package/src/utils/test/polymorphic-element.tsx +231 -0
  969. package/src/v-stack/stories/index.story.tsx +1 -1
  970. package/src/v-stack/test/__snapshots__/index.tsx.snap +12 -90
  971. package/src/validated-form-controls/components/combobox-control.tsx +1 -1
  972. package/src/validated-form-controls/components/content-editable-control.tsx +88 -0
  973. package/src/validated-form-controls/components/custom-select-control.tsx +1 -5
  974. package/src/validated-form-controls/components/form-token-field.tsx +2 -6
  975. package/src/validated-form-controls/components/index.ts +1 -0
  976. package/src/validated-form-controls/components/input-control.tsx +2 -10
  977. package/src/validated-form-controls/components/number-control.tsx +2 -10
  978. package/src/validated-form-controls/components/range-control.tsx +2 -10
  979. package/src/validated-form-controls/components/select-control.tsx +2 -6
  980. package/src/validated-form-controls/components/stories/content-editable-control.story.tsx +56 -0
  981. package/src/validated-form-controls/components/toggle-group-control.tsx +2 -9
  982. package/src/validated-form-controls/control-with-error.tsx +1 -1
  983. package/src/validated-form-controls/style.scss +7 -0
  984. package/src/validated-form-controls/test/content-editable-control.tsx +71 -0
  985. package/src/view/README.md +0 -6
  986. package/src/view/component.tsx +17 -8
  987. package/src/view/test/__snapshots__/index.js.snap +24 -16
  988. package/src/view/test/index.js +60 -4
  989. package/src/visually-hidden/stories/index.story.tsx +1 -1
  990. package/build/flex/styles.cjs +0 -82
  991. package/build/flex/styles.cjs.map +0 -7
  992. package/build/surface/styles.cjs +0 -97
  993. package/build/surface/styles.cjs.map +0 -7
  994. package/build/theme/styles.cjs +0 -66
  995. package/build/theme/styles.cjs.map +0 -7
  996. package/build/truncate/styles.cjs +0 -42
  997. package/build/truncate/styles.cjs.map +0 -7
  998. package/build/utils/deprecated-36px-size.cjs +0 -56
  999. package/build/utils/deprecated-36px-size.cjs.map +0 -7
  1000. package/build-module/flex/styles.mjs +0 -53
  1001. package/build-module/flex/styles.mjs.map +0 -7
  1002. package/build-module/surface/styles.mjs +0 -64
  1003. package/build-module/surface/styles.mjs.map +0 -7
  1004. package/build-module/theme/styles.mjs +0 -30
  1005. package/build-module/theme/styles.mjs.map +0 -7
  1006. package/build-module/truncate/styles.mjs +0 -17
  1007. package/build-module/truncate/styles.mjs.map +0 -7
  1008. package/build-module/utils/deprecated-36px-size.mjs +0 -21
  1009. package/build-module/utils/deprecated-36px-size.mjs.map +0 -7
  1010. package/build-types/flex/styles.d.ts +0 -17
  1011. package/build-types/flex/styles.d.ts.map +0 -1
  1012. package/build-types/surface/styles.d.ts +0 -11
  1013. package/build-types/surface/styles.d.ts.map +0 -1
  1014. package/build-types/theme/styles.d.ts +0 -10
  1015. package/build-types/theme/styles.d.ts.map +0 -1
  1016. package/build-types/truncate/styles.d.ts +0 -2
  1017. package/build-types/truncate/styles.d.ts.map +0 -1
  1018. package/build-types/utils/deprecated-36px-size.d.ts +0 -7
  1019. package/build-types/utils/deprecated-36px-size.d.ts.map +0 -1
  1020. package/src/flex/styles.ts +0 -44
  1021. package/src/focal-point-picker/style.scss +0 -58
  1022. package/src/surface/styles.ts +0 -139
  1023. package/src/surface/test/__snapshots__/index.tsx.snap +0 -104
  1024. package/src/theme/styles.ts +0 -35
  1025. package/src/truncate/styles.ts +0 -11
  1026. package/src/utils/deprecated-36px-size.ts +0 -30
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/flex/flex/hook.ts"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport { css } from '@emotion/react';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\n\nimport { useContextSystem } from '../../context';\nimport { useResponsiveValue } from '../../utils/use-responsive-value';\nimport { space } from '../../utils/space';\nimport * as styles from '../styles';\nimport { useCx } from '../../utils';\nfunction useDeprecatedProps(props) {\n const {\n isReversed,\n ...otherProps\n } = props;\n if (typeof isReversed !== 'undefined') {\n deprecated('Flex isReversed', {\n alternative: 'Flex direction=\"row-reverse\" or \"column-reverse\"',\n since: '5.9'\n });\n return {\n ...otherProps,\n direction: isReversed ? 'row-reverse' : 'row'\n };\n }\n return otherProps;\n}\nexport function useFlex(props) {\n const {\n align,\n className,\n direction: directionProp = 'row',\n expanded = true,\n gap = 2,\n justify = 'space-between',\n wrap = false,\n ...otherProps\n } = useContextSystem(useDeprecatedProps(props), 'Flex');\n const directionAsArray = Array.isArray(directionProp) ? directionProp : [directionProp];\n const direction = useResponsiveValue(directionAsArray);\n const isColumn = typeof direction === 'string' && !!direction.includes('column');\n const cx = useCx();\n const classes = useMemo(() => {\n const base = /*#__PURE__*/css({\n alignItems: align ?? (isColumn ? 'normal' : 'center'),\n flexDirection: direction,\n flexWrap: wrap ? 'wrap' : undefined,\n gap: space(gap),\n justifyContent: justify,\n height: isColumn && expanded ? '100%' : undefined,\n width: !isColumn && expanded ? '100%' : undefined\n }, process.env.NODE_ENV === \"production\" ? \"\" : \";label:base;\", process.env.NODE_ENV === \"production\" ? \"\" : \"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0VlIiwiZmlsZSI6Imhvb2sudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbi8qKlxuICogV29yZFByZXNzIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAnQHdvcmRwcmVzcy9lbGVtZW50JztcbmltcG9ydCBkZXByZWNhdGVkIGZyb20gJ0B3b3JkcHJlc3MvZGVwcmVjYXRlZCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB0eXBlIHsgV29yZFByZXNzQ29tcG9uZW50UHJvcHMgfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUNvbnRleHRTeXN0ZW0gfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL3VzZS1yZXNwb25zaXZlLXZhbHVlJztcbmltcG9ydCB7IHNwYWNlIH0gZnJvbSAnLi4vLi4vdXRpbHMvc3BhY2UnO1xuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gJy4uL3N0eWxlcyc7XG5pbXBvcnQgeyB1c2VDeCB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgRmxleFByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5mdW5jdGlvbiB1c2VEZXByZWNhdGVkUHJvcHMoXG5cdHByb3BzOiBXb3JkUHJlc3NDb21wb25lbnRQcm9wczwgRmxleFByb3BzLCAnZGl2JyA+XG4pOiBPbWl0PCB0eXBlb2YgcHJvcHMsICdpc1JldmVyc2VkJyA+IHtcblx0Y29uc3QgeyBpc1JldmVyc2VkLCAuLi5vdGhlclByb3BzIH0gPSBwcm9wcztcblxuXHRpZiAoIHR5cGVvZiBpc1JldmVyc2VkICE9PSAndW5kZWZpbmVkJyApIHtcblx0XHRkZXByZWNhdGVkKCAnRmxleCBpc1JldmVyc2VkJywge1xuXHRcdFx0YWx0ZXJuYXRpdmU6ICdGbGV4IGRpcmVjdGlvbj1cInJvdy1yZXZlcnNlXCIgb3IgXCJjb2x1bW4tcmV2ZXJzZVwiJyxcblx0XHRcdHNpbmNlOiAnNS45Jyxcblx0XHR9ICk7XG5cdFx0cmV0dXJuIHtcblx0XHRcdC4uLm90aGVyUHJvcHMsXG5cdFx0XHRkaXJlY3Rpb246IGlzUmV2ZXJzZWQgPyAncm93LXJldmVyc2UnIDogJ3JvdycsXG5cdFx0fTtcblx0fVxuXG5cdHJldHVybiBvdGhlclByb3BzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlRmxleCggcHJvcHM6IFdvcmRQcmVzc0NvbXBvbmVudFByb3BzPCBGbGV4UHJvcHMsICdkaXYnID4gKSB7XG5cdGNvbnN0IHtcblx0XHRhbGlnbixcblx0XHRjbGFzc05hbWUsXG5cdFx0ZGlyZWN0aW9uOiBkaXJlY3Rpb25Qcm9wID0gJ3JvdycsXG5cdFx0ZXhwYW5kZWQgPSB0cnVlLFxuXHRcdGdhcCA9IDIsXG5cdFx0anVzdGlmeSA9ICdzcGFjZS1iZXR3ZWVuJyxcblx0XHR3cmFwID0gZmFsc2UsXG5cdFx0Li4ub3RoZXJQcm9wc1xuXHR9ID0gdXNlQ29udGV4dFN5c3RlbSggdXNlRGVwcmVjYXRlZFByb3BzKCBwcm9wcyApLCAnRmxleCcgKTtcblxuXHRjb25zdCBkaXJlY3Rpb25Bc0FycmF5ID0gQXJyYXkuaXNBcnJheSggZGlyZWN0aW9uUHJvcCApXG5cdFx0PyBkaXJlY3Rpb25Qcm9wXG5cdFx0OiBbIGRpcmVjdGlvblByb3AgXTtcblx0Y29uc3QgZGlyZWN0aW9uID0gdXNlUmVzcG9uc2l2ZVZhbHVlKCBkaXJlY3Rpb25Bc0FycmF5ICk7XG5cblx0Y29uc3QgaXNDb2x1bW4gPVxuXHRcdHR5cGVvZiBkaXJlY3Rpb24gPT09ICdzdHJpbmcnICYmICEhIGRpcmVjdGlvbi5pbmNsdWRlcyggJ2NvbHVtbicgKTtcblxuXHRjb25zdCBjeCA9IHVzZUN4KCk7XG5cblx0Y29uc3QgY2xhc3NlcyA9IHVzZU1lbW8oICgpID0+IHtcblx0XHRjb25zdCBiYXNlID0gY3NzKCB7XG5cdFx0XHRhbGlnbkl0ZW1zOiBhbGlnbiA/PyAoIGlzQ29sdW1uID8gJ25vcm1hbCcgOiAnY2VudGVyJyApLFxuXHRcdFx0ZmxleERpcmVjdGlvbjogZGlyZWN0aW9uLFxuXHRcdFx0ZmxleFdyYXA6IHdyYXAgPyAnd3JhcCcgOiB1bmRlZmluZWQsXG5cdFx0XHRnYXA6IHNwYWNlKCBnYXAgKSxcblx0XHRcdGp1c3RpZnlDb250ZW50OiBqdXN0aWZ5LFxuXHRcdFx0aGVpZ2h0OiBpc0NvbHVtbiAmJiBleHBhbmRlZCA/ICcxMDAlJyA6IHVuZGVmaW5lZCxcblx0XHRcdHdpZHRoOiAhIGlzQ29sdW1uICYmIGV4cGFuZGVkID8gJzEwMCUnIDogdW5kZWZpbmVkLFxuXHRcdH0gKTtcblxuXHRcdHJldHVybiBjeChcblx0XHRcdHN0eWxlcy5GbGV4LFxuXHRcdFx0YmFzZSxcblx0XHRcdGlzQ29sdW1uID8gc3R5bGVzLkl0ZW1zQ29sdW1uIDogc3R5bGVzLkl0ZW1zUm93LFxuXHRcdFx0Y2xhc3NOYW1lXG5cdFx0KTtcblx0fSwgW1xuXHRcdGFsaWduLFxuXHRcdGNsYXNzTmFtZSxcblx0XHRjeCxcblx0XHRkaXJlY3Rpb24sXG5cdFx0ZXhwYW5kZWQsXG5cdFx0Z2FwLFxuXHRcdGlzQ29sdW1uLFxuXHRcdGp1c3RpZnksXG5cdFx0d3JhcCxcblx0XSApO1xuXG5cdHJldHVybiB7IC4uLm90aGVyUHJvcHMsIGNsYXNzTmFtZTogY2xhc3NlcywgaXNDb2x1bW4gfTtcbn1cbiJdfQ== */\");\n return cx(styles.Flex, base, isColumn ? styles.ItemsColumn : styles.ItemsRow, className);\n }, [align, className, cx, direction, expanded, gap, isColumn, justify, wrap]);\n return {\n ...otherProps,\n className: classes,\n isColumn\n };\n}"],
5
- "mappings": ";AAGA,SAAS,WAAW;AAKpB,SAAS,eAAe;AACxB,OAAO,gBAAgB;AAMvB,SAAS,wBAAwB;AACjC,SAAS,0BAA0B;AACnC,SAAS,aAAa;AACtB,YAAY,YAAY;AACxB,SAAS,aAAa;AACtB,SAAS,mBAAmB,OAAO;AACjC,QAAM;AAAA,IACJ;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AACJ,MAAI,OAAO,eAAe,aAAa;AACrC,eAAW,mBAAmB;AAAA,MAC5B,aAAa;AAAA,MACb,OAAO;AAAA,IACT,CAAC;AACD,WAAO;AAAA,MACL,GAAG;AAAA,MACH,WAAW,aAAa,gBAAgB;AAAA,IAC1C;AAAA,EACF;AACA,SAAO;AACT;AACO,SAAS,QAAQ,OAAO;AAC7B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,WAAW,gBAAgB;AAAA,IAC3B,WAAW;AAAA,IACX,MAAM;AAAA,IACN,UAAU;AAAA,IACV,OAAO;AAAA,IACP,GAAG;AAAA,EACL,IAAI,iBAAiB,mBAAmB,KAAK,GAAG,MAAM;AACtD,QAAM,mBAAmB,MAAM,QAAQ,aAAa,IAAI,gBAAgB,CAAC,aAAa;AACtF,QAAM,YAAY,mBAAmB,gBAAgB;AACrD,QAAM,WAAW,OAAO,cAAc,YAAY,CAAC,CAAC,UAAU,SAAS,QAAQ;AAC/E,QAAM,KAAK,MAAM;AACjB,QAAM,UAAU,QAAQ,MAAM;AAC5B,UAAM,OAAoB,oBAAI;AAAA,MAC5B,YAAY,UAAU,WAAW,WAAW;AAAA,MAC5C,eAAe;AAAA,MACf,UAAU,OAAO,SAAS;AAAA,MAC1B,KAAK,MAAM,GAAG;AAAA,MACd,gBAAgB;AAAA,MAChB,QAAQ,YAAY,WAAW,SAAS;AAAA,MACxC,OAAO,CAAC,YAAY,WAAW,SAAS;AAAA,IAC1C,GAAG,QAAQ,IAAI,aAAa,eAAe,KAAK,gBAAgB,QAAQ,IAAI,aAAa,eAAe,KAAK,i4GAAi4G;AAC9+G,WAAO,GAAU,aAAM,MAAM,WAAkB,qBAAqB,iBAAU,SAAS;AAAA,EACzF,GAAG,CAAC,OAAO,WAAW,IAAI,WAAW,UAAU,KAAK,UAAU,SAAS,IAAI,CAAC;AAC5E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,WAAW;AAAA,IACX;AAAA,EACF;AACF;",
3
+ "sources": ["../../../src/flex/flex/hook.ts", "../../../../style-runtime/src/index.ts", "../../../src/flex/style.module.scss"],
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport deprecated from '@wordpress/deprecated';\nimport { useContextSystem } from '../../context';\nimport { useResponsiveValue } from '../../utils/use-responsive-value';\nimport { space } from '../../utils/space';\nimport styles from '../style.module.scss';\nfunction useDeprecatedProps(props) {\n const {\n isReversed,\n ...otherProps\n } = props;\n if (typeof isReversed !== 'undefined') {\n deprecated('Flex isReversed', {\n alternative: 'Flex direction=\"row-reverse\" or \"column-reverse\"',\n since: '5.9'\n });\n return {\n ...otherProps,\n direction: isReversed ? 'row-reverse' : 'row'\n };\n }\n return otherProps;\n}\nexport function useFlex(props) {\n const {\n align,\n className,\n direction: directionProp = 'row',\n expanded = true,\n gap = 2,\n justify = 'space-between',\n style,\n wrap = false,\n ...otherProps\n } = useContextSystem(useDeprecatedProps(props), 'Flex');\n const directionAsArray = Array.isArray(directionProp) ? directionProp : [directionProp];\n const direction = useResponsiveValue(directionAsArray);\n const isColumn = typeof direction === 'string' && !!direction.includes('column');\n const flexStyle = {\n ...style,\n '--wp-components-flex-align': align ?? (isColumn ? 'normal' : 'center'),\n '--wp-components-flex-direction': direction,\n '--wp-components-flex-wrap': wrap ? 'wrap' : 'nowrap',\n '--wp-components-flex-gap': space(gap),\n '--wp-components-flex-justify': justify\n };\n return {\n ...otherProps,\n className: clsx(styles.flex, isColumn ? styles['items-column'] : styles['items-row'], expanded && (isColumn ? styles['expanded-column'] : styles['expanded-row']), className),\n style: flexStyle,\n isColumn\n };\n}", "const STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n const globalScope = globalThis;\n if (globalScope.__wpStyleRuntime) {\n return globalScope.__wpStyleRuntime;\n }\n globalScope.__wpStyleRuntime = {\n documents: new Map(),\n styles: new Map(),\n injectedStyles: new WeakMap()\n };\n if (typeof document !== 'undefined') {\n registerDocument(document);\n }\n return globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(targetDocument, hash) {\n if (!targetDocument.head) {\n return false;\n }\n for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {\n if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle(targetDocument, hash, css) {\n if (!targetDocument.head) {\n return;\n }\n const runtime = getRuntime();\n let injectedStyles = runtime.injectedStyles.get(targetDocument);\n if (!injectedStyles) {\n injectedStyles = new Set();\n runtime.injectedStyles.set(targetDocument, injectedStyles);\n }\n if (injectedStyles.has(hash)) {\n return;\n }\n\n // Older generated CSS module output can still inject matching style tags\n // after this document's cache is created, so keep the DOM as the fallback\n // source of truth on cache misses.\n if (documentContainsStyleHash(targetDocument, hash)) {\n injectedStyles.add(hash);\n return;\n }\n const style = targetDocument.createElement('style');\n style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);\n style.appendChild(targetDocument.createTextNode(css));\n targetDocument.head.appendChild(style);\n injectedStyles.add(hash);\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument(targetDocument) {\n const runtime = getRuntime();\n runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);\n for (const [hash, css] of runtime.styles) {\n injectStyle(targetDocument, hash, css);\n }\n return () => {\n const count = runtime.documents.get(targetDocument);\n if (count === undefined) {\n return;\n }\n if (count <= 1) {\n runtime.documents.delete(targetDocument);\n return;\n }\n runtime.documents.set(targetDocument, count - 1);\n };\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle(hash, css) {\n const runtime = getRuntime();\n runtime.styles.set(hash, css);\n for (const targetDocument of runtime.documents.keys()) {\n injectStyle(targetDocument, hash, css);\n }\n}", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"1931a27616\", \".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}\");\n}\nexport default {\"flex\":\"e518617e7c3a18e7__flex\",\"expanded-column\":\"e4a76957e0b12292__expanded-column\",\"expanded-row\":\"cc39999a5fb580d4__expanded-row\",\"item\":\"bc09d0edcc10c304__item\",\"block\":\"c184ec8e81027f31__block\",\"items-column\":\"f9694ed4faabfc82__items-column\",\"items-row\":\"_3896336788892095__items-row\"};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,26 +1,110 @@
1
1
  // packages/components/src/flex/flex-item/hook.ts
2
- import { css } from "@emotion/react";
2
+ import clsx from "clsx";
3
3
  import { useContextSystem } from "../../context/index.mjs";
4
4
  import { useFlexContext } from "../context.mjs";
5
- import * as styles from "../styles.mjs";
6
- import { useCx } from "../../utils/hooks/use-cx.mjs";
5
+
6
+ // packages/style-runtime/src/index.ts
7
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
8
+ function getRuntime() {
9
+ const globalScope = globalThis;
10
+ if (globalScope.__wpStyleRuntime) {
11
+ return globalScope.__wpStyleRuntime;
12
+ }
13
+ globalScope.__wpStyleRuntime = {
14
+ documents: /* @__PURE__ */ new Map(),
15
+ styles: /* @__PURE__ */ new Map(),
16
+ injectedStyles: /* @__PURE__ */ new WeakMap()
17
+ };
18
+ if (typeof document !== "undefined") {
19
+ registerDocument(document);
20
+ }
21
+ return globalScope.__wpStyleRuntime;
22
+ }
23
+ function documentContainsStyleHash(targetDocument, hash) {
24
+ if (!targetDocument.head) {
25
+ return false;
26
+ }
27
+ for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {
28
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
29
+ return true;
30
+ }
31
+ }
32
+ return false;
33
+ }
34
+ function injectStyle(targetDocument, hash, css) {
35
+ if (!targetDocument.head) {
36
+ return;
37
+ }
38
+ const runtime = getRuntime();
39
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
40
+ if (!injectedStyles) {
41
+ injectedStyles = /* @__PURE__ */ new Set();
42
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
43
+ }
44
+ if (injectedStyles.has(hash)) {
45
+ return;
46
+ }
47
+ if (documentContainsStyleHash(targetDocument, hash)) {
48
+ injectedStyles.add(hash);
49
+ return;
50
+ }
51
+ const style = targetDocument.createElement("style");
52
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
53
+ style.appendChild(targetDocument.createTextNode(css));
54
+ targetDocument.head.appendChild(style);
55
+ injectedStyles.add(hash);
56
+ }
57
+ function registerDocument(targetDocument) {
58
+ const runtime = getRuntime();
59
+ runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);
60
+ for (const [hash, css] of runtime.styles) {
61
+ injectStyle(targetDocument, hash, css);
62
+ }
63
+ return () => {
64
+ const count = runtime.documents.get(targetDocument);
65
+ if (count === void 0) {
66
+ return;
67
+ }
68
+ if (count <= 1) {
69
+ runtime.documents.delete(targetDocument);
70
+ return;
71
+ }
72
+ runtime.documents.set(targetDocument, count - 1);
73
+ };
74
+ }
75
+ function registerStyle(hash, css) {
76
+ const runtime = getRuntime();
77
+ runtime.styles.set(hash, css);
78
+ for (const targetDocument of runtime.documents.keys()) {
79
+ injectStyle(targetDocument, hash, css);
80
+ }
81
+ }
82
+
83
+ // packages/components/src/flex/style.module.scss
84
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
85
+ registerStyle("1931a27616", ".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}");
86
+ }
87
+ var style_module_default = { "flex": "e518617e7c3a18e7__flex", "expanded-column": "e4a76957e0b12292__expanded-column", "expanded-row": "cc39999a5fb580d4__expanded-row", "item": "bc09d0edcc10c304__item", "block": "c184ec8e81027f31__block", "items-column": "f9694ed4faabfc82__items-column", "items-row": "_3896336788892095__items-row" };
88
+
89
+ // packages/components/src/flex/flex-item/hook.ts
7
90
  function useFlexItem(props) {
8
91
  const {
9
92
  className,
10
93
  display: displayProp,
11
94
  isBlock = false,
95
+ style,
12
96
  ...otherProps
13
97
  } = useContextSystem(props, "FlexItem");
14
- const sx = {};
15
98
  const contextDisplay = useFlexContext().flexItemDisplay;
16
- sx.Base = /* @__PURE__ */ css({
17
- display: displayProp || contextDisplay
18
- }, process.env.NODE_ENV === "production" ? "" : ";label:sx-Base;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0NXIiwiZmlsZSI6Imhvb2sudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZWRTdHlsZXMgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB0eXBlIHsgV29yZFByZXNzQ29tcG9uZW50UHJvcHMgfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUNvbnRleHRTeXN0ZW0gfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUZsZXhDb250ZXh0IH0gZnJvbSAnLi4vY29udGV4dCc7XG5pbXBvcnQgKiBhcyBzdHlsZXMgZnJvbSAnLi4vc3R5bGVzJztcbmltcG9ydCB7IHVzZUN4IH0gZnJvbSAnLi4vLi4vdXRpbHMvaG9va3MvdXNlLWN4JztcbmltcG9ydCB0eXBlIHsgRmxleEl0ZW1Qcm9wcyB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUZsZXhJdGVtKFxuXHRwcm9wczogV29yZFByZXNzQ29tcG9uZW50UHJvcHM8IEZsZXhJdGVtUHJvcHMsICdkaXYnID5cbikge1xuXHRjb25zdCB7XG5cdFx0Y2xhc3NOYW1lLFxuXHRcdGRpc3BsYXk6IGRpc3BsYXlQcm9wLFxuXHRcdGlzQmxvY2sgPSBmYWxzZSxcblx0XHQuLi5vdGhlclByb3BzXG5cdH0gPSB1c2VDb250ZXh0U3lzdGVtKCBwcm9wcywgJ0ZsZXhJdGVtJyApO1xuXG5cdGNvbnN0IHN4OiB7XG5cdFx0QmFzZT86IFNlcmlhbGl6ZWRTdHlsZXM7XG5cdH0gPSB7fTtcblxuXHRjb25zdCBjb250ZXh0RGlzcGxheSA9IHVzZUZsZXhDb250ZXh0KCkuZmxleEl0ZW1EaXNwbGF5O1xuXG5cdHN4LkJhc2UgPSBjc3MoIHtcblx0XHRkaXNwbGF5OiBkaXNwbGF5UHJvcCB8fCBjb250ZXh0RGlzcGxheSxcblx0fSApO1xuXG5cdGNvbnN0IGN4ID0gdXNlQ3goKTtcblxuXHRjb25zdCBjbGFzc2VzID0gY3goXG5cdFx0c3R5bGVzLkl0ZW0sXG5cdFx0c3guQmFzZSxcblx0XHRpc0Jsb2NrICYmIHN0eWxlcy5ibG9jayxcblx0XHRjbGFzc05hbWVcblx0KTtcblxuXHRyZXR1cm4ge1xuXHRcdC4uLm90aGVyUHJvcHMsXG5cdFx0Y2xhc3NOYW1lOiBjbGFzc2VzLFxuXHR9O1xufVxuIl19 */");
19
- const cx = useCx();
20
- const classes = cx(styles.Item, sx.Base, isBlock && styles.block, className);
99
+ const display = displayProp || contextDisplay;
100
+ const itemStyle = {
101
+ ...style,
102
+ "--wp-components-flex-item-display": display || "block"
103
+ };
21
104
  return {
22
105
  ...otherProps,
23
- className: classes
106
+ className: clsx(style_module_default.item, isBlock && style_module_default.block, className),
107
+ style: itemStyle
24
108
  };
25
109
  }
26
110
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/flex/flex-item/hook.ts"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\n\nimport { css } from '@emotion/react';\n\n/**\n * Internal dependencies\n */\n\nimport { useContextSystem } from '../../context';\nimport { useFlexContext } from '../context';\nimport * as styles from '../styles';\nimport { useCx } from '../../utils/hooks/use-cx';\nexport function useFlexItem(props) {\n const {\n className,\n display: displayProp,\n isBlock = false,\n ...otherProps\n } = useContextSystem(props, 'FlexItem');\n const sx = {};\n const contextDisplay = useFlexContext().flexItemDisplay;\n sx.Base = /*#__PURE__*/css({\n display: displayProp || contextDisplay\n }, process.env.NODE_ENV === \"production\" ? \"\" : \";label:sx-Base;\", process.env.NODE_ENV === \"production\" ? \"\" : \"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0NXIiwiZmlsZSI6Imhvb2sudHMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgdHlwZSB7IFNlcmlhbGl6ZWRTdHlsZXMgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB0eXBlIHsgV29yZFByZXNzQ29tcG9uZW50UHJvcHMgfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUNvbnRleHRTeXN0ZW0gfSBmcm9tICcuLi8uLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZUZsZXhDb250ZXh0IH0gZnJvbSAnLi4vY29udGV4dCc7XG5pbXBvcnQgKiBhcyBzdHlsZXMgZnJvbSAnLi4vc3R5bGVzJztcbmltcG9ydCB7IHVzZUN4IH0gZnJvbSAnLi4vLi4vdXRpbHMvaG9va3MvdXNlLWN4JztcbmltcG9ydCB0eXBlIHsgRmxleEl0ZW1Qcm9wcyB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUZsZXhJdGVtKFxuXHRwcm9wczogV29yZFByZXNzQ29tcG9uZW50UHJvcHM8IEZsZXhJdGVtUHJvcHMsICdkaXYnID5cbikge1xuXHRjb25zdCB7XG5cdFx0Y2xhc3NOYW1lLFxuXHRcdGRpc3BsYXk6IGRpc3BsYXlQcm9wLFxuXHRcdGlzQmxvY2sgPSBmYWxzZSxcblx0XHQuLi5vdGhlclByb3BzXG5cdH0gPSB1c2VDb250ZXh0U3lzdGVtKCBwcm9wcywgJ0ZsZXhJdGVtJyApO1xuXG5cdGNvbnN0IHN4OiB7XG5cdFx0QmFzZT86IFNlcmlhbGl6ZWRTdHlsZXM7XG5cdH0gPSB7fTtcblxuXHRjb25zdCBjb250ZXh0RGlzcGxheSA9IHVzZUZsZXhDb250ZXh0KCkuZmxleEl0ZW1EaXNwbGF5O1xuXG5cdHN4LkJhc2UgPSBjc3MoIHtcblx0XHRkaXNwbGF5OiBkaXNwbGF5UHJvcCB8fCBjb250ZXh0RGlzcGxheSxcblx0fSApO1xuXG5cdGNvbnN0IGN4ID0gdXNlQ3goKTtcblxuXHRjb25zdCBjbGFzc2VzID0gY3goXG5cdFx0c3R5bGVzLkl0ZW0sXG5cdFx0c3guQmFzZSxcblx0XHRpc0Jsb2NrICYmIHN0eWxlcy5ibG9jayxcblx0XHRjbGFzc05hbWVcblx0KTtcblxuXHRyZXR1cm4ge1xuXHRcdC4uLm90aGVyUHJvcHMsXG5cdFx0Y2xhc3NOYW1lOiBjbGFzc2VzLFxuXHR9O1xufVxuIl19 */\");\n const cx = useCx();\n const classes = cx(styles.Item, sx.Base, isBlock && styles.block, className);\n return {\n ...otherProps,\n className: classes\n };\n}"],
5
- "mappings": ";AAIA,SAAS,WAAW;AAMpB,SAAS,wBAAwB;AACjC,SAAS,sBAAsB;AAC/B,YAAY,YAAY;AACxB,SAAS,aAAa;AACf,SAAS,YAAY,OAAO;AACjC,QAAM;AAAA,IACJ;AAAA,IACA,SAAS;AAAA,IACT,UAAU;AAAA,IACV,GAAG;AAAA,EACL,IAAI,iBAAiB,OAAO,UAAU;AACtC,QAAM,KAAK,CAAC;AACZ,QAAM,iBAAiB,eAAe,EAAE;AACxC,KAAG,OAAoB,oBAAI;AAAA,IACzB,SAAS,eAAe;AAAA,EAC1B,GAAG,QAAQ,IAAI,aAAa,eAAe,KAAK,mBAAmB,QAAQ,IAAI,aAAa,eAAe,KAAK,yoDAAyoD;AACzvD,QAAM,KAAK,MAAM;AACjB,QAAM,UAAU,GAAU,aAAM,GAAG,MAAM,WAAkB,cAAO,SAAS;AAC3E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,WAAW;AAAA,EACb;AACF;",
3
+ "sources": ["../../../src/flex/flex-item/hook.ts", "../../../../style-runtime/src/index.ts", "../../../src/flex/style.module.scss"],
4
+ "sourcesContent": ["import clsx from 'clsx';\nimport { useContextSystem } from '../../context';\nimport { useFlexContext } from '../context';\nimport styles from '../style.module.scss';\nexport function useFlexItem(props) {\n const {\n className,\n display: displayProp,\n isBlock = false,\n style,\n ...otherProps\n } = useContextSystem(props, 'FlexItem');\n const contextDisplay = useFlexContext().flexItemDisplay;\n const display = displayProp || contextDisplay;\n const itemStyle = {\n ...style,\n '--wp-components-flex-item-display': display || 'block'\n };\n return {\n ...otherProps,\n className: clsx(styles.item, isBlock && styles.block, className),\n style: itemStyle\n };\n}", "const STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n const globalScope = globalThis;\n if (globalScope.__wpStyleRuntime) {\n return globalScope.__wpStyleRuntime;\n }\n globalScope.__wpStyleRuntime = {\n documents: new Map(),\n styles: new Map(),\n injectedStyles: new WeakMap()\n };\n if (typeof document !== 'undefined') {\n registerDocument(document);\n }\n return globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(targetDocument, hash) {\n if (!targetDocument.head) {\n return false;\n }\n for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {\n if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle(targetDocument, hash, css) {\n if (!targetDocument.head) {\n return;\n }\n const runtime = getRuntime();\n let injectedStyles = runtime.injectedStyles.get(targetDocument);\n if (!injectedStyles) {\n injectedStyles = new Set();\n runtime.injectedStyles.set(targetDocument, injectedStyles);\n }\n if (injectedStyles.has(hash)) {\n return;\n }\n\n // Older generated CSS module output can still inject matching style tags\n // after this document's cache is created, so keep the DOM as the fallback\n // source of truth on cache misses.\n if (documentContainsStyleHash(targetDocument, hash)) {\n injectedStyles.add(hash);\n return;\n }\n const style = targetDocument.createElement('style');\n style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);\n style.appendChild(targetDocument.createTextNode(css));\n targetDocument.head.appendChild(style);\n injectedStyles.add(hash);\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument(targetDocument) {\n const runtime = getRuntime();\n runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);\n for (const [hash, css] of runtime.styles) {\n injectStyle(targetDocument, hash, css);\n }\n return () => {\n const count = runtime.documents.get(targetDocument);\n if (count === undefined) {\n return;\n }\n if (count <= 1) {\n runtime.documents.delete(targetDocument);\n return;\n }\n runtime.documents.set(targetDocument, count - 1);\n };\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle(hash, css) {\n const runtime = getRuntime();\n runtime.styles.set(hash, css);\n for (const targetDocument of runtime.documents.keys()) {\n injectStyle(targetDocument, hash, css);\n }\n}", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"1931a27616\", \".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}\");\n}\nexport default {\"flex\":\"e518617e7c3a18e7__flex\",\"expanded-column\":\"e4a76957e0b12292__expanded-column\",\"expanded-row\":\"cc39999a5fb580d4__expanded-row\",\"item\":\"bc09d0edcc10c304__item\",\"block\":\"c184ec8e81027f31__block\",\"items-column\":\"f9694ed4faabfc82__items-column\",\"items-row\":\"_3896336788892095__items-row\"};\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -50,7 +50,6 @@ function FocalPointPickerControls({
50
50
  }
51
51
  function FocalPointUnitControl(props) {
52
52
  return /* @__PURE__ */ _jsx(StyledUnitControl, {
53
- __next40pxDefaultSize: true,
54
53
  className: "focal-point-picker__controls-position-unit-control",
55
54
  labelPosition: "top",
56
55
  max: TEXTCONTROL_MAX,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/focal-point-picker/controls.tsx"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { StyledUnitControl, ControlWrapper } from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\nconst noop = () => {};\nexport default function FocalPointPickerControls({\n hasHelpText,\n onChange = noop,\n point = {\n x: 0.5,\n y: 0.5\n }\n}) {\n const valueX = fractionToPercentage(point.x);\n const valueY = fractionToPercentage(point.y);\n const handleChange = (value, axis) => {\n if (value === undefined) {\n return;\n }\n const num = parseInt(value, 10);\n if (!isNaN(num)) {\n onChange({\n ...point,\n [axis]: num / 100\n });\n }\n };\n return /*#__PURE__*/_jsxs(ControlWrapper, {\n className: \"focal-point-picker__controls\",\n hasHelpText: hasHelpText,\n gap: 4,\n children: [/*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Left'),\n \"aria-label\": __('Focal point left position'),\n value: [valueX, '%'].join(''),\n onChange: next => handleChange(next, 'x'),\n dragDirection: \"e\"\n }), /*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Top'),\n \"aria-label\": __('Focal point top position'),\n value: [valueY, '%'].join(''),\n onChange: next => handleChange(next, 'y'),\n dragDirection: \"s\"\n })]\n });\n}\nfunction FocalPointUnitControl(props) {\n return /*#__PURE__*/_jsx(StyledUnitControl, {\n __next40pxDefaultSize: true,\n className: \"focal-point-picker__controls-position-unit-control\",\n labelPosition: \"top\",\n max: TEXTCONTROL_MAX,\n min: TEXTCONTROL_MIN,\n units: [{\n value: '%',\n label: '%'\n }],\n ...props\n });\n}"],
5
- "mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,mBAAmB,sBAAsB;AAClD,SAAS,4BAA4B;AACrC,SAAS,OAAO,MAAM,QAAQ,aAAa;AAC3C,IAAM,kBAAkB;AACxB,IAAM,kBAAkB;AACxB,IAAM,OAAO,MAAM;AAAC;AACL,SAAR,yBAA0C;AAAA,EAC/C;AAAA,EACA,WAAW;AAAA,EACX,QAAQ;AAAA,IACN,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,GAAG;AACD,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,eAAe,CAAC,OAAO,SAAS;AACpC,QAAI,UAAU,QAAW;AACvB;AAAA,IACF;AACA,UAAM,MAAM,SAAS,OAAO,EAAE;AAC9B,QAAI,CAAC,MAAM,GAAG,GAAG;AACf,eAAS;AAAA,QACP,GAAG;AAAA,QACH,CAAC,IAAI,GAAG,MAAM;AAAA,MAChB,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAoB,sBAAM,gBAAgB;AAAA,IACxC,WAAW;AAAA,IACX;AAAA,IACA,KAAK;AAAA,IACL,UAAU,CAAc,qBAAK,uBAAuB;AAAA,MAClD,OAAO,GAAG,MAAM;AAAA,MAChB,cAAc,GAAG,2BAA2B;AAAA,MAC5C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,GAAgB,qBAAK,uBAAuB;AAAA,MAC3C,OAAO,GAAG,KAAK;AAAA,MACf,cAAc,GAAG,0BAA0B;AAAA,MAC3C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,CAAC;AAAA,EACJ,CAAC;AACH;AACA,SAAS,sBAAsB,OAAO;AACpC,SAAoB,qBAAK,mBAAmB;AAAA,IAC1C,uBAAuB;AAAA,IACvB,WAAW;AAAA,IACX,eAAe;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAA,IACL,OAAO,CAAC;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,IACT,CAAC;AAAA,IACD,GAAG;AAAA,EACL,CAAC;AACH;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { StyledUnitControl, ControlWrapper } from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\nconst noop = () => {};\nexport default function FocalPointPickerControls({\n hasHelpText,\n onChange = noop,\n point = {\n x: 0.5,\n y: 0.5\n }\n}) {\n const valueX = fractionToPercentage(point.x);\n const valueY = fractionToPercentage(point.y);\n const handleChange = (value, axis) => {\n if (value === undefined) {\n return;\n }\n const num = parseInt(value, 10);\n if (!isNaN(num)) {\n onChange({\n ...point,\n [axis]: num / 100\n });\n }\n };\n return /*#__PURE__*/_jsxs(ControlWrapper, {\n className: \"focal-point-picker__controls\",\n hasHelpText: hasHelpText,\n gap: 4,\n children: [/*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Left'),\n \"aria-label\": __('Focal point left position'),\n value: [valueX, '%'].join(''),\n onChange: next => handleChange(next, 'x'),\n dragDirection: \"e\"\n }), /*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Top'),\n \"aria-label\": __('Focal point top position'),\n value: [valueY, '%'].join(''),\n onChange: next => handleChange(next, 'y'),\n dragDirection: \"s\"\n })]\n });\n}\nfunction FocalPointUnitControl(props) {\n return /*#__PURE__*/_jsx(StyledUnitControl, {\n className: \"focal-point-picker__controls-position-unit-control\",\n labelPosition: \"top\",\n max: TEXTCONTROL_MAX,\n min: TEXTCONTROL_MIN,\n units: [{\n value: '%',\n label: '%'\n }],\n ...props\n });\n}"],
5
+ "mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,mBAAmB,sBAAsB;AAClD,SAAS,4BAA4B;AACrC,SAAS,OAAO,MAAM,QAAQ,aAAa;AAC3C,IAAM,kBAAkB;AACxB,IAAM,kBAAkB;AACxB,IAAM,OAAO,MAAM;AAAC;AACL,SAAR,yBAA0C;AAAA,EAC/C;AAAA,EACA,WAAW;AAAA,EACX,QAAQ;AAAA,IACN,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,GAAG;AACD,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,eAAe,CAAC,OAAO,SAAS;AACpC,QAAI,UAAU,QAAW;AACvB;AAAA,IACF;AACA,UAAM,MAAM,SAAS,OAAO,EAAE;AAC9B,QAAI,CAAC,MAAM,GAAG,GAAG;AACf,eAAS;AAAA,QACP,GAAG;AAAA,QACH,CAAC,IAAI,GAAG,MAAM;AAAA,MAChB,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAoB,sBAAM,gBAAgB;AAAA,IACxC,WAAW;AAAA,IACX;AAAA,IACA,KAAK;AAAA,IACL,UAAU,CAAc,qBAAK,uBAAuB;AAAA,MAClD,OAAO,GAAG,MAAM;AAAA,MAChB,cAAc,GAAG,2BAA2B;AAAA,MAC5C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,GAAgB,qBAAK,uBAAuB;AAAA,MAC3C,OAAO,GAAG,KAAK;AAAA,MACf,cAAc,GAAG,0BAA0B;AAAA,MAC3C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,CAAC;AAAA,EACJ,CAAC;AACH;AACA,SAAS,sBAAsB,OAAO;AACpC,SAAoB,qBAAK,mBAAmB;AAAA,IAC1C,WAAW;AAAA,IACX,eAAe;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAA,IACL,OAAO,CAAC;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,IACT,CAAC;AAAA,IACD,GAAG;AAAA,EACL,CAAC;AACH;",
6
6
  "names": []
7
7
  }
@@ -17,6 +17,7 @@ var GRID_OVERLAY_TIMEOUT = 600;
17
17
  function FocalPointPicker({
18
18
  // Prevent passing to internal component.
19
19
  __nextHasNoMarginBottom: _,
20
+ __next40pxDefaultSize: _next40pxDefaultSize,
20
21
  autoPlay = true,
21
22
  className,
22
23
  help,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/focal-point-picker/index.tsx"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging, useIsomorphicLayoutEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport { Container, MediaWrapper, MediaContainer } from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport { StyledLabel, StyledHelp } from '../base-control/styles/base-control-styles';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * It addresses two common issues when displaying images in cropped containers. First, large\n * background images can be cropped in undesirable ways, especially on smaller viewports such as\n * mobile devices. Second, the CSS aspect-ratio property can inadvertently crop out the area of\n * highest visual interest. This component allows the selection of the point with the most\n * important visual information and returns it as a pair of numbers between 0 and 1.\n * The output value can be applied to either CSS `background-position` (for elements with\n * `background-image`) or `object-position` (for `<img>` / `<video>` elements rendered with\n * `object-fit: cover`).\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`;\n * - Corresponding CSS: `object-position: 50% 10%`;\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.1,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\twidth: '100%',\n * \t\taspectRatio: '16 / 9',\n * \t\tobjectFit: 'cover',\n * \t\tobjectPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<img src={ url } alt=\"\" style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker({\n // Prevent passing to internal component.\n __nextHasNoMarginBottom: _,\n autoPlay = true,\n className,\n help,\n hideLabelFromVision,\n label,\n onChange,\n onDrag,\n onDragEnd,\n onDragStart,\n resolvePoint,\n url,\n value: valueProp = {\n x: 0.5,\n y: 0.5\n },\n ...restProps\n}) {\n const [point, setPoint] = useState(valueProp);\n const [showGridOverlay, setShowGridOverlay] = useState(false);\n const {\n startDrag,\n endDrag,\n isDragging\n } = useDragging({\n onDragStart: event => {\n dragAreaRef.current?.focus();\n const value = getValueWithinDragArea(event);\n\n // `value` can technically be undefined if getValueWithinDragArea() is\n // called before dragAreaRef is set, but this shouldn't happen in reality.\n if (!value) {\n return;\n }\n onDragStart?.(value, event);\n setPoint(value);\n },\n onDragMove: event => {\n // Prevents text-selection when dragging.\n event.preventDefault();\n const value = getValueWithinDragArea(event);\n if (!value) {\n return;\n }\n onDrag?.(value, event);\n setPoint(value);\n },\n onDragEnd: () => {\n onDragEnd?.();\n onChange?.(point);\n }\n });\n\n // Uses the internal point while dragging or else the value from props.\n const {\n x,\n y\n } = isDragging ? point : valueProp;\n const dragAreaRef = useRef(null);\n const [bounds, setBounds] = useState(INITIAL_BOUNDS);\n const refUpdateBounds = useRef(() => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n clientWidth: width,\n clientHeight: height\n } = dragAreaRef.current;\n // Falls back to initial bounds if the ref has no size. Since styles\n // give the drag area dimensions even when the media has not loaded\n // this should only happen in unit tests (jsdom).\n setBounds(width > 0 && height > 0 ? {\n width,\n height\n } : {\n ...INITIAL_BOUNDS\n });\n });\n useEffect(() => {\n const updateBounds = refUpdateBounds.current;\n if (!dragAreaRef.current) {\n return;\n }\n const {\n defaultView\n } = dragAreaRef.current.ownerDocument;\n defaultView?.addEventListener('resize', updateBounds);\n return () => defaultView?.removeEventListener('resize', updateBounds);\n }, []);\n\n // Updates the bounds to cover cases of unspecified media or load failures.\n useIsomorphicLayoutEffect(() => void refUpdateBounds.current(), []);\n\n // TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n // https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n const getValueWithinDragArea = ({\n clientX,\n clientY,\n shiftKey\n }) => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n top,\n left\n } = dragAreaRef.current.getBoundingClientRect();\n let nextX = (clientX - left) / bounds.width;\n let nextY = (clientY - top) / bounds.height;\n // Enables holding shift to jump values by 10%.\n if (shiftKey) {\n nextX = Math.round(nextX / 0.1) * 0.1;\n nextY = Math.round(nextY / 0.1) * 0.1;\n }\n return getFinalValue({\n x: nextX,\n y: nextY\n });\n };\n const getFinalValue = value => {\n const resolvedValue = resolvePoint?.(value) ?? value;\n resolvedValue.x = Math.max(0, Math.min(resolvedValue.x, 1));\n resolvedValue.y = Math.max(0, Math.min(resolvedValue.y, 1));\n const roundToTwoDecimalPlaces = n => Math.round(n * 1e2) / 1e2;\n return {\n x: roundToTwoDecimalPlaces(resolvedValue.x),\n y: roundToTwoDecimalPlaces(resolvedValue.y)\n };\n };\n const arrowKeyStep = event => {\n const {\n code,\n shiftKey\n } = event;\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(code)) {\n return;\n }\n event.preventDefault();\n const value = {\n x,\n y\n };\n const step = shiftKey ? 0.1 : 0.01;\n const delta = code === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n const axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n value[axis] = value[axis] + delta;\n onChange?.(getFinalValue(value));\n };\n const focalPointPosition = {\n left: x !== undefined ? x * bounds.width : 0.5 * bounds.width,\n top: y !== undefined ? y * bounds.height : 0.5 * bounds.height\n };\n const classes = clsx('components-focal-point-picker-control', className);\n const Label = hideLabelFromVision ? VisuallyHidden : StyledLabel;\n useUpdateEffect(() => {\n setShowGridOverlay(true);\n const timeout = window.setTimeout(() => {\n setShowGridOverlay(false);\n }, GRID_OVERLAY_TIMEOUT);\n return () => window.clearTimeout(timeout);\n }, [x, y]);\n return /*#__PURE__*/_jsxs(Container, {\n ...restProps,\n as: \"fieldset\",\n className: classes,\n children: [!!label && /*#__PURE__*/_jsx(Label, {\n as: \"legend\",\n children: label\n }), /*#__PURE__*/_jsx(MediaWrapper, {\n className: \"components-focal-point-picker-wrapper\",\n children: /*#__PURE__*/_jsxs(MediaContainer, {\n className: \"components-focal-point-picker\",\n onKeyDown: arrowKeyStep,\n onMouseDown: startDrag,\n onBlur: () => {\n if (isDragging) {\n endDrag();\n }\n },\n ref: dragAreaRef,\n role: \"button\",\n tabIndex: -1,\n children: [/*#__PURE__*/_jsx(Grid, {\n bounds: bounds,\n showOverlay: showGridOverlay\n }), /*#__PURE__*/_jsx(Media, {\n alt: __('Media preview'),\n autoPlay: autoPlay,\n onLoad: refUpdateBounds.current,\n src: url\n }), /*#__PURE__*/_jsx(FocalPoint, {\n ...focalPointPosition,\n isDragging: isDragging\n })]\n })\n }), /*#__PURE__*/_jsx(Controls, {\n hasHelpText: !!help,\n point: {\n x,\n y\n },\n onChange: value => {\n onChange?.(getFinalValue(value));\n }\n }), !!help && /*#__PURE__*/_jsx(StyledHelp, {\n children: help\n })]\n });\n}\nexport default FocalPointPicker;"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging, useIsomorphicLayoutEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport { Container, MediaWrapper, MediaContainer } from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport { StyledLabel, StyledHelp } from '../base-control/styles/base-control-styles';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * It addresses two common issues when displaying images in cropped containers. First, large\n * background images can be cropped in undesirable ways, especially on smaller viewports such as\n * mobile devices. Second, the CSS aspect-ratio property can inadvertently crop out the area of\n * highest visual interest. This component allows the selection of the point with the most\n * important visual information and returns it as a pair of numbers between 0 and 1.\n * The output value can be applied to either CSS `background-position` (for elements with\n * `background-image`) or `object-position` (for `<img>` / `<video>` elements rendered with\n * `object-fit: cover`).\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`;\n * - Corresponding CSS: `object-position: 50% 10%`;\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.1,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\twidth: '100%',\n * \t\taspectRatio: '16 / 9',\n * \t\tobjectFit: 'cover',\n * \t\tobjectPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<img src={ url } alt=\"\" style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker({\n // Prevent passing to internal component.\n __nextHasNoMarginBottom: _,\n __next40pxDefaultSize: _next40pxDefaultSize,\n autoPlay = true,\n className,\n help,\n hideLabelFromVision,\n label,\n onChange,\n onDrag,\n onDragEnd,\n onDragStart,\n resolvePoint,\n url,\n value: valueProp = {\n x: 0.5,\n y: 0.5\n },\n ...restProps\n}) {\n const [point, setPoint] = useState(valueProp);\n const [showGridOverlay, setShowGridOverlay] = useState(false);\n const {\n startDrag,\n endDrag,\n isDragging\n } = useDragging({\n onDragStart: event => {\n dragAreaRef.current?.focus();\n const value = getValueWithinDragArea(event);\n\n // `value` can technically be undefined if getValueWithinDragArea() is\n // called before dragAreaRef is set, but this shouldn't happen in reality.\n if (!value) {\n return;\n }\n onDragStart?.(value, event);\n setPoint(value);\n },\n onDragMove: event => {\n // Prevents text-selection when dragging.\n event.preventDefault();\n const value = getValueWithinDragArea(event);\n if (!value) {\n return;\n }\n onDrag?.(value, event);\n setPoint(value);\n },\n onDragEnd: () => {\n onDragEnd?.();\n onChange?.(point);\n }\n });\n\n // Uses the internal point while dragging or else the value from props.\n const {\n x,\n y\n } = isDragging ? point : valueProp;\n const dragAreaRef = useRef(null);\n const [bounds, setBounds] = useState(INITIAL_BOUNDS);\n const refUpdateBounds = useRef(() => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n clientWidth: width,\n clientHeight: height\n } = dragAreaRef.current;\n // Falls back to initial bounds if the ref has no size. Since styles\n // give the drag area dimensions even when the media has not loaded\n // this should only happen in unit tests (jsdom).\n setBounds(width > 0 && height > 0 ? {\n width,\n height\n } : {\n ...INITIAL_BOUNDS\n });\n });\n useEffect(() => {\n const updateBounds = refUpdateBounds.current;\n if (!dragAreaRef.current) {\n return;\n }\n const {\n defaultView\n } = dragAreaRef.current.ownerDocument;\n defaultView?.addEventListener('resize', updateBounds);\n return () => defaultView?.removeEventListener('resize', updateBounds);\n }, []);\n\n // Updates the bounds to cover cases of unspecified media or load failures.\n useIsomorphicLayoutEffect(() => void refUpdateBounds.current(), []);\n\n // TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n // https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n const getValueWithinDragArea = ({\n clientX,\n clientY,\n shiftKey\n }) => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n top,\n left\n } = dragAreaRef.current.getBoundingClientRect();\n let nextX = (clientX - left) / bounds.width;\n let nextY = (clientY - top) / bounds.height;\n // Enables holding shift to jump values by 10%.\n if (shiftKey) {\n nextX = Math.round(nextX / 0.1) * 0.1;\n nextY = Math.round(nextY / 0.1) * 0.1;\n }\n return getFinalValue({\n x: nextX,\n y: nextY\n });\n };\n const getFinalValue = value => {\n const resolvedValue = resolvePoint?.(value) ?? value;\n resolvedValue.x = Math.max(0, Math.min(resolvedValue.x, 1));\n resolvedValue.y = Math.max(0, Math.min(resolvedValue.y, 1));\n const roundToTwoDecimalPlaces = n => Math.round(n * 1e2) / 1e2;\n return {\n x: roundToTwoDecimalPlaces(resolvedValue.x),\n y: roundToTwoDecimalPlaces(resolvedValue.y)\n };\n };\n const arrowKeyStep = event => {\n const {\n code,\n shiftKey\n } = event;\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(code)) {\n return;\n }\n event.preventDefault();\n const value = {\n x,\n y\n };\n const step = shiftKey ? 0.1 : 0.01;\n const delta = code === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n const axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n value[axis] = value[axis] + delta;\n onChange?.(getFinalValue(value));\n };\n const focalPointPosition = {\n left: x !== undefined ? x * bounds.width : 0.5 * bounds.width,\n top: y !== undefined ? y * bounds.height : 0.5 * bounds.height\n };\n const classes = clsx('components-focal-point-picker-control', className);\n const Label = hideLabelFromVision ? VisuallyHidden : StyledLabel;\n useUpdateEffect(() => {\n setShowGridOverlay(true);\n const timeout = window.setTimeout(() => {\n setShowGridOverlay(false);\n }, GRID_OVERLAY_TIMEOUT);\n return () => window.clearTimeout(timeout);\n }, [x, y]);\n return /*#__PURE__*/_jsxs(Container, {\n ...restProps,\n as: \"fieldset\",\n className: classes,\n children: [!!label && /*#__PURE__*/_jsx(Label, {\n as: \"legend\",\n children: label\n }), /*#__PURE__*/_jsx(MediaWrapper, {\n className: \"components-focal-point-picker-wrapper\",\n children: /*#__PURE__*/_jsxs(MediaContainer, {\n className: \"components-focal-point-picker\",\n onKeyDown: arrowKeyStep,\n onMouseDown: startDrag,\n onBlur: () => {\n if (isDragging) {\n endDrag();\n }\n },\n ref: dragAreaRef,\n role: \"button\",\n tabIndex: -1,\n children: [/*#__PURE__*/_jsx(Grid, {\n bounds: bounds,\n showOverlay: showGridOverlay\n }), /*#__PURE__*/_jsx(Media, {\n alt: __('Media preview'),\n autoPlay: autoPlay,\n onLoad: refUpdateBounds.current,\n src: url\n }), /*#__PURE__*/_jsx(FocalPoint, {\n ...focalPointPosition,\n isDragging: isDragging\n })]\n })\n }), /*#__PURE__*/_jsx(Controls, {\n hasHelpText: !!help,\n point: {\n x,\n y\n },\n onChange: value => {\n onChange?.(getFinalValue(value));\n }\n }), !!help && /*#__PURE__*/_jsx(StyledHelp, {\n children: help\n })]\n });\n}\nexport default FocalPointPicker;"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -11,10 +11,8 @@ var DEFAULT_OPTION = {
11
11
  };
12
12
  var FontSizePickerSelect = (props) => {
13
13
  const {
14
- __next40pxDefaultSize,
15
14
  fontSizes,
16
15
  value,
17
- size,
18
16
  valueMode = "literal",
19
17
  onChange
20
18
  } = props;
@@ -40,8 +38,6 @@ var FontSizePickerSelect = (props) => {
40
38
  return options.find((option) => option.value === value) ?? DEFAULT_OPTION;
41
39
  }, [value, valueMode, options]);
42
40
  return /* @__PURE__ */ _jsx(StyledCustomSelectControl, {
43
- __next40pxDefaultSize,
44
- __shouldNotWarnDeprecated36pxSize: true,
45
41
  className: "components-font-size-picker__select",
46
42
  label: __("Font size"),
47
43
  hideLabelFromVision: true,
@@ -58,8 +54,7 @@ var FontSizePickerSelect = (props) => {
58
54
  }) => {
59
55
  const matchingFontSize = selectedItem.key === "default" ? void 0 : fontSizes.find((fontSize) => fontSize.slug === selectedItem.key);
60
56
  onChange(selectedItem.value, matchingFontSize);
61
- },
62
- size
57
+ }
63
58
  });
64
59
  };
65
60
  var font_size_picker_select_default = FontSizePickerSelect;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/font-size-picker/font-size-picker-select.tsx"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { generateFontSizeHint } from './utils';\nimport { StyledCustomSelectControl } from './styles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DEFAULT_OPTION = {\n key: 'default',\n name: __('Default'),\n value: undefined\n};\nconst FontSizePickerSelect = props => {\n const {\n __next40pxDefaultSize,\n fontSizes,\n value,\n size,\n valueMode = 'literal',\n onChange\n } = props;\n const options = [DEFAULT_OPTION, ...fontSizes.map(fontSize => {\n const hint = generateFontSizeHint(fontSize);\n return {\n key: fontSize.slug,\n name: fontSize.name || fontSize.slug,\n value: fontSize.size,\n hint\n };\n })];\n const selectedOption = useMemo(() => {\n if (value === undefined) {\n return DEFAULT_OPTION;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n const optionBySlug = options.find(option => option.key === value);\n if (optionBySlug) {\n return optionBySlug;\n }\n }\n\n // If valueMode is 'literal', find by value (size)\n return options.find(option => option.value === value) ?? DEFAULT_OPTION;\n }, [value, valueMode, options]);\n return /*#__PURE__*/_jsx(StyledCustomSelectControl, {\n __next40pxDefaultSize: __next40pxDefaultSize,\n __shouldNotWarnDeprecated36pxSize: true,\n className: \"components-font-size-picker__select\",\n label: __('Font size'),\n hideLabelFromVision: true,\n describedBy: sprintf(\n // translators: %s: Currently selected font size.\n __('Currently selected font size: %s'), selectedOption.name),\n options: options,\n value: selectedOption,\n showSelectedHint: true,\n onChange: ({\n selectedItem\n }) => {\n // Find the corresponding FontSize object\n const matchingFontSize = selectedItem.key === 'default' ? undefined : fontSizes.find(fontSize => fontSize.slug === selectedItem.key);\n onChange(selectedItem.value, matchingFontSize);\n },\n size: size\n });\n};\nexport default FontSizePickerSelect;"],
5
- "mappings": ";AAGA,SAAS,IAAI,eAAe;AAC5B,SAAS,eAAe;AAMxB,SAAS,4BAA4B;AACrC,SAAS,iCAAiC;AAC1C,SAAS,OAAO,YAAY;AAC5B,IAAM,iBAAiB;AAAA,EACrB,KAAK;AAAA,EACL,MAAM,GAAG,SAAS;AAAA,EAClB,OAAO;AACT;AACA,IAAM,uBAAuB,WAAS;AACpC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EACF,IAAI;AACJ,QAAM,UAAU,CAAC,gBAAgB,GAAG,UAAU,IAAI,cAAY;AAC5D,UAAM,OAAO,qBAAqB,QAAQ;AAC1C,WAAO;AAAA,MACL,KAAK,SAAS;AAAA,MACd,MAAM,SAAS,QAAQ,SAAS;AAAA,MAChC,OAAO,SAAS;AAAA,MAChB;AAAA,IACF;AAAA,EACF,CAAC,CAAC;AACF,QAAM,iBAAiB,QAAQ,MAAM;AACnC,QAAI,UAAU,QAAW;AACvB,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,YAAM,eAAe,QAAQ,KAAK,YAAU,OAAO,QAAQ,KAAK;AAChE,UAAI,cAAc;AAChB,eAAO;AAAA,MACT;AAAA,IACF;AAGA,WAAO,QAAQ,KAAK,YAAU,OAAO,UAAU,KAAK,KAAK;AAAA,EAC3D,GAAG,CAAC,OAAO,WAAW,OAAO,CAAC;AAC9B,SAAoB,qBAAK,2BAA2B;AAAA,IAClD;AAAA,IACA,mCAAmC;AAAA,IACnC,WAAW;AAAA,IACX,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,aAAa;AAAA;AAAA,MAEb,GAAG,kCAAkC;AAAA,MAAG,eAAe;AAAA,IAAI;AAAA,IAC3D;AAAA,IACA,OAAO;AAAA,IACP,kBAAkB;AAAA,IAClB,UAAU,CAAC;AAAA,MACT;AAAA,IACF,MAAM;AAEJ,YAAM,mBAAmB,aAAa,QAAQ,YAAY,SAAY,UAAU,KAAK,cAAY,SAAS,SAAS,aAAa,GAAG;AACnI,eAAS,aAAa,OAAO,gBAAgB;AAAA,IAC/C;AAAA,IACA;AAAA,EACF,CAAC;AACH;AACA,IAAO,kCAAQ;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { generateFontSizeHint } from './utils';\nimport { StyledCustomSelectControl } from './styles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DEFAULT_OPTION = {\n key: 'default',\n name: __('Default'),\n value: undefined\n};\nconst FontSizePickerSelect = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n onChange\n } = props;\n const options = [DEFAULT_OPTION, ...fontSizes.map(fontSize => {\n const hint = generateFontSizeHint(fontSize);\n return {\n key: fontSize.slug,\n name: fontSize.name || fontSize.slug,\n value: fontSize.size,\n hint\n };\n })];\n const selectedOption = useMemo(() => {\n if (value === undefined) {\n return DEFAULT_OPTION;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n const optionBySlug = options.find(option => option.key === value);\n if (optionBySlug) {\n return optionBySlug;\n }\n }\n\n // If valueMode is 'literal', find by value (size)\n return options.find(option => option.value === value) ?? DEFAULT_OPTION;\n }, [value, valueMode, options]);\n return /*#__PURE__*/_jsx(StyledCustomSelectControl, {\n className: \"components-font-size-picker__select\",\n label: __('Font size'),\n hideLabelFromVision: true,\n describedBy: sprintf(\n // translators: %s: Currently selected font size.\n __('Currently selected font size: %s'), selectedOption.name),\n options: options,\n value: selectedOption,\n showSelectedHint: true,\n onChange: ({\n selectedItem\n }) => {\n // Find the corresponding FontSize object\n const matchingFontSize = selectedItem.key === 'default' ? undefined : fontSizes.find(fontSize => fontSize.slug === selectedItem.key);\n onChange(selectedItem.value, matchingFontSize);\n }\n });\n};\nexport default FontSizePickerSelect;"],
5
+ "mappings": ";AAGA,SAAS,IAAI,eAAe;AAC5B,SAAS,eAAe;AAMxB,SAAS,4BAA4B;AACrC,SAAS,iCAAiC;AAC1C,SAAS,OAAO,YAAY;AAC5B,IAAM,iBAAiB;AAAA,EACrB,KAAK;AAAA,EACL,MAAM,GAAG,SAAS;AAAA,EAClB,OAAO;AACT;AACA,IAAM,uBAAuB,WAAS;AACpC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EACF,IAAI;AACJ,QAAM,UAAU,CAAC,gBAAgB,GAAG,UAAU,IAAI,cAAY;AAC5D,UAAM,OAAO,qBAAqB,QAAQ;AAC1C,WAAO;AAAA,MACL,KAAK,SAAS;AAAA,MACd,MAAM,SAAS,QAAQ,SAAS;AAAA,MAChC,OAAO,SAAS;AAAA,MAChB;AAAA,IACF;AAAA,EACF,CAAC,CAAC;AACF,QAAM,iBAAiB,QAAQ,MAAM;AACnC,QAAI,UAAU,QAAW;AACvB,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,YAAM,eAAe,QAAQ,KAAK,YAAU,OAAO,QAAQ,KAAK;AAChE,UAAI,cAAc;AAChB,eAAO;AAAA,MACT;AAAA,IACF;AAGA,WAAO,QAAQ,KAAK,YAAU,OAAO,UAAU,KAAK,KAAK;AAAA,EAC3D,GAAG,CAAC,OAAO,WAAW,OAAO,CAAC;AAC9B,SAAoB,qBAAK,2BAA2B;AAAA,IAClD,WAAW;AAAA,IACX,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,aAAa;AAAA;AAAA,MAEb,GAAG,kCAAkC;AAAA,MAAG,eAAe;AAAA,IAAI;AAAA,IAC3D;AAAA,IACA,OAAO;AAAA,IACP,kBAAkB;AAAA,IAClB,UAAU,CAAC;AAAA,MACT;AAAA,IACF,MAAM;AAEJ,YAAM,mBAAmB,aAAa,QAAQ,YAAY,SAAY,UAAU,KAAK,cAAY,SAAS,SAAS,aAAa,GAAG;AACnI,eAAS,aAAa,OAAO,gBAAgB;AAAA,IAC/C;AAAA,EACF,CAAC;AACH;AACA,IAAO,kCAAQ;",
6
6
  "names": []
7
7
  }
@@ -8,8 +8,6 @@ var FontSizePickerToggleGroup = (props) => {
8
8
  fontSizes,
9
9
  value,
10
10
  valueMode = "literal",
11
- __next40pxDefaultSize,
12
- size,
13
11
  onChange
14
12
  } = props;
15
13
  const currentValue = (() => {
@@ -27,8 +25,6 @@ var FontSizePickerToggleGroup = (props) => {
27
25
  return fontSizeBySize?.slug;
28
26
  })();
29
27
  return /* @__PURE__ */ _jsx(ToggleGroupControl, {
30
- __next40pxDefaultSize,
31
- __shouldNotWarnDeprecated36pxSize: true,
32
28
  label: __("Font size"),
33
29
  hideLabelFromVision: true,
34
30
  value: currentValue,
@@ -43,7 +39,6 @@ var FontSizePickerToggleGroup = (props) => {
43
39
  }
44
40
  },
45
41
  isBlock: true,
46
- size,
47
42
  children: fontSizes.map((fontSize, index) => /* @__PURE__ */ _jsx(ToggleGroupControlOption, {
48
43
  value: fontSize.slug,
49
44
  label: T_SHIRT_ABBREVIATIONS[index],
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/font-size-picker/font-size-picker-toggle-group.tsx"],
4
- "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ToggleGroupControl, ToggleGroupControlOption } from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst FontSizePickerToggleGroup = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n __next40pxDefaultSize,\n size,\n onChange\n } = props;\n\n // Find the current value based on valueMode\n const currentValue = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', the value is already the slug\n if (valueMode === 'slug') {\n return String(value);\n }\n\n // If valueMode is 'literal', find the font size by size value\n // If multiple font sizes have the same size value, we can't distinguish them\n // without additional information, so we return undefined to avoid incorrect selection\n const matchingFontSizes = fontSizes.filter(fontSize => fontSize.size === value);\n\n // If there are multiple matches, return undefined to avoid selecting the wrong font size\n if (matchingFontSizes.length > 1) {\n return undefined;\n }\n\n // Find the font size by size value\n const fontSizeBySize = fontSizes.find(fontSize => fontSize.size === value);\n return fontSizeBySize?.slug;\n })();\n return /*#__PURE__*/_jsx(ToggleGroupControl, {\n __next40pxDefaultSize: __next40pxDefaultSize,\n __shouldNotWarnDeprecated36pxSize: true,\n label: __('Font size'),\n hideLabelFromVision: true,\n value: currentValue,\n onChange: newSlug => {\n if (newSlug === undefined) {\n onChange(undefined);\n } else {\n // Find the font size by slug\n const selectedFontSize = fontSizes.find(fontSize => fontSize.slug === String(newSlug));\n if (selectedFontSize) {\n onChange(selectedFontSize.size, selectedFontSize);\n }\n }\n },\n isBlock: true,\n size: size,\n children: fontSizes.map((fontSize, index) => /*#__PURE__*/_jsx(ToggleGroupControlOption, {\n value: fontSize.slug,\n label: T_SHIRT_ABBREVIATIONS[index],\n \"aria-label\": fontSize.name || T_SHIRT_NAMES[index],\n showTooltip: true\n }, fontSize.slug))\n });\n};\nexport default FontSizePickerToggleGroup;"],
5
- "mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,oBAAoB,gCAAgC;AAC7D,SAAS,uBAAuB,qBAAqB;AACrD,SAAS,OAAO,YAAY;AAC5B,IAAM,4BAA4B,WAAS;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAGJ,QAAM,gBAAgB,MAAM;AAC1B,QAAI,CAAC,OAAO;AACV,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,aAAO,OAAO,KAAK;AAAA,IACrB;AAKA,UAAM,oBAAoB,UAAU,OAAO,cAAY,SAAS,SAAS,KAAK;AAG9E,QAAI,kBAAkB,SAAS,GAAG;AAChC,aAAO;AAAA,IACT;AAGA,UAAM,iBAAiB,UAAU,KAAK,cAAY,SAAS,SAAS,KAAK;AACzE,WAAO,gBAAgB;AAAA,EACzB,GAAG;AACH,SAAoB,qBAAK,oBAAoB;AAAA,IAC3C;AAAA,IACA,mCAAmC;AAAA,IACnC,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,OAAO;AAAA,IACP,UAAU,aAAW;AACnB,UAAI,YAAY,QAAW;AACzB,iBAAS,MAAS;AAAA,MACpB,OAAO;AAEL,cAAM,mBAAmB,UAAU,KAAK,cAAY,SAAS,SAAS,OAAO,OAAO,CAAC;AACrF,YAAI,kBAAkB;AACpB,mBAAS,iBAAiB,MAAM,gBAAgB;AAAA,QAClD;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS;AAAA,IACT;AAAA,IACA,UAAU,UAAU,IAAI,CAAC,UAAU,UAAuB,qBAAK,0BAA0B;AAAA,MACvF,OAAO,SAAS;AAAA,MAChB,OAAO,sBAAsB,KAAK;AAAA,MAClC,cAAc,SAAS,QAAQ,cAAc,KAAK;AAAA,MAClD,aAAa;AAAA,IACf,GAAG,SAAS,IAAI,CAAC;AAAA,EACnB,CAAC;AACH;AACA,IAAO,wCAAQ;",
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ToggleGroupControl, ToggleGroupControlOption } from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst FontSizePickerToggleGroup = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n onChange\n } = props;\n\n // Find the current value based on valueMode\n const currentValue = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', the value is already the slug\n if (valueMode === 'slug') {\n return String(value);\n }\n\n // If valueMode is 'literal', find the font size by size value\n // If multiple font sizes have the same size value, we can't distinguish them\n // without additional information, so we return undefined to avoid incorrect selection\n const matchingFontSizes = fontSizes.filter(fontSize => fontSize.size === value);\n\n // If there are multiple matches, return undefined to avoid selecting the wrong font size\n if (matchingFontSizes.length > 1) {\n return undefined;\n }\n\n // Find the font size by size value\n const fontSizeBySize = fontSizes.find(fontSize => fontSize.size === value);\n return fontSizeBySize?.slug;\n })();\n return /*#__PURE__*/_jsx(ToggleGroupControl, {\n label: __('Font size'),\n hideLabelFromVision: true,\n value: currentValue,\n onChange: newSlug => {\n if (newSlug === undefined) {\n onChange(undefined);\n } else {\n // Find the font size by slug\n const selectedFontSize = fontSizes.find(fontSize => fontSize.slug === String(newSlug));\n if (selectedFontSize) {\n onChange(selectedFontSize.size, selectedFontSize);\n }\n }\n },\n isBlock: true,\n children: fontSizes.map((fontSize, index) => /*#__PURE__*/_jsx(ToggleGroupControlOption, {\n value: fontSize.slug,\n label: T_SHIRT_ABBREVIATIONS[index],\n \"aria-label\": fontSize.name || T_SHIRT_NAMES[index],\n showTooltip: true\n }, fontSize.slug))\n });\n};\nexport default FontSizePickerToggleGroup;"],
5
+ "mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,oBAAoB,gCAAgC;AAC7D,SAAS,uBAAuB,qBAAqB;AACrD,SAAS,OAAO,YAAY;AAC5B,IAAM,4BAA4B,WAAS;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EACF,IAAI;AAGJ,QAAM,gBAAgB,MAAM;AAC1B,QAAI,CAAC,OAAO;AACV,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,aAAO,OAAO,KAAK;AAAA,IACrB;AAKA,UAAM,oBAAoB,UAAU,OAAO,cAAY,SAAS,SAAS,KAAK;AAG9E,QAAI,kBAAkB,SAAS,GAAG;AAChC,aAAO;AAAA,IACT;AAGA,UAAM,iBAAiB,UAAU,KAAK,cAAY,SAAS,SAAS,KAAK;AACzE,WAAO,gBAAgB;AAAA,EACzB,GAAG;AACH,SAAoB,qBAAK,oBAAoB;AAAA,IAC3C,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,OAAO;AAAA,IACP,UAAU,aAAW;AACnB,UAAI,YAAY,QAAW;AACzB,iBAAS,MAAS;AAAA,MACpB,OAAO;AAEL,cAAM,mBAAmB,UAAU,KAAK,cAAY,SAAS,SAAS,OAAO,OAAO,CAAC;AACrF,YAAI,kBAAkB;AACpB,mBAAS,iBAAiB,MAAM,gBAAgB;AAAA,QAClD;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS;AAAA,IACT,UAAU,UAAU,IAAI,CAAC,UAAU,UAAuB,qBAAK,0BAA0B;AAAA,MACvF,OAAO,SAAS;AAAA,MAChB,OAAO,sBAAsB,KAAK;AAAA,MAClC,cAAc,SAAS,QAAQ,cAAc,KAAK;AAAA,MAClD,aAAa;AAAA,IACf,GAAG,SAAS,IAAI,CAAC;AAAA,EACnB,CAAC;AACH;AACA,IAAO,wCAAQ;",
6
6
  "names": []
7
7
  }
@@ -11,18 +11,15 @@ import { Container, Header, HeaderLabel, HeaderToggle } from "./styles.mjs";
11
11
  import { Spacer } from "../spacer/index.mjs";
12
12
  import FontSizePickerSelect from "./font-size-picker-select.mjs";
13
13
  import FontSizePickerToggleGroup from "./font-size-picker-toggle-group.mjs";
14
- import { maybeWarnDeprecated36pxSize } from "../utils/deprecated-36px-size.mjs";
15
14
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
15
  var DEFAULT_UNITS = ["px", "em", "rem", "vw", "vh"];
17
16
  var MAX_TOGGLE_GROUP_SIZES = 5;
18
17
  var UnforwardedFontSizePicker = (props, ref) => {
19
18
  const {
20
- __next40pxDefaultSize = false,
21
19
  fallbackFontSize,
22
20
  fontSizes = [],
23
21
  disableCustomFontSizes = false,
24
22
  onChange,
25
- size = "default",
26
23
  units: unitsProp = DEFAULT_UNITS,
27
24
  value,
28
25
  valueMode = "literal",
@@ -58,11 +55,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
58
55
  const [valueQuantity, valueUnit] = parseQuantityAndUnitFromRawValue(resolvedValueForControls, units);
59
56
  const isValueUnitRelative = !!valueUnit && ["em", "rem", "vw", "vh"].includes(valueUnit);
60
57
  const isDisabled = value === void 0;
61
- maybeWarnDeprecated36pxSize({
62
- componentName: "FontSizePicker",
63
- __next40pxDefaultSize,
64
- size
65
- });
66
58
  return /* @__PURE__ */ _jsxs(Container, {
67
59
  ref,
68
60
  className: "components-font-size-picker",
@@ -83,12 +75,10 @@ var UnforwardedFontSizePicker = (props, ref) => {
83
75
  })
84
76
  }), /* @__PURE__ */ _jsxs("div", {
85
77
  children: [currentPickerType === "select" && /* @__PURE__ */ _jsx(FontSizePickerSelect, {
86
- __next40pxDefaultSize,
87
78
  fontSizes,
88
79
  value,
89
80
  valueMode,
90
81
  disableCustomFontSizes,
91
- size,
92
82
  onChange: (newValue, selectedItem) => {
93
83
  if (newValue === void 0) {
94
84
  onChange?.(void 0, selectedItem);
@@ -101,8 +91,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
101
91
  fontSizes,
102
92
  value,
103
93
  valueMode,
104
- __next40pxDefaultSize,
105
- size,
106
94
  onChange: (newValue, selectedItem) => {
107
95
  if (newValue === void 0) {
108
96
  onChange?.(void 0, selectedItem);
@@ -115,8 +103,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
115
103
  children: [/* @__PURE__ */ _jsx(FlexItem, {
116
104
  isBlock: true,
117
105
  children: /* @__PURE__ */ _jsx(UnitControl, {
118
- __next40pxDefaultSize,
119
- __shouldNotWarnDeprecated36pxSize: true,
120
106
  label: __("Font size"),
121
107
  labelPosition: "top",
122
108
  hideLabelFromVision: true,
@@ -129,7 +115,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
129
115
  onChange?.(hasUnits ? newValue : parseInt(newValue, 10));
130
116
  }
131
117
  },
132
- size,
133
118
  units: hasUnits ? units : [],
134
119
  min: 0
135
120
  })
@@ -139,8 +124,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
139
124
  marginX: 2,
140
125
  marginBottom: 0,
141
126
  children: /* @__PURE__ */ _jsx(RangeControl, {
142
- __next40pxDefaultSize,
143
- __shouldNotWarnDeprecated36pxSize: true,
144
127
  className: "components-font-size-picker__custom-input",
145
128
  label: __("Font size"),
146
129
  hideLabelFromVision: true,
@@ -171,7 +154,7 @@ var UnforwardedFontSizePicker = (props, ref) => {
171
154
  },
172
155
  variant: "secondary",
173
156
  __next40pxDefaultSize: true,
174
- size: size === "__unstable-large" || props.__next40pxDefaultSize ? "default" : "small",
157
+ size: "default",
175
158
  children: __("Reset")
176
159
  })
177
160
  })]
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/font-size-picker/index.tsx"],
4
- "sourcesContent": ["/**\n * External dependencies\n */\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport { default as UnitControl, parseQuantityAndUnitFromRawValue, useCustomUnits } from '../unit-control';\nimport { Container, Header, HeaderLabel, HeaderToggle } from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport { maybeWarnDeprecated36pxSize } from '../utils/deprecated-36px-size';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst DEFAULT_UNITS = ['px', 'em', 'rem', 'vw', 'vh'];\nconst MAX_TOGGLE_GROUP_SIZES = 5;\nconst UnforwardedFontSizePicker = (props, ref) => {\n const {\n __next40pxDefaultSize = false,\n fallbackFontSize,\n fontSizes = [],\n disableCustomFontSizes = false,\n onChange,\n size = 'default',\n units: unitsProp = DEFAULT_UNITS,\n value,\n valueMode = 'literal',\n withSlider = false,\n withReset = true\n } = props;\n const labelId = useInstanceId(UnforwardedFontSizePicker, 'font-size-picker-label');\n const units = useCustomUnits({\n availableUnits: unitsProp\n });\n const selectedFontSize = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n return fontSizes.find(fontSize => fontSize.slug === value);\n }\n\n // If valueMode is 'literal', find by size value\n return fontSizes.find(fontSize => fontSize.size === value);\n })();\n const isCustomValue = !!value && !selectedFontSize;\n\n // Initially request a custom picker if the value is not from the predef list.\n const [userRequestedCustom, setUserRequestedCustom] = useState(isCustomValue);\n\n // Resolve the literal value to use in custom controls when operating in slug mode.\n // When `valueMode` is 'slug', the `value` prop contains the slug of the\n // selected preset. In that case, the custom input should reflect the preset's\n // actual size value so it pre-populates correctly after clicking \"Set custom size\".\n const resolvedValueForControls = valueMode === 'slug' ? selectedFontSize?.size : value;\n let currentPickerType;\n if (!disableCustomFontSizes && userRequestedCustom) {\n // While showing the custom value picker, switch back to predef only if\n // `disableCustomFontSizes` is set to `true`.\n currentPickerType = 'custom';\n } else {\n currentPickerType = fontSizes.length > MAX_TOGGLE_GROUP_SIZES ? 'select' : 'togglegroup';\n }\n if (fontSizes.length === 0 && disableCustomFontSizes) {\n return null;\n }\n\n // If neither the value or first font size is a string, then FontSizePicker\n // operates in a legacy \"unitless\" mode where UnitControl can only be used\n // to select px values and onChange() is always called with number values.\n const hasUnits = typeof resolvedValueForControls === 'string' || typeof fontSizes[0]?.size === 'string';\n const [valueQuantity, valueUnit] = parseQuantityAndUnitFromRawValue(resolvedValueForControls, units);\n const isValueUnitRelative = !!valueUnit && ['em', 'rem', 'vw', 'vh'].includes(valueUnit);\n const isDisabled = value === undefined;\n maybeWarnDeprecated36pxSize({\n componentName: 'FontSizePicker',\n __next40pxDefaultSize,\n size\n });\n return /*#__PURE__*/_jsxs(Container, {\n ref: ref,\n className: \"components-font-size-picker\"\n // This Container component renders a fieldset element that needs to be labeled.\n ,\n \"aria-labelledby\": labelId,\n children: [/*#__PURE__*/_jsx(Spacer, {\n children: /*#__PURE__*/_jsxs(Header, {\n className: \"components-font-size-picker__header\",\n children: [/*#__PURE__*/_jsx(HeaderLabel, {\n id: labelId,\n children: __('Font size')\n }), !disableCustomFontSizes && /*#__PURE__*/_jsx(HeaderToggle, {\n label: currentPickerType === 'custom' ? __('Use size preset') : __('Set custom size'),\n icon: settings,\n onClick: () => setUserRequestedCustom(!userRequestedCustom),\n isPressed: currentPickerType === 'custom',\n size: \"small\"\n })]\n })\n }), /*#__PURE__*/_jsxs(\"div\", {\n children: [currentPickerType === 'select' && /*#__PURE__*/_jsx(FontSizePickerSelect, {\n __next40pxDefaultSize: __next40pxDefaultSize,\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n disableCustomFontSizes: disableCustomFontSizes,\n size: size,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n },\n onSelectCustom: () => setUserRequestedCustom(true)\n }), currentPickerType === 'togglegroup' && /*#__PURE__*/_jsx(FontSizePickerToggleGroup, {\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n __next40pxDefaultSize: __next40pxDefaultSize,\n size: size,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n }\n }), currentPickerType === 'custom' && /*#__PURE__*/_jsxs(Flex, {\n className: \"components-font-size-picker__custom-size-control\",\n children: [/*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(UnitControl, {\n __next40pxDefaultSize: __next40pxDefaultSize,\n __shouldNotWarnDeprecated36pxSize: true,\n label: __('Font size'),\n labelPosition: \"top\",\n hideLabelFromVision: true,\n value: hasUnits ? `${valueQuantity ?? ''}${valueUnit ?? ''}` : resolvedValueForControls,\n onChange: newValue => {\n setUserRequestedCustom(true);\n\n // Treat clearing the input (empty string) as a reset\n if (newValue === undefined || newValue === '') {\n onChange?.(undefined);\n } else {\n onChange?.(hasUnits ? newValue : parseInt(newValue, 10));\n }\n },\n size: size,\n units: hasUnits ? units : [],\n min: 0\n })\n }), withSlider && /*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(Spacer, {\n marginX: 2,\n marginBottom: 0,\n children: /*#__PURE__*/_jsx(RangeControl, {\n __next40pxDefaultSize: __next40pxDefaultSize,\n __shouldNotWarnDeprecated36pxSize: true,\n className: \"components-font-size-picker__custom-input\",\n label: __('Font size'),\n hideLabelFromVision: true,\n value: valueQuantity,\n initialPosition: fallbackFontSize,\n withInputField: false,\n onChange: newValue => {\n setUserRequestedCustom(true);\n if (newValue === undefined) {\n onChange?.(undefined);\n } else if (hasUnits) {\n onChange?.(newValue + (valueUnit ?? 'px'));\n } else {\n onChange?.(newValue);\n }\n },\n min: 0,\n max: isValueUnitRelative ? 10 : 100,\n step: isValueUnitRelative ? 0.1 : 1\n })\n })\n }), withReset && /*#__PURE__*/_jsx(FlexItem, {\n children: /*#__PURE__*/_jsx(Button, {\n disabled: isDisabled,\n accessibleWhenDisabled: true,\n onClick: () => {\n onChange?.(undefined);\n },\n variant: \"secondary\",\n __next40pxDefaultSize: true,\n size: size === '__unstable-large' || props.__next40pxDefaultSize ? 'default' : 'small',\n children: __('Reset')\n })\n })]\n })]\n })]\n });\n};\nexport const FontSizePicker = forwardRef(UnforwardedFontSizePicker);\nFontSizePicker.displayName = 'FontSizePicker';\nexport default FontSizePicker;"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * External dependencies\n */\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport { default as UnitControl, parseQuantityAndUnitFromRawValue, useCustomUnits } from '../unit-control';\nimport { Container, Header, HeaderLabel, HeaderToggle } from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst DEFAULT_UNITS = ['px', 'em', 'rem', 'vw', 'vh'];\nconst MAX_TOGGLE_GROUP_SIZES = 5;\nconst UnforwardedFontSizePicker = (props, ref) => {\n const {\n fallbackFontSize,\n fontSizes = [],\n disableCustomFontSizes = false,\n onChange,\n units: unitsProp = DEFAULT_UNITS,\n value,\n valueMode = 'literal',\n withSlider = false,\n withReset = true\n } = props;\n const labelId = useInstanceId(UnforwardedFontSizePicker, 'font-size-picker-label');\n const units = useCustomUnits({\n availableUnits: unitsProp\n });\n const selectedFontSize = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n return fontSizes.find(fontSize => fontSize.slug === value);\n }\n\n // If valueMode is 'literal', find by size value\n return fontSizes.find(fontSize => fontSize.size === value);\n })();\n const isCustomValue = !!value && !selectedFontSize;\n\n // Initially request a custom picker if the value is not from the predef list.\n const [userRequestedCustom, setUserRequestedCustom] = useState(isCustomValue);\n\n // Resolve the literal value to use in custom controls when operating in slug mode.\n // When `valueMode` is 'slug', the `value` prop contains the slug of the\n // selected preset. In that case, the custom input should reflect the preset's\n // actual size value so it pre-populates correctly after clicking \"Set custom size\".\n const resolvedValueForControls = valueMode === 'slug' ? selectedFontSize?.size : value;\n let currentPickerType;\n if (!disableCustomFontSizes && userRequestedCustom) {\n // While showing the custom value picker, switch back to predef only if\n // `disableCustomFontSizes` is set to `true`.\n currentPickerType = 'custom';\n } else {\n currentPickerType = fontSizes.length > MAX_TOGGLE_GROUP_SIZES ? 'select' : 'togglegroup';\n }\n if (fontSizes.length === 0 && disableCustomFontSizes) {\n return null;\n }\n\n // If neither the value or first font size is a string, then FontSizePicker\n // operates in a legacy \"unitless\" mode where UnitControl can only be used\n // to select px values and onChange() is always called with number values.\n const hasUnits = typeof resolvedValueForControls === 'string' || typeof fontSizes[0]?.size === 'string';\n const [valueQuantity, valueUnit] = parseQuantityAndUnitFromRawValue(resolvedValueForControls, units);\n const isValueUnitRelative = !!valueUnit && ['em', 'rem', 'vw', 'vh'].includes(valueUnit);\n const isDisabled = value === undefined;\n return /*#__PURE__*/_jsxs(Container, {\n ref: ref,\n className: \"components-font-size-picker\"\n // This Container component renders a fieldset element that needs to be labeled.\n ,\n \"aria-labelledby\": labelId,\n children: [/*#__PURE__*/_jsx(Spacer, {\n children: /*#__PURE__*/_jsxs(Header, {\n className: \"components-font-size-picker__header\",\n children: [/*#__PURE__*/_jsx(HeaderLabel, {\n id: labelId,\n children: __('Font size')\n }), !disableCustomFontSizes && /*#__PURE__*/_jsx(HeaderToggle, {\n label: currentPickerType === 'custom' ? __('Use size preset') : __('Set custom size'),\n icon: settings,\n onClick: () => setUserRequestedCustom(!userRequestedCustom),\n isPressed: currentPickerType === 'custom',\n size: \"small\"\n })]\n })\n }), /*#__PURE__*/_jsxs(\"div\", {\n children: [currentPickerType === 'select' && /*#__PURE__*/_jsx(FontSizePickerSelect, {\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n disableCustomFontSizes: disableCustomFontSizes,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n },\n onSelectCustom: () => setUserRequestedCustom(true)\n }), currentPickerType === 'togglegroup' && /*#__PURE__*/_jsx(FontSizePickerToggleGroup, {\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n }\n }), currentPickerType === 'custom' && /*#__PURE__*/_jsxs(Flex, {\n className: \"components-font-size-picker__custom-size-control\",\n children: [/*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(UnitControl, {\n label: __('Font size'),\n labelPosition: \"top\",\n hideLabelFromVision: true,\n value: hasUnits ? `${valueQuantity ?? ''}${valueUnit ?? ''}` : resolvedValueForControls,\n onChange: newValue => {\n setUserRequestedCustom(true);\n\n // Treat clearing the input (empty string) as a reset\n if (newValue === undefined || newValue === '') {\n onChange?.(undefined);\n } else {\n onChange?.(hasUnits ? newValue : parseInt(newValue, 10));\n }\n },\n units: hasUnits ? units : [],\n min: 0\n })\n }), withSlider && /*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(Spacer, {\n marginX: 2,\n marginBottom: 0,\n children: /*#__PURE__*/_jsx(RangeControl, {\n className: \"components-font-size-picker__custom-input\",\n label: __('Font size'),\n hideLabelFromVision: true,\n value: valueQuantity,\n initialPosition: fallbackFontSize,\n withInputField: false,\n onChange: newValue => {\n setUserRequestedCustom(true);\n if (newValue === undefined) {\n onChange?.(undefined);\n } else if (hasUnits) {\n onChange?.(newValue + (valueUnit ?? 'px'));\n } else {\n onChange?.(newValue);\n }\n },\n min: 0,\n max: isValueUnitRelative ? 10 : 100,\n step: isValueUnitRelative ? 0.1 : 1\n })\n })\n }), withReset && /*#__PURE__*/_jsx(FlexItem, {\n children: /*#__PURE__*/_jsx(Button, {\n disabled: isDisabled,\n accessibleWhenDisabled: true,\n onClick: () => {\n onChange?.(undefined);\n },\n variant: \"secondary\",\n __next40pxDefaultSize: true,\n size: \"default\",\n children: __('Reset')\n })\n })]\n })]\n })]\n });\n};\nexport const FontSizePicker = forwardRef(UnforwardedFontSizePicker);\nFontSizePicker.displayName = 'FontSizePicker';\nexport default FontSizePicker;"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }