@wordpress/components 19.6.1 → 19.8.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 (514) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +38 -0
  3. package/build/base-control/index.js +41 -32
  4. package/build/base-control/index.js.map +1 -1
  5. package/build/base-control/styles/base-control-styles.js +43 -22
  6. package/build/base-control/styles/base-control-styles.js.map +1 -1
  7. package/build/base-control/types.js +6 -0
  8. package/build/base-control/types.js.map +1 -0
  9. package/build/border-box-control/border-box-control/component.js +124 -0
  10. package/build/border-box-control/border-box-control/component.js.map +1 -0
  11. package/build/border-box-control/border-box-control/hook.js +113 -0
  12. package/build/border-box-control/border-box-control/hook.js.map +1 -0
  13. package/build/border-box-control/border-box-control/index.js +24 -0
  14. package/build/border-box-control/border-box-control/index.js.map +1 -0
  15. package/build/border-box-control/border-box-control-linked-button/component.js +59 -0
  16. package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -0
  17. package/build/border-box-control/border-box-control-linked-button/hook.js +41 -0
  18. package/build/border-box-control/border-box-control-linked-button/hook.js.map +1 -0
  19. package/build/border-box-control/border-box-control-linked-button/index.js +16 -0
  20. package/build/border-box-control/border-box-control-linked-button/index.js.map +1 -0
  21. package/build/border-box-control/border-box-control-split-controls/component.js +93 -0
  22. package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -0
  23. package/build/border-box-control/border-box-control-split-controls/hook.js +45 -0
  24. package/build/border-box-control/border-box-control-split-controls/hook.js.map +1 -0
  25. package/build/border-box-control/border-box-control-split-controls/index.js +16 -0
  26. package/build/border-box-control/border-box-control-split-controls/index.js.map +1 -0
  27. package/build/border-box-control/border-box-control-visualizer/component.js +40 -0
  28. package/build/border-box-control/border-box-control-visualizer/component.js.map +1 -0
  29. package/build/border-box-control/border-box-control-visualizer/hook.js +43 -0
  30. package/build/border-box-control/border-box-control-visualizer/hook.js.map +1 -0
  31. package/build/border-box-control/border-box-control-visualizer/index.js +16 -0
  32. package/build/border-box-control/border-box-control-visualizer/index.js.map +1 -0
  33. package/build/border-box-control/index.js +44 -0
  34. package/build/border-box-control/index.js.map +1 -0
  35. package/build/border-box-control/styles.js +76 -0
  36. package/build/border-box-control/styles.js.map +1 -0
  37. package/build/border-box-control/types.js +6 -0
  38. package/build/border-box-control/types.js.map +1 -0
  39. package/build/border-box-control/utils.js +161 -0
  40. package/build/border-box-control/utils.js.map +1 -0
  41. package/build/border-control/border-control/component.js +119 -0
  42. package/build/border-control/border-control/component.js.map +1 -0
  43. package/build/border-control/border-control/hook.js +130 -0
  44. package/build/border-control/border-control/hook.js.map +1 -0
  45. package/build/border-control/border-control/index.js +24 -0
  46. package/build/border-control/border-control/index.js.map +1 -0
  47. package/build/border-control/border-control-dropdown/component.js +196 -0
  48. package/build/border-control/border-control-dropdown/component.js.map +1 -0
  49. package/build/border-control/border-control-dropdown/hook.js +105 -0
  50. package/build/border-control/border-control-dropdown/hook.js.map +1 -0
  51. package/build/border-control/border-control-dropdown/index.js +16 -0
  52. package/build/border-control/border-control-dropdown/index.js.map +1 -0
  53. package/build/border-control/border-control-style-picker/component.js +101 -0
  54. package/build/border-control/border-control-style-picker/component.js.map +1 -0
  55. package/build/border-control/border-control-style-picker/hook.js +45 -0
  56. package/build/border-control/border-control-style-picker/hook.js.map +1 -0
  57. package/build/border-control/border-control-style-picker/index.js +16 -0
  58. package/build/border-control/border-control-style-picker/index.js.map +1 -0
  59. package/build/border-control/index.js +24 -0
  60. package/build/border-control/index.js.map +1 -0
  61. package/build/border-control/styles.js +125 -0
  62. package/build/border-control/styles.js.map +1 -0
  63. package/build/border-control/types.js +6 -0
  64. package/build/border-control/types.js.map +1 -0
  65. package/build/box-control/all-input-control.js +3 -7
  66. package/build/box-control/all-input-control.js.map +1 -1
  67. package/build/box-control/axial-input-controls.js +20 -15
  68. package/build/box-control/axial-input-controls.js.map +1 -1
  69. package/build/box-control/input-controls.js +21 -16
  70. package/build/box-control/input-controls.js.map +1 -1
  71. package/build/box-control/utils.js +25 -11
  72. package/build/box-control/utils.js.map +1 -1
  73. package/build/card/styles.js +22 -17
  74. package/build/card/styles.js.map +1 -1
  75. package/build/checkbox-control/index.js +21 -1
  76. package/build/checkbox-control/index.js.map +1 -1
  77. package/build/color-palette/index.js +53 -4
  78. package/build/color-palette/index.js.map +1 -1
  79. package/build/custom-select-control/index.js +12 -4
  80. package/build/custom-select-control/index.js.map +1 -1
  81. package/build/divider/styles.js +28 -16
  82. package/build/divider/styles.js.map +1 -1
  83. package/build/focal-point-picker/controls.js +2 -3
  84. package/build/focal-point-picker/controls.js.map +1 -1
  85. package/build/form-file-upload/index.js +4 -1
  86. package/build/form-file-upload/index.js.map +1 -1
  87. package/build/index.js +40 -0
  88. package/build/index.js.map +1 -1
  89. package/build/input-control/input-field.js +21 -14
  90. package/build/input-control/input-field.js.map +1 -1
  91. package/build/input-control/reducer/actions.js +1 -3
  92. package/build/input-control/reducer/actions.js.map +1 -1
  93. package/build/input-control/reducer/reducer.js +1 -43
  94. package/build/input-control/reducer/reducer.js.map +1 -1
  95. package/build/item-group/styles.js +14 -14
  96. package/build/item-group/styles.js.map +1 -1
  97. package/build/mobile/picker/index.android.js +0 -3
  98. package/build/mobile/picker/index.android.js.map +1 -1
  99. package/build/number-control/index.js +15 -10
  100. package/build/number-control/index.js.map +1 -1
  101. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  102. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  103. package/build/surface/styles.js +8 -8
  104. package/build/surface/styles.js.map +1 -1
  105. package/build/toggle-group-control/index.js +8 -0
  106. package/build/toggle-group-control/index.js.map +1 -1
  107. package/build/toggle-group-control/toggle-group-control/component.js +10 -1
  108. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  109. package/build/toggle-group-control/toggle-group-control/styles.js +14 -3
  110. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  111. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +90 -0
  112. package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -0
  113. package/build/toggle-group-control/toggle-group-control-option/component.js +9 -87
  114. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  115. package/build/toggle-group-control/toggle-group-control-option-base/component.js +127 -0
  116. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -0
  117. package/build/toggle-group-control/toggle-group-control-option-base/index.js +16 -0
  118. package/build/toggle-group-control/toggle-group-control-option-base/index.js.map +1 -0
  119. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +66 -0
  120. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -0
  121. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +55 -0
  122. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -0
  123. package/build/toggle-group-control/toggle-group-control-option-icon/index.js +16 -0
  124. package/build/toggle-group-control/toggle-group-control-option-icon/index.js.map +1 -0
  125. package/build/toolbar-dropdown-menu/index.js +1 -1
  126. package/build/toolbar-dropdown-menu/index.js.map +1 -1
  127. package/build/unit-control/index.js +56 -29
  128. package/build/unit-control/index.js.map +1 -1
  129. package/build/unit-control/unit-select-control.js +2 -4
  130. package/build/unit-control/unit-select-control.js.map +1 -1
  131. package/build/utils/colors-values.js +5 -3
  132. package/build/utils/colors-values.js.map +1 -1
  133. package/build/utils/config-values.js +9 -4
  134. package/build/utils/config-values.js.map +1 -1
  135. package/build-module/base-control/index.js +39 -35
  136. package/build-module/base-control/index.js.map +1 -1
  137. package/build-module/base-control/styles/base-control-styles.js +44 -16
  138. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  139. package/build-module/base-control/types.js +2 -0
  140. package/build-module/base-control/types.js.map +1 -0
  141. package/build-module/border-box-control/border-box-control/component.js +104 -0
  142. package/build-module/border-box-control/border-box-control/component.js.map +1 -0
  143. package/build-module/border-box-control/border-box-control/hook.js +97 -0
  144. package/build-module/border-box-control/border-box-control/hook.js.map +1 -0
  145. package/build-module/border-box-control/border-box-control/index.js +3 -0
  146. package/build-module/border-box-control/border-box-control/index.js.map +1 -0
  147. package/build-module/border-box-control/border-box-control-linked-button/component.js +42 -0
  148. package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -0
  149. package/build-module/border-box-control/border-box-control-linked-button/hook.js +26 -0
  150. package/build-module/border-box-control/border-box-control-linked-button/hook.js.map +1 -0
  151. package/build-module/border-box-control/border-box-control-linked-button/index.js +2 -0
  152. package/build-module/border-box-control/border-box-control-linked-button/index.js.map +1 -0
  153. package/build-module/border-box-control/border-box-control-split-controls/component.js +77 -0
  154. package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -0
  155. package/build-module/border-box-control/border-box-control-split-controls/hook.js +30 -0
  156. package/build-module/border-box-control/border-box-control-split-controls/hook.js.map +1 -0
  157. package/build-module/border-box-control/border-box-control-split-controls/index.js +2 -0
  158. package/build-module/border-box-control/border-box-control-split-controls/index.js.map +1 -0
  159. package/build-module/border-box-control/border-box-control-visualizer/component.js +27 -0
  160. package/build-module/border-box-control/border-box-control-visualizer/component.js.map +1 -0
  161. package/build-module/border-box-control/border-box-control-visualizer/hook.js +28 -0
  162. package/build-module/border-box-control/border-box-control-visualizer/hook.js.map +1 -0
  163. package/build-module/border-box-control/border-box-control-visualizer/index.js +2 -0
  164. package/build-module/border-box-control/border-box-control-visualizer/index.js.map +1 -0
  165. package/build-module/border-box-control/index.js +4 -0
  166. package/build-module/border-box-control/index.js.map +1 -0
  167. package/build-module/border-box-control/styles.js +66 -0
  168. package/build-module/border-box-control/styles.js.map +1 -0
  169. package/build-module/border-box-control/types.js +2 -0
  170. package/build-module/border-box-control/types.js.map +1 -0
  171. package/build-module/border-box-control/utils.js +127 -0
  172. package/build-module/border-box-control/utils.js.map +1 -0
  173. package/build-module/border-control/border-control/component.js +100 -0
  174. package/build-module/border-control/border-control/component.js.map +1 -0
  175. package/build-module/border-control/border-control/hook.js +115 -0
  176. package/build-module/border-control/border-control/hook.js.map +1 -0
  177. package/build-module/border-control/border-control/index.js +3 -0
  178. package/build-module/border-control/border-control/index.js.map +1 -0
  179. package/build-module/border-control/border-control-dropdown/component.js +174 -0
  180. package/build-module/border-control/border-control-dropdown/component.js.map +1 -0
  181. package/build-module/border-control/border-control-dropdown/hook.js +89 -0
  182. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -0
  183. package/build-module/border-control/border-control-dropdown/index.js +2 -0
  184. package/build-module/border-control/border-control-dropdown/index.js.map +1 -0
  185. package/build-module/border-control/border-control-style-picker/component.js +81 -0
  186. package/build-module/border-control/border-control-style-picker/component.js.map +1 -0
  187. package/build-module/border-control/border-control-style-picker/hook.js +30 -0
  188. package/build-module/border-control/border-control-style-picker/hook.js.map +1 -0
  189. package/build-module/border-control/border-control-style-picker/index.js +2 -0
  190. package/build-module/border-control/border-control-style-picker/index.js.map +1 -0
  191. package/build-module/border-control/index.js +3 -0
  192. package/build-module/border-control/index.js.map +1 -0
  193. package/build-module/border-control/styles.js +90 -0
  194. package/build-module/border-control/styles.js.map +1 -0
  195. package/build-module/border-control/types.js +2 -0
  196. package/build-module/border-control/types.js.map +1 -0
  197. package/build-module/box-control/all-input-control.js +4 -8
  198. package/build-module/box-control/all-input-control.js.map +1 -1
  199. package/build-module/box-control/axial-input-controls.js +18 -14
  200. package/build-module/box-control/axial-input-controls.js.map +1 -1
  201. package/build-module/box-control/input-controls.js +18 -14
  202. package/build-module/box-control/input-controls.js.map +1 -1
  203. package/build-module/box-control/utils.js +25 -11
  204. package/build-module/box-control/utils.js.map +1 -1
  205. package/build-module/card/styles.js +23 -18
  206. package/build-module/card/styles.js.map +1 -1
  207. package/build-module/checkbox-control/index.js +24 -3
  208. package/build-module/checkbox-control/index.js.map +1 -1
  209. package/build-module/color-palette/index.js +52 -4
  210. package/build-module/color-palette/index.js.map +1 -1
  211. package/build-module/custom-select-control/index.js +12 -4
  212. package/build-module/custom-select-control/index.js.map +1 -1
  213. package/build-module/divider/styles.js +29 -10
  214. package/build-module/divider/styles.js.map +1 -1
  215. package/build-module/focal-point-picker/controls.js +2 -3
  216. package/build-module/focal-point-picker/controls.js.map +1 -1
  217. package/build-module/form-file-upload/index.js +4 -1
  218. package/build-module/form-file-upload/index.js.map +1 -1
  219. package/build-module/index.js +3 -1
  220. package/build-module/index.js.map +1 -1
  221. package/build-module/input-control/input-field.js +21 -13
  222. package/build-module/input-control/input-field.js.map +1 -1
  223. package/build-module/input-control/reducer/actions.js +0 -1
  224. package/build-module/input-control/reducer/actions.js.map +1 -1
  225. package/build-module/input-control/reducer/reducer.js +2 -39
  226. package/build-module/input-control/reducer/reducer.js.map +1 -1
  227. package/build-module/item-group/styles.js +14 -14
  228. package/build-module/item-group/styles.js.map +1 -1
  229. package/build-module/mobile/picker/index.android.js +0 -3
  230. package/build-module/mobile/picker/index.android.js.map +1 -1
  231. package/build-module/number-control/index.js +15 -9
  232. package/build-module/number-control/index.js.map +1 -1
  233. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  234. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  235. package/build-module/surface/styles.js +8 -8
  236. package/build-module/surface/styles.js.map +1 -1
  237. package/build-module/toggle-group-control/index.js +1 -0
  238. package/build-module/toggle-group-control/index.js.map +1 -1
  239. package/build-module/toggle-group-control/toggle-group-control/component.js +8 -1
  240. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  241. package/build-module/toggle-group-control/toggle-group-control/styles.js +11 -3
  242. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  243. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +86 -0
  244. package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -0
  245. package/build-module/toggle-group-control/toggle-group-control-option/component.js +9 -76
  246. package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  247. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +105 -0
  248. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -0
  249. package/build-module/toggle-group-control/toggle-group-control-option-base/index.js +2 -0
  250. package/build-module/toggle-group-control/toggle-group-control-option-base/index.js.map +1 -0
  251. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +55 -0
  252. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -0
  253. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +50 -0
  254. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -0
  255. package/build-module/toggle-group-control/toggle-group-control-option-icon/index.js +2 -0
  256. package/build-module/toggle-group-control/toggle-group-control-option-icon/index.js.map +1 -0
  257. package/build-module/toolbar-dropdown-menu/index.js +1 -1
  258. package/build-module/toolbar-dropdown-menu/index.js.map +1 -1
  259. package/build-module/unit-control/index.js +54 -27
  260. package/build-module/unit-control/index.js.map +1 -1
  261. package/build-module/unit-control/unit-select-control.js +2 -3
  262. package/build-module/unit-control/unit-select-control.js.map +1 -1
  263. package/build-module/utils/colors-values.js +5 -3
  264. package/build-module/utils/colors-values.js.map +1 -1
  265. package/build-module/utils/config-values.js +8 -4
  266. package/build-module/utils/config-values.js.map +1 -1
  267. package/build-style/style-rtl.css +33 -182
  268. package/build-style/style.css +33 -182
  269. package/build-types/base-control/index.d.ts +35 -71
  270. package/build-types/base-control/index.d.ts.map +1 -1
  271. package/build-types/base-control/stories/index.d.ts +25 -0
  272. package/build-types/base-control/stories/index.d.ts.map +1 -0
  273. package/build-types/base-control/styles/base-control-styles.d.ts +10 -5
  274. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  275. package/build-types/base-control/types.d.ts +41 -0
  276. package/build-types/base-control/types.d.ts.map +1 -0
  277. package/build-types/border-box-control/border-box-control/component.d.ts +4 -0
  278. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -0
  279. package/build-types/border-box-control/border-box-control/hook.d.ts +282 -0
  280. package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -0
  281. package/build-types/border-box-control/border-box-control/index.d.ts +3 -0
  282. package/build-types/border-box-control/border-box-control/index.d.ts.map +1 -0
  283. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +4 -0
  284. package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -0
  285. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts +266 -0
  286. package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -0
  287. package/build-types/border-box-control/border-box-control-linked-button/index.d.ts +2 -0
  288. package/build-types/border-box-control/border-box-control-linked-button/index.d.ts.map +1 -0
  289. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +4 -0
  290. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -0
  291. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +274 -0
  292. package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -0
  293. package/build-types/border-box-control/border-box-control-split-controls/index.d.ts +2 -0
  294. package/build-types/border-box-control/border-box-control-split-controls/index.d.ts.map +1 -0
  295. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +4 -0
  296. package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -0
  297. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts +266 -0
  298. package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -0
  299. package/build-types/border-box-control/border-box-control-visualizer/index.d.ts +2 -0
  300. package/build-types/border-box-control/border-box-control-visualizer/index.d.ts.map +1 -0
  301. package/build-types/border-box-control/index.d.ts +4 -0
  302. package/build-types/border-box-control/index.d.ts.map +1 -0
  303. package/build-types/border-box-control/styles.d.ts +8 -0
  304. package/build-types/border-box-control/styles.d.ts.map +1 -0
  305. package/build-types/border-box-control/types.d.ts +91 -0
  306. package/build-types/border-box-control/types.d.ts.map +1 -0
  307. package/build-types/border-box-control/utils.d.ts +24 -0
  308. package/build-types/border-box-control/utils.d.ts.map +1 -0
  309. package/build-types/border-control/border-control/component.d.ts +4 -0
  310. package/build-types/border-control/border-control/component.d.ts.map +1 -0
  311. package/build-types/border-control/border-control/hook.d.ts +285 -0
  312. package/build-types/border-control/border-control/hook.d.ts.map +1 -0
  313. package/build-types/border-control/border-control/index.d.ts +3 -0
  314. package/build-types/border-control/border-control/index.d.ts.map +1 -0
  315. package/build-types/border-control/border-control-dropdown/component.d.ts +4 -0
  316. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -0
  317. package/build-types/border-control/border-control-dropdown/hook.d.ts +280 -0
  318. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -0
  319. package/build-types/border-control/border-control-dropdown/index.d.ts +2 -0
  320. package/build-types/border-control/border-control-dropdown/index.d.ts.map +1 -0
  321. package/build-types/border-control/border-control-style-picker/component.d.ts +4 -0
  322. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -0
  323. package/build-types/border-control/border-control-style-picker/hook.d.ts +269 -0
  324. package/build-types/border-control/border-control-style-picker/hook.d.ts.map +1 -0
  325. package/build-types/border-control/border-control-style-picker/index.d.ts +2 -0
  326. package/build-types/border-control/border-control-style-picker/index.d.ts.map +1 -0
  327. package/build-types/border-control/index.d.ts +3 -0
  328. package/build-types/border-control/index.d.ts.map +1 -0
  329. package/build-types/border-control/styles.d.ts +18 -0
  330. package/build-types/border-control/styles.d.ts.map +1 -0
  331. package/build-types/border-control/types.d.ts +163 -0
  332. package/build-types/border-control/types.d.ts.map +1 -0
  333. package/build-types/card/card-divider/hook.d.ts +1 -1
  334. package/build-types/card/styles.d.ts.map +1 -1
  335. package/build-types/color-indicator/index.d.ts +7 -0
  336. package/build-types/color-indicator/index.d.ts.map +1 -0
  337. package/build-types/color-palette/index.d.ts.map +1 -1
  338. package/build-types/color-picker/styles.d.ts +1 -1
  339. package/build-types/divider/stories/index.d.ts +1 -0
  340. package/build-types/divider/stories/index.d.ts.map +1 -1
  341. package/build-types/divider/styles.d.ts.map +1 -1
  342. package/build-types/divider/types.d.ts +8 -1
  343. package/build-types/divider/types.d.ts.map +1 -1
  344. package/build-types/input-control/input-field.d.ts.map +1 -1
  345. package/build-types/input-control/reducer/actions.d.ts +1 -3
  346. package/build-types/input-control/reducer/actions.d.ts.map +1 -1
  347. package/build-types/input-control/reducer/reducer.d.ts +3 -9
  348. package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
  349. package/build-types/input-control/types.d.ts +2 -2
  350. package/build-types/input-control/types.d.ts.map +1 -1
  351. package/build-types/item-group/styles.d.ts.map +1 -1
  352. package/build-types/number-control/index.d.ts +3 -3
  353. package/build-types/number-control/index.d.ts.map +1 -1
  354. package/build-types/range-control/styles/range-control-styles.d.ts +1 -1
  355. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
  356. package/build-types/toggle-group-control/index.d.ts +1 -0
  357. package/build-types/toggle-group-control/index.d.ts.map +1 -1
  358. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  359. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +5 -0
  360. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  361. package/build-types/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.d.ts +9 -0
  362. package/build-types/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.d.ts.map +1 -0
  363. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +6 -2
  364. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  365. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts +25 -0
  366. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -0
  367. package/build-types/toggle-group-control/toggle-group-control-option-base/index.d.ts +2 -0
  368. package/build-types/toggle-group-control/toggle-group-control-option-base/index.d.ts.map +1 -0
  369. package/build-types/toggle-group-control/{toggle-group-control-option → toggle-group-control-option-base}/styles.d.ts +0 -0
  370. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -0
  371. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +37 -0
  372. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -0
  373. package/build-types/toggle-group-control/toggle-group-control-option-icon/index.d.ts +2 -0
  374. package/build-types/toggle-group-control/toggle-group-control-option-icon/index.d.ts.map +1 -0
  375. package/build-types/toggle-group-control/types.d.ts +24 -8
  376. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  377. package/build-types/ui/form-group/form-group.d.ts +2 -2
  378. package/build-types/unit-control/index.d.ts +12 -5
  379. package/build-types/unit-control/index.d.ts.map +1 -1
  380. package/build-types/unit-control/stories/index.d.ts +33 -0
  381. package/build-types/unit-control/stories/index.d.ts.map +1 -0
  382. package/build-types/unit-control/styles/unit-control-styles.d.ts +1 -1
  383. package/build-types/unit-control/types.d.ts +28 -7
  384. package/build-types/unit-control/types.d.ts.map +1 -1
  385. package/build-types/unit-control/unit-select-control.d.ts.map +1 -1
  386. package/build-types/utils/colors-values.d.ts +78 -18
  387. package/build-types/utils/colors-values.d.ts.map +1 -1
  388. package/build-types/utils/config-values.d.ts +71 -71
  389. package/build-types/utils/config-values.d.ts.map +1 -1
  390. package/package.json +17 -17
  391. package/src/animate/README.md +1 -1
  392. package/src/base-control/README.md +20 -12
  393. package/src/base-control/index.tsx +124 -0
  394. package/src/base-control/stories/index.tsx +80 -0
  395. package/src/base-control/styles/{base-control-styles.js → base-control-styles.ts} +23 -1
  396. package/src/base-control/types.ts +42 -0
  397. package/src/border-box-control/border-box-control/README.md +178 -0
  398. package/src/border-box-control/border-box-control/component.tsx +123 -0
  399. package/src/border-box-control/border-box-control/hook.ts +119 -0
  400. package/src/border-box-control/border-box-control/index.ts +2 -0
  401. package/src/border-box-control/border-box-control-linked-button/component.tsx +50 -0
  402. package/src/border-box-control/border-box-control-linked-button/hook.ts +30 -0
  403. package/src/border-box-control/border-box-control-linked-button/index.ts +1 -0
  404. package/src/border-box-control/border-box-control-split-controls/component.tsx +90 -0
  405. package/src/border-box-control/border-box-control-split-controls/hook.ts +34 -0
  406. package/src/border-box-control/border-box-control-split-controls/index.ts +1 -0
  407. package/src/border-box-control/border-box-control-visualizer/component.tsx +28 -0
  408. package/src/border-box-control/border-box-control-visualizer/hook.ts +30 -0
  409. package/src/border-box-control/border-box-control-visualizer/index.ts +1 -0
  410. package/src/border-box-control/index.ts +3 -0
  411. package/src/border-box-control/stories/index.js +104 -0
  412. package/src/border-box-control/styles.ts +69 -0
  413. package/src/border-box-control/test/index.js +354 -0
  414. package/src/border-box-control/test/utils.js +305 -0
  415. package/src/border-box-control/types.ts +98 -0
  416. package/src/border-box-control/utils.ts +151 -0
  417. package/src/border-control/border-control/README.md +181 -0
  418. package/src/border-control/border-control/component.tsx +112 -0
  419. package/src/border-control/border-control/hook.ts +145 -0
  420. package/src/border-control/border-control/index.ts +2 -0
  421. package/src/border-control/border-control-dropdown/component.tsx +252 -0
  422. package/src/border-control/border-control-dropdown/hook.ts +98 -0
  423. package/src/border-control/border-control-dropdown/index.ts +1 -0
  424. package/src/border-control/border-control-style-picker/component.tsx +89 -0
  425. package/src/border-control/border-control-style-picker/hook.ts +34 -0
  426. package/src/border-control/border-control-style-picker/index.ts +1 -0
  427. package/src/border-control/index.ts +2 -0
  428. package/src/border-control/stories/index.js +118 -0
  429. package/src/border-control/styles.ts +190 -0
  430. package/src/border-control/test/index.js +436 -0
  431. package/src/border-control/types.ts +173 -0
  432. package/src/box-control/all-input-control.js +2 -10
  433. package/src/box-control/axial-input-controls.js +32 -21
  434. package/src/box-control/input-controls.js +30 -19
  435. package/src/box-control/utils.js +29 -12
  436. package/src/card/styles.js +11 -5
  437. package/src/card/test/__snapshots__/index.js.snap +83 -66
  438. package/src/card/test/index.js +7 -5
  439. package/src/checkbox-control/index.js +34 -3
  440. package/src/checkbox-control/stories/index.js +44 -0
  441. package/src/checkbox-control/style.scss +4 -2
  442. package/src/color-palette/README.md +6 -0
  443. package/src/color-palette/index.js +73 -8
  444. package/src/color-palette/stories/index.js +69 -26
  445. package/src/color-palette/style.scss +11 -3
  446. package/src/color-palette/test/__snapshots__/index.js.snap +662 -12
  447. package/src/color-palette/test/index.js +1 -1
  448. package/src/custom-select-control/index.js +15 -3
  449. package/src/custom-select-control/stories/index.js +77 -74
  450. package/src/custom-select-control/style.scss +23 -4
  451. package/src/disabled/README.md +7 -10
  452. package/src/divider/stories/index.tsx +26 -23
  453. package/src/divider/styles.ts +9 -0
  454. package/src/divider/types.ts +11 -1
  455. package/src/flyout/test/__snapshots__/index.js.snap +7 -7
  456. package/src/focal-point-picker/controls.js +2 -3
  457. package/src/form-file-upload/README.md +18 -0
  458. package/src/form-file-upload/index.js +3 -0
  459. package/src/form-file-upload/test/index.js +73 -11
  460. package/src/form-toggle/README.md +1 -1
  461. package/src/index.js +8 -0
  462. package/src/input-control/input-field.tsx +23 -12
  463. package/src/input-control/reducer/actions.ts +1 -7
  464. package/src/input-control/reducer/reducer.ts +0 -29
  465. package/src/input-control/types.ts +2 -1
  466. package/src/item-group/styles.ts +1 -0
  467. package/src/item-group/test/__snapshots__/index.js.snap +11 -10
  468. package/src/mobile/picker/index.android.js +0 -1
  469. package/src/number-control/README.md +14 -0
  470. package/src/number-control/index.js +13 -12
  471. package/src/number-control/stories/index.js +14 -7
  472. package/src/number-control/test/index.js +79 -1
  473. package/src/range-control/stories/index.js +91 -119
  474. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -0
  475. package/src/surface/styles.js +1 -1
  476. package/src/surface/test/__snapshots__/index.js.snap +11 -11
  477. package/src/toggle-group-control/index.ts +1 -0
  478. package/src/toggle-group-control/stories/index.js +37 -7
  479. package/src/toggle-group-control/test/__snapshots__/index.js.snap +269 -5
  480. package/src/toggle-group-control/test/index.js +43 -10
  481. package/src/toggle-group-control/toggle-group-control/component.tsx +10 -0
  482. package/src/toggle-group-control/toggle-group-control/styles.ts +14 -0
  483. package/src/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.tsx +86 -0
  484. package/src/toggle-group-control/toggle-group-control-option/README.md +8 -5
  485. package/src/toggle-group-control/toggle-group-control-option/component.tsx +18 -94
  486. package/src/toggle-group-control/toggle-group-control-option-base/README.md +27 -0
  487. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +129 -0
  488. package/src/toggle-group-control/toggle-group-control-option-base/index.ts +1 -0
  489. package/src/toggle-group-control/{toggle-group-control-option → toggle-group-control-option-base}/styles.ts +4 -1
  490. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +56 -0
  491. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +56 -0
  492. package/src/toggle-group-control/toggle-group-control-option-icon/index.ts +1 -0
  493. package/src/toggle-group-control/types.ts +33 -8
  494. package/src/toolbar-dropdown-menu/index.js +1 -1
  495. package/src/toolbar-group/style.scss +0 -73
  496. package/src/tools-panel/test/__snapshots__/index.js.snap +8 -8
  497. package/src/unit-control/README.md +7 -3
  498. package/src/unit-control/index.tsx +65 -31
  499. package/src/unit-control/stories/index.tsx +170 -0
  500. package/src/unit-control/test/index.js +263 -100
  501. package/src/unit-control/types.ts +65 -42
  502. package/src/unit-control/unit-select-control.tsx +2 -3
  503. package/src/utils/colors-values.js +4 -3
  504. package/src/utils/config-values.js +9 -4
  505. package/tsconfig.json +3 -0
  506. package/tsconfig.tsbuildinfo +1 -1
  507. package/build/toggle-group-control/toggle-group-control-option/styles.js +0 -66
  508. package/build/toggle-group-control/toggle-group-control-option/styles.js.map +0 -1
  509. package/build-module/toggle-group-control/toggle-group-control-option/styles.js +0 -55
  510. package/build-module/toggle-group-control/toggle-group-control-option/styles.js.map +0 -1
  511. package/build-types/toggle-group-control/toggle-group-control-option/styles.d.ts.map +0 -1
  512. package/src/base-control/index.js +0 -111
  513. package/src/base-control/stories/index.js +0 -81
  514. package/src/unit-control/stories/index.js +0 -127
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/index.js"],"names":["SVG","Path","Circle","Polygon","Rect","G","HorizontalRule","BlockQuotation","default","__experimentalAlignmentMatrixControl","Animate","getAnimateClassName","__unstableGetAnimateClassName","__unstableMotion","AnglePickerControl","Autocomplete","useAutocompleteProps","__unstableUseAutocompleteProps","BaseControl","__experimentalBoxControl","Button","ButtonGroup","Card","CardBody","CardDivider","CardFooter","CardHeader","CardMedia","CheckboxControl","ClipboardButton","__experimentalPaletteEdit","ColorIndicator","ColorPalette","ColorPicker","ComboboxControl","Composite","__unstableComposite","CompositeGroup","__unstableCompositeGroup","CompositeItem","__unstableCompositeItem","useCompositeState","__unstableUseCompositeState","ConfirmDialog","__experimentalConfirmDialog","CustomSelectControl","Dashicon","DateTimePicker","DatePicker","TimePicker","__experimentalDimensionControl","Disabled","DisclosureContent","__unstableDisclosureContent","Divider","__experimentalDivider","Draggable","DropZone","DropZoneProvider","Dropdown","DropdownMenu","DuotoneSwatch","DuotonePicker","Elevation","__experimentalElevation","ExternalLink","Flex","FlexBlock","FlexItem","Flyout","__experimentalFlyout","FocalPointPicker","FocusableIframe","FontSizePicker","FormFileUpload","FormToggle","FormTokenField","GradientPicker","CustomGradientPicker","Grid","__experimentalGrid","Guide","GuidePage","Heading","__experimentalHeading","HStack","__experimentalHStack","Icon","IconButton","ItemGroup","__experimentalItemGroup","Item","__experimentalItem","__experimentalInputControl","KeyboardShortcuts","MenuGroup","MenuItem","MenuItemsChoice","Modal","ScrollLock","NavigableMenu","TabbableContainer","__experimentalNavigation","__experimentalNavigationBackButton","__experimentalNavigationGroup","__experimentalNavigationItem","__experimentalNavigationMenu","NavigatorProvider","__experimentalNavigatorProvider","NavigatorScreen","__experimentalNavigatorScreen","NavigatorButton","__experimentalNavigatorButton","NavigatorBackButton","__experimentalNavigatorBackButton","useNavigator","__experimentalUseNavigator","Notice","__experimentalNumberControl","NoticeList","Panel","PanelBody","PanelHeader","PanelRow","Placeholder","Popover","QueryControls","__experimentalRadio","__experimentalRadioGroup","RadioControl","RangeControl","ResizableBox","ResponsiveWrapper","SandBox","SearchControl","SelectControl","Snackbar","SnackbarList","Spacer","__experimentalSpacer","Scrollable","__experimentalScrollable","Spinner","Surface","__experimentalSurface","TabPanel","Text","__experimentalText","TextControl","TextareaControl","TextHighlight","Tip","ToggleControl","ToggleGroupControl","__experimentalToggleGroupControl","ToggleGroupControlOption","__experimentalToggleGroupControlOption","Toolbar","ToolbarButton","ToolbarDropdownMenu","__experimentalToolbarContext","ToolbarGroup","ToolbarItem","ToolsPanel","__experimentalToolsPanel","ToolsPanelItem","__experimentalToolsPanelItem","ToolsPanelContext","__experimentalToolsPanelContext","Tooltip","__experimentalTreeGrid","TreeGridRow","__experimentalTreeGridRow","TreeGridCell","__experimentalTreeGridCell","TreeGridItem","__experimentalTreeGridItem","TreeSelect","Truncate","__experimentalTruncate","__experimentalUnitControl","useCustomUnits","__experimentalUseCustomUnits","parseQuantityAndUnitFromRawValue","__experimentalParseQuantityAndUnitFromRawValue","View","__experimentalView","VisuallyHidden","VStack","__experimentalVStack","IsolatedEventContainer","createSlotFill","Slot","Fill","Provider","SlotFillProvider","useSlot","__experimentalUseSlot","__experimentalStyleProvider","ZStack","__experimentalZStack","navigateRegions","useNavigateRegions","__unstableUseNavigateRegions","withConstrainedTabbing","withFallbackStyles","withFilters","withFocusOutside","withFocusReturn","FocusReturnProvider","withNotices","withSpokenMessages"],"mappings":"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","sourcesContent":["// Primitives.\nexport {\n\tSVG,\n\tPath,\n\tCircle,\n\tPolygon,\n\tRect,\n\tG,\n\tHorizontalRule,\n\tBlockQuotation,\n} from '@wordpress/primitives';\n\n// Components.\nexport { default as __experimentalAlignmentMatrixControl } from './alignment-matrix-control';\nexport {\n\tdefault as Animate,\n\tgetAnimateClassName as __unstableGetAnimateClassName,\n} from './animate';\nexport { __unstableMotion } from './animation';\nexport { default as AnglePickerControl } from './angle-picker-control';\nexport {\n\tdefault as Autocomplete,\n\tuseAutocompleteProps as __unstableUseAutocompleteProps,\n} from './autocomplete';\nexport { default as BaseControl } from './base-control';\nexport { default as __experimentalBoxControl } from './box-control';\nexport { default as Button } from './button';\nexport { default as ButtonGroup } from './button-group';\nexport {\n\tCard,\n\tCardBody,\n\tCardDivider,\n\tCardFooter,\n\tCardHeader,\n\tCardMedia,\n} from './card';\nexport { default as CheckboxControl } from './checkbox-control';\nexport { default as ClipboardButton } from './clipboard-button';\nexport { default as __experimentalPaletteEdit } from './palette-edit';\nexport { default as ColorIndicator } from './color-indicator';\nexport { default as ColorPalette } from './color-palette';\nexport { ColorPicker } from './color-picker';\nexport { default as ComboboxControl } from './combobox-control';\nexport {\n\tComposite as __unstableComposite,\n\tCompositeGroup as __unstableCompositeGroup,\n\tCompositeItem as __unstableCompositeItem,\n\tuseCompositeState as __unstableUseCompositeState,\n} from './composite';\nexport { ConfirmDialog as __experimentalConfirmDialog } from './confirm-dialog';\nexport { default as CustomSelectControl } from './custom-select-control';\nexport { default as Dashicon } from './dashicon';\nexport { default as DateTimePicker, DatePicker, TimePicker } from './date-time';\nexport { default as __experimentalDimensionControl } from './dimension-control';\nexport { default as Disabled } from './disabled';\nexport { DisclosureContent as __unstableDisclosureContent } from './disclosure';\nexport { Divider as __experimentalDivider } from './divider';\nexport { default as Draggable } from './draggable';\nexport { default as DropZone } from './drop-zone';\nexport { default as DropZoneProvider } from './drop-zone/provider';\nexport { default as Dropdown } from './dropdown';\nexport { default as DropdownMenu } from './dropdown-menu';\nexport { DuotoneSwatch, DuotonePicker } from './duotone-picker';\nexport { Elevation as __experimentalElevation } from './elevation';\nexport { default as ExternalLink } from './external-link';\nexport { Flex, FlexBlock, FlexItem } from './flex';\nexport { Flyout as __experimentalFlyout } from './flyout';\nexport { default as FocalPointPicker } from './focal-point-picker';\nexport { default as FocusableIframe } from './focusable-iframe';\nexport { default as FontSizePicker } from './font-size-picker';\nexport { default as FormFileUpload } from './form-file-upload';\nexport { default as FormToggle } from './form-toggle';\nexport { default as FormTokenField } from './form-token-field';\nexport { default as GradientPicker } from './gradient-picker';\nexport { default as CustomGradientPicker } from './custom-gradient-picker';\nexport { Grid as __experimentalGrid } from './grid';\nexport { default as Guide } from './guide';\nexport { default as GuidePage } from './guide/page';\nexport { Heading as __experimentalHeading } from './heading';\nexport { HStack as __experimentalHStack } from './h-stack';\nexport { default as Icon } from './icon';\nexport { default as IconButton } from './button/deprecated';\nexport {\n\tItemGroup as __experimentalItemGroup,\n\tItem as __experimentalItem,\n} from './item-group';\nexport { default as __experimentalInputControl } from './input-control';\nexport { default as KeyboardShortcuts } from './keyboard-shortcuts';\nexport { default as MenuGroup } from './menu-group';\nexport { default as MenuItem } from './menu-item';\nexport { default as MenuItemsChoice } from './menu-items-choice';\nexport { default as Modal } from './modal';\nexport { default as ScrollLock } from './scroll-lock';\nexport { NavigableMenu, TabbableContainer } from './navigable-container';\nexport { default as __experimentalNavigation } from './navigation';\nexport { default as __experimentalNavigationBackButton } from './navigation/back-button';\nexport { default as __experimentalNavigationGroup } from './navigation/group';\nexport { default as __experimentalNavigationItem } from './navigation/item';\nexport { default as __experimentalNavigationMenu } from './navigation/menu';\nexport {\n\tNavigatorProvider as __experimentalNavigatorProvider,\n\tNavigatorScreen as __experimentalNavigatorScreen,\n\tNavigatorButton as __experimentalNavigatorButton,\n\tNavigatorBackButton as __experimentalNavigatorBackButton,\n\tuseNavigator as __experimentalUseNavigator,\n} from './navigator';\nexport { default as Notice } from './notice';\nexport { default as __experimentalNumberControl } from './number-control';\nexport { default as NoticeList } from './notice/list';\nexport { default as Panel } from './panel';\nexport { default as PanelBody } from './panel/body';\nexport { default as PanelHeader } from './panel/header';\nexport { default as PanelRow } from './panel/row';\nexport { default as Placeholder } from './placeholder';\nexport { default as Popover } from './popover';\nexport { default as QueryControls } from './query-controls';\nexport { default as __experimentalRadio } from './radio';\nexport { default as __experimentalRadioGroup } from './radio-group';\nexport { default as RadioControl } from './radio-control';\nexport { default as RangeControl } from './range-control';\nexport { default as ResizableBox } from './resizable-box';\nexport { default as ResponsiveWrapper } from './responsive-wrapper';\nexport { default as SandBox } from './sandbox';\nexport { default as SearchControl } from './search-control';\nexport { default as SelectControl } from './select-control';\nexport { default as Snackbar } from './snackbar';\nexport { default as SnackbarList } from './snackbar/list';\nexport { Spacer as __experimentalSpacer } from './spacer';\nexport { Scrollable as __experimentalScrollable } from './scrollable';\nexport { default as Spinner } from './spinner';\nexport { Surface as __experimentalSurface } from './surface';\nexport { default as TabPanel } from './tab-panel';\nexport { Text as __experimentalText } from './text';\nexport { default as TextControl } from './text-control';\nexport { default as TextareaControl } from './textarea-control';\nexport { default as TextHighlight } from './text-highlight';\nexport { default as Tip } from './tip';\nexport { default as ToggleControl } from './toggle-control';\nexport {\n\tToggleGroupControl as __experimentalToggleGroupControl,\n\tToggleGroupControlOption as __experimentalToggleGroupControlOption,\n} from './toggle-group-control';\nexport { default as Toolbar } from './toolbar';\nexport { default as ToolbarButton } from './toolbar-button';\nexport { default as ToolbarDropdownMenu } from './toolbar-dropdown-menu';\nexport { default as __experimentalToolbarContext } from './toolbar-context';\nexport { default as ToolbarGroup } from './toolbar-group';\nexport { default as ToolbarItem } from './toolbar-item';\nexport {\n\tToolsPanel as __experimentalToolsPanel,\n\tToolsPanelItem as __experimentalToolsPanelItem,\n\tToolsPanelContext as __experimentalToolsPanelContext,\n} from './tools-panel';\nexport { default as Tooltip } from './tooltip';\nexport {\n\tdefault as __experimentalTreeGrid,\n\tTreeGridRow as __experimentalTreeGridRow,\n\tTreeGridCell as __experimentalTreeGridCell,\n\tTreeGridItem as __experimentalTreeGridItem,\n} from './tree-grid';\nexport { default as TreeSelect } from './tree-select';\nexport { Truncate as __experimentalTruncate } from './truncate';\nexport {\n\tdefault as __experimentalUnitControl,\n\tuseCustomUnits as __experimentalUseCustomUnits,\n\tparseQuantityAndUnitFromRawValue as __experimentalParseQuantityAndUnitFromRawValue,\n} from './unit-control';\nexport { View as __experimentalView } from './view';\nexport { VisuallyHidden } from './visually-hidden';\nexport { VStack as __experimentalVStack } from './v-stack';\nexport { default as IsolatedEventContainer } from './isolated-event-container';\nexport {\n\tcreateSlotFill,\n\tSlot,\n\tFill,\n\tProvider as SlotFillProvider,\n\tuseSlot as __experimentalUseSlot,\n} from './slot-fill';\nexport { default as __experimentalStyleProvider } from './style-provider';\nexport { ZStack as __experimentalZStack } from './z-stack';\n\n// Higher-Order Components.\nexport {\n\tdefault as navigateRegions,\n\tuseNavigateRegions as __unstableUseNavigateRegions,\n} from './higher-order/navigate-regions';\nexport { default as withConstrainedTabbing } from './higher-order/with-constrained-tabbing';\nexport { default as withFallbackStyles } from './higher-order/with-fallback-styles';\nexport { default as withFilters } from './higher-order/with-filters';\nexport { default as withFocusOutside } from './higher-order/with-focus-outside';\nexport {\n\tdefault as withFocusReturn,\n\tProvider as FocusReturnProvider,\n} from './higher-order/with-focus-return';\nexport { default as withNotices } from './higher-order/with-notices';\nexport { default as withSpokenMessages } from './higher-order/with-spoken-messages';\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/index.js"],"names":["SVG","Path","Circle","Polygon","Rect","G","HorizontalRule","BlockQuotation","default","__experimentalAlignmentMatrixControl","Animate","getAnimateClassName","__unstableGetAnimateClassName","__unstableMotion","AnglePickerControl","Autocomplete","useAutocompleteProps","__unstableUseAutocompleteProps","BaseControl","BorderBoxControl","__experimentalBorderBoxControl","hasSplitBorders","__experimentalHasSplitBorders","isDefinedBorder","__experimentalIsDefinedBorder","isEmptyBorder","__experimentalIsEmptyBorder","BorderControl","__experimentalBorderControl","__experimentalBoxControl","Button","ButtonGroup","Card","CardBody","CardDivider","CardFooter","CardHeader","CardMedia","CheckboxControl","ClipboardButton","__experimentalPaletteEdit","ColorIndicator","ColorPalette","ColorPicker","ComboboxControl","Composite","__unstableComposite","CompositeGroup","__unstableCompositeGroup","CompositeItem","__unstableCompositeItem","useCompositeState","__unstableUseCompositeState","ConfirmDialog","__experimentalConfirmDialog","CustomSelectControl","Dashicon","DateTimePicker","DatePicker","TimePicker","__experimentalDimensionControl","Disabled","DisclosureContent","__unstableDisclosureContent","Divider","__experimentalDivider","Draggable","DropZone","DropZoneProvider","Dropdown","DropdownMenu","DuotoneSwatch","DuotonePicker","Elevation","__experimentalElevation","ExternalLink","Flex","FlexBlock","FlexItem","Flyout","__experimentalFlyout","FocalPointPicker","FocusableIframe","FontSizePicker","FormFileUpload","FormToggle","FormTokenField","GradientPicker","CustomGradientPicker","Grid","__experimentalGrid","Guide","GuidePage","Heading","__experimentalHeading","HStack","__experimentalHStack","Icon","IconButton","ItemGroup","__experimentalItemGroup","Item","__experimentalItem","__experimentalInputControl","KeyboardShortcuts","MenuGroup","MenuItem","MenuItemsChoice","Modal","ScrollLock","NavigableMenu","TabbableContainer","__experimentalNavigation","__experimentalNavigationBackButton","__experimentalNavigationGroup","__experimentalNavigationItem","__experimentalNavigationMenu","NavigatorProvider","__experimentalNavigatorProvider","NavigatorScreen","__experimentalNavigatorScreen","NavigatorButton","__experimentalNavigatorButton","NavigatorBackButton","__experimentalNavigatorBackButton","useNavigator","__experimentalUseNavigator","Notice","__experimentalNumberControl","NoticeList","Panel","PanelBody","PanelHeader","PanelRow","Placeholder","Popover","QueryControls","__experimentalRadio","__experimentalRadioGroup","RadioControl","RangeControl","ResizableBox","ResponsiveWrapper","SandBox","SearchControl","SelectControl","Snackbar","SnackbarList","Spacer","__experimentalSpacer","Scrollable","__experimentalScrollable","Spinner","Surface","__experimentalSurface","TabPanel","Text","__experimentalText","TextControl","TextareaControl","TextHighlight","Tip","ToggleControl","ToggleGroupControl","__experimentalToggleGroupControl","ToggleGroupControlOption","__experimentalToggleGroupControlOption","ToggleGroupControlOptionIcon","__experimentalToggleGroupControlOptionIcon","Toolbar","ToolbarButton","ToolbarDropdownMenu","__experimentalToolbarContext","ToolbarGroup","ToolbarItem","ToolsPanel","__experimentalToolsPanel","ToolsPanelItem","__experimentalToolsPanelItem","ToolsPanelContext","__experimentalToolsPanelContext","Tooltip","__experimentalTreeGrid","TreeGridRow","__experimentalTreeGridRow","TreeGridCell","__experimentalTreeGridCell","TreeGridItem","__experimentalTreeGridItem","TreeSelect","Truncate","__experimentalTruncate","__experimentalUnitControl","useCustomUnits","__experimentalUseCustomUnits","parseQuantityAndUnitFromRawValue","__experimentalParseQuantityAndUnitFromRawValue","View","__experimentalView","VisuallyHidden","VStack","__experimentalVStack","IsolatedEventContainer","createSlotFill","Slot","Fill","Provider","SlotFillProvider","useSlot","__experimentalUseSlot","__experimentalStyleProvider","ZStack","__experimentalZStack","navigateRegions","useNavigateRegions","__unstableUseNavigateRegions","withConstrainedTabbing","withFallbackStyles","withFilters","withFocusOutside","withFocusReturn","FocusReturnProvider","withNotices","withSpokenMessages"],"mappings":"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","sourcesContent":["// Primitives.\nexport {\n\tSVG,\n\tPath,\n\tCircle,\n\tPolygon,\n\tRect,\n\tG,\n\tHorizontalRule,\n\tBlockQuotation,\n} from '@wordpress/primitives';\n\n// Components.\nexport { default as __experimentalAlignmentMatrixControl } from './alignment-matrix-control';\nexport {\n\tdefault as Animate,\n\tgetAnimateClassName as __unstableGetAnimateClassName,\n} from './animate';\nexport { __unstableMotion } from './animation';\nexport { default as AnglePickerControl } from './angle-picker-control';\nexport {\n\tdefault as Autocomplete,\n\tuseAutocompleteProps as __unstableUseAutocompleteProps,\n} from './autocomplete';\nexport { default as BaseControl } from './base-control';\nexport {\n\tBorderBoxControl as __experimentalBorderBoxControl,\n\thasSplitBorders as __experimentalHasSplitBorders,\n\tisDefinedBorder as __experimentalIsDefinedBorder,\n\tisEmptyBorder as __experimentalIsEmptyBorder,\n} from './border-box-control';\nexport { BorderControl as __experimentalBorderControl } from './border-control';\nexport { default as __experimentalBoxControl } from './box-control';\nexport { default as Button } from './button';\nexport { default as ButtonGroup } from './button-group';\nexport {\n\tCard,\n\tCardBody,\n\tCardDivider,\n\tCardFooter,\n\tCardHeader,\n\tCardMedia,\n} from './card';\nexport { default as CheckboxControl } from './checkbox-control';\nexport { default as ClipboardButton } from './clipboard-button';\nexport { default as __experimentalPaletteEdit } from './palette-edit';\nexport { default as ColorIndicator } from './color-indicator';\nexport { default as ColorPalette } from './color-palette';\nexport { ColorPicker } from './color-picker';\nexport { default as ComboboxControl } from './combobox-control';\nexport {\n\tComposite as __unstableComposite,\n\tCompositeGroup as __unstableCompositeGroup,\n\tCompositeItem as __unstableCompositeItem,\n\tuseCompositeState as __unstableUseCompositeState,\n} from './composite';\nexport { ConfirmDialog as __experimentalConfirmDialog } from './confirm-dialog';\nexport { default as CustomSelectControl } from './custom-select-control';\nexport { default as Dashicon } from './dashicon';\nexport { default as DateTimePicker, DatePicker, TimePicker } from './date-time';\nexport { default as __experimentalDimensionControl } from './dimension-control';\nexport { default as Disabled } from './disabled';\nexport { DisclosureContent as __unstableDisclosureContent } from './disclosure';\nexport { Divider as __experimentalDivider } from './divider';\nexport { default as Draggable } from './draggable';\nexport { default as DropZone } from './drop-zone';\nexport { default as DropZoneProvider } from './drop-zone/provider';\nexport { default as Dropdown } from './dropdown';\nexport { default as DropdownMenu } from './dropdown-menu';\nexport { DuotoneSwatch, DuotonePicker } from './duotone-picker';\nexport { Elevation as __experimentalElevation } from './elevation';\nexport { default as ExternalLink } from './external-link';\nexport { Flex, FlexBlock, FlexItem } from './flex';\nexport { Flyout as __experimentalFlyout } from './flyout';\nexport { default as FocalPointPicker } from './focal-point-picker';\nexport { default as FocusableIframe } from './focusable-iframe';\nexport { default as FontSizePicker } from './font-size-picker';\nexport { default as FormFileUpload } from './form-file-upload';\nexport { default as FormToggle } from './form-toggle';\nexport { default as FormTokenField } from './form-token-field';\nexport { default as GradientPicker } from './gradient-picker';\nexport { default as CustomGradientPicker } from './custom-gradient-picker';\nexport { Grid as __experimentalGrid } from './grid';\nexport { default as Guide } from './guide';\nexport { default as GuidePage } from './guide/page';\nexport { Heading as __experimentalHeading } from './heading';\nexport { HStack as __experimentalHStack } from './h-stack';\nexport { default as Icon } from './icon';\nexport { default as IconButton } from './button/deprecated';\nexport {\n\tItemGroup as __experimentalItemGroup,\n\tItem as __experimentalItem,\n} from './item-group';\nexport { default as __experimentalInputControl } from './input-control';\nexport { default as KeyboardShortcuts } from './keyboard-shortcuts';\nexport { default as MenuGroup } from './menu-group';\nexport { default as MenuItem } from './menu-item';\nexport { default as MenuItemsChoice } from './menu-items-choice';\nexport { default as Modal } from './modal';\nexport { default as ScrollLock } from './scroll-lock';\nexport { NavigableMenu, TabbableContainer } from './navigable-container';\nexport { default as __experimentalNavigation } from './navigation';\nexport { default as __experimentalNavigationBackButton } from './navigation/back-button';\nexport { default as __experimentalNavigationGroup } from './navigation/group';\nexport { default as __experimentalNavigationItem } from './navigation/item';\nexport { default as __experimentalNavigationMenu } from './navigation/menu';\nexport {\n\tNavigatorProvider as __experimentalNavigatorProvider,\n\tNavigatorScreen as __experimentalNavigatorScreen,\n\tNavigatorButton as __experimentalNavigatorButton,\n\tNavigatorBackButton as __experimentalNavigatorBackButton,\n\tuseNavigator as __experimentalUseNavigator,\n} from './navigator';\nexport { default as Notice } from './notice';\nexport { default as __experimentalNumberControl } from './number-control';\nexport { default as NoticeList } from './notice/list';\nexport { default as Panel } from './panel';\nexport { default as PanelBody } from './panel/body';\nexport { default as PanelHeader } from './panel/header';\nexport { default as PanelRow } from './panel/row';\nexport { default as Placeholder } from './placeholder';\nexport { default as Popover } from './popover';\nexport { default as QueryControls } from './query-controls';\nexport { default as __experimentalRadio } from './radio';\nexport { default as __experimentalRadioGroup } from './radio-group';\nexport { default as RadioControl } from './radio-control';\nexport { default as RangeControl } from './range-control';\nexport { default as ResizableBox } from './resizable-box';\nexport { default as ResponsiveWrapper } from './responsive-wrapper';\nexport { default as SandBox } from './sandbox';\nexport { default as SearchControl } from './search-control';\nexport { default as SelectControl } from './select-control';\nexport { default as Snackbar } from './snackbar';\nexport { default as SnackbarList } from './snackbar/list';\nexport { Spacer as __experimentalSpacer } from './spacer';\nexport { Scrollable as __experimentalScrollable } from './scrollable';\nexport { default as Spinner } from './spinner';\nexport { Surface as __experimentalSurface } from './surface';\nexport { default as TabPanel } from './tab-panel';\nexport { Text as __experimentalText } from './text';\nexport { default as TextControl } from './text-control';\nexport { default as TextareaControl } from './textarea-control';\nexport { default as TextHighlight } from './text-highlight';\nexport { default as Tip } from './tip';\nexport { default as ToggleControl } from './toggle-control';\nexport {\n\tToggleGroupControl as __experimentalToggleGroupControl,\n\tToggleGroupControlOption as __experimentalToggleGroupControlOption,\n\tToggleGroupControlOptionIcon as __experimentalToggleGroupControlOptionIcon,\n} from './toggle-group-control';\nexport { default as Toolbar } from './toolbar';\nexport { default as ToolbarButton } from './toolbar-button';\nexport { default as ToolbarDropdownMenu } from './toolbar-dropdown-menu';\nexport { default as __experimentalToolbarContext } from './toolbar-context';\nexport { default as ToolbarGroup } from './toolbar-group';\nexport { default as ToolbarItem } from './toolbar-item';\nexport {\n\tToolsPanel as __experimentalToolsPanel,\n\tToolsPanelItem as __experimentalToolsPanelItem,\n\tToolsPanelContext as __experimentalToolsPanelContext,\n} from './tools-panel';\nexport { default as Tooltip } from './tooltip';\nexport {\n\tdefault as __experimentalTreeGrid,\n\tTreeGridRow as __experimentalTreeGridRow,\n\tTreeGridCell as __experimentalTreeGridCell,\n\tTreeGridItem as __experimentalTreeGridItem,\n} from './tree-grid';\nexport { default as TreeSelect } from './tree-select';\nexport { Truncate as __experimentalTruncate } from './truncate';\nexport {\n\tdefault as __experimentalUnitControl,\n\tuseCustomUnits as __experimentalUseCustomUnits,\n\tparseQuantityAndUnitFromRawValue as __experimentalParseQuantityAndUnitFromRawValue,\n} from './unit-control';\nexport { View as __experimentalView } from './view';\nexport { VisuallyHidden } from './visually-hidden';\nexport { VStack as __experimentalVStack } from './v-stack';\nexport { default as IsolatedEventContainer } from './isolated-event-container';\nexport {\n\tcreateSlotFill,\n\tSlot,\n\tFill,\n\tProvider as SlotFillProvider,\n\tuseSlot as __experimentalUseSlot,\n} from './slot-fill';\nexport { default as __experimentalStyleProvider } from './style-provider';\nexport { ZStack as __experimentalZStack } from './z-stack';\n\n// Higher-Order Components.\nexport {\n\tdefault as navigateRegions,\n\tuseNavigateRegions as __unstableUseNavigateRegions,\n} from './higher-order/navigate-regions';\nexport { default as withConstrainedTabbing } from './higher-order/with-constrained-tabbing';\nexport { default as withFallbackStyles } from './higher-order/with-fallback-styles';\nexport { default as withFilters } from './higher-order/with-filters';\nexport { default as withFocusOutside } from './higher-order/with-focus-outside';\nexport {\n\tdefault as withFocusReturn,\n\tProvider as FocusReturnProvider,\n} from './higher-order/with-focus-return';\nexport { default as withNotices } from './higher-order/with-notices';\nexport { default as withSpokenMessages } from './higher-order/with-spoken-messages';\n"]}
@@ -11,7 +11,6 @@ import { useDrag } from '@use-gesture/react';
11
11
  * WordPress dependencies
