@wordpress/components 19.14.0 → 19.17.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 (1156) hide show
  1. package/CHANGELOG.md +138 -12
  2. package/build/angle-picker-control/index.js +2 -2
  3. package/build/angle-picker-control/index.js.map +1 -1
  4. package/build/autocomplete/get-default-use-items.js +5 -1
  5. package/build/autocomplete/get-default-use-items.js.map +1 -1
  6. package/build/autocomplete/index.js +5 -1
  7. package/build/autocomplete/index.js.map +1 -1
  8. package/build/base-control/index.js +6 -3
  9. package/build/base-control/index.js.map +1 -1
  10. package/build/base-control/styles/base-control-styles.js +8 -8
  11. package/build/base-control/styles/base-control-styles.js.map +1 -1
  12. package/build/border-control/border-control/component.js +38 -25
  13. package/build/border-control/border-control/component.js.map +1 -1
  14. package/build/border-control/border-control/hook.js +4 -7
  15. package/build/border-control/border-control/hook.js.map +1 -1
  16. package/build/border-control/border-control-dropdown/component.js +13 -7
  17. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  18. package/build/border-control/border-control-dropdown/hook.js +0 -4
  19. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  20. package/build/border-control/styles.js +29 -60
  21. package/build/border-control/styles.js.map +1 -1
  22. package/build/box-control/all-input-control.js +2 -27
  23. package/build/box-control/all-input-control.js.map +1 -1
  24. package/build/box-control/axial-input-controls.js +1 -1
  25. package/build/box-control/axial-input-controls.js.map +1 -1
  26. package/build/box-control/index.js +11 -6
  27. package/build/box-control/index.js.map +1 -1
  28. package/build/box-control/styles/box-control-styles.js +17 -9
  29. package/build/box-control/styles/box-control-styles.js.map +1 -1
  30. package/build/box-control/utils.js +37 -8
  31. package/build/box-control/utils.js.map +1 -1
  32. package/build/color-palette/index.js +14 -2
  33. package/build/color-palette/index.js.map +1 -1
  34. package/build/color-picker/hex-input.js +7 -5
  35. package/build/color-picker/hex-input.js.map +1 -1
  36. package/build/color-picker/index.native.js +35 -34
  37. package/build/color-picker/index.native.js.map +1 -1
  38. package/build/color-picker/input-with-slider.js +6 -3
  39. package/build/color-picker/input-with-slider.js.map +1 -1
  40. package/build/color-picker/styles.js +33 -50
  41. package/build/color-picker/styles.js.map +1 -1
  42. package/build/color-picker/use-deprecated-props.js +22 -31
  43. package/build/color-picker/use-deprecated-props.js.map +1 -1
  44. package/build/combobox-control/index.js +33 -19
  45. package/build/combobox-control/index.js.map +1 -1
  46. package/build/combobox-control/styles.js +39 -0
  47. package/build/combobox-control/styles.js.map +1 -0
  48. package/build/custom-select-control/index.js +29 -9
  49. package/build/custom-select-control/index.js.map +1 -1
  50. package/build/date-time/time/index.js +6 -2
  51. package/build/date-time/time/index.js.map +1 -1
  52. package/build/date-time/time/styles.js +17 -24
  53. package/build/date-time/time/styles.js.map +1 -1
  54. package/build/divider/component.js +0 -1
  55. package/build/divider/component.js.map +1 -1
  56. package/build/divider/index.js.map +1 -1
  57. package/build/divider/styles.js +5 -5
  58. package/build/divider/styles.js.map +1 -1
  59. package/build/dropdown/dropdown-content-wrapper.js +60 -0
  60. package/build/dropdown/dropdown-content-wrapper.js.map +1 -0
  61. package/build/dropdown/styles.js +42 -0
  62. package/build/dropdown/styles.js.map +1 -0
  63. package/build/dropdown/types.js +6 -0
  64. package/build/dropdown/types.js.map +1 -0
  65. package/build/dropdown-menu/index.js +5 -5
  66. package/build/dropdown-menu/index.js.map +1 -1
  67. package/build/dropdown-menu/index.native.js +5 -5
  68. package/build/dropdown-menu/index.native.js.map +1 -1
  69. package/build/elevation/component.js +15 -15
  70. package/build/elevation/component.js.map +1 -1
  71. package/build/elevation/hook.js +6 -18
  72. package/build/elevation/hook.js.map +1 -1
  73. package/build/elevation/index.js.map +1 -1
  74. package/build/elevation/styles.js +1 -1
  75. package/build/elevation/styles.js.map +1 -1
  76. package/build/external-link/index.js +7 -3
  77. package/build/external-link/index.js.map +1 -1
  78. package/build/flex/flex/component.js +20 -26
  79. package/build/flex/flex/component.js.map +1 -1
  80. package/build/flex/flex/hook.js +6 -16
  81. package/build/flex/flex/hook.js.map +1 -1
  82. package/build/flex/flex/index.js.map +1 -1
  83. package/build/flex/flex-block/component.js +18 -12
  84. package/build/flex/flex-block/component.js.map +1 -1
  85. package/build/flex/flex-block/hook.js +0 -4
  86. package/build/flex/flex-block/hook.js.map +1 -1
  87. package/build/flex/flex-block/index.js.map +1 -1
  88. package/build/flex/flex-item/component.js +18 -12
  89. package/build/flex/flex-item/component.js.map +1 -1
  90. package/build/flex/flex-item/hook.js +1 -5
  91. package/build/flex/flex-item/hook.js.map +1 -1
  92. package/build/flex/flex-item/index.js.map +1 -1
  93. package/build/flex/index.js.map +1 -1
  94. package/build/flex/styles.js +5 -5
  95. package/build/flex/styles.js.map +1 -1
  96. package/build/focal-point-picker/grid.js +2 -7
  97. package/build/focal-point-picker/grid.js.map +1 -1
  98. package/build/focal-point-picker/index.native.js +8 -8
  99. package/build/focal-point-picker/index.native.js.map +1 -1
  100. package/build/focal-point-picker/styles/focal-point-picker-style.js +22 -22
  101. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  102. package/build/focal-point-picker/styles/focal-point-style.js +5 -5
  103. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  104. package/build/focal-point-picker/tooltip/index.native.js +11 -12
  105. package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
  106. package/build/font-size-picker/index.js +15 -6
  107. package/build/font-size-picker/index.js.map +1 -1
  108. package/build/form-token-field/index.js +28 -9
  109. package/build/form-token-field/index.js.map +1 -1
  110. package/build/form-token-field/styles.js +40 -0
  111. package/build/form-token-field/styles.js.map +1 -0
  112. package/build/form-token-field/suggestions-list.js +21 -13
  113. package/build/form-token-field/suggestions-list.js.map +1 -1
  114. package/build/grid/component.js +7 -8
  115. package/build/grid/component.js.map +1 -1
  116. package/build/grid/hook.js +1 -5
  117. package/build/grid/hook.js.map +1 -1
  118. package/build/grid/index.js.map +1 -1
  119. package/build/grid/utils.js +4 -7
  120. package/build/grid/utils.js.map +1 -1
  121. package/build/h-stack/component.js +5 -9
  122. package/build/h-stack/component.js.map +1 -1
  123. package/build/h-stack/hook.js +8 -10
  124. package/build/h-stack/hook.js.map +1 -1
  125. package/build/h-stack/index.js.map +1 -1
  126. package/build/h-stack/utils.js +7 -18
  127. package/build/h-stack/utils.js.map +1 -1
  128. package/build/icon/index.js.map +1 -1
  129. package/build/index.js +31 -1
  130. package/build/index.js.map +1 -1
  131. package/build/input-control/index.js +7 -0
  132. package/build/input-control/index.js.map +1 -1
  133. package/build/input-control/input-base.js +24 -3
  134. package/build/input-control/input-base.js.map +1 -1
  135. package/build/input-control/input-prefix-wrapper.js +54 -0
  136. package/build/input-control/input-prefix-wrapper.js.map +1 -0
  137. package/build/input-control/input-suffix-wrapper.js +54 -0
  138. package/build/input-control/input-suffix-wrapper.js.map +1 -0
  139. package/build/input-control/reducer/actions.js +3 -1
  140. package/build/input-control/reducer/actions.js.map +1 -1
  141. package/build/input-control/reducer/reducer.js +28 -11
  142. package/build/input-control/reducer/reducer.js.map +1 -1
  143. package/build/input-control/reducer/state.js.map +1 -1
  144. package/build/input-control/styles/input-control-styles.js +61 -42
  145. package/build/input-control/styles/input-control-styles.js.map +1 -1
  146. package/build/menu-item/index.js +1 -3
  147. package/build/menu-item/index.js.map +1 -1
  148. package/build/mobile/focal-point-settings-panel/index.native.js +1 -1
  149. package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  150. package/build/mobile/global-styles-context/utils.native.js +23 -3
  151. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  152. package/build/mobile/image/index.native.js +31 -5
  153. package/build/mobile/image/index.native.js.map +1 -1
  154. package/build/mobile/link-picker/link-picker-screen.native.js +10 -4
  155. package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  156. package/build/mobile/media-edit/index.native.js +1 -7
  157. package/build/mobile/media-edit/index.native.js.map +1 -1
  158. package/build/mobile/picker/index.ios.js +16 -3
  159. package/build/mobile/picker/index.ios.js.map +1 -1
  160. package/build/modal/index.js +17 -3
  161. package/build/modal/index.js.map +1 -1
  162. package/build/navigation/index.js +4 -1
  163. package/build/navigation/index.js.map +1 -1
  164. package/build/navigation/item/base.js +3 -0
  165. package/build/navigation/item/base.js.map +1 -1
  166. package/build/placeholder/index.js +11 -14
  167. package/build/placeholder/index.js.map +1 -1
  168. package/build/placeholder/types.js +6 -0
  169. package/build/placeholder/types.js.map +1 -0
  170. package/build/popover/index.js +129 -75
  171. package/build/popover/index.js.map +1 -1
  172. package/build/radio-control/index.js +1 -3
  173. package/build/radio-control/index.js.map +1 -1
  174. package/build/range-control/index.js +54 -40
  175. package/build/range-control/index.js.map +1 -1
  176. package/build/range-control/input-range.js +5 -7
  177. package/build/range-control/input-range.js.map +1 -1
  178. package/build/range-control/mark.js +5 -7
  179. package/build/range-control/mark.js.map +1 -1
  180. package/build/range-control/rail.js +10 -16
  181. package/build/range-control/rail.js.map +1 -1
  182. package/build/range-control/styles/range-control-styles.js +74 -74
  183. package/build/range-control/styles/range-control-styles.js.map +1 -1
  184. package/build/range-control/tooltip.js +5 -7
  185. package/build/range-control/tooltip.js.map +1 -1
  186. package/build/range-control/types.js +6 -0
  187. package/build/range-control/types.js.map +1 -0
  188. package/build/range-control/utils.js +23 -30
  189. package/build/range-control/utils.js.map +1 -1
  190. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  191. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  192. package/build/resizable-box/resize-tooltip/utils.js +2 -7
  193. package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
  194. package/build/sandbox/index.native.js +13 -2
  195. package/build/sandbox/index.native.js.map +1 -1
  196. package/build/scroll-lock/index.js +35 -6
  197. package/build/scroll-lock/index.js.map +1 -1
  198. package/build/scrollable/component.js +7 -8
  199. package/build/scrollable/component.js.map +1 -1
  200. package/build/scrollable/hook.js +0 -8
  201. package/build/scrollable/hook.js.map +1 -1
  202. package/build/scrollable/index.js.map +1 -1
  203. package/build/scrollable/styles.js +7 -7
  204. package/build/scrollable/styles.js.map +1 -1
  205. package/build/select-control/index.js +1 -3
  206. package/build/select-control/index.js.map +1 -1
  207. package/build/select-control/styles/select-control-styles.js +32 -12
  208. package/build/select-control/styles/select-control-styles.js.map +1 -1
  209. package/build/shortcut/index.js +6 -21
  210. package/build/shortcut/index.js.map +1 -1
  211. package/build/shortcut/types.js +6 -0
  212. package/build/shortcut/types.js.map +1 -0
  213. package/build/slot-fill/index.native.js +6 -8
  214. package/build/slot-fill/index.native.js.map +1 -1
  215. package/build/slot-fill/provider.js +4 -8
  216. package/build/slot-fill/provider.js.map +1 -1
  217. package/build/slot-fill/slot.js +4 -8
  218. package/build/slot-fill/slot.js.map +1 -1
  219. package/build/spacer/component.js +3 -1
  220. package/build/spacer/component.js.map +1 -1
  221. package/build/spacer/hook.js +2 -2
  222. package/build/spacer/hook.js.map +1 -1
  223. package/build/spacer/index.js.map +1 -1
  224. package/build/style-provider/index.js +10 -7
  225. package/build/style-provider/index.js.map +1 -1
  226. package/build/style-provider/types.js +6 -0
  227. package/build/style-provider/types.js.map +1 -0
  228. package/build/swatch/index.js +2 -0
  229. package/build/swatch/index.js.map +1 -1
  230. package/build/swatch/types.js +6 -0
  231. package/build/swatch/types.js.map +1 -0
  232. package/build/text/hook.js +5 -8
  233. package/build/text/hook.js.map +1 -1
  234. package/build/text-highlight/index.js +22 -5
  235. package/build/text-highlight/index.js.map +1 -1
  236. package/build/text-highlight/types.js +6 -0
  237. package/build/text-highlight/types.js.map +1 -0
  238. package/build/tip/index.js +5 -11
  239. package/build/tip/index.js.map +1 -1
  240. package/build/tip/types.js +6 -0
  241. package/build/tip/types.js.map +1 -0
  242. package/build/toggle-group-control/toggle-group-control/component.js +4 -1
  243. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  244. package/build/toggle-group-control/toggle-group-control/styles.js +20 -4
  245. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  246. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +7 -9
  247. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  248. package/build/toolbar-group/index.js +3 -3
  249. package/build/toolbar-group/index.js.map +1 -1
  250. package/build/tools-panel/styles.js +13 -10
  251. package/build/tools-panel/styles.js.map +1 -1
  252. package/build/tools-panel/tools-panel/hook.js +1 -1
  253. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  254. package/build/tooltip/index.js +51 -14
  255. package/build/tooltip/index.js.map +1 -1
  256. package/build/tree-select/index.js +4 -4
  257. package/build/tree-select/index.js.map +1 -1
  258. package/build/ui/context/use-context-system.js +7 -2
  259. package/build/ui/context/use-context-system.js.map +1 -1
  260. package/build/ui/tooltip/styles.js +4 -4
  261. package/build/ui/tooltip/styles.js.map +1 -1
  262. package/build/ui/utils/get-valid-children.js.map +1 -1
  263. package/build/ui/utils/space.js +7 -1
  264. package/build/ui/utils/space.js.map +1 -1
  265. package/build/unit-control/styles/unit-control-styles.js +38 -29
  266. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  267. package/build/utils/base-label.js +24 -0
  268. package/build/utils/base-label.js.map +1 -0
  269. package/build/utils/box-sizing.js +22 -0
  270. package/build/utils/box-sizing.js.map +1 -0
  271. package/build/utils/style-mixins.js +16 -0
  272. package/build/utils/style-mixins.js.map +1 -1
  273. package/build/visually-hidden/component.js +12 -13
  274. package/build/visually-hidden/component.js.map +1 -1
  275. package/build/visually-hidden/index.js.map +1 -1
  276. package/build/visually-hidden/styles.js +3 -1
  277. package/build/visually-hidden/styles.js.map +1 -1
  278. package/build/visually-hidden/types.js +6 -0
  279. package/build/visually-hidden/types.js.map +1 -0
  280. package/build-module/angle-picker-control/index.js +2 -2
  281. package/build-module/angle-picker-control/index.js.map +1 -1
  282. package/build-module/autocomplete/get-default-use-items.js +3 -2
  283. package/build-module/autocomplete/get-default-use-items.js.map +1 -1
  284. package/build-module/autocomplete/index.js +3 -2
  285. package/build-module/autocomplete/index.js.map +1 -1
  286. package/build-module/base-control/index.js +7 -5
  287. package/build-module/base-control/index.js.map +1 -1
  288. package/build-module/base-control/styles/base-control-styles.js +9 -9
  289. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  290. package/build-module/border-control/border-control/component.js +37 -25
  291. package/build-module/border-control/border-control/component.js.map +1 -1
  292. package/build-module/border-control/border-control/hook.js +4 -7
  293. package/build-module/border-control/border-control/hook.js.map +1 -1
  294. package/build-module/border-control/border-control-dropdown/component.js +12 -7
  295. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  296. package/build-module/border-control/border-control-dropdown/hook.js +0 -4
  297. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
  298. package/build-module/border-control/styles.js +30 -54
  299. package/build-module/border-control/styles.js.map +1 -1
  300. package/build-module/box-control/all-input-control.js +3 -28
  301. package/build-module/box-control/all-input-control.js.map +1 -1
  302. package/build-module/box-control/axial-input-controls.js +1 -1
  303. package/build-module/box-control/axial-input-controls.js.map +1 -1
  304. package/build-module/box-control/index.js +5 -5
  305. package/build-module/box-control/index.js.map +1 -1
  306. package/build-module/box-control/styles/box-control-styles.js +18 -10
  307. package/build-module/box-control/styles/box-control-styles.js.map +1 -1
  308. package/build-module/box-control/utils.js +35 -7
  309. package/build-module/box-control/utils.js.map +1 -1
  310. package/build-module/color-palette/index.js +10 -1
  311. package/build-module/color-palette/index.js.map +1 -1
  312. package/build-module/color-picker/hex-input.js +6 -4
  313. package/build-module/color-picker/hex-input.js.map +1 -1
  314. package/build-module/color-picker/index.native.js +36 -35
  315. package/build-module/color-picker/index.native.js.map +1 -1
  316. package/build-module/color-picker/input-with-slider.js +6 -3
  317. package/build-module/color-picker/input-with-slider.js.map +1 -1
  318. package/build-module/color-picker/styles.js +25 -48
  319. package/build-module/color-picker/styles.js.map +1 -1
  320. package/build-module/color-picker/use-deprecated-props.js +22 -31
  321. package/build-module/color-picker/use-deprecated-props.js.map +1 -1
  322. package/build-module/combobox-control/index.js +32 -19
  323. package/build-module/combobox-control/index.js.map +1 -1
  324. package/build-module/combobox-control/styles.js +27 -0
  325. package/build-module/combobox-control/styles.js.map +1 -0
  326. package/build-module/custom-select-control/index.js +28 -11
  327. package/build-module/custom-select-control/index.js.map +1 -1
  328. package/build-module/date-time/time/index.js +6 -3
  329. package/build-module/date-time/time/index.js.map +1 -1
  330. package/build-module/date-time/time/styles.js +15 -21
  331. package/build-module/date-time/time/styles.js.map +1 -1
  332. package/build-module/divider/component.js +0 -1
  333. package/build-module/divider/component.js.map +1 -1
  334. package/build-module/divider/index.js.map +1 -1
  335. package/build-module/divider/styles.js +5 -5
  336. package/build-module/divider/styles.js.map +1 -1
  337. package/build-module/dropdown/dropdown-content-wrapper.js +47 -0
  338. package/build-module/dropdown/dropdown-content-wrapper.js.map +1 -0
  339. package/build-module/dropdown/styles.js +31 -0
  340. package/build-module/dropdown/styles.js.map +1 -0
  341. package/build-module/dropdown/types.js +2 -0
  342. package/build-module/dropdown/types.js.map +1 -0
  343. package/build-module/dropdown-menu/index.js +5 -4
  344. package/build-module/dropdown-menu/index.js.map +1 -1
  345. package/build-module/dropdown-menu/index.native.js +5 -4
  346. package/build-module/dropdown-menu/index.native.js.map +1 -1
  347. package/build-module/elevation/component.js +15 -15
  348. package/build-module/elevation/component.js.map +1 -1
  349. package/build-module/elevation/hook.js +6 -18
  350. package/build-module/elevation/hook.js.map +1 -1
  351. package/build-module/elevation/index.js.map +1 -1
  352. package/build-module/elevation/styles.js +1 -1
  353. package/build-module/elevation/styles.js.map +1 -1
  354. package/build-module/external-link/index.js +7 -2
  355. package/build-module/external-link/index.js.map +1 -1
  356. package/build-module/flex/flex/component.js +20 -26
  357. package/build-module/flex/flex/component.js.map +1 -1
  358. package/build-module/flex/flex/hook.js +6 -15
  359. package/build-module/flex/flex/hook.js.map +1 -1
  360. package/build-module/flex/flex/index.js.map +1 -1
  361. package/build-module/flex/flex-block/component.js +18 -12
  362. package/build-module/flex/flex-block/component.js.map +1 -1
  363. package/build-module/flex/flex-block/hook.js +0 -4
  364. package/build-module/flex/flex-block/hook.js.map +1 -1
  365. package/build-module/flex/flex-block/index.js.map +1 -1
  366. package/build-module/flex/flex-item/component.js +18 -12
  367. package/build-module/flex/flex-item/component.js.map +1 -1
  368. package/build-module/flex/flex-item/hook.js +1 -5
  369. package/build-module/flex/flex-item/hook.js.map +1 -1
  370. package/build-module/flex/flex-item/index.js.map +1 -1
  371. package/build-module/flex/index.js.map +1 -1
  372. package/build-module/flex/styles.js +5 -5
  373. package/build-module/flex/styles.js.map +1 -1
  374. package/build-module/focal-point-picker/grid.js +2 -6
  375. package/build-module/focal-point-picker/grid.js.map +1 -1
  376. package/build-module/focal-point-picker/index.native.js +8 -8
  377. package/build-module/focal-point-picker/index.native.js.map +1 -1
  378. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +22 -22
  379. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  380. package/build-module/focal-point-picker/styles/focal-point-style.js +5 -5
  381. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  382. package/build-module/focal-point-picker/tooltip/index.native.js +11 -12
  383. package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
  384. package/build-module/font-size-picker/index.js +14 -6
  385. package/build-module/font-size-picker/index.js.map +1 -1
  386. package/build-module/form-token-field/index.js +25 -8
  387. package/build-module/form-token-field/index.js.map +1 -1
  388. package/build-module/form-token-field/styles.js +28 -0
  389. package/build-module/form-token-field/styles.js.map +1 -0
  390. package/build-module/form-token-field/suggestions-list.js +21 -13
  391. package/build-module/form-token-field/suggestions-list.js.map +1 -1
  392. package/build-module/grid/component.js +7 -8
  393. package/build-module/grid/component.js.map +1 -1
  394. package/build-module/grid/hook.js +1 -5
  395. package/build-module/grid/hook.js.map +1 -1
  396. package/build-module/grid/index.js.map +1 -1
  397. package/build-module/grid/utils.js +3 -8
  398. package/build-module/grid/utils.js.map +1 -1
  399. package/build-module/h-stack/component.js +3 -7
  400. package/build-module/h-stack/component.js.map +1 -1
  401. package/build-module/h-stack/hook.js +10 -12
  402. package/build-module/h-stack/hook.js.map +1 -1
  403. package/build-module/h-stack/index.js.map +1 -1
  404. package/build-module/h-stack/utils.js +7 -19
  405. package/build-module/h-stack/utils.js.map +1 -1
  406. package/build-module/icon/index.js.map +1 -1
  407. package/build-module/index.js +4 -1
  408. package/build-module/index.js.map +1 -1
  409. package/build-module/input-control/index.js +6 -0
  410. package/build-module/input-control/index.js.map +1 -1
  411. package/build-module/input-control/input-base.js +25 -5
  412. package/build-module/input-control/input-base.js.map +1 -1
  413. package/build-module/input-control/input-prefix-wrapper.js +41 -0
  414. package/build-module/input-control/input-prefix-wrapper.js.map +1 -0
  415. package/build-module/input-control/input-suffix-wrapper.js +41 -0
  416. package/build-module/input-control/input-suffix-wrapper.js.map +1 -0
  417. package/build-module/input-control/reducer/actions.js +1 -0
  418. package/build-module/input-control/reducer/actions.js.map +1 -1
  419. package/build-module/input-control/reducer/reducer.js +28 -11
  420. package/build-module/input-control/reducer/reducer.js.map +1 -1
  421. package/build-module/input-control/reducer/state.js.map +1 -1
  422. package/build-module/input-control/styles/input-control-styles.js +58 -42
  423. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  424. package/build-module/menu-item/index.js +1 -2
  425. package/build-module/menu-item/index.js.map +1 -1
  426. package/build-module/mobile/focal-point-settings-panel/index.native.js +2 -2
  427. package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
  428. package/build-module/mobile/global-styles-context/utils.native.js +23 -4
  429. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  430. package/build-module/mobile/image/index.native.js +33 -8
  431. package/build-module/mobile/image/index.native.js.map +1 -1
  432. package/build-module/mobile/link-picker/link-picker-screen.native.js +11 -4
  433. package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
  434. package/build-module/mobile/media-edit/index.native.js +1 -6
  435. package/build-module/mobile/media-edit/index.native.js.map +1 -1
  436. package/build-module/mobile/picker/index.ios.js +14 -3
  437. package/build-module/mobile/picker/index.ios.js.map +1 -1
  438. package/build-module/modal/index.js +19 -5
  439. package/build-module/modal/index.js.map +1 -1
  440. package/build-module/navigation/index.js +4 -1
  441. package/build-module/navigation/index.js.map +1 -1
  442. package/build-module/navigation/item/base.js +3 -0
  443. package/build-module/navigation/item/base.js.map +1 -1
  444. package/build-module/placeholder/index.js +10 -15
  445. package/build-module/placeholder/index.js.map +1 -1
  446. package/build-module/placeholder/types.js +2 -0
  447. package/build-module/placeholder/types.js.map +1 -0
  448. package/build-module/popover/index.js +128 -75
  449. package/build-module/popover/index.js.map +1 -1
  450. package/build-module/radio-control/index.js +1 -2
  451. package/build-module/radio-control/index.js.map +1 -1
  452. package/build-module/range-control/index.js +54 -40
  453. package/build-module/range-control/index.js.map +1 -1
  454. package/build-module/range-control/input-range.js +5 -6
  455. package/build-module/range-control/input-range.js.map +1 -1
  456. package/build-module/range-control/mark.js +5 -6
  457. package/build-module/range-control/mark.js.map +1 -1
  458. package/build-module/range-control/rail.js +10 -15
  459. package/build-module/range-control/rail.js.map +1 -1
  460. package/build-module/range-control/styles/range-control-styles.js +74 -76
  461. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  462. package/build-module/range-control/tooltip.js +5 -6
  463. package/build-module/range-control/tooltip.js.map +1 -1
  464. package/build-module/range-control/types.js +2 -0
  465. package/build-module/range-control/types.js.map +1 -0
  466. package/build-module/range-control/utils.js +23 -30
  467. package/build-module/range-control/utils.js.map +1 -1
  468. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  469. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  470. package/build-module/resizable-box/resize-tooltip/utils.js +2 -6
  471. package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
  472. package/build-module/sandbox/index.native.js +13 -3
  473. package/build-module/sandbox/index.native.js.map +1 -1
  474. package/build-module/scroll-lock/index.js +32 -6
  475. package/build-module/scroll-lock/index.js.map +1 -1
  476. package/build-module/scrollable/component.js +7 -8
  477. package/build-module/scrollable/component.js.map +1 -1
  478. package/build-module/scrollable/hook.js +0 -8
  479. package/build-module/scrollable/hook.js.map +1 -1
  480. package/build-module/scrollable/index.js.map +1 -1
  481. package/build-module/scrollable/styles.js +7 -7
  482. package/build-module/scrollable/styles.js.map +1 -1
  483. package/build-module/select-control/index.js +1 -2
  484. package/build-module/select-control/index.js.map +1 -1
  485. package/build-module/select-control/styles/select-control-styles.js +32 -12
  486. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  487. package/build-module/shortcut/index.js +6 -20
  488. package/build-module/shortcut/index.js.map +1 -1
  489. package/build-module/shortcut/types.js +2 -0
  490. package/build-module/shortcut/types.js.map +1 -0
  491. package/build-module/slot-fill/index.native.js +6 -7
  492. package/build-module/slot-fill/index.native.js.map +1 -1
  493. package/build-module/slot-fill/provider.js +4 -7
  494. package/build-module/slot-fill/provider.js.map +1 -1
  495. package/build-module/slot-fill/slot.js +4 -7
  496. package/build-module/slot-fill/slot.js.map +1 -1
  497. package/build-module/spacer/component.js +3 -1
  498. package/build-module/spacer/component.js.map +1 -1
  499. package/build-module/spacer/hook.js +2 -2
  500. package/build-module/spacer/hook.js.map +1 -1
  501. package/build-module/spacer/index.js.map +1 -1
  502. package/build-module/style-provider/index.js +10 -5
  503. package/build-module/style-provider/index.js.map +1 -1
  504. package/build-module/style-provider/types.js +2 -0
  505. package/build-module/style-provider/types.js.map +1 -0
  506. package/build-module/swatch/index.js +2 -0
  507. package/build-module/swatch/index.js.map +1 -1
  508. package/build-module/swatch/types.js +2 -0
  509. package/build-module/swatch/types.js.map +1 -0
  510. package/build-module/text/hook.js +5 -7
  511. package/build-module/text/hook.js.map +1 -1
  512. package/build-module/text-highlight/index.js +23 -6
  513. package/build-module/text-highlight/index.js.map +1 -1
  514. package/build-module/text-highlight/types.js +2 -0
  515. package/build-module/text-highlight/types.js.map +1 -0
  516. package/build-module/tip/index.js +6 -10
  517. package/build-module/tip/index.js.map +1 -1
  518. package/build-module/tip/types.js +2 -0
  519. package/build-module/tip/types.js.map +1 -0
  520. package/build-module/toggle-group-control/toggle-group-control/component.js +4 -1
  521. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  522. package/build-module/toggle-group-control/toggle-group-control/styles.js +15 -3
  523. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  524. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +6 -7
  525. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  526. package/build-module/toolbar-group/index.js +3 -2
  527. package/build-module/toolbar-group/index.js.map +1 -1
  528. package/build-module/tools-panel/styles.js +12 -11
  529. package/build-module/tools-panel/styles.js.map +1 -1
  530. package/build-module/tools-panel/tools-panel/hook.js +1 -1
  531. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  532. package/build-module/tooltip/index.js +53 -16
  533. package/build-module/tooltip/index.js.map +1 -1
  534. package/build-module/tree-select/index.js +5 -5
  535. package/build-module/tree-select/index.js.map +1 -1
  536. package/build-module/ui/context/use-context-system.js +7 -2
  537. package/build-module/ui/context/use-context-system.js.map +1 -1
  538. package/build-module/ui/tooltip/styles.js +4 -4
  539. package/build-module/ui/tooltip/styles.js.map +1 -1
  540. package/build-module/ui/utils/get-valid-children.js.map +1 -1
  541. package/build-module/ui/utils/space.js +7 -1
  542. package/build-module/ui/utils/space.js.map +1 -1
  543. package/build-module/unit-control/styles/unit-control-styles.js +39 -30
  544. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  545. package/build-module/utils/base-label.js +18 -0
  546. package/build-module/utils/base-label.js.map +1 -0
  547. package/build-module/utils/box-sizing.js +16 -0
  548. package/build-module/utils/box-sizing.js.map +1 -0
  549. package/build-module/utils/style-mixins.js +2 -0
  550. package/build-module/utils/style-mixins.js.map +1 -1
  551. package/build-module/visually-hidden/component.js +12 -13
  552. package/build-module/visually-hidden/component.js.map +1 -1
  553. package/build-module/visually-hidden/index.js.map +1 -1
  554. package/build-module/visually-hidden/styles.js +3 -1
  555. package/build-module/visually-hidden/styles.js.map +1 -1
  556. package/build-module/visually-hidden/types.js +2 -0
  557. package/build-module/visually-hidden/types.js.map +1 -0
  558. package/build-style/style-rtl.css +75 -75
  559. package/build-style/style.css +77 -73
  560. package/build-types/base-control/index.d.ts +4 -3
  561. package/build-types/base-control/index.d.ts.map +1 -1
  562. package/build-types/base-control/stories/index.d.ts +1 -1
  563. package/build-types/base-control/stories/index.d.ts.map +1 -1
  564. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  565. package/build-types/base-control/types.d.ts +0 -1
  566. package/build-types/base-control/types.d.ts.map +1 -1
  567. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  568. package/build-types/border-control/border-control/hook.d.ts +2 -2
  569. package/build-types/border-control/border-control/hook.d.ts.map +1 -1
  570. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  571. package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
  572. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  573. package/build-types/border-control/stories/index.d.ts.map +1 -1
  574. package/build-types/border-control/styles.d.ts +1 -4
  575. package/build-types/border-control/styles.d.ts.map +1 -1
  576. package/build-types/card/card-divider/hook.d.ts +1 -1
  577. package/build-types/color-palette/index.d.ts +1 -0
  578. package/build-types/color-palette/index.d.ts.map +1 -1
  579. package/build-types/color-picker/color-display.d.ts +13 -0
  580. package/build-types/color-picker/color-display.d.ts.map +1 -0
  581. package/build-types/color-picker/hex-input.d.ts.map +1 -1
  582. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  583. package/build-types/color-picker/styles.d.ts +30 -31
  584. package/build-types/color-picker/styles.d.ts.map +1 -1
  585. package/build-types/color-picker/use-deprecated-props.d.ts.map +1 -1
  586. package/build-types/date-time/time/index.d.ts.map +1 -1
  587. package/build-types/date-time/time/styles.d.ts +0 -4
  588. package/build-types/date-time/time/styles.d.ts.map +1 -1
  589. package/build-types/divider/component.d.ts +2 -3
  590. package/build-types/divider/component.d.ts.map +1 -1
  591. package/build-types/divider/index.d.ts +1 -1
  592. package/build-types/divider/index.d.ts.map +1 -1
  593. package/build-types/divider/styles.d.ts +6 -2
  594. package/build-types/divider/styles.d.ts.map +1 -1
  595. package/build-types/divider/test/index.d.ts +2 -0
  596. package/build-types/divider/test/index.d.ts.map +1 -0
  597. package/build-types/divider/types.d.ts +18 -10
  598. package/build-types/divider/types.d.ts.map +1 -1
  599. package/build-types/dropdown/dropdown-content-wrapper.d.ts +23 -0
  600. package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -0
  601. package/build-types/dropdown/styles.d.ts +7 -0
  602. package/build-types/dropdown/styles.d.ts.map +1 -0
  603. package/build-types/dropdown/types.d.ts +9 -0
  604. package/build-types/dropdown/types.d.ts.map +1 -0
  605. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  606. package/build-types/elevation/component.d.ts +11 -10
  607. package/build-types/elevation/component.d.ts.map +1 -1
  608. package/build-types/elevation/hook.d.ts +6 -7
  609. package/build-types/elevation/hook.d.ts.map +1 -1
  610. package/build-types/elevation/index.d.ts +2 -2
  611. package/build-types/elevation/index.d.ts.map +1 -1
  612. package/build-types/elevation/stories/index.d.ts +22 -0
  613. package/build-types/elevation/stories/index.d.ts.map +1 -0
  614. package/build-types/elevation/styles.d.ts +1 -1
  615. package/build-types/elevation/styles.d.ts.map +1 -1
  616. package/build-types/elevation/test/index.d.ts +2 -0
  617. package/build-types/elevation/test/index.d.ts.map +1 -0
  618. package/build-types/elevation/types.d.ts +12 -19
  619. package/build-types/elevation/types.d.ts.map +1 -1
  620. package/build-types/external-link/index.d.ts.map +1 -1
  621. package/build-types/flex/flex/component.d.ts +16 -21
  622. package/build-types/flex/flex/component.d.ts.map +1 -1
  623. package/build-types/flex/flex/hook.d.ts +5 -2
  624. package/build-types/flex/flex/hook.d.ts.map +1 -1
  625. package/build-types/flex/flex/index.d.ts +2 -2
  626. package/build-types/flex/flex/index.d.ts.map +1 -1
  627. package/build-types/flex/flex-block/component.d.ts +14 -7
  628. package/build-types/flex/flex-block/component.d.ts.map +1 -1
  629. package/build-types/flex/flex-block/hook.d.ts +6 -3
  630. package/build-types/flex/flex-block/hook.d.ts.map +1 -1
  631. package/build-types/flex/flex-block/index.d.ts +2 -2
  632. package/build-types/flex/flex-block/index.d.ts.map +1 -1
  633. package/build-types/flex/flex-item/component.d.ts +14 -7
  634. package/build-types/flex/flex-item/component.d.ts.map +1 -1
  635. package/build-types/flex/flex-item/hook.d.ts +6 -3
  636. package/build-types/flex/flex-item/hook.d.ts.map +1 -1
  637. package/build-types/flex/flex-item/index.d.ts +2 -2
  638. package/build-types/flex/flex-item/index.d.ts.map +1 -1
  639. package/build-types/flex/index.d.ts +3 -3
  640. package/build-types/flex/index.d.ts.map +1 -1
  641. package/build-types/flex/stories/index.d.ts +13 -0
  642. package/build-types/flex/stories/index.d.ts.map +1 -0
  643. package/build-types/flex/styles.d.ts +5 -5
  644. package/build-types/flex/styles.d.ts.map +1 -1
  645. package/build-types/flex/test/index.d.ts +2 -0
  646. package/build-types/flex/test/index.d.ts.map +1 -0
  647. package/build-types/flex/types.d.ts +17 -10
  648. package/build-types/flex/types.d.ts.map +1 -1
  649. package/build-types/flyout/context.d.ts +6 -0
  650. package/build-types/flyout/context.d.ts.map +1 -0
  651. package/build-types/flyout/flyout/component.d.ts +21 -0
  652. package/build-types/flyout/flyout/component.d.ts.map +1 -0
  653. package/build-types/flyout/flyout/hook.d.ts +270 -0
  654. package/build-types/flyout/flyout/hook.d.ts.map +1 -0
  655. package/build-types/flyout/flyout/index.d.ts +3 -0
  656. package/build-types/flyout/flyout/index.d.ts.map +1 -0
  657. package/build-types/flyout/flyout-content/component.d.ts +3 -0
  658. package/build-types/flyout/flyout-content/component.d.ts.map +1 -0
  659. package/build-types/flyout/flyout-content/index.d.ts +2 -0
  660. package/build-types/flyout/flyout-content/index.d.ts.map +1 -0
  661. package/build-types/flyout/index.d.ts +2 -0
  662. package/build-types/flyout/index.d.ts.map +1 -0
  663. package/build-types/flyout/styles.d.ts +22 -0
  664. package/build-types/flyout/styles.d.ts.map +1 -0
  665. package/build-types/flyout/types.d.ts +80 -0
  666. package/build-types/flyout/types.d.ts.map +1 -0
  667. package/build-types/flyout/utils.d.ts +8 -0
  668. package/build-types/flyout/utils.d.ts.map +1 -0
  669. package/build-types/form-token-field/index.d.ts.map +1 -1
  670. package/build-types/form-token-field/stories/index.d.ts +6 -0
  671. package/build-types/form-token-field/stories/index.d.ts.map +1 -1
  672. package/build-types/form-token-field/styles.d.ts +14 -0
  673. package/build-types/form-token-field/styles.d.ts.map +1 -0
  674. package/build-types/form-token-field/suggestions-list.d.ts +1 -1
  675. package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
  676. package/build-types/form-token-field/types.d.ts +22 -3
  677. package/build-types/form-token-field/types.d.ts.map +1 -1
  678. package/build-types/grid/component.d.ts +3 -3
  679. package/build-types/grid/component.d.ts.map +1 -1
  680. package/build-types/grid/hook.d.ts +5 -2
  681. package/build-types/grid/hook.d.ts.map +1 -1
  682. package/build-types/grid/index.d.ts +2 -2
  683. package/build-types/grid/index.d.ts.map +1 -1
  684. package/build-types/grid/stories/index.d.ts +9 -0
  685. package/build-types/grid/stories/index.d.ts.map +1 -0
  686. package/build-types/grid/test/grid.d.ts +2 -0
  687. package/build-types/grid/test/grid.d.ts.map +1 -0
  688. package/build-types/grid/types.d.ts +16 -15
  689. package/build-types/grid/types.d.ts.map +1 -1
  690. package/build-types/grid/utils.d.ts +50 -69
  691. package/build-types/grid/utils.d.ts.map +1 -1
  692. package/build-types/h-stack/component.d.ts +3 -2
  693. package/build-types/h-stack/component.d.ts.map +1 -1
  694. package/build-types/h-stack/hook.d.ts +5 -3
  695. package/build-types/h-stack/hook.d.ts.map +1 -1
  696. package/build-types/h-stack/index.d.ts +2 -2
  697. package/build-types/h-stack/index.d.ts.map +1 -1
  698. package/build-types/h-stack/stories/index.d.ts +9 -0
  699. package/build-types/h-stack/stories/index.d.ts.map +1 -0
  700. package/build-types/h-stack/test/index.d.ts +2 -0
  701. package/build-types/h-stack/test/index.d.ts.map +1 -0
  702. package/build-types/h-stack/utils.d.ts +8 -4
  703. package/build-types/h-stack/utils.d.ts.map +1 -1
  704. package/build-types/icon/index.d.ts +1 -1
  705. package/build-types/icon/index.d.ts.map +1 -1
  706. package/build-types/input-control/index.d.ts +1 -1
  707. package/build-types/input-control/index.d.ts.map +1 -1
  708. package/build-types/input-control/input-base.d.ts +1 -1
  709. package/build-types/input-control/input-base.d.ts.map +1 -1
  710. package/build-types/input-control/input-prefix-wrapper.d.ts +19 -0
  711. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -0
  712. package/build-types/input-control/input-suffix-wrapper.d.ts +19 -0
  713. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -0
  714. package/build-types/input-control/reducer/actions.d.ts +3 -1
  715. package/build-types/input-control/reducer/actions.d.ts.map +1 -1
  716. package/build-types/input-control/reducer/reducer.d.ts +2 -2
  717. package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
  718. package/build-types/input-control/reducer/state.d.ts +2 -2
  719. package/build-types/input-control/reducer/state.d.ts.map +1 -1
  720. package/build-types/input-control/stories/index.d.ts +10 -0
  721. package/build-types/input-control/stories/index.d.ts.map +1 -1
  722. package/build-types/input-control/styles/input-control-styles.d.ts +21 -0
  723. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  724. package/build-types/input-control/types.d.ts +45 -3
  725. package/build-types/input-control/types.d.ts.map +1 -1
  726. package/build-types/menu-item/index.d.ts.map +1 -1
  727. package/build-types/placeholder/index.d.ts +16 -0
  728. package/build-types/placeholder/index.d.ts.map +1 -0
  729. package/build-types/placeholder/stories/index.d.ts +12 -0
  730. package/build-types/placeholder/stories/index.d.ts.map +1 -0
  731. package/build-types/placeholder/types.d.ts +47 -0
  732. package/build-types/placeholder/types.d.ts.map +1 -0
  733. package/build-types/popover/index.d.ts +1 -1
  734. package/build-types/popover/index.d.ts.map +1 -1
  735. package/build-types/popover/utils.d.ts +70 -0
  736. package/build-types/popover/utils.d.ts.map +1 -0
  737. package/build-types/radio-control/index.d.ts.map +1 -1
  738. package/build-types/range-control/index.d.ts +54 -29
  739. package/build-types/range-control/index.d.ts.map +1 -1
  740. package/build-types/range-control/input-range.d.ts +7 -10
  741. package/build-types/range-control/input-range.d.ts.map +1 -1
  742. package/build-types/range-control/mark.d.ts +4 -7
  743. package/build-types/range-control/mark.d.ts.map +1 -1
  744. package/build-types/range-control/rail.d.ts +4 -9
  745. package/build-types/range-control/rail.d.ts.map +1 -1
  746. package/build-types/range-control/stories/index.d.ts +48 -0
  747. package/build-types/range-control/stories/index.d.ts.map +1 -0
  748. package/build-types/range-control/styles/range-control-styles.d.ts +32 -40
  749. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  750. package/build-types/range-control/test/index.d.ts +2 -0
  751. package/build-types/range-control/test/index.d.ts.map +1 -0
  752. package/build-types/range-control/tooltip.d.ts +4 -11
  753. package/build-types/range-control/tooltip.d.ts.map +1 -1
  754. package/build-types/range-control/types.d.ts +304 -0
  755. package/build-types/range-control/types.d.ts.map +1 -0
  756. package/build-types/range-control/utils.d.ts +15 -33
  757. package/build-types/range-control/utils.d.ts.map +1 -1
  758. package/build-types/resizable-box/resize-tooltip/utils.d.ts.map +1 -1
  759. package/build-types/scroll-lock/index.d.ts +32 -3
  760. package/build-types/scroll-lock/index.d.ts.map +1 -1
  761. package/build-types/scroll-lock/stories/index.d.ts +9 -0
  762. package/build-types/scroll-lock/stories/index.d.ts.map +1 -0
  763. package/build-types/scroll-lock/test/index.d.ts +2 -0
  764. package/build-types/scroll-lock/test/index.d.ts.map +1 -0
  765. package/build-types/scrollable/component.d.ts +3 -3
  766. package/build-types/scrollable/component.d.ts.map +1 -1
  767. package/build-types/scrollable/hook.d.ts +5 -2
  768. package/build-types/scrollable/hook.d.ts.map +1 -1
  769. package/build-types/scrollable/index.d.ts +2 -2
  770. package/build-types/scrollable/index.d.ts.map +1 -1
  771. package/build-types/scrollable/stories/index.d.ts +9 -0
  772. package/build-types/scrollable/stories/index.d.ts.map +1 -0
  773. package/build-types/scrollable/styles.d.ts +7 -7
  774. package/build-types/scrollable/styles.d.ts.map +1 -1
  775. package/build-types/scrollable/test/index.d.ts +2 -0
  776. package/build-types/scrollable/test/index.d.ts.map +1 -0
  777. package/build-types/scrollable/types.d.ts +9 -6
  778. package/build-types/scrollable/types.d.ts.map +1 -1
  779. package/build-types/select-control/index.d.ts.map +1 -1
  780. package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
  781. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  782. package/build-types/select-control/types.d.ts +1 -1
  783. package/build-types/select-control/types.d.ts.map +1 -1
  784. package/build-types/shortcut/index.d.ts +5 -24
  785. package/build-types/shortcut/index.d.ts.map +1 -1
  786. package/build-types/shortcut/test/index.d.ts +2 -0
  787. package/build-types/shortcut/test/index.d.ts.map +1 -0
  788. package/build-types/shortcut/types.d.ts +14 -0
  789. package/build-types/shortcut/types.d.ts.map +1 -0
  790. package/build-types/slot-fill/provider.d.ts.map +1 -1
  791. package/build-types/slot-fill/slot.d.ts.map +1 -1
  792. package/build-types/spacer/component.d.ts +5 -3
  793. package/build-types/spacer/component.d.ts.map +1 -1
  794. package/build-types/spacer/hook.d.ts +2 -2
  795. package/build-types/spacer/hook.d.ts.map +1 -1
  796. package/build-types/spacer/index.d.ts +1 -1
  797. package/build-types/spacer/index.d.ts.map +1 -1
  798. package/build-types/spacer/test/index.d.ts +2 -0
  799. package/build-types/spacer/test/index.d.ts.map +1 -0
  800. package/build-types/spacer/types.d.ts +41 -29
  801. package/build-types/spacer/types.d.ts.map +1 -1
  802. package/build-types/style-provider/index.d.ts +7 -4
  803. package/build-types/style-provider/index.d.ts.map +1 -1
  804. package/build-types/style-provider/types.d.ts +15 -0
  805. package/build-types/style-provider/types.d.ts.map +1 -0
  806. package/build-types/swatch/index.d.ts +5 -0
  807. package/build-types/swatch/index.d.ts.map +1 -0
  808. package/build-types/swatch/types.d.ts +11 -0
  809. package/build-types/swatch/types.d.ts.map +1 -0
  810. package/build-types/text/hook.d.ts.map +1 -1
  811. package/build-types/text-highlight/index.d.ts +23 -0
  812. package/build-types/text-highlight/index.d.ts.map +1 -0
  813. package/build-types/text-highlight/stories/index.d.ts +12 -0
  814. package/build-types/text-highlight/stories/index.d.ts.map +1 -0
  815. package/build-types/text-highlight/test/index.d.ts +2 -0
  816. package/build-types/text-highlight/test/index.d.ts.map +1 -0
  817. package/build-types/text-highlight/types.d.ts +17 -0
  818. package/build-types/text-highlight/types.d.ts.map +1 -0
  819. package/build-types/tip/index.d.ts +5 -14
  820. package/build-types/tip/index.d.ts.map +1 -1
  821. package/build-types/tip/stories/index.d.ts +12 -0
  822. package/build-types/tip/stories/index.d.ts.map +1 -0
  823. package/build-types/tip/types.d.ts +11 -0
  824. package/build-types/tip/types.d.ts.map +1 -0
  825. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -1
  826. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  827. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +0 -1
  828. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  829. package/build-types/toggle-group-control/types.d.ts +6 -0
  830. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  831. package/build-types/tools-panel/styles.d.ts +1 -1
  832. package/build-types/tools-panel/styles.d.ts.map +1 -1
  833. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  834. package/build-types/tooltip/index.d.ts.map +1 -1
  835. package/build-types/tree-select/index.d.ts.map +1 -1
  836. package/build-types/tree-select/types.d.ts +1 -0
  837. package/build-types/tree-select/types.d.ts.map +1 -1
  838. package/build-types/ui/context/use-context-system.d.ts.map +1 -1
  839. package/build-types/ui/form-group/form-group.d.ts +1 -1
  840. package/build-types/ui/form-group/types.d.ts +1 -1
  841. package/build-types/ui/form-group/types.d.ts.map +1 -1
  842. package/build-types/ui/form-group/use-form-group.d.ts +3 -3
  843. package/build-types/ui/tooltip/styles.d.ts.map +1 -1
  844. package/build-types/ui/utils/get-valid-children.d.ts +2 -2
  845. package/build-types/ui/utils/get-valid-children.d.ts.map +1 -1
  846. package/build-types/ui/utils/space.d.ts +7 -1
  847. package/build-types/ui/utils/space.d.ts.map +1 -1
  848. package/build-types/unit-control/index.d.ts +3 -3
  849. package/build-types/unit-control/index.d.ts.map +1 -1
  850. package/build-types/unit-control/stories/index.d.ts.map +1 -1
  851. package/build-types/unit-control/styles/unit-control-styles.d.ts +0 -1
  852. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  853. package/build-types/unit-control/types.d.ts +2 -8
  854. package/build-types/unit-control/types.d.ts.map +1 -1
  855. package/build-types/utils/base-label.d.ts +2 -0
  856. package/build-types/utils/base-label.d.ts.map +1 -0
  857. package/build-types/utils/box-sizing.d.ts +2 -0
  858. package/build-types/utils/box-sizing.d.ts.map +1 -0
  859. package/build-types/utils/hooks/use-combined-ref.d.ts +8 -0
  860. package/build-types/utils/hooks/use-combined-ref.d.ts.map +1 -0
  861. package/build-types/utils/style-mixins.d.ts +2 -0
  862. package/build-types/visually-hidden/component.d.ts +8 -10
  863. package/build-types/visually-hidden/component.d.ts.map +1 -1
  864. package/build-types/visually-hidden/index.d.ts +1 -1
  865. package/build-types/visually-hidden/index.d.ts.map +1 -1
  866. package/build-types/visually-hidden/stories/index.d.ts +14 -0
  867. package/build-types/visually-hidden/stories/index.d.ts.map +1 -0
  868. package/build-types/visually-hidden/styles.d.ts +5 -2
  869. package/build-types/visually-hidden/styles.d.ts.map +1 -1
  870. package/build-types/visually-hidden/test/index.d.ts +2 -0
  871. package/build-types/visually-hidden/test/index.d.ts.map +1 -0
  872. package/build-types/visually-hidden/types.d.ts +11 -0
  873. package/build-types/visually-hidden/types.d.ts.map +1 -0
  874. package/package.json +17 -17
  875. package/src/angle-picker-control/index.js +1 -2
  876. package/src/autocomplete/get-default-use-items.js +3 -2
  877. package/src/autocomplete/index.js +3 -2
  878. package/src/base-control/index.tsx +5 -3
  879. package/src/base-control/stories/index.tsx +1 -0
  880. package/src/base-control/styles/base-control-styles.ts +10 -1
  881. package/src/base-control/types.ts +0 -1
  882. package/src/border-control/border-control/component.tsx +41 -32
  883. package/src/border-control/border-control/hook.ts +5 -10
  884. package/src/border-control/border-control-dropdown/component.tsx +50 -45
  885. package/src/border-control/border-control-dropdown/hook.ts +0 -5
  886. package/src/border-control/stories/index.tsx +3 -0
  887. package/src/border-control/styles.ts +25 -70
  888. package/src/border-control/test/index.js +19 -8
  889. package/src/box-control/all-input-control.js +3 -27
  890. package/src/box-control/axial-input-controls.js +1 -1
  891. package/src/box-control/index.js +6 -7
  892. package/src/box-control/styles/box-control-styles.js +1 -2
  893. package/src/box-control/utils.js +38 -13
  894. package/src/button/README.md +1 -1
  895. package/src/card/test/__snapshots__/index.js.snap +8 -8
  896. package/src/color-palette/index.js +19 -8
  897. package/src/color-palette/style.scss +5 -0
  898. package/src/color-palette/test/utils.ts +19 -1
  899. package/src/color-picker/hex-input.tsx +5 -3
  900. package/src/color-picker/index.native.js +20 -27
  901. package/src/color-picker/input-with-slider.tsx +4 -1
  902. package/src/color-picker/styles.ts +3 -16
  903. package/src/color-picker/use-deprecated-props.ts +24 -43
  904. package/src/combobox-control/README.md +7 -0
  905. package/src/combobox-control/index.js +34 -17
  906. package/src/combobox-control/stories/index.js +51 -6
  907. package/src/combobox-control/style.scss +1 -1
  908. package/src/combobox-control/styles.ts +27 -0
  909. package/src/confirm-dialog/README.md +1 -1
  910. package/src/custom-gradient-picker/style.scss +0 -12
  911. package/src/custom-select-control/index.js +47 -28
  912. package/src/custom-select-control/stories/index.js +7 -2
  913. package/src/custom-select-control/style.scss +5 -34
  914. package/src/date-time/time/index.tsx +7 -5
  915. package/src/date-time/time/styles.ts +3 -6
  916. package/src/divider/README.md +12 -5
  917. package/src/divider/component.tsx +2 -3
  918. package/src/divider/index.ts +1 -1
  919. package/src/divider/stories/index.tsx +4 -4
  920. package/src/divider/styles.ts +7 -7
  921. package/src/divider/test/__snapshots__/{index.js.snap → index.tsx.snap} +7 -7
  922. package/src/divider/test/index.tsx +40 -0
  923. package/src/divider/types.ts +21 -15
  924. package/src/draggable/README.md +1 -1
  925. package/src/dropdown/dropdown-content-wrapper.tsx +59 -0
  926. package/src/dropdown/stories/index.js +60 -69
  927. package/src/dropdown/styles.ts +38 -0
  928. package/src/dropdown/types.ts +8 -0
  929. package/src/dropdown-menu/index.js +3 -4
  930. package/src/dropdown-menu/index.native.js +3 -5
  931. package/src/elevation/README.md +16 -14
  932. package/src/elevation/component.tsx +48 -0
  933. package/src/elevation/{hook.js → hook.ts} +23 -20
  934. package/src/elevation/{index.js → index.ts} +0 -0
  935. package/src/elevation/stories/index.tsx +85 -0
  936. package/src/elevation/{styles.js → styles.ts} +0 -0
  937. package/src/elevation/test/__snapshots__/{index.js.snap → index.tsx.snap} +19 -13
  938. package/src/elevation/test/index.tsx +64 -0
  939. package/src/elevation/types.ts +12 -19
  940. package/src/external-link/index.tsx +20 -4
  941. package/src/flex/flex/README.md +20 -18
  942. package/src/flex/flex/component.tsx +59 -0
  943. package/src/flex/flex/{hook.js → hook.ts} +14 -13
  944. package/src/flex/flex/{index.js → index.ts} +0 -0
  945. package/src/flex/flex-block/README.md +3 -7
  946. package/src/flex/flex-block/component.tsx +41 -0
  947. package/src/flex/flex-block/{hook.js → hook.ts} +5 -5
  948. package/src/flex/flex-block/{index.js → index.ts} +0 -0
  949. package/src/flex/flex-item/README.md +6 -9
  950. package/src/flex/flex-item/component.tsx +41 -0
  951. package/src/flex/flex-item/{hook.js → hook.ts} +10 -7
  952. package/src/flex/flex-item/{index.js → index.ts} +0 -0
  953. package/src/flex/{index.js → index.ts} +0 -0
  954. package/src/flex/stories/index.tsx +81 -0
  955. package/src/flex/{styles.js → styles.ts} +0 -0
  956. package/src/flex/test/__snapshots__/{index.js.snap → index.tsx.snap} +49 -9
  957. package/src/flex/test/index.tsx +84 -0
  958. package/src/flex/types.ts +17 -10
  959. package/src/focal-point-picker/grid.js +2 -5
  960. package/src/focal-point-picker/index.native.js +8 -8
  961. package/src/focal-point-picker/styles/focal-point-picker-style.js +0 -5
  962. package/src/focal-point-picker/styles/focal-point-style.js +0 -1
  963. package/src/focal-point-picker/tooltip/index.native.js +10 -11
  964. package/src/font-size-picker/index.js +18 -7
  965. package/src/font-size-picker/stories/index.js +6 -0
  966. package/src/form-token-field/README.md +2 -1
  967. package/src/form-token-field/index.tsx +50 -26
  968. package/src/form-token-field/stories/index.tsx +14 -0
  969. package/src/form-token-field/style.scss +2 -12
  970. package/src/form-token-field/styles.ts +32 -0
  971. package/src/form-token-field/suggestions-list.tsx +23 -16
  972. package/src/form-token-field/test/index.js +1 -1
  973. package/src/form-token-field/types.ts +23 -2
  974. package/src/grid/README.md +33 -19
  975. package/src/grid/{component.js → component.tsx} +13 -9
  976. package/src/grid/{hook.js → hook.ts} +5 -5
  977. package/src/grid/{index.js → index.ts} +0 -0
  978. package/src/grid/stories/index.tsx +72 -0
  979. package/src/grid/test/{grid.js → grid.tsx} +4 -4
  980. package/src/grid/types.ts +16 -17
  981. package/src/grid/{utils.js → utils.ts} +9 -7
  982. package/src/guide/style.scss +1 -0
  983. package/src/h-stack/{component.js → component.tsx} +8 -8
  984. package/src/h-stack/{hook.js → hook.tsx} +21 -16
  985. package/src/h-stack/{index.js → index.ts} +0 -0
  986. package/src/h-stack/stories/index.tsx +92 -0
  987. package/src/h-stack/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  988. package/src/h-stack/test/{index.js → index.tsx} +0 -0
  989. package/src/h-stack/{utils.js → utils.ts} +14 -14
  990. package/src/higher-order/navigate-regions/README.md +4 -1
  991. package/src/icon/index.tsx +1 -1
  992. package/src/index.js +7 -1
  993. package/src/input-control/index.tsx +6 -0
  994. package/src/input-control/input-base.tsx +28 -13
  995. package/src/input-control/input-prefix-wrapper.tsx +48 -0
  996. package/src/input-control/input-suffix-wrapper.tsx +48 -0
  997. package/src/input-control/reducer/actions.ts +3 -1
  998. package/src/input-control/reducer/reducer.ts +27 -10
  999. package/src/input-control/reducer/state.ts +7 -2
  1000. package/src/input-control/stories/index.tsx +15 -2
  1001. package/src/input-control/styles/input-control-styles.tsx +28 -12
  1002. package/src/input-control/test/index.js +20 -4
  1003. package/src/input-control/types.ts +52 -3
  1004. package/src/menu-item/index.js +1 -2
  1005. package/src/mobile/focal-point-settings-panel/index.native.js +2 -2
  1006. package/src/mobile/global-styles-context/utils.native.js +21 -4
  1007. package/src/mobile/image/index.native.js +38 -7
  1008. package/src/mobile/link-picker/link-picker-screen.native.js +12 -4
  1009. package/src/mobile/media-edit/index.native.js +2 -7
  1010. package/src/mobile/picker/index.ios.js +16 -0
  1011. package/src/mobile/picker/styles.native.scss +8 -0
  1012. package/src/modal/index.js +21 -2
  1013. package/src/modal/stories/index.js +17 -1
  1014. package/src/modal/style.scss +14 -19
  1015. package/src/navigation/index.js +3 -0
  1016. package/src/navigation/item/base.js +2 -1
  1017. package/src/panel/style.scss +4 -1
  1018. package/src/placeholder/README.md +49 -9
  1019. package/src/placeholder/{index.js → index.tsx} +27 -23
  1020. package/src/placeholder/stories/index.tsx +64 -0
  1021. package/src/placeholder/style.scss +0 -4
  1022. package/src/placeholder/types.ts +48 -0
  1023. package/src/popover/README.md +9 -2
  1024. package/src/popover/index.js +160 -79
  1025. package/src/popover/stories/index.js +199 -96
  1026. package/src/popover/style.scss +61 -7
  1027. package/src/popover/test/index.js +23 -1
  1028. package/src/radio-control/index.tsx +1 -2
  1029. package/src/range-control/README.md +108 -80
  1030. package/src/range-control/{index.js → index.tsx} +78 -48
  1031. package/src/range-control/{input-range.js → input-range.tsx} +11 -7
  1032. package/src/range-control/{mark.js → mark.tsx} +15 -9
  1033. package/src/range-control/{rail.js → rail.tsx} +40 -23
  1034. package/src/range-control/stories/index.tsx +244 -0
  1035. package/src/range-control/styles/{range-control-styles.js → range-control-styles.ts} +28 -36
  1036. package/src/range-control/test/index.tsx +341 -0
  1037. package/src/range-control/{tooltip.js → tooltip.tsx} +19 -14
  1038. package/src/range-control/types.ts +328 -0
  1039. package/src/range-control/utils.ts +135 -0
  1040. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -1
  1041. package/src/resizable-box/resize-tooltip/utils.ts +2 -3
  1042. package/src/sandbox/index.native.js +14 -1
  1043. package/src/scroll-lock/README.md +1 -1
  1044. package/src/scroll-lock/{index.js → index.tsx} +34 -7
  1045. package/src/scroll-lock/stories/index.tsx +96 -0
  1046. package/src/scroll-lock/test/index.tsx +26 -0
  1047. package/src/scrollable/README.md +14 -8
  1048. package/src/scrollable/{component.js → component.tsx} +13 -10
  1049. package/src/scrollable/{hook.js → hook.ts} +5 -7
  1050. package/src/scrollable/{index.js → index.ts} +0 -0
  1051. package/src/scrollable/stories/{index.js → index.tsx} +29 -34
  1052. package/src/scrollable/{styles.js → styles.ts} +0 -0
  1053. package/src/scrollable/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1054. package/src/scrollable/test/index.tsx +34 -0
  1055. package/src/scrollable/types.ts +10 -5
  1056. package/src/select-control/index.tsx +1 -2
  1057. package/src/select-control/styles/select-control-styles.ts +33 -10
  1058. package/src/select-control/test/select-control.tsx +22 -15
  1059. package/src/select-control/types.ts +1 -0
  1060. package/src/shortcut/index.tsx +32 -0
  1061. package/src/shortcut/test/__snapshots__/index.tsx.snap +15 -0
  1062. package/src/shortcut/test/index.tsx +41 -0
  1063. package/src/shortcut/types.ts +10 -0
  1064. package/src/slot-fill/index.native.js +2 -7
  1065. package/src/slot-fill/provider.js +3 -7
  1066. package/src/slot-fill/slot.js +21 -24
  1067. package/src/spacer/README.md +43 -37
  1068. package/src/spacer/component.tsx +5 -3
  1069. package/src/spacer/hook.ts +4 -2
  1070. package/src/spacer/index.ts +1 -1
  1071. package/src/spacer/test/__snapshots__/{index.js.snap → index.tsx.snap} +1 -0
  1072. package/src/spacer/test/index.tsx +149 -0
  1073. package/src/spacer/types.ts +41 -29
  1074. package/src/style-provider/index.tsx +41 -0
  1075. package/src/style-provider/types.ts +15 -0
  1076. package/src/swatch/{index.js → index.tsx} +4 -1
  1077. package/src/swatch/types.ts +11 -0
  1078. package/src/tab-panel/README.md +1 -1
  1079. package/src/text/hook.js +5 -3
  1080. package/src/text-highlight/README.md +6 -6
  1081. package/src/text-highlight/index.tsx +49 -0
  1082. package/src/text-highlight/stories/index.tsx +33 -0
  1083. package/src/text-highlight/test/index.tsx +93 -0
  1084. package/src/text-highlight/types.ts +16 -0
  1085. package/src/tip/index.tsx +22 -0
  1086. package/src/tip/stories/index.tsx +33 -0
  1087. package/src/tip/types.ts +11 -0
  1088. package/src/toggle-group-control/stories/index.js +19 -3
  1089. package/src/toggle-group-control/test/__snapshots__/index.js.snap +28 -4
  1090. package/src/toggle-group-control/toggle-group-control/component.tsx +3 -3
  1091. package/src/toggle-group-control/toggle-group-control/styles.ts +22 -2
  1092. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +0 -4
  1093. package/src/toggle-group-control/types.ts +6 -0
  1094. package/src/toolbar-group/index.js +1 -2
  1095. package/src/tools-panel/styles.ts +7 -16
  1096. package/src/tools-panel/test/__snapshots__/index.js.snap +2 -11
  1097. package/src/tools-panel/tools-panel/README.md +94 -21
  1098. package/src/tools-panel/tools-panel/hook.ts +6 -1
  1099. package/src/tooltip/index.js +56 -10
  1100. package/src/tooltip/stories/index.js +28 -13
  1101. package/src/tooltip/style.scss +1 -1
  1102. package/src/tree-select/index.tsx +7 -6
  1103. package/src/tree-select/types.ts +4 -0
  1104. package/src/ui/context/test/context-system-provider.js +101 -1
  1105. package/src/ui/context/use-context-system.js +7 -2
  1106. package/src/ui/form-group/types.ts +1 -1
  1107. package/src/ui/tooltip/styles.js +1 -0
  1108. package/src/ui/tooltip/test/__snapshots__/index.js.snap +1 -0
  1109. package/src/ui/utils/get-valid-children.ts +4 -2
  1110. package/src/ui/utils/space.ts +7 -1
  1111. package/src/unit-control/stories/index.tsx +16 -23
  1112. package/src/unit-control/styles/unit-control-styles.ts +100 -46
  1113. package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -4
  1114. package/src/unit-control/types.ts +2 -8
  1115. package/src/utils/base-label.ts +13 -0
  1116. package/src/utils/box-sizing.ts +14 -0
  1117. package/src/utils/style-mixins.js +2 -0
  1118. package/src/visually-hidden/{component.js → component.tsx} +23 -15
  1119. package/src/visually-hidden/{index.js → index.ts} +0 -0
  1120. package/src/visually-hidden/stories/index.tsx +66 -0
  1121. package/src/visually-hidden/{styles.js → styles.ts} +6 -2
  1122. package/src/visually-hidden/test/__snapshots__/{index.js.snap → index.tsx.snap} +0 -0
  1123. package/src/visually-hidden/test/index.tsx +17 -0
  1124. package/src/visually-hidden/types.ts +11 -0
  1125. package/tsconfig.json +3 -0
  1126. package/tsconfig.tsbuildinfo +1 -1
  1127. package/src/divider/test/index.js +0 -41
  1128. package/src/elevation/component.js +0 -43
  1129. package/src/elevation/stories/index.js +0 -148
  1130. package/src/elevation/test/index.js +0 -51
  1131. package/src/flex/flex/component.js +0 -60
  1132. package/src/flex/flex-block/component.js +0 -30
  1133. package/src/flex/flex-item/component.js +0 -30
  1134. package/src/flex/stories/index.js +0 -29
  1135. package/src/flex/test/index.js +0 -77
  1136. package/src/grid/stories/index.js +0 -49
  1137. package/src/h-stack/stories/index.js +0 -22
  1138. package/src/placeholder/stories/index.js +0 -44
  1139. package/src/popover/stories/_utils.js +0 -64
  1140. package/src/range-control/stories/index.js +0 -180
  1141. package/src/range-control/test/index.js +0 -320
  1142. package/src/range-control/utils.js +0 -131
  1143. package/src/scroll-lock/stories/index.js +0 -71
  1144. package/src/scroll-lock/test/index.js +0 -53
  1145. package/src/scrollable/test/index.js +0 -31
  1146. package/src/shortcut/index.js +0 -41
  1147. package/src/shortcut/test/index.js +0 -37
  1148. package/src/spacer/test/index.js +0 -146
  1149. package/src/style-provider/index.js +0 -31
  1150. package/src/text-highlight/index.js +0 -28
  1151. package/src/text-highlight/stories/index.js +0 -28
  1152. package/src/text-highlight/test/index.js +0 -120
  1153. package/src/tip/index.js +0 -24
  1154. package/src/tip/stories/index.js +0 -26
  1155. package/src/visually-hidden/stories/index.js +0 -42
  1156. package/src/visually-hidden/test/index.js +0 -19