12
12
  */
13
13
  import { forwardRef, useRef } from '@wordpress/element';
14
- import { UP, DOWN, ENTER, ESCAPE } from '@wordpress/keycodes';
15
14
  /**
16
15
  * Internal dependencies
17
16
  */
@@ -58,8 +57,7 @@ function InputField(_ref, ref) {
58
57
  pressDown,
59
58
  pressEnter,
60
59
  pressUp,
61
- reset,
62
- update
60
+ reset
63
61
  } = useInputControlStateReducer(stateReducer, {
64
62
  isDragEnabled,
65
63
  value: valueProp,
@@ -87,7 +85,7 @@ function InputField(_ref, ref) {
87
85
  }
88
86
 
89
87
  if (!isFocused && !wasDirtyOnBlur.current) {
90
- update(valueProp, _event);
88
+ commit(valueProp, _event);
91
89
  } else if (!isDirty) {
92
90
  onChange(value, {
93
91
  event: _event
@@ -104,7 +102,7 @@ function InputField(_ref, ref) {
104
102
  * the onChange callback.
105
103
  */
106
104
 
107
- if (isPressEnterToChange && isDirty) {
105
+ if (isDirty || !event.target.validity.valid) {
108
106
  wasDirtyOnBlur.current = true;
109
107
  handleOnCommit(event);
110
108
  }
@@ -133,20 +131,20 @@ function InputField(_ref, ref) {
133
131
 
134
132
  const handleOnKeyDown = event => {
135
133
  const {
136
- keyCode
134
+ key
137
135
  } = event;
138
136
  onKeyDown(event);
139
137
 
140
- switch (keyCode) {
141
- case UP:
138
+ switch (key) {
139
+ case 'ArrowUp':
142
140
  pressUp(event);
143
141
  break;
144
142
 
145
- case DOWN:
143
+ case 'ArrowDown':
146
144
  pressDown(event);
147
145
  break;
148
146
 
149
- case ENTER:
147
+ case 'Enter':
150
148
  pressEnter(event);
151
149
 
152
150
  if (isPressEnterToChange) {
@@ -156,7 +154,7 @@ function InputField(_ref, ref) {
156
154
 
157
155
  break;
158
156
 
159
- case ESCAPE:
157
+ case 'Escape':
160
158
  if (isPressEnterToChange && isDirty) {
161
159
  event.preventDefault();
162
160
  reset(valueProp, event);
@@ -170,8 +168,18 @@ function InputField(_ref, ref) {
170
168
  const {
171
169
  distance,
172
170
  dragging,
173
- event
174
- } = dragProps;
171
+ event,
172
+ target
173
+ } = dragProps; // The `target` prop always references the `input` element while, by
174
+ // default, the `dragProps.event.target` property would reference the real
175
+ // event target (i.e. any DOM element that the pointer is hovering while
176
+ // dragging). Ensuring that the `target` is always the `input` element
177
+ // allows consumers of `InputControl` (or any higher-level control) to
178
+ // check the input's validity by accessing `event.target.validity.valid`.
179
+
180
+ dragProps.event = { ...dragProps.event,
181
+ target
182
+ };
175
183
  if (!distance) return;
176
184
  event.stopPropagation();
177
185
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/input-field.tsx"],"names":["noop","useDrag","forwardRef","useRef","UP","DOWN","ENTER","ESCAPE","useDragCursor","Input","useInputControlStateReducer","useUpdateEffect","InputField","ref","disabled","dragDirection","dragThreshold","id","isDragEnabled","isFocused","isPressEnterToChange","onBlur","onChange","onDrag","onDragEnd","onDragStart","onFocus","onKeyDown","onValidate","size","setIsFocused","stateReducer","state","value","valueProp","type","props","change","commit","drag","dragEnd","dragStart","invalidate","pressDown","pressEnter","pressUp","reset","update","_event","isDragging","isDirty","wasDirtyOnBlur","dragCursor","current","event","handleOnBlur","handleOnCommit","handleOnFocus","handleOnChange","nextValue","target","currentTarget","err","handleOnKeyDown","keyCode","preventDefault","dragGestureProps","dragProps","distance","dragging","stopPropagation","axis","threshold","enabled","pointer","capture","handleOnMouseDown","onMouseDown","ownerDocument","activeElement","focus","ForwardedComponent"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport { useDrag } from '@use-gesture/react';\nimport type {\n\tSyntheticEvent,\n\tChangeEvent,\n\tKeyboardEvent,\n\tPointerEvent,\n\tFocusEvent,\n\tForwardedRef,\n\tMouseEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useRef } from '@wordpress/element';\nimport { UP, DOWN, ENTER, ESCAPE } from '@wordpress/keycodes';\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { useDragCursor } from './utils';\nimport { Input } from './styles/input-control-styles';\nimport { useInputControlStateReducer } from './reducer/reducer';\nimport { useUpdateEffect } from '../utils';\nimport type { InputFieldProps } from './types';\n\nfunction InputField(\n\t{\n\t\tdisabled = false,\n\t\tdragDirection = 'n',\n\t\tdragThreshold = 10,\n\t\tid,\n\t\tisDragEnabled = false,\n\t\tisFocused,\n\t\tisPressEnterToChange = false,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonDrag = noop,\n\t\tonDragEnd = noop,\n\t\tonDragStart = noop,\n\t\tonFocus = noop,\n\t\tonKeyDown = noop,\n\t\tonValidate = noop,\n\t\tsize = 'default',\n\t\tsetIsFocused,\n\t\tstateReducer = ( state: any ) => state,\n\t\tvalue: valueProp,\n\t\ttype,\n\t\t...props\n\t}: WordPressComponentProps< InputFieldProps, 'input', false >,\n\tref: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t// State.\n\t\tstate,\n\t\t// Actions.\n\t\tchange,\n\t\tcommit,\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\tupdate,\n\t} = useInputControlStateReducer( stateReducer, {\n\t\tisDragEnabled,\n\t\tvalue: valueProp,\n\t\tisPressEnterToChange,\n\t} );\n\n\tconst { _event, value, isDragging, isDirty } = state;\n\tconst wasDirtyOnBlur = useRef( false );\n\n\tconst dragCursor = useDragCursor( isDragging, dragDirection );\n\n\t/*\n\t * Handles synchronization of external and internal value state.\n\t * If not focused and did not hold a dirty value[1] on blur\n\t * updates the value from the props. Otherwise if not holding\n\t * a dirty value[1] propagates the value and event through onChange.\n\t * [1] value is only made dirty if isPressEnterToChange is true\n\t */\n\tuseUpdateEffect( () => {\n\t\tif ( valueProp === value ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( ! isFocused && ! wasDirtyOnBlur.current ) {\n\t\t\tupdate( valueProp, _event as SyntheticEvent );\n\t\t} else if ( ! isDirty ) {\n\t\t\tonChange( value, {\n\t\t\t\tevent: _event as ChangeEvent< HTMLInputElement >,\n\t\t\t} );\n\t\t\twasDirtyOnBlur.current = false;\n\t\t}\n\t}, [ value, isDirty, isFocused, valueProp ] );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused?.( false );\n\n\t\t/**\n\t\t * If isPressEnterToChange is set, this commits the value to\n\t\t * the onChange callback.\n\t\t */\n\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\twasDirtyOnBlur.current = true;\n\t\t\thandleOnCommit( event );\n\t\t}\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused?.( true );\n\t};\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.target.value;\n\t\tchange( nextValue, event );\n\t};\n\n\tconst handleOnCommit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.currentTarget.value;\n\n\t\ttry {\n\t\t\tonValidate( nextValue );\n\t\t\tcommit( nextValue, event );\n\t\t} catch ( err ) {\n\t\t\tinvalidate( err, event );\n\t\t}\n\t};\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { keyCode } = event;\n\t\tonKeyDown( event );\n\n\t\tswitch ( keyCode ) {\n\t\t\tcase UP:\n\t\t\t\tpressUp( event );\n\t\t\t\tbreak;\n\n\t\t\tcase DOWN:\n\t\t\t\tpressDown( event );\n\t\t\t\tbreak;\n\n\t\t\tcase ENTER:\n\t\t\t\tpressEnter( event );\n\n\t\t\t\tif ( isPressEnterToChange ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\thandleOnCommit( event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase ESCAPE:\n\t\t\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\treset( valueProp, event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\tconst dragGestureProps = useDrag< PointerEvent< HTMLInputElement > >(\n\t\t( dragProps ) => {\n\t\t\tconst { distance, dragging, event } = dragProps;\n\n\t\t\tif ( ! distance ) return;\n\t\t\tevent.stopPropagation();\n\n\t\t\t/**\n\t\t\t * Quick return if no longer dragging.\n\t\t\t * This prevents unnecessary value calculations.\n\t\t\t */\n\t\t\tif ( ! dragging ) {\n\t\t\t\tonDragEnd( dragProps );\n\t\t\t\tdragEnd( dragProps );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tonDrag( dragProps );\n\t\t\tdrag( dragProps );\n\n\t\t\tif ( ! isDragging ) {\n\t\t\t\tonDragStart( dragProps );\n\t\t\t\tdragStart( dragProps );\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\taxis: dragDirection === 'e' || dragDirection === 'w' ? 'x' : 'y',\n\t\t\tthreshold: dragThreshold,\n\t\t\tenabled: isDragEnabled,\n\t\t\tpointer: { capture: false },\n\t\t}\n\t);\n\n\tconst dragProps = isDragEnabled ? dragGestureProps() : {};\n\t/*\n\t * Works around the odd UA (e.g. Firefox) that does not focus inputs of\n\t * type=number when their spinner arrows are pressed.\n\t */\n\tlet handleOnMouseDown;\n\tif ( type === 'number' ) {\n\t\thandleOnMouseDown = ( event: MouseEvent< HTMLInputElement > ) => {\n\t\t\tprops.onMouseDown?.( event );\n\t\t\tif (\n\t\t\t\tevent.currentTarget !==\n\t\t\t\tevent.currentTarget.ownerDocument.activeElement\n\t\t\t) {\n\t\t\t\tevent.currentTarget.focus();\n\t\t\t}\n\t\t};\n\t}\n\n\treturn (\n\t\t<Input\n\t\t\t{ ...props }\n\t\t\t{ ...dragProps }\n\t\t\tclassName=\"components-input-control__input\"\n\t\t\tdisabled={ disabled }\n\t\t\tdragCursor={ dragCursor }\n\t\t\tisDragging={ isDragging }\n\t\t\tid={ id }\n\t\t\tonBlur={ handleOnBlur }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonFocus={ handleOnFocus }\n\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\tonMouseDown={ handleOnMouseDown }\n\t\t\tref={ ref }\n\t\t\tinputSize={ size }\n\t\t\tvalue={ value }\n\t\t\ttype={ type }\n\t\t/>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( InputField );\n\nexport default ForwardedComponent;\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/input-field.tsx"],"names":["noop","useDrag","forwardRef","useRef","useDragCursor","Input","useInputControlStateReducer","useUpdateEffect","InputField","ref","disabled","dragDirection","dragThreshold","id","isDragEnabled","isFocused","isPressEnterToChange","onBlur","onChange","onDrag","onDragEnd","onDragStart","onFocus","onKeyDown","onValidate","size","setIsFocused","stateReducer","state","value","valueProp","type","props","change","commit","drag","dragEnd","dragStart","invalidate","pressDown","pressEnter","pressUp","reset","_event","isDragging","isDirty","wasDirtyOnBlur","dragCursor","current","event","handleOnBlur","target","validity","valid","handleOnCommit","handleOnFocus","handleOnChange","nextValue","currentTarget","err","handleOnKeyDown","key","preventDefault","dragGestureProps","dragProps","distance","dragging","stopPropagation","axis","threshold","enabled","pointer","capture","handleOnMouseDown","onMouseDown","ownerDocument","activeElement","focus","ForwardedComponent"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { noop } from 'lodash';\nimport { useDrag } from '@use-gesture/react';\nimport type {\n\tSyntheticEvent,\n\tChangeEvent,\n\tKeyboardEvent,\n\tPointerEvent,\n\tFocusEvent,\n\tForwardedRef,\n\tMouseEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useRef } from '@wordpress/element';\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../ui/context';\nimport { useDragCursor } from './utils';\nimport { Input } from './styles/input-control-styles';\nimport { useInputControlStateReducer } from './reducer/reducer';\nimport { useUpdateEffect } from '../utils';\nimport type { InputFieldProps } from './types';\n\nfunction InputField(\n\t{\n\t\tdisabled = false,\n\t\tdragDirection = 'n',\n\t\tdragThreshold = 10,\n\t\tid,\n\t\tisDragEnabled = false,\n\t\tisFocused,\n\t\tisPressEnterToChange = false,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonDrag = noop,\n\t\tonDragEnd = noop,\n\t\tonDragStart = noop,\n\t\tonFocus = noop,\n\t\tonKeyDown = noop,\n\t\tonValidate = noop,\n\t\tsize = 'default',\n\t\tsetIsFocused,\n\t\tstateReducer = ( state: any ) => state,\n\t\tvalue: valueProp,\n\t\ttype,\n\t\t...props\n\t}: WordPressComponentProps< InputFieldProps, 'input', false >,\n\tref: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t// State.\n\t\tstate,\n\t\t// Actions.\n\t\tchange,\n\t\tcommit,\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} = useInputControlStateReducer( stateReducer, {\n\t\tisDragEnabled,\n\t\tvalue: valueProp,\n\t\tisPressEnterToChange,\n\t} );\n\n\tconst { _event, value, isDragging, isDirty } = state;\n\tconst wasDirtyOnBlur = useRef( false );\n\n\tconst dragCursor = useDragCursor( isDragging, dragDirection );\n\n\t/*\n\t * Handles synchronization of external and internal value state.\n\t * If not focused and did not hold a dirty value[1] on blur\n\t * updates the value from the props. Otherwise if not holding\n\t * a dirty value[1] propagates the value and event through onChange.\n\t * [1] value is only made dirty if isPressEnterToChange is true\n\t */\n\tuseUpdateEffect( () => {\n\t\tif ( valueProp === value ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( ! isFocused && ! wasDirtyOnBlur.current ) {\n\t\t\tcommit( valueProp, _event as SyntheticEvent );\n\t\t} else if ( ! isDirty ) {\n\t\t\tonChange( value, {\n\t\t\t\tevent: _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\twasDirtyOnBlur.current = false;\n\t\t}\n\t}, [ value, isDirty, isFocused, valueProp ] );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused?.( false );\n\n\t\t/**\n\t\t * If isPressEnterToChange is set, this commits the value to\n\t\t * the onChange callback.\n\t\t */\n\t\tif ( isDirty || ! event.target.validity.valid ) {\n\t\t\twasDirtyOnBlur.current = true;\n\t\t\thandleOnCommit( event );\n\t\t}\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused?.( true );\n\t};\n\n\tconst handleOnChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.target.value;\n\t\tchange( nextValue, event );\n\t};\n\n\tconst handleOnCommit = ( event: SyntheticEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = event.currentTarget.value;\n\n\t\ttry {\n\t\t\tonValidate( nextValue );\n\t\t\tcommit( nextValue, event );\n\t\t} catch ( err ) {\n\t\t\tinvalidate( err, event );\n\t\t}\n\t};\n\n\tconst handleOnKeyDown = ( event: KeyboardEvent< HTMLInputElement > ) => {\n\t\tconst { key } = event;\n\t\tonKeyDown( event );\n\n\t\tswitch ( key ) {\n\t\t\tcase 'ArrowUp':\n\t\t\t\tpressUp( event );\n\t\t\t\tbreak;\n\n\t\t\tcase 'ArrowDown':\n\t\t\t\tpressDown( event );\n\t\t\t\tbreak;\n\n\t\t\tcase 'Enter':\n\t\t\t\tpressEnter( event );\n\n\t\t\t\tif ( isPressEnterToChange ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\thandleOnCommit( event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\n\t\t\tcase 'Escape':\n\t\t\t\tif ( isPressEnterToChange && isDirty ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\treset( valueProp, event );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t};\n\n\tconst dragGestureProps = useDrag< PointerEvent< HTMLInputElement > >(\n\t\t( dragProps ) => {\n\t\t\tconst { distance, dragging, event, target } = dragProps;\n\n\t\t\t// The `target` prop always references the `input` element while, by\n\t\t\t// default, the `dragProps.event.target` property would reference the real\n\t\t\t// event target (i.e. any DOM element that the pointer is hovering while\n\t\t\t// dragging). Ensuring that the `target` is always the `input` element\n\t\t\t// allows consumers of `InputControl` (or any higher-level control) to\n\t\t\t// check the input's validity by accessing `event.target.validity.valid`.\n\t\t\tdragProps.event = {\n\t\t\t\t...dragProps.event,\n\t\t\t\ttarget,\n\t\t\t};\n\n\t\t\tif ( ! distance ) return;\n\t\t\tevent.stopPropagation();\n\n\t\t\t/**\n\t\t\t * Quick return if no longer dragging.\n\t\t\t * This prevents unnecessary value calculations.\n\t\t\t */\n\t\t\tif ( ! dragging ) {\n\t\t\t\tonDragEnd( dragProps );\n\t\t\t\tdragEnd( dragProps );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tonDrag( dragProps );\n\t\t\tdrag( dragProps );\n\n\t\t\tif ( ! isDragging ) {\n\t\t\t\tonDragStart( dragProps );\n\t\t\t\tdragStart( dragProps );\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\taxis: dragDirection === 'e' || dragDirection === 'w' ? 'x' : 'y',\n\t\t\tthreshold: dragThreshold,\n\t\t\tenabled: isDragEnabled,\n\t\t\tpointer: { capture: false },\n\t\t}\n\t);\n\n\tconst dragProps = isDragEnabled ? dragGestureProps() : {};\n\t/*\n\t * Works around the odd UA (e.g. Firefox) that does not focus inputs of\n\t * type=number when their spinner arrows are pressed.\n\t */\n\tlet handleOnMouseDown;\n\tif ( type === 'number' ) {\n\t\thandleOnMouseDown = ( event: MouseEvent< HTMLInputElement > ) => {\n\t\t\tprops.onMouseDown?.( event );\n\t\t\tif (\n\t\t\t\tevent.currentTarget !==\n\t\t\t\tevent.currentTarget.ownerDocument.activeElement\n\t\t\t) {\n\t\t\t\tevent.currentTarget.focus();\n\t\t\t}\n\t\t};\n\t}\n\n\treturn (\n\t\t<Input\n\t\t\t{ ...props }\n\t\t\t{ ...dragProps }\n\t\t\tclassName=\"components-input-control__input\"\n\t\t\tdisabled={ disabled }\n\t\t\tdragCursor={ dragCursor }\n\t\t\tisDragging={ isDragging }\n\t\t\tid={ id }\n\t\t\tonBlur={ handleOnBlur }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonFocus={ handleOnFocus }\n\t\t\tonKeyDown={ handleOnKeyDown }\n\t\t\tonMouseDown={ handleOnMouseDown }\n\t\t\tref={ ref }\n\t\t\tinputSize={ size }\n\t\t\tvalue={ value }\n\t\t\ttype={ type }\n\t\t/>\n\t);\n}\n\nconst ForwardedComponent = forwardRef( InputField );\n\nexport default ForwardedComponent;\n"]}
@@ -15,5 +15,4 @@ export const PRESS_DOWN = 'PRESS_DOWN';
15
15
  export const PRESS_ENTER = 'PRESS_ENTER';
16
16
  export const PRESS_UP = 'PRESS_UP';
17
17
  export const RESET = 'RESET';
18
- export const UPDATE = 'UPDATE';
19
18
  //# sourceMappingURL=actions.js.map
@@ -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","UPDATE"],"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;AACP,OAAO,MAAMC,MAAM,GAAG,QAAf","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';\nexport const UPDATE = 'UPDATE';\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 UpdateAction = Action< typeof UPDATE, ValuePayload >;\nexport type InvalidateAction = Action< typeof INVALIDATE, { error: unknown } >;\n\nexport type ChangeEventAction =\n\t| ChangeAction\n\t| ResetAction\n\t| CommitAction\n\t| UpdateAction;\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","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,7 +1,6 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { isEmpty } from 'lodash';
5
4
 
6
5
  /**
7
6
  * WordPress dependencies
@@ -30,36 +29,6 @@ function mergeInitialState() {
30
29
  initialValue: value
31
30
  };
32
31
  }
33
- /**
34
- * Composes multiple stateReducers into a single stateReducer, building
35
- * the pipeline to control the flow for state and actions.
36
- *
37
- * @param fns State reducers.
38
- * @return The single composed stateReducer.
39
- */
40
-
41
-
42
- export const composeStateReducers = function () {
43
- for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {
44
- fns[_key] = arguments[_key];
45
- }
46
-
47
- return function () {
48
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
49
- args[_key2] = arguments[_key2];
50
- }
51
-
52
- return fns.reduceRight((state, fn) => {
53
- // TODO: Assess whether this can be replaced with a more standard `compose` implementation
54
- // like wp.data.compose() (aka lodash flowRight) or Redux compose().
55
- // The current implementation only works by functions mutating the original state object.
56
- const fnState = fn(...args);
57
- return isEmpty(fnState) ? state : { ...state,
58
- ...fnState
59
- };
60
- }, {});
61
- };
62
- };
63
32
  /**
64
33
  * Creates a reducer that opens the channel for external state subscription
65
34
  * and modification.
@@ -71,6 +40,7 @@ export const composeStateReducers = function () {
71
40
  * @return The reducer.
72
41
  */
73
42
 
43
+
74
44
  function inputControlStateReducer(composedStateReducers) {
75
45
  return (state, action) => {
76
46
  const nextState = { ...state
@@ -125,11 +95,6 @@ function inputControlStateReducer(composedStateReducers) {
125
95
  nextState.value = action.payload.value || state.initialValue;
126
96
  break;
127
97
 
128
- case actions.UPDATE:
129
- nextState.value = action.payload.value;
130
- nextState.isDirty = false;
131
- break;
132
-
133
98
  /**
134
99
  * Validation
135
100
  */
@@ -233,7 +198,6 @@ export function useInputControlStateReducer() {
233
198
 
234
199
  const reset = createChangeEvent(actions.RESET);
235
200
  const commit = createChangeEvent(actions.COMMIT);
236
- const update = createChangeEvent(actions.UPDATE);
237
201
  const dragStart = createDragEvent(actions.DRAG_START);
238
202
  const drag = createDragEvent(actions.DRAG);
239
203
  const dragEnd = createDragEvent(actions.DRAG_END);
@@ -252,8 +216,7 @@ export function useInputControlStateReducer() {
252
216
  pressEnter,
253
217
  pressUp,
254
218
  reset,
255
- state,
256
- update
219
+ state
257
220
  };
258
221
  }
259
222
  //# sourceMappingURL=reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["isEmpty","useReducer","initialInputControlState","initialStateReducer","actions","mergeInitialState","initialState","value","initialValue","composeStateReducers","fns","args","reduceRight","state","fn","fnState","inputControlStateReducer","composedStateReducers","action","nextState","type","PRESS_UP","isDirty","PRESS_DOWN","DRAG_START","isDragging","DRAG_END","CHANGE","error","payload","isPressEnterToChange","COMMIT","RESET","UPDATE","INVALIDATE","event","_event","useInputControlStateReducer","stateReducer","dispatch","createChangeEvent","nextValue","persist","createKeyEvent","createDragEvent","change","invalidate","reset","commit","update","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\nimport type { SyntheticEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer } 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';\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 * Composes multiple stateReducers into a single stateReducer, building\n * the pipeline to control the flow for state and actions.\n *\n * @param fns State reducers.\n * @return The single composed stateReducer.\n */\nexport const composeStateReducers = (\n\t...fns: StateReducer[]\n): StateReducer => {\n\treturn ( ...args ) => {\n\t\treturn fns.reduceRight( ( state, fn ) => {\n\t\t\t// TODO: Assess whether this can be replaced with a more standard `compose` implementation\n\t\t\t// like wp.data.compose() (aka lodash flowRight) or Redux compose().\n\t\t\t// The current implementation only works by functions mutating the original state object.\n\t\t\tconst fnState = fn( ...args );\n\t\t\treturn isEmpty( fnState ) ? state : { ...state, ...fnState };\n\t\t}, {} as InputState );\n\t};\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\tcase actions.UPDATE:\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\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\tif ( action.payload.event ) {\n\t\t\tnextState._event = action.payload.event;\n\t\t}\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 * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState\n) {\n\tconst [ state, dispatch ] = useReducer< StateReducer >(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent = ( type: actions.ChangeEventAction[ 'type' ] ) => (\n\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype,\n\t\t\tpayload: { value: nextValue, event },\n\t\t} as actions.InputAction );\n\t};\n\n\tconst createKeyEvent = ( type: actions.KeyEventAction[ 'type' ] ) => (\n\t\tevent: actions.KeyEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( { type, payload: { event } } );\n\t};\n\n\tconst createDragEvent = ( type: actions.DragEventAction[ 'type' ] ) => (\n\t\tpayload: actions.DragEventAction[ 'payload' ]\n\t) => {\n\t\tdispatch( { type, payload } );\n\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\tconst update = createChangeEvent( actions.UPDATE );\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\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\tupdate,\n\t} as const;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/components/src/input-control/reducer/reducer.ts"],"names":["useReducer","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","dispatch","createChangeEvent","nextValue","persist","createKeyEvent","createDragEvent","change","invalidate","reset","commit","dragStart","drag","DRAG","dragEnd","pressUp","pressDown","pressEnter","PRESS_ENTER"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { SyntheticEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useReducer } 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';\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\tif ( action.payload.event ) {\n\t\t\tnextState._event = action.payload.event;\n\t\t}\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 * @return State, dispatch, and a collection of actions.\n */\nexport function useInputControlStateReducer(\n\tstateReducer: StateReducer = initialStateReducer,\n\tinitialState: Partial< InputState > = initialInputControlState\n) {\n\tconst [ state, dispatch ] = useReducer< StateReducer >(\n\t\tinputControlStateReducer( stateReducer ),\n\t\tmergeInitialState( initialState )\n\t);\n\n\tconst createChangeEvent = ( type: actions.ChangeEventAction[ 'type' ] ) => (\n\t\tnextValue: actions.ChangeEventAction[ 'payload' ][ 'value' ],\n\t\tevent: actions.ChangeEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype,\n\t\t\tpayload: { value: nextValue, event },\n\t\t} as actions.InputAction );\n\t};\n\n\tconst createKeyEvent = ( type: actions.KeyEventAction[ 'type' ] ) => (\n\t\tevent: actions.KeyEventAction[ 'payload' ][ 'event' ]\n\t) => {\n\t\t/**\n\t\t * Persist allows for the (Synthetic) event to be used outside of\n\t\t * this function call.\n\t\t * https://reactjs.org/docs/events.html#event-pooling\n\t\t */\n\t\tif ( event && event.persist ) {\n\t\t\tevent.persist();\n\t\t}\n\n\t\tdispatch( { type, payload: { event } } );\n\t};\n\n\tconst createDragEvent = ( type: actions.DragEventAction[ 'type' ] ) => (\n\t\tpayload: actions.DragEventAction[ 'payload' ]\n\t) => {\n\t\tdispatch( { type, payload } );\n\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\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"]}