@@ -9,14 +9,15 @@ import { createElement } from "@wordpress/element";
9
9
  * WordPress dependencies
10
10
  */
11
11
  import { useInstanceId } from '@wordpress/compose';
12
- import { forwardRef } from '@wordpress/element';
12
+ import { forwardRef, useMemo } from '@wordpress/element';
13
13
  /**
14
14
  * Internal dependencies
15
15
  */
16
16
 
17
17
  import Backdrop from './backdrop';
18
18
  import Label from './label';
19
- import { Container, Root, Prefix, Suffix, LabelWrapper } from './styles/input-control-styles';
19
+ import { Container, Root, Prefix, Suffix, LabelWrapper, getSizeConfig } from './styles/input-control-styles';
20
+ import { ContextSystemProvider } from '../ui/context';
20
21
 
21
22
  function useUniqueId(idProp) {
22
23
  const instanceId = useInstanceId(InputBase);
@@ -49,6 +50,7 @@ function getUIFlexProps(labelPosition) {
49
50
 
50
51
  export function InputBase(_ref, ref) {
51
52
  let {
53
+ __next36pxDefaultSize,
52
54
  __unstableInputWidth,
53
55
  children,
54
56
  className,
@@ -65,6 +67,23 @@ export function InputBase(_ref, ref) {
65
67
  } = _ref;
66
68
  const id = useUniqueId(idProp);
67
69
  const hideLabel = hideLabelFromVision || !label;
70
+ const {
71
+ paddingLeft,
72
+ paddingRight
73
+ } = getSizeConfig({
74
+ inputSize: size,
75
+ __next36pxDefaultSize
76
+ });
77
+ const prefixSuffixContextValue = useMemo(() => {
78
+ return {
79
+ InputControlPrefixWrapper: {
80
+ paddingLeft
81
+ },
82
+ InputControlSuffixWrapper: {
83
+ paddingRight
84
+ }
85
+ };
86
+ }, [paddingLeft, paddingRight]);
68
87
  return (// @ts-expect-error The `direction` prop from Flex (FlexDirection) conflicts with legacy SVGAttributes `direction` (string) that come from React intrinsic prop definitions.
69
88
  createElement(Root, _extends({}, props, getUIFlexProps(labelPosition), {
70
89
  className: className,
@@ -75,19 +94,20 @@ export function InputBase(_ref, ref) {
75
94
  className: "components-input-control__label",
76
95
  hideLabelFromVision: hideLabelFromVision,
77
96
  labelPosition: labelPosition,
78
- htmlFor: id,
79
- size: size
97
+ htmlFor: id
80
98
  }, label)), createElement(Container, {
81
99
  __unstableInputWidth: __unstableInputWidth,
82
100
  className: "components-input-control__container",
83
101
  disabled: disabled,
84
102
  hideLabel: hideLabel,
85
103
  labelPosition: labelPosition
104
+ }, createElement(ContextSystemProvider, {
105
+ value: prefixSuffixContextValue
86
106
  }, prefix && createElement(Prefix, {
87
107
  className: "components-input-control__prefix"
88
108
  }, prefix), children, suffix && createElement(Suffix, {
89
109
  className: "components-input-control__suffix"
90
- }, suffix), createElement(Backdrop, {
110
+ }, suffix)), createElement(Backdrop, {
91
111
  disabled: disabled,
92
112
  isFocused: isFocused
93
113
  })))
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/input-base.tsx"],"names":["useInstanceId","forwardRef","Backdrop","Label","Container","Root","Prefix","Suffix","LabelWrapper","useUniqueId","idProp","instanceId","InputBase","id","getUIFlexProps","labelPosition","props","direction","gap","justify","ref","__unstableInputWidth","children","className","disabled","hideLabelFromVision","isFocused","label","prefix","size","suffix","hideLabel"],"mappings":";;;AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,oBAA9B;AACA,SAASC,UAAT,QAA2B,oBAA3B;AAEA;AACA;AACA;;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,OAAOC,KAAP,MAAkB,SAAlB;AACA,SACCC,SADD,EAECC,IAFD,EAGCC,MAHD,EAICC,MAJD,EAKCC,YALD,QAMO,+BANP;;AASA,SAASC,WAAT,CAAsBC,MAAtB,EAAwC;AACvC,QAAMC,UAAU,GAAGX,aAAa,CAAEY,SAAF,CAAhC;AACA,QAAMC,EAAE,GAAI,sBAAsBF,UAAY,EAA9C;AAEA,SAAOD,MAAM,IAAIG,EAAjB;AACA,C,CAED;;;AACA,SAASC,cAAT,CAAyBC,aAAzB,EAAyD;AACxD,QAAMC,KAA6D,GAAG,EAAtE;;AACA,UAASD,aAAT;AACC,SAAK,KAAL;AACCC,MAAAA,KAAK,CAACC,SAAN,GAAkB,QAAlB;AACAD,MAAAA,KAAK,CAACE,GAAN,GAAY,CAAZ;AACA;;AACD,SAAK,QAAL;AACCF,MAAAA,KAAK,CAACC,SAAN,GAAkB,gBAAlB;AACAD,MAAAA,KAAK,CAACE,GAAN,GAAY,CAAZ;AACA;;AACD,SAAK,MAAL;AACCF,MAAAA,KAAK,CAACG,OAAN,GAAgB,eAAhB;AACA;AAXF;;AAcA,SAAOH,KAAP;AACA;;AAED,OAAO,SAASJ,SAAT,OAgBNQ,GAhBM,EAiBL;AAAA,MAhBD;AACCC,IAAAA,oBADD;AAECC,IAAAA,QAFD;AAGCC,IAAAA,SAHD;AAICC,IAAAA,QAAQ,GAAG,KAJZ;AAKCC,IAAAA,mBAAmB,GAAG,KALvB;AAMCV,IAAAA,aAND;AAOCF,IAAAA,EAAE,EAAEH,MAPL;AAQCgB,IAAAA,SAAS,GAAG,KARb;AASCC,IAAAA,KATD;AAUCC,IAAAA,MAVD;AAWCC,IAAAA,IAAI,GAAG,SAXR;AAYCC,IAAAA,MAZD;AAaC,OAAGd;AAbJ,GAgBC;AACD,QAAMH,EAAE,GAAGJ,WAAW,CAAEC,MAAF,CAAtB;AACA,QAAMqB,SAAS,GAAGN,mBAAmB,IAAI,CAAEE,KAA3C;AAEA,SACC;AACA,kBAAC,IAAD,eACMX,KADN,EAEMF,cAAc,CAAEC,aAAF,CAFpB;AAGC,MAAA,SAAS,EAAGQ,SAHb;AAIC,MAAA,SAAS,EAAGG,SAJb;AAKC,MAAA,aAAa,EAAGX,aALjB;AAMC,MAAA,GAAG,EAAGK;AANP,QAQC,cAAC,YAAD,QACC,cAAC,KAAD;AACC,MAAA,SAAS,EAAC,iCADX;AAEC,MAAA,mBAAmB,EAAGK,mBAFvB;AAGC,MAAA,aAAa,EAAGV,aAHjB;AAIC,MAAA,OAAO,EAAGF,EAJX;AAKC,MAAA,IAAI,EAAGgB;AALR,OAOGF,KAPH,CADD,CARD,EAmBC,cAAC,SAAD;AACC,MAAA,oBAAoB,EAAGN,oBADxB;AAEC,MAAA,SAAS,EAAC,qCAFX;AAGC,MAAA,QAAQ,EAAGG,QAHZ;AAIC,MAAA,SAAS,EAAGO,SAJb;AAKC,MAAA,aAAa,EAAGhB;AALjB,OAOGa,MAAM,IACP,cAAC,MAAD;AAAQ,MAAA,SAAS,EAAC;AAAlB,OACGA,MADH,CARF,EAYGN,QAZH,EAaGQ,MAAM,IACP,cAAC,MAAD;AAAQ,MAAA,SAAS,EAAC;AAAlB,OACGA,MADH,CAdF,EAkBC,cAAC,QAAD;AAAU,MAAA,QAAQ,EAAGN,QAArB;AAAgC,MAAA,SAAS,EAAGE;AAA5C,MAlBD,CAnBD;AAFD;AA2CA;AAED,eAAezB,UAAU,CAAEW,SAAF,CAAzB","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Backdrop from './backdrop';\nimport Label from './label';\nimport {\n\tContainer,\n\tRoot,\n\tPrefix,\n\tSuffix,\n\tLabelWrapper,\n} from './styles/input-control-styles';\nimport type { InputBaseProps, LabelPosition } from './types';\n\nfunction useUniqueId( idProp?: string ) {\n\tconst instanceId = useInstanceId( InputBase );\n\tconst id = `input-base-control-${ instanceId }`;\n\n\treturn idProp || id;\n}\n\n// Adapter to map props for the new ui/flex compopnent.\nfunction getUIFlexProps( labelPosition?: LabelPosition ) {\n\tconst props: { direction?: string; gap?: number; justify?: string } = {};\n\tswitch ( labelPosition ) {\n\t\tcase 'top':\n\t\t\tprops.direction = 'column';\n\t\t\tprops.gap = 0;\n\t\t\tbreak;\n\t\tcase 'bottom':\n\t\t\tprops.direction = 'column-reverse';\n\t\t\tprops.gap = 0;\n\t\t\tbreak;\n\t\tcase 'edge':\n\t\t\tprops.justify = 'space-between';\n\t\t\tbreak;\n\t}\n\n\treturn props;\n}\n\nexport function InputBase(\n\t{\n\t\t__unstableInputWidth,\n\t\tchildren,\n\t\tclassName,\n\t\tdisabled = false,\n\t\thideLabelFromVision = false,\n\t\tlabelPosition,\n\t\tid: idProp,\n\t\tisFocused = false,\n\t\tlabel,\n\t\tprefix,\n\t\tsize = 'default',\n\t\tsuffix,\n\t\t...props\n\t}: InputBaseProps,\n\tref: ForwardedRef< HTMLDivElement >\n) {\n\tconst id = useUniqueId( idProp );\n\tconst hideLabel = hideLabelFromVision || ! label;\n\n\treturn (\n\t\t// @ts-expect-error The `direction` prop from Flex (FlexDirection) conflicts with legacy SVGAttributes `direction` (string) that come from React intrinsic prop definitions.\n\t\t<Root\n\t\t\t{ ...props }\n\t\t\t{ ...getUIFlexProps( labelPosition ) }\n\t\t\tclassName={ className }\n\t\t\tisFocused={ isFocused }\n\t\t\tlabelPosition={ labelPosition }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<LabelWrapper>\n\t\t\t\t<Label\n\t\t\t\t\tclassName=\"components-input-control__label\"\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tlabelPosition={ labelPosition }\n\t\t\t\t\thtmlFor={ id }\n\t\t\t\t\tsize={ size }\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</Label>\n\t\t\t</LabelWrapper>\n\t\t\t<Container\n\t\t\t\t__unstableInputWidth={ __unstableInputWidth }\n\t\t\t\tclassName=\"components-input-control__container\"\n\t\t\t\tdisabled={ disabled }\n\t\t\t\thideLabel={ hideLabel }\n\t\t\t\tlabelPosition={ labelPosition }\n\t\t\t>\n\t\t\t\t{ prefix && (\n\t\t\t\t\t<Prefix className=\"components-input-control__prefix\">\n\t\t\t\t\t\t{ prefix }\n\t\t\t\t\t</Prefix>\n\t\t\t\t) }\n\t\t\t\t{ children }\n\t\t\t\t{ suffix && (\n\t\t\t\t\t<Suffix className=\"components-input-control__suffix\">\n\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t</Suffix>\n\t\t\t\t) }\n\t\t\t\t<Backdrop disabled={ disabled } isFocused={ isFocused } />\n\t\t\t</Container>\n\t\t</Root>\n\t);\n}\n\nexport default forwardRef( InputBase );\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/input-base.tsx"],"names":["useInstanceId","forwardRef","useMemo","Backdrop","Label","Container","Root","Prefix","Suffix","LabelWrapper","getSizeConfig","ContextSystemProvider","useUniqueId","idProp","instanceId","InputBase","id","getUIFlexProps","labelPosition","props","direction","gap","justify","ref","__next36pxDefaultSize","__unstableInputWidth","children","className","disabled","hideLabelFromVision","isFocused","label","prefix","size","suffix","hideLabel","paddingLeft","paddingRight","inputSize","prefixSuffixContextValue","InputControlPrefixWrapper","InputControlSuffixWrapper"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Backdrop from './backdrop';\nimport Label from './label';\nimport {\n\tContainer,\n\tRoot,\n\tPrefix,\n\tSuffix,\n\tLabelWrapper,\n\tgetSizeConfig,\n} from './styles/input-control-styles';\nimport type { InputBaseProps, LabelPosition } from './types';\nimport { ContextSystemProvider } from '../ui/context';\n\nfunction useUniqueId( idProp?: string ) {\n\tconst instanceId = useInstanceId( InputBase );\n\tconst id = `input-base-control-${ instanceId }`;\n\n\treturn idProp || id;\n}\n\n// Adapter to map props for the new ui/flex compopnent.\nfunction getUIFlexProps( labelPosition?: LabelPosition ) {\n\tconst props: { direction?: string; gap?: number; justify?: string } = {};\n\tswitch ( labelPosition ) {\n\t\tcase 'top':\n\t\t\tprops.direction = 'column';\n\t\t\tprops.gap = 0;\n\t\t\tbreak;\n\t\tcase 'bottom':\n\t\t\tprops.direction = 'column-reverse';\n\t\t\tprops.gap = 0;\n\t\t\tbreak;\n\t\tcase 'edge':\n\t\t\tprops.justify = 'space-between';\n\t\t\tbreak;\n\t}\n\n\treturn props;\n}\n\nexport function InputBase(\n\t{\n\t\t__next36pxDefaultSize,\n\t\t__unstableInputWidth,\n\t\tchildren,\n\t\tclassName,\n\t\tdisabled = false,\n\t\thideLabelFromVision = false,\n\t\tlabelPosition,\n\t\tid: idProp,\n\t\tisFocused = false,\n\t\tlabel,\n\t\tprefix,\n\t\tsize = 'default',\n\t\tsuffix,\n\t\t...props\n\t}: InputBaseProps,\n\tref: ForwardedRef< HTMLDivElement >\n) {\n\tconst id = useUniqueId( idProp );\n\tconst hideLabel = hideLabelFromVision || ! label;\n\n\tconst { paddingLeft, paddingRight } = getSizeConfig( {\n\t\tinputSize: size,\n\t\t__next36pxDefaultSize,\n\t} );\n\tconst prefixSuffixContextValue = useMemo( () => {\n\t\treturn {\n\t\t\tInputControlPrefixWrapper: { paddingLeft },\n\t\t\tInputControlSuffixWrapper: { paddingRight },\n\t\t};\n\t}, [ paddingLeft, paddingRight ] );\n\n\treturn (\n\t\t// @ts-expect-error The `direction` prop from Flex (FlexDirection) conflicts with legacy SVGAttributes `direction` (string) that come from React intrinsic prop definitions.\n\t\t<Root\n\t\t\t{ ...props }\n\t\t\t{ ...getUIFlexProps( labelPosition ) }\n\t\t\tclassName={ className }\n\t\t\tisFocused={ isFocused }\n\t\t\tlabelPosition={ labelPosition }\n\t\t\tref={ ref }\n\t\t>\n\t\t\t<LabelWrapper>\n\t\t\t\t<Label\n\t\t\t\t\tclassName=\"components-input-control__label\"\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t\tlabelPosition={ labelPosition }\n\t\t\t\t\thtmlFor={ id }\n\t\t\t\t>\n\t\t\t\t\t{ label }\n\t\t\t\t</Label>\n\t\t\t</LabelWrapper>\n\t\t\t<Container\n\t\t\t\t__unstableInputWidth={ __unstableInputWidth }\n\t\t\t\tclassName=\"components-input-control__container\"\n\t\t\t\tdisabled={ disabled }\n\t\t\t\thideLabel={ hideLabel }\n\t\t\t\tlabelPosition={ labelPosition }\n\t\t\t>\n\t\t\t\t<ContextSystemProvider value={ prefixSuffixContextValue }>\n\t\t\t\t\t{ prefix && (\n\t\t\t\t\t\t<Prefix className=\"components-input-control__prefix\">\n\t\t\t\t\t\t\t{ prefix }\n\t\t\t\t\t\t</Prefix>\n\t\t\t\t\t) }\n\t\t\t\t\t{ children }\n\t\t\t\t\t{ suffix && (\n\t\t\t\t\t\t<Suffix className=\"components-input-control__suffix\">\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</Suffix>\n\t\t\t\t\t) }\n\t\t\t\t</ContextSystemProvider>\n\t\t\t\t<Backdrop disabled={ disabled } isFocused={ isFocused } />\n\t\t\t</Container>\n\t\t</Root>\n\t);\n}\n\nexport default forwardRef( InputBase );\n"]}
@@ -0,0 +1,41 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { createElement } from "@wordpress/element";
3
+
4
+ /**
5
+ * External dependencies
6
+ */
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { Spacer } from '../spacer';
12
+ import { contextConnect, useContextSystem } from '../ui/context';
13
+
14
+ function UnconnectedInputControlPrefixWrapper(props, forwardedRef) {
15
+ const derivedProps = useContextSystem(props, 'InputControlPrefixWrapper');
16
+ return createElement(Spacer, _extends({
17
+ marginBottom: 0
18
+ }, derivedProps, {
19
+ ref: forwardedRef
20
+ }));
21
+ }
22
+ /**
23
+ * A convenience wrapper for the `prefix` when you want to apply
24
+ * standard padding in accordance with the size variant.
25
+ *
26
+ * ```jsx
27
+ * import {
28
+ * __experimentalInputControl as InputControl,
29
+ * __experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,
30
+ * } from '@wordpress/components';
31
+ *
32
+ * <InputControl
33
+ * prefix={<InputControlPrefixWrapper>@</InputControlPrefixWrapper>}
34
+ * />
35
+ * ```
36
+ */
37
+
38
+
39
+ export const InputControlPrefixWrapper = contextConnect(UnconnectedInputControlPrefixWrapper, 'InputControlPrefixWrapper');
40
+ export default InputControlPrefixWrapper;
41
+ //# sourceMappingURL=input-prefix-wrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/input-prefix-wrapper.tsx"],"names":["Spacer","contextConnect","useContextSystem","UnconnectedInputControlPrefixWrapper","props","forwardedRef","derivedProps","InputControlPrefixWrapper"],"mappings":";;;AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,MAAT,QAAuB,WAAvB;AACA,SAECC,cAFD,EAGCC,gBAHD,QAIO,eAJP;;AAOA,SAASC,oCAAT,CACCC,KADD,EAECC,YAFD,EAGE;AACD,QAAMC,YAAY,GAAGJ,gBAAgB,CAAEE,KAAF,EAAS,2BAAT,CAArC;AAEA,SACC,cAAC,MAAD;AAAQ,IAAA,YAAY,EAAG;AAAvB,KAAgCE,YAAhC;AAA+C,IAAA,GAAG,EAAGD;AAArD,KADD;AAGA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAME,yBAAyB,GAAGN,cAAc,CACtDE,oCADsD,EAEtD,2BAFsD,CAAhD;AAKP,eAAeI,yBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport { Spacer } from '../spacer';\nimport {\n\tWordPressComponentProps,\n\tcontextConnect,\n\tuseContextSystem,\n} from '../ui/context';\nimport type { InputControlPrefixWrapperProps } from './types';\n\nfunction UnconnectedInputControlPrefixWrapper(\n\tprops: WordPressComponentProps< InputControlPrefixWrapperProps, 'div' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst derivedProps = useContextSystem( props, 'InputControlPrefixWrapper' );\n\n\treturn (\n\t\t<Spacer marginBottom={ 0 } { ...derivedProps } ref={ forwardedRef } />\n\t);\n}\n\n/**\n * A convenience wrapper for the `prefix` when you want to apply\n * standard padding in accordance with the size variant.\n *\n * ```jsx\n * import {\n * __experimentalInputControl as InputControl,\n * __experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n * } from '@wordpress/components';\n *\n * <InputControl\n * prefix={<InputControlPrefixWrapper>@</InputControlPrefixWrapper>}\n * />\n * ```\n */\nexport const InputControlPrefixWrapper = contextConnect(\n\tUnconnectedInputControlPrefixWrapper,\n\t'InputControlPrefixWrapper'\n);\n\nexport default InputControlPrefixWrapper;\n"]}
@@ -0,0 +1,41 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { createElement } from "@wordpress/element";
3
+
4
+ /**
5
+ * External dependencies
6
+ */
7
+
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+ import { Spacer } from '../spacer';
12
+ import { contextConnect, useContextSystem } from '../ui/context';
13
+
14
+ function UnconnectedInputControlSuffixWrapper(props, forwardedRef) {
15
+ const derivedProps = useContextSystem(props, 'InputControlSuffixWrapper');
16
+ return createElement(Spacer, _extends({
17
+ marginBottom: 0
18
+ }, derivedProps, {
19
+ ref: forwardedRef
20
+ }));
21
+ }
22
+ /**
23
+ * A convenience wrapper for the `suffix` when you want to apply
24
+ * standard padding in accordance with the size variant.
25
+ *
26
+ * ```jsx
27
+ * import {
28
+ * __experimentalInputControl as InputControl,
29
+ * __experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,
30
+ * } from '@wordpress/components';
31
+ *
32
+ * <InputControl
33
+ * suffix={<InputControlSuffixWrapper>%</InputControlSuffixWrapper>}
34
+ * />
35
+ * ```
36
+ */
37
+
38
+
39
+ export const InputControlSuffixWrapper = contextConnect(UnconnectedInputControlSuffixWrapper, 'InputControlSuffixWrapper');
40
+ export default InputControlSuffixWrapper;
41
+ //# sourceMappingURL=input-suffix-wrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/input-suffix-wrapper.tsx"],"names":["Spacer","contextConnect","useContextSystem","UnconnectedInputControlSuffixWrapper","props","forwardedRef","derivedProps","InputControlSuffixWrapper"],"mappings":";;;AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,MAAT,QAAuB,WAAvB;AACA,SAECC,cAFD,EAGCC,gBAHD,QAIO,eAJP;;AAOA,SAASC,oCAAT,CACCC,KADD,EAECC,YAFD,EAGE;AACD,QAAMC,YAAY,GAAGJ,gBAAgB,CAAEE,KAAF,EAAS,2BAAT,CAArC;AAEA,SACC,cAAC,MAAD;AAAQ,IAAA,YAAY,EAAG;AAAvB,KAAgCE,YAAhC;AAA+C,IAAA,GAAG,EAAGD;AAArD,KADD;AAGA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAME,yBAAyB,GAAGN,cAAc,CACtDE,oCADsD,EAEtD,2BAFsD,CAAhD;AAKP,eAAeI,yBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport { Spacer } from '../spacer';\nimport {\n\tWordPressComponentProps,\n\tcontextConnect,\n\tuseContextSystem,\n} from '../ui/context';\nimport type { InputControlSuffixWrapperProps } from './types';\n\nfunction UnconnectedInputControlSuffixWrapper(\n\tprops: WordPressComponentProps< InputControlSuffixWrapperProps, 'div' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst derivedProps = useContextSystem( props, 'InputControlSuffixWrapper' );\n\n\treturn (\n\t\t<Spacer marginBottom={ 0 } { ...derivedProps } ref={ forwardedRef } />\n\t);\n}\n\n/**\n * A convenience wrapper for the `suffix` when you want to apply\n * standard padding in accordance with the size variant.\n *\n * ```jsx\n * import {\n * __experimentalInputControl as InputControl,\n * __experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,\n * } from '@wordpress/components';\n *\n * <InputControl\n * suffix={<InputControlSuffixWrapper>%</InputControlSuffixWrapper>}\n * />\n * ```\n */\nexport const InputControlSuffixWrapper = contextConnect(\n\tUnconnectedInputControlSuffixWrapper,\n\t'InputControlSuffixWrapper'\n);\n\nexport default InputControlSuffixWrapper;\n"]}
@@ -7,6 +7,7 @@
7
7
  */
8
8
  export const CHANGE = 'CHANGE';
9
9
  export const COMMIT = 'COMMIT';
10
+ export const CONTROL = 'CONTROL';
10
11
  export const DRAG_END = 'DRAG_END';
11
12
  export const DRAG_START = 'DRAG_START';
12
13
  export const DRAG = 'DRAG';
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/actions.ts"],"names":["CHANGE","COMMIT","DRAG_END","DRAG_START","DRAG","INVALIDATE","PRESS_DOWN","PRESS_ENTER","PRESS_UP","RESET"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAGA,OAAO,MAAMA,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,IAAI,GAAG,MAAb;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,KAAK,GAAG,OAAd","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { DragProps } from '../types';\n\nexport const CHANGE = 'CHANGE';\nexport const COMMIT = 'COMMIT';\nexport const DRAG_END = 'DRAG_END';\nexport const DRAG_START = 'DRAG_START';\nexport const DRAG = 'DRAG';\nexport const INVALIDATE = 'INVALIDATE';\nexport const PRESS_DOWN = 'PRESS_DOWN';\nexport const PRESS_ENTER = 'PRESS_ENTER';\nexport const PRESS_UP = 'PRESS_UP';\nexport const RESET = 'RESET';\n\ninterface EventPayload {\n\tevent?: SyntheticEvent;\n}\n\ninterface Action< Type, ExtraPayload = {} > {\n\ttype: Type;\n\tpayload: EventPayload & ExtraPayload;\n}\n\ninterface ValuePayload {\n\tvalue: string;\n}\n\nexport type ChangeAction = Action< typeof CHANGE, ValuePayload >;\nexport type CommitAction = Action< typeof COMMIT, ValuePayload >;\nexport type PressUpAction = Action< typeof PRESS_UP >;\nexport type PressDownAction = Action< typeof PRESS_DOWN >;\nexport type PressEnterAction = Action< typeof PRESS_ENTER >;\nexport type DragStartAction = Action< typeof DRAG_START, DragProps >;\nexport type DragEndAction = Action< typeof DRAG_END, DragProps >;\nexport type DragAction = Action< typeof DRAG, DragProps >;\nexport type ResetAction = Action< typeof RESET, Partial< ValuePayload > >;\nexport type InvalidateAction = Action< typeof INVALIDATE, { error: unknown } >;\n\nexport type ChangeEventAction = ChangeAction | ResetAction | CommitAction;\n\nexport type DragEventAction = DragStartAction | DragEndAction | DragAction;\n\nexport type KeyEventAction = PressDownAction | PressUpAction | PressEnterAction;\n\nexport type InputAction =\n\t| ChangeEventAction\n\t| KeyEventAction\n\t| DragEventAction\n\t| InvalidateAction;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/actions.ts"],"names":["CHANGE","COMMIT","CONTROL","DRAG_END","DRAG_START","DRAG","INVALIDATE","PRESS_DOWN","PRESS_ENTER","PRESS_UP","RESET"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAGA,OAAO,MAAMA,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf;AACP,OAAO,MAAMC,OAAO,GAAG,SAAhB;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,IAAI,GAAG,MAAb;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,UAAU,GAAG,YAAnB;AACP,OAAO,MAAMC,WAAW,GAAG,aAApB;AACP,OAAO,MAAMC,QAAQ,GAAG,UAAjB;AACP,OAAO,MAAMC,KAAK,GAAG,OAAd","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { DragProps } from '../types';\n\nexport const CHANGE = 'CHANGE';\nexport const COMMIT = 'COMMIT';\nexport const CONTROL = 'CONTROL';\nexport const DRAG_END = 'DRAG_END';\nexport const DRAG_START = 'DRAG_START';\nexport const DRAG = 'DRAG';\nexport const INVALIDATE = 'INVALIDATE';\nexport const PRESS_DOWN = 'PRESS_DOWN';\nexport const PRESS_ENTER = 'PRESS_ENTER';\nexport const PRESS_UP = 'PRESS_UP';\nexport const RESET = 'RESET';\n\ninterface EventPayload {\n\tevent?: SyntheticEvent;\n}\n\nexport interface Action< Type = string, ExtraPayload = {} > {\n\ttype: Type;\n\tpayload: EventPayload & ExtraPayload;\n}\n\ninterface ValuePayload {\n\tvalue: string;\n}\n\nexport type ChangeAction = Action< typeof CHANGE, ValuePayload >;\nexport type CommitAction = Action< typeof COMMIT, ValuePayload >;\nexport type ControlAction = Action< typeof CONTROL, ValuePayload >;\nexport type PressUpAction = Action< typeof PRESS_UP >;\nexport type PressDownAction = Action< typeof PRESS_DOWN >;\nexport type PressEnterAction = Action< typeof PRESS_ENTER >;\nexport type DragStartAction = Action< typeof DRAG_START, DragProps >;\nexport type DragEndAction = Action< typeof DRAG_END, DragProps >;\nexport type DragAction = Action< typeof DRAG, DragProps >;\nexport type ResetAction = Action< typeof RESET, Partial< ValuePayload > >;\nexport type InvalidateAction = Action< typeof INVALIDATE, { error: unknown } >;\n\nexport type ChangeEventAction = ChangeAction | ResetAction | CommitAction;\n\nexport type DragEventAction = DragStartAction | DragEndAction | DragAction;\n\nexport type KeyEventAction = PressDownAction | PressUpAction | PressEnterAction;\n\nexport type InputAction =\n\t| ChangeEventAction\n\t| KeyEventAction\n\t| DragEventAction\n\t| InvalidateAction;\n"]}
@@ -30,13 +30,13 @@ function mergeInitialState() {
30
30
  };
31
31
  }
32
32
  /**
33
- * Creates a reducer that opens the channel for external state subscription
34
- * and modification.
33
+ * Creates the base reducer which may be coupled to a specializing reducer.
34
+ * As its final step, for all actions other than CONTROL, the base reducer
35
+ * passes the state and action on through the specializing reducer. The
36
+ * exception for CONTROL actions is because they represent controlled updates
37
+ * from props and no case has yet presented for their specialization.
35
38
  *
36
- * This technique uses the "stateReducer" design pattern:
37
- * https://kentcdodds.com/blog/the-state-reducer-pattern/
38
- *
39
- * @param composedStateReducers A custom reducer that can subscribe and modify state.
39
+ * @param composedStateReducers A reducer to specialize state changes.
40
40
  * @return The reducer.
41
41
  */
42
42
 
@@ -47,9 +47,20 @@ function inputControlStateReducer(composedStateReducers) {
47
47
  };
48
48
 
49
49
  switch (action.type) {
50
+ /*
51
+ * Controlled updates
52
+ */
53
+ case actions.CONTROL:
54
+ nextState.value = action.payload.value;
55
+ nextState.isDirty = false;
56
+ nextState._event = undefined; // Returns immediately to avoid invoking additional reducers.
57
+
58
+ return nextState;
59
+
50
60
  /**
51
61
  * Keyboard events
52
62
  */
63
+
53
64
  case actions.PRESS_UP:
54
65
  nextState.isDirty = false;
55
66
  break;
@@ -189,14 +200,17 @@ export function useInputControlStateReducer() {
189
200
  const refProps = useRef({
190
201
  value: initialState.value,
191
202
  onChangeHandler
192
- });
203
+ }); // Freshens refs to props and state so that subsequent effects have access
204
+ // to their latest values without their changes causing effect runs.
205
+
193
206
  useLayoutEffect(() => {
194
207
  currentState.current = state;
195
208
  refProps.current = {
196
209
  value: initialState.value,
197
210
  onChangeHandler
198
211
  };
199
- });
212
+ }); // Propagates the latest state through onChange.
213
+
200
214
  useLayoutEffect(() => {
201
215
  if (currentState.current._event !== undefined && state.value !== refProps.current.value && !state.isDirty) {
202
216
  var _state$value;
@@ -205,13 +219,16 @@ export function useInputControlStateReducer() {
205
219
  event: currentState.current._event
206
220
  });
207
221
  }
208
- }, [state.value, state.isDirty]);
222
+ }, [state.value, state.isDirty]); // Updates the state from props.
223
+
209
224
  useLayoutEffect(() => {
210
225
  if (initialState.value !== currentState.current.value && !currentState.current.isDirty) {
226
+ var _initialState$value;
227
+
211
228
  dispatch({
212
- type: actions.RESET,
229
+ type: actions.CONTROL,
213
230
  payload: {
214
- value: initialState.value
231
+ value: (_initialState$value = initialState.value) !== null && _initialState$value !== void 0 ? _initialState$value : ''
215
232
  }
216
233
  });
217
234
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["useReducer","useLayoutEffect","useRef","initialInputControlState","initialStateReducer","actions","mergeInitialState","initialState","value","initialValue","inputControlStateReducer","composedStateReducers","state","action","nextState","type","PRESS_UP","isDirty","PRESS_DOWN","DRAG_START","isDragging","DRAG_END","CHANGE","error","payload","isPressEnterToChange","COMMIT","RESET","INVALIDATE","_event","event","useInputControlStateReducer","stateReducer","onChangeHandler","dispatch","createChangeEvent","nextValue","createKeyEvent","createDragEvent","change","invalidate","reset","commit","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER","currentState","refProps","current","undefined"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AACA,SAASA,UAAT,EAAqBC,eAArB,EAAsCC,MAAtC,QAAoD,oBAApD;AAEA;AACA;AACA;;AACA,SAGCC,wBAHD,EAICC,mBAJD,QAKO,SALP;AAMA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,iBAAT,GAEc;AAAA,MADbC,YACa,uEADyBJ,wBACzB;AACb,QAAM;AAAEK,IAAAA;AAAF,MAAYD,YAAlB;AAEA,SAAO,EACN,GAAGJ,wBADG;AAEN,OAAGI,YAFG;AAGNE,IAAAA,YAAY,EAAED;AAHR,GAAP;AAKA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,SAASE,wBAAT,CACCC,qBADD,EAEgB;AACf,SAAO,CAAEC,KAAF,EAASC,MAAT,KAAqB;AAC3B,UAAMC,SAAS,GAAG,EAAE,GAAGF;AAAL,KAAlB;;AAEA,YAASC,MAAM,CAACE,IAAhB;AACC;AACH;AACA;AACG,WAAKV,OAAO,CAACW,QAAb;AACCF,QAAAA,SAAS,CAACG,OAAV,GAAoB,KAApB;AACA;;AAED,WAAKZ,OAAO,CAACa,UAAb;AACCJ,QAAAA,SAAS,CAACG,OAAV,GAAoB,KAApB;AACA;;AAED;AACH;AACA;;AACG,WAAKZ,OAAO,CAACc,UAAb;AACCL,QAAAA,SAAS,CAACM,UAAV,GAAuB,IAAvB;AACA;;AAED,WAAKf,OAAO,CAACgB,QAAb;AACCP,QAAAA,SAAS,CAACM,UAAV,GAAuB,KAAvB;AACA;;AAED;AACH;AACA;;AACG,WAAKf,OAAO,CAACiB,MAAb;AACCR,QAAAA,SAAS,CAACS,KAAV,GAAkB,IAAlB;AACAT,QAAAA,SAAS,CAACN,KAAV,GAAkBK,MAAM,CAACW,OAAP,CAAehB,KAAjC;;AAEA,YAAKI,KAAK,CAACa,oBAAX,EAAkC;AACjCX,UAAAA,SAAS,CAACG,OAAV,GAAoB,IAApB;AACA;;AAED;;AAED,WAAKZ,OAAO,CAACqB,MAAb;AACCZ,QAAAA,SAAS,CAACN,KAAV,GAAkBK,MAAM,CAACW,OAAP,CAAehB,KAAjC;AACAM,QAAAA,SAAS,CAACG,OAAV,GAAoB,KAApB;AACA;;AAED,WAAKZ,OAAO,CAACsB,KAAb;AACCb,QAAAA,SAAS,CAACS,KAAV,GAAkB,IAAlB;AACAT,QAAAA,SAAS,CAACG,OAAV,GAAoB,KAApB;AACAH,QAAAA,SAAS,CAACN,KAAV,GAAkBK,MAAM,CAACW,OAAP,CAAehB,KAAf,IAAwBI,KAAK,CAACH,YAAhD;AACA;;AAED;AACH;AACA;;AACG,WAAKJ,OAAO,CAACuB,UAAb;AACCd,QAAAA,SAAS,CAACS,KAAV,GAAkBV,MAAM,CAACW,OAAP,CAAeD,KAAjC;AACA;AApDF;;AAuDAT,IAAAA,SAAS,CAACe,MAAV,GAAmBhB,MAAM,CAACW,OAAP,CAAeM,KAAlC;AAEA;AACF;AACA;AACA;AACA;;AACE,WAAOnB,qBAAqB,CAAEG,SAAF,EAAaD,MAAb,CAA5B;AACA,GAlED;AAmEA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,SAASkB,2BAAT,GAIL;AAAA,MAHDC,YAGC,uEAH4B5B,mBAG5B;AAAA,MAFDG,YAEC,uEAFqCJ,wBAErC;AAAA,MADD8B,eACC;AACD,QAAM,CAAErB,KAAF,EAASsB,QAAT,IAAsBlC,UAAU,CACrCU,wBAAwB,CAAEsB,YAAF,CADa,EAErC1B,iBAAiB,CAAEC,YAAF,CAFoB,CAAtC;;AAKA,QAAM4B,iBAAiB,GACpBpB,IAAF,IACA,CACCqB,SADD,EAECN,KAFD,KAGK;AACJI,IAAAA,QAAQ,CAAE;AACTnB,MAAAA,IADS;AAETS,MAAAA,OAAO,EAAE;AAAEhB,QAAAA,KAAK,EAAE4B,SAAT;AAAoBN,QAAAA;AAApB;AAFA,KAAF,CAAR;AAIA,GAVF;;AAYA,QAAMO,cAAc,GACjBtB,IAAF,IACEe,KAAF,IAA6D;AAC5DI,IAAAA,QAAQ,CAAE;AAAEnB,MAAAA,IAAF;AAAQS,MAAAA,OAAO,EAAE;AAAEM,QAAAA;AAAF;AAAjB,KAAF,CAAR;AACA,GAJF;;AAMA,QAAMQ,eAAe,GAClBvB,IAAF,IACES,OAAF,IAAqD;AACpDU,IAAAA,QAAQ,CAAE;AAAEnB,MAAAA,IAAF;AAAQS,MAAAA;AAAR,KAAF,CAAR;AACA,GAJF;AAMA;AACD;AACA;;;AACC,QAAMe,MAAM,GAAGJ,iBAAiB,CAAE9B,OAAO,CAACiB,MAAV,CAAhC;;AACA,QAAMkB,UAAU,GAAG,CAAEjB,KAAF,EAAkBO,KAAlB,KAClBI,QAAQ,CAAE;AAAEnB,IAAAA,IAAI,EAAEV,OAAO,CAACuB,UAAhB;AAA4BJ,IAAAA,OAAO,EAAE;AAAED,MAAAA,KAAF;AAASO,MAAAA;AAAT;AAArC,GAAF,CADT;;AAEA,QAAMW,KAAK,GAAGN,iBAAiB,CAAE9B,OAAO,CAACsB,KAAV,CAA/B;AACA,QAAMe,MAAM,GAAGP,iBAAiB,CAAE9B,OAAO,CAACqB,MAAV,CAAhC;AAEA,QAAMiB,SAAS,GAAGL,eAAe,CAAEjC,OAAO,CAACc,UAAV,CAAjC;AACA,QAAMyB,IAAI,GAAGN,eAAe,CAAEjC,OAAO,CAACwC,IAAV,CAA5B;AACA,QAAMC,OAAO,GAAGR,eAAe,CAAEjC,OAAO,CAACgB,QAAV,CAA/B;AAEA,QAAM0B,OAAO,GAAGV,cAAc,CAAEhC,OAAO,CAACW,QAAV,CAA9B;AACA,QAAMgC,SAAS,GAAGX,cAAc,CAAEhC,OAAO,CAACa,UAAV,CAAhC;AACA,QAAM+B,UAAU,GAAGZ,cAAc,CAAEhC,OAAO,CAAC6C,WAAV,CAAjC;AAEA,QAAMC,YAAY,GAAGjD,MAAM,CAAEU,KAAF,CAA3B;AACA,QAAMwC,QAAQ,GAAGlD,MAAM,CAAE;AAAEM,IAAAA,KAAK,EAAED,YAAY,CAACC,KAAtB;AAA6ByB,IAAAA;AAA7B,GAAF,CAAvB;AACAhC,EAAAA,eAAe,CAAE,MAAM;AACtBkD,IAAAA,YAAY,CAACE,OAAb,GAAuBzC,KAAvB;AACAwC,IAAAA,QAAQ,CAACC,OAAT,GAAmB;AAAE7C,MAAAA,KAAK,EAAED,YAAY,CAACC,KAAtB;AAA6ByB,MAAAA;AAA7B,KAAnB;AACA,GAHc,CAAf;AAIAhC,EAAAA,eAAe,CAAE,MAAM;AACtB,QACCkD,YAAY,CAACE,OAAb,CAAqBxB,MAArB,KAAgCyB,SAAhC,IACA1C,KAAK,CAACJ,KAAN,KAAgB4C,QAAQ,CAACC,OAAT,CAAiB7C,KADjC,IAEA,CAAEI,KAAK,CAACK,OAHT,EAIE;AAAA;;AACDmC,MAAAA,QAAQ,CAACC,OAAT,CAAiBpB,eAAjB,iBAAkCrB,KAAK,CAACJ,KAAxC,uDAAiD,EAAjD,EAAqD;AACpDsB,QAAAA,KAAK,EAAEqB,YAAY,CAACE,OAAb,CAAqBxB;AADwB,OAArD;AAKA;AACD,GAZc,EAYZ,CAAEjB,KAAK,CAACJ,KAAR,EAAeI,KAAK,CAACK,OAArB,CAZY,CAAf;AAaAhB,EAAAA,eAAe,CAAE,MAAM;AACtB,QACCM,YAAY,CAACC,KAAb,KAAuB2C,YAAY,CAACE,OAAb,CAAqB7C,KAA5C,IACA,CAAE2C,YAAY,CAACE,OAAb,CAAqBpC,OAFxB,EAGE;AACDiB,MAAAA,QAAQ,CAAE;AACTnB,QAAAA,IAAI,EAAEV,OAAO,CAACsB,KADL;AAETH,QAAAA,OAAO,EAAE;AAAEhB,UAAAA,KAAK,EAAED,YAAY,CAACC;AAAtB;AAFA,OAAF,CAAR;AAIA;AACD,GAVc,EAUZ,CAAED,YAAY,CAACC,KAAf,CAVY,CAAf;AAYA,SAAO;AACN+B,IAAAA,MADM;AAENG,IAAAA,MAFM;AAGNR,IAAAA,QAHM;AAINU,IAAAA,IAJM;AAKNE,IAAAA,OALM;AAMNH,IAAAA,SANM;AAONH,IAAAA,UAPM;AAQNQ,IAAAA,SARM;AASNC,IAAAA,UATM;AAUNF,IAAAA,OAVM;AAWNN,IAAAA,KAXM;AAYN7B,IAAAA;AAZM,GAAP;AAcA","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent, ChangeEvent, PointerEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer, useLayoutEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tInputState,\n\tStateReducer,\n\tinitialInputControlState,\n\tinitialStateReducer,\n} from './state';\nimport * as actions from './actions';\nimport type { InputChangeCallback } from '../types';\n\n/**\n * Prepares initialState for the reducer.\n *\n * @param initialState The initial state.\n * @return Prepared initialState for the reducer\n */\nfunction mergeInitialState(\n\tinitialState: Partial< InputState > = initialInputControlState\n): InputState {\n\tconst { value } = initialState;\n\n\treturn {\n\t\t...initialInputControlState,\n\t\t...initialState,\n\t\tinitialValue: value,\n\t} as InputState;\n}\n\n/**\n * Creates a reducer that opens the channel for external state subscription\n * and modification.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param composedStateReducers A custom reducer that can subscribe and modify state.\n * @return The reducer.\n */\nfunction inputControlStateReducer(\n\tcomposedStateReducers: StateReducer\n): StateReducer {\n\treturn ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tswitch ( action.type ) {\n\t\t\t/**\n\t\t\t * Keyboard events\n\t\t\t */\n\t\t\tcase actions.PRESS_UP:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.PRESS_DOWN:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Drag events\n\t\t\t */\n\t\t\tcase actions.DRAG_START:\n\t\t\t\tnextState.isDragging = true;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.DRAG_END:\n\t\t\t\tnextState.isDragging = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Input events\n\t\t\t */\n\t\t\tcase actions.CHANGE:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.value = action.payload.value;\n\n\t\t\t\tif ( state.isPressEnterToChange ) {\n\t\t\t\t\tnextState.isDirty = true;\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\n\t\t\tcase actions.COMMIT:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.RESET:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tnextState.value = action.payload.value || state.initialValue;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Validation\n\t\t\t */\n\t\t\tcase actions.INVALIDATE:\n\t\t\t\tnextState.error = action.payload.error;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tnextState._event = action.payload.event;\n\n\t\t/**\n\t\t * Send the nextState + action to the composedReducers via\n\t\t * this \"bridge\" mechanism. This allows external stateReducers\n\t\t * to hook into actions, and modify state if needed.\n\t\t */\n\t\treturn composedStateReducers( nextState, action );\n\t};\n}\n\n/**\n * A custom hook that connects and external stateReducer with an internal\n * reducer. This hook manages the internal state of InputControl.\n * However, by connecting an external stateReducer function, other\n * components can react to actions as well as modify state before it is\n * applied.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param stateReducer An external state reducer.\n * @param initialState The initial state for the reducer.\n * @param onChangeHandler A handler for the onChange event.\n * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState,\n\tonChangeHandler: InputChangeCallback\n) {\n\tconst [ state, dispatch ] = useReducer< StateReducer >(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent =\n\t\t( type: actions.ChangeEventAction[ 'type' ] ) =>\n\t\t(\n\t\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t\t) => {\n\t\t\tdispatch( {\n\t\t\t\ttype,\n\t\t\t\tpayload: { value: nextValue, event },\n\t\t\t} as actions.InputAction );\n\t\t};\n\n\tconst createKeyEvent =\n\t\t( type: actions.KeyEventAction[ 'type' ] ) =>\n\t\t( event: actions.KeyEventAction[ 'payload' ][ 'event' ] ) => {\n\t\t\tdispatch( { type, payload: { event } } );\n\t\t};\n\n\tconst createDragEvent =\n\t\t( type: actions.DragEventAction[ 'type' ] ) =>\n\t\t( payload: actions.DragEventAction[ 'payload' ] ) => {\n\t\t\tdispatch( { type, payload } );\n\t\t};\n\n\t/**\n\t * Actions for the reducer\n\t */\n\tconst change = createChangeEvent( actions.CHANGE );\n\tconst invalidate = ( error: unknown, event: SyntheticEvent ) =>\n\t\tdispatch( { type: actions.INVALIDATE, payload: { error, event } } );\n\tconst reset = createChangeEvent( actions.RESET );\n\tconst commit = createChangeEvent( actions.COMMIT );\n\n\tconst dragStart = createDragEvent( actions.DRAG_START );\n\tconst drag = createDragEvent( actions.DRAG );\n\tconst dragEnd = createDragEvent( actions.DRAG_END );\n\n\tconst pressUp = createKeyEvent( actions.PRESS_UP );\n\tconst pressDown = createKeyEvent( actions.PRESS_DOWN );\n\tconst pressEnter = createKeyEvent( actions.PRESS_ENTER );\n\n\tconst currentState = useRef( state );\n\tconst refProps = useRef( { value: initialState.value, onChangeHandler } );\n\tuseLayoutEffect( () => {\n\t\tcurrentState.current = state;\n\t\trefProps.current = { value: initialState.value, onChangeHandler };\n\t} );\n\tuseLayoutEffect( () => {\n\t\tif (\n\t\t\tcurrentState.current._event !== undefined &&\n\t\t\tstate.value !== refProps.current.value &&\n\t\t\t! state.isDirty\n\t\t) {\n\t\t\trefProps.current.onChangeHandler( state.value ?? '', {\n\t\t\t\tevent: currentState.current._event as\n\t\t\t\t\t| ChangeEvent< HTMLInputElement >\n\t\t\t\t\t| PointerEvent< HTMLInputElement >,\n\t\t\t} );\n\t\t}\n\t}, [ state.value, state.isDirty ] );\n\tuseLayoutEffect( () => {\n\t\tif (\n\t\t\tinitialState.value !== currentState.current.value &&\n\t\t\t! currentState.current.isDirty\n\t\t) {\n\t\t\tdispatch( {\n\t\t\t\ttype: actions.RESET,\n\t\t\t\tpayload: { value: initialState.value },\n\t\t\t} );\n\t\t}\n\t}, [ initialState.value ] );\n\n\treturn {\n\t\tchange,\n\t\tcommit,\n\t\tdispatch,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t\tstate,\n\t} as const;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["useReducer","useLayoutEffect","useRef","initialInputControlState","initialStateReducer","actions","mergeInitialState","initialState","value","initialValue","inputControlStateReducer","composedStateReducers","state","action","nextState","type","CONTROL","payload","isDirty","_event","undefined","PRESS_UP","PRESS_DOWN","DRAG_START","isDragging","DRAG_END","CHANGE","error","isPressEnterToChange","COMMIT","RESET","INVALIDATE","event","useInputControlStateReducer","stateReducer","onChangeHandler","dispatch","createChangeEvent","nextValue","createKeyEvent","createDragEvent","change","invalidate","reset","commit","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER","currentState","refProps","current"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent, ChangeEvent, PointerEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer, useLayoutEffect, useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tInputState,\n\tStateReducer,\n\tinitialInputControlState,\n\tinitialStateReducer,\n} from './state';\nimport * as actions from './actions';\nimport type { InputChangeCallback } from '../types';\n\n/**\n * Prepares initialState for the reducer.\n *\n * @param initialState The initial state.\n * @return Prepared initialState for the reducer\n */\nfunction mergeInitialState(\n\tinitialState: Partial< InputState > = initialInputControlState\n): InputState {\n\tconst { value } = initialState;\n\n\treturn {\n\t\t...initialInputControlState,\n\t\t...initialState,\n\t\tinitialValue: value,\n\t} as InputState;\n}\n\n/**\n * Creates the base reducer which may be coupled to a specializing reducer.\n * As its final step, for all actions other than CONTROL, the base reducer\n * passes the state and action on through the specializing reducer. The\n * exception for CONTROL actions is because they represent controlled updates\n * from props and no case has yet presented for their specialization.\n *\n * @param composedStateReducers A reducer to specialize state changes.\n * @return The reducer.\n */\nfunction inputControlStateReducer(\n\tcomposedStateReducers: StateReducer\n): StateReducer< actions.ControlAction > {\n\treturn ( state, action ) => {\n\t\tconst nextState = { ...state };\n\n\t\tswitch ( action.type ) {\n\t\t\t/*\n\t\t\t * Controlled updates\n\t\t\t */\n\t\t\tcase actions.CONTROL:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tnextState._event = undefined;\n\t\t\t\t// Returns immediately to avoid invoking additional reducers.\n\t\t\t\treturn nextState;\n\n\t\t\t/**\n\t\t\t * Keyboard events\n\t\t\t */\n\t\t\tcase actions.PRESS_UP:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.PRESS_DOWN:\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Drag events\n\t\t\t */\n\t\t\tcase actions.DRAG_START:\n\t\t\t\tnextState.isDragging = true;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.DRAG_END:\n\t\t\t\tnextState.isDragging = false;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Input events\n\t\t\t */\n\t\t\tcase actions.CHANGE:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.value = action.payload.value;\n\n\t\t\t\tif ( state.isPressEnterToChange ) {\n\t\t\t\t\tnextState.isDirty = true;\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\n\t\t\tcase actions.COMMIT:\n\t\t\t\tnextState.value = action.payload.value;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tbreak;\n\n\t\t\tcase actions.RESET:\n\t\t\t\tnextState.error = null;\n\t\t\t\tnextState.isDirty = false;\n\t\t\t\tnextState.value = action.payload.value || state.initialValue;\n\t\t\t\tbreak;\n\n\t\t\t/**\n\t\t\t * Validation\n\t\t\t */\n\t\t\tcase actions.INVALIDATE:\n\t\t\t\tnextState.error = action.payload.error;\n\t\t\t\tbreak;\n\t\t}\n\n\t\tnextState._event = action.payload.event;\n\n\t\t/**\n\t\t * Send the nextState + action to the composedReducers via\n\t\t * this \"bridge\" mechanism. This allows external stateReducers\n\t\t * to hook into actions, and modify state if needed.\n\t\t */\n\t\treturn composedStateReducers( nextState, action );\n\t};\n}\n\n/**\n * A custom hook that connects and external stateReducer with an internal\n * reducer. This hook manages the internal state of InputControl.\n * However, by connecting an external stateReducer function, other\n * components can react to actions as well as modify state before it is\n * applied.\n *\n * This technique uses the \"stateReducer\" design pattern:\n * https://kentcdodds.com/blog/the-state-reducer-pattern/\n *\n * @param stateReducer An external state reducer.\n * @param initialState The initial state for the reducer.\n * @param onChangeHandler A handler for the onChange event.\n * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState,\n\tonChangeHandler: InputChangeCallback\n) {\n\tconst [ state, dispatch ] = useReducer(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent =\n\t\t( type: actions.ChangeEventAction[ 'type' ] ) =>\n\t\t(\n\t\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t\t) => {\n\t\t\tdispatch( {\n\t\t\t\ttype,\n\t\t\t\tpayload: { value: nextValue, event },\n\t\t\t} as actions.InputAction );\n\t\t};\n\n\tconst createKeyEvent =\n\t\t( type: actions.KeyEventAction[ 'type' ] ) =>\n\t\t( event: actions.KeyEventAction[ 'payload' ][ 'event' ] ) => {\n\t\t\tdispatch( { type, payload: { event } } );\n\t\t};\n\n\tconst createDragEvent =\n\t\t( type: actions.DragEventAction[ 'type' ] ) =>\n\t\t( payload: actions.DragEventAction[ 'payload' ] ) => {\n\t\t\tdispatch( { type, payload } );\n\t\t};\n\n\t/**\n\t * Actions for the reducer\n\t */\n\tconst change = createChangeEvent( actions.CHANGE );\n\tconst invalidate = ( error: unknown, event: SyntheticEvent ) =>\n\t\tdispatch( { type: actions.INVALIDATE, payload: { error, event } } );\n\tconst reset = createChangeEvent( actions.RESET );\n\tconst commit = createChangeEvent( actions.COMMIT );\n\n\tconst dragStart = createDragEvent( actions.DRAG_START );\n\tconst drag = createDragEvent( actions.DRAG );\n\tconst dragEnd = createDragEvent( actions.DRAG_END );\n\n\tconst pressUp = createKeyEvent( actions.PRESS_UP );\n\tconst pressDown = createKeyEvent( actions.PRESS_DOWN );\n\tconst pressEnter = createKeyEvent( actions.PRESS_ENTER );\n\n\tconst currentState = useRef( state );\n\tconst refProps = useRef( { value: initialState.value, onChangeHandler } );\n\n\t// Freshens refs to props and state so that subsequent effects have access\n\t// to their latest values without their changes causing effect runs.\n\tuseLayoutEffect( () => {\n\t\tcurrentState.current = state;\n\t\trefProps.current = { value: initialState.value, onChangeHandler };\n\t} );\n\n\t// Propagates the latest state through onChange.\n\tuseLayoutEffect( () => {\n\t\tif (\n\t\t\tcurrentState.current._event !== undefined &&\n\t\t\tstate.value !== refProps.current.value &&\n\t\t\t! state.isDirty\n\t\t) {\n\t\t\trefProps.current.onChangeHandler( state.value ?? '', {\n\t\t\t\tevent: currentState.current._event as\n\t\t\t\t\t| ChangeEvent< HTMLInputElement >\n\t\t\t\t\t| PointerEvent< HTMLInputElement >,\n\t\t\t} );\n\t\t}\n\t}, [ state.value, state.isDirty ] );\n\n\t// Updates the state from props.\n\tuseLayoutEffect( () => {\n\t\tif (\n\t\t\tinitialState.value !== currentState.current.value &&\n\t\t\t! currentState.current.isDirty\n\t\t) {\n\t\t\tdispatch( {\n\t\t\t\ttype: actions.CONTROL,\n\t\t\t\tpayload: { value: initialState.value ?? '' },\n\t\t\t} );\n\t\t}\n\t}, [ initialState.value ] );\n\n\treturn {\n\t\tchange,\n\t\tcommit,\n\t\tdispatch,\n\t\tdrag,\n\t\tdragEnd,\n\t\tdragStart,\n\t\tinvalidate,\n\t\tpressDown,\n\t\tpressEnter,\n\t\tpressUp,\n\t\treset,\n\t\tstate,\n\t} as const;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/state.ts"],"names":["initialStateReducer","state","initialInputControlState","error","initialValue","isDirty","isDragEnabled","isDragging","isPressEnterToChange","value"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAgBA,OAAO,MAAMA,mBAAiC,GAAKC,KAAF,IAAyBA,KAAnE;AAEP,OAAO,MAAMC,wBAAoC,GAAG;AACnDC,EAAAA,KAAK,EAAE,IAD4C;AAEnDC,EAAAA,YAAY,EAAE,EAFqC;AAGnDC,EAAAA,OAAO,EAAE,KAH0C;AAInDC,EAAAA,aAAa,EAAE,KAJoC;AAKnDC,EAAAA,UAAU,EAAE,KALuC;AAMnDC,EAAAA,oBAAoB,EAAE,KAN6B;AAOnDC,EAAAA,KAAK,EAAE;AAP4C,CAA7C","sourcesContent":["/**\n * External dependencies\n */\nimport type { Reducer, SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { InputAction } from './actions';\n\nexport interface InputState {\n\t_event?: SyntheticEvent;\n\terror: unknown;\n\tinitialValue?: string;\n\tisDirty: boolean;\n\tisDragEnabled: boolean;\n\tisDragging: boolean;\n\tisPressEnterToChange: boolean;\n\tvalue?: string;\n}\n\nexport type StateReducer = Reducer< InputState, InputAction >;\n\nexport const initialStateReducer: StateReducer = ( state: InputState ) => state;\n\nexport const initialInputControlState: InputState = {\n\terror: null,\n\tinitialValue: '',\n\tisDirty: false,\n\tisDragEnabled: false,\n\tisDragging: false,\n\tisPressEnterToChange: false,\n\tvalue: '',\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/state.ts"],"names":["initialStateReducer","state","initialInputControlState","error","initialValue","isDirty","isDragEnabled","isDragging","isPressEnterToChange","value"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;AAqBA,OAAO,MAAMA,mBAAiC,GAAKC,KAAF,IAAyBA,KAAnE;AAEP,OAAO,MAAMC,wBAAoC,GAAG;AACnDC,EAAAA,KAAK,EAAE,IAD4C;AAEnDC,EAAAA,YAAY,EAAE,EAFqC;AAGnDC,EAAAA,OAAO,EAAE,KAH0C;AAInDC,EAAAA,aAAa,EAAE,KAJoC;AAKnDC,EAAAA,UAAU,EAAE,KALuC;AAMnDC,EAAAA,oBAAoB,EAAE,KAN6B;AAOnDC,EAAAA,KAAK,EAAE;AAP4C,CAA7C","sourcesContent":["/**\n * External dependencies\n */\nimport type { Reducer, SyntheticEvent } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { Action, InputAction } from './actions';\n\nexport interface InputState {\n\t_event?: SyntheticEvent;\n\terror: unknown;\n\tinitialValue?: string;\n\tisDirty: boolean;\n\tisDragEnabled: boolean;\n\tisDragging: boolean;\n\tisPressEnterToChange: boolean;\n\tvalue?: string;\n}\n\nexport type StateReducer< SpecializedAction = {} > = Reducer<\n\tInputState,\n\tSpecializedAction extends Action\n\t\t? InputAction | SpecializedAction\n\t\t: InputAction\n>;\n\nexport const initialStateReducer: StateReducer = ( state: InputState ) => state;\n\nexport const initialInputControlState: InputState = {\n\terror: null,\n\tinitialValue: '',\n\tisDirty: false,\n\tisDragEnabled: false,\n\tisDragging: false,\n\tisPressEnterToChange: false,\n\tvalue: '',\n};\n"]}