@wordpress/components 19.17.0 → 20.0.1-next.d6164808d3.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 (599) hide show
  1. package/CHANGELOG.md +68 -1
  2. package/build/alignment-matrix-control/index.js +1 -1
  3. package/build/alignment-matrix-control/index.js.map +1 -1
  4. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
  5. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  6. package/build/angle-picker-control/index.js +3 -0
  7. package/build/angle-picker-control/index.js.map +1 -1
  8. package/build/angle-picker-control/styles/angle-picker-control-styles.js +14 -4
  9. package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  10. package/build/autocomplete/index.js +9 -11
  11. package/build/autocomplete/index.js.map +1 -1
  12. package/build/base-control/styles/base-control-styles.js +8 -8
  13. package/build/base-control/styles/base-control-styles.js.map +1 -1
  14. package/build/base-field/styles.js +5 -5
  15. package/build/base-field/styles.js.map +1 -1
  16. package/build/box-control/styles/box-control-visualizer-styles.js +8 -8
  17. package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  18. package/build/color-list-picker/index.js +16 -5
  19. package/build/color-list-picker/index.js.map +1 -1
  20. package/build/color-palette/index.js +22 -12
  21. package/build/color-palette/index.js.map +1 -1
  22. package/build/color-palette/index.native.js +3 -3
  23. package/build/color-palette/index.native.js.map +1 -1
  24. package/build/combobox-control/index.js +7 -4
  25. package/build/combobox-control/index.js.map +1 -1
  26. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  27. package/build/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
  28. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
  29. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
  30. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
  31. package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -0
  32. package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  33. package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
  34. package/build/custom-gradient-picker/index.js +19 -4
  35. package/build/custom-gradient-picker/index.js.map +1 -1
  36. package/build/custom-select-control/index.js +21 -11
  37. package/build/custom-select-control/index.js.map +1 -1
  38. package/build/custom-select-control/styles.js +34 -0
  39. package/build/custom-select-control/styles.js.map +1 -0
  40. package/build/date-time/constants.js +9 -0
  41. package/build/date-time/constants.js.map +1 -0
  42. package/build/date-time/date/index.js +175 -186
  43. package/build/date-time/date/index.js.map +1 -1
  44. package/build/date-time/date/styles.js +59 -40
  45. package/build/date-time/date/styles.js.map +1 -1
  46. package/build/date-time/date-time/index.js +5 -2
  47. package/build/date-time/date-time/index.js.map +1 -1
  48. package/build/date-time/time/index.js +22 -17
  49. package/build/date-time/time/index.js.map +1 -1
  50. package/build/date-time/utils.js +27 -0
  51. package/build/date-time/utils.js.map +1 -0
  52. package/build/dimension-control/index.js +2 -6
  53. package/build/dimension-control/index.js.map +1 -1
  54. package/build/disabled/index.js +28 -11
  55. package/build/disabled/index.js.map +1 -1
  56. package/build/disabled/styles/disabled-styles.js +3 -3
  57. package/build/disabled/styles/disabled-styles.js.map +1 -1
  58. package/build/{swatch → disabled}/types.js +0 -0
  59. package/build/{swatch → disabled}/types.js.map +0 -0
  60. package/build/dropdown/index.js +5 -6
  61. package/build/dropdown/index.js.map +1 -1
  62. package/build/duotone-picker/custom-duotone-bar.js +2 -2
  63. package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
  64. package/build/duotone-picker/duotone-picker.js +9 -1
  65. package/build/duotone-picker/duotone-picker.js.map +1 -1
  66. package/build/duotone-picker/duotone-swatch.js +13 -3
  67. package/build/duotone-picker/duotone-swatch.js.map +1 -1
  68. package/build/focal-point-picker/index.js +4 -6
  69. package/build/focal-point-picker/index.js.map +1 -1
  70. package/build/focal-point-picker/styles/focal-point-style.js +4 -4
  71. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  72. package/build/font-size-picker/index.js +43 -14
  73. package/build/font-size-picker/index.js.map +1 -1
  74. package/build/font-size-picker/utils.js +32 -22
  75. package/build/font-size-picker/utils.js.map +1 -1
  76. package/build/form-token-field/index.js +11 -5
  77. package/build/form-token-field/index.js.map +1 -1
  78. package/build/gradient-picker/index.js +15 -3
  79. package/build/gradient-picker/index.js.map +1 -1
  80. package/build/guide/index.js +5 -3
  81. package/build/guide/index.js.map +1 -1
  82. package/build/guide/page-control.js +3 -7
  83. package/build/guide/page-control.js.map +1 -1
  84. package/build/item-group/styles.js +10 -10
  85. package/build/item-group/styles.js.map +1 -1
  86. package/build/mobile/bottom-sheet/index.native.js +3 -6
  87. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  88. package/build/mobile/global-styles-context/utils.native.js +3 -1
  89. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  90. package/build/mobile/image/index.native.js +6 -26
  91. package/build/mobile/image/index.native.js.map +1 -1
  92. package/build/mobile/picker/index.android.js +3 -3
  93. package/build/mobile/picker/index.android.js.map +1 -1
  94. package/build/modal/index.js +1 -3
  95. package/build/modal/index.js.map +1 -1
  96. package/build/navigable-container/container.js +9 -8
  97. package/build/navigable-container/container.js.map +1 -1
  98. package/build/navigator/navigator-back-button/hook.js +0 -4
  99. package/build/navigator/navigator-back-button/hook.js.map +1 -1
  100. package/build/navigator/navigator-button/hook.js +0 -4
  101. package/build/navigator/navigator-button/hook.js.map +1 -1
  102. package/build/notice/list.js +10 -6
  103. package/build/notice/list.js.map +1 -1
  104. package/build/palette-edit/index.js +1 -0
  105. package/build/palette-edit/index.js.map +1 -1
  106. package/build/palette-edit/styles.js +10 -10
  107. package/build/palette-edit/styles.js.map +1 -1
  108. package/build/popover/index.js +100 -97
  109. package/build/popover/index.js.map +1 -1
  110. package/build/popover/utils.js +178 -0
  111. package/build/popover/utils.js.map +1 -0
  112. package/build/range-control/index.js +3 -0
  113. package/build/range-control/index.js.map +1 -1
  114. package/build/range-control/styles/range-control-styles.js +43 -37
  115. package/build/range-control/styles/range-control-styles.js.map +1 -1
  116. package/build/select-control/chevron-down.js +30 -0
  117. package/build/select-control/chevron-down.js.map +1 -0
  118. package/build/select-control/index.js +7 -7
  119. package/build/select-control/index.js.map +1 -1
  120. package/build/select-control/styles/select-control-styles.js +30 -15
  121. package/build/select-control/styles/select-control-styles.js.map +1 -1
  122. package/build/snackbar/list.js +5 -3
  123. package/build/snackbar/list.js.map +1 -1
  124. package/build/spinner/index.js +2 -0
  125. package/build/spinner/index.js.map +1 -1
  126. package/build/text/styles.js +7 -7
  127. package/build/text/styles.js.map +1 -1
  128. package/build/toggle-group-control/toggle-group-control/component.js +16 -8
  129. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  130. package/build/toggle-group-control/toggle-group-control/styles.js +7 -5
  131. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  132. package/build/toggle-group-control/toggle-group-control-option/component.js +15 -5
  133. package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  134. package/build/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
  135. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  136. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +20 -7
  137. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  138. package/build/toggle-group-control/toggle-group-control-option-icon/component.js +26 -7
  139. package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  140. package/build/tools-panel/styles.js +11 -11
  141. package/build/tools-panel/styles.js.map +1 -1
  142. package/build/ui/context/context-connect.js +1 -3
  143. package/build/ui/context/context-connect.js.map +1 -1
  144. package/build/unit-control/index.js +2 -3
  145. package/build/unit-control/index.js.map +1 -1
  146. package/build/utils/colors-values.js +52 -142
  147. package/build/utils/colors-values.js.map +1 -1
  148. package/build/utils/config-values.js +1 -1
  149. package/build/utils/config-values.js.map +1 -1
  150. package/build/utils/input/input-control.js +1 -1
  151. package/build/utils/input/input-control.js.map +1 -1
  152. package/build/utils/rtl.js +6 -5
  153. package/build/utils/rtl.js.map +1 -1
  154. package/build/utils/strings.js +50 -0
  155. package/build/utils/strings.js.map +1 -0
  156. package/build-module/alignment-matrix-control/index.js +1 -1
  157. package/build-module/alignment-matrix-control/index.js.map +1 -1
  158. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
  159. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
  160. package/build-module/angle-picker-control/index.js +3 -0
  161. package/build-module/angle-picker-control/index.js.map +1 -1
  162. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +13 -4
  163. package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
  164. package/build-module/autocomplete/index.js +9 -10
  165. package/build-module/autocomplete/index.js.map +1 -1
  166. package/build-module/base-control/styles/base-control-styles.js +8 -8
  167. package/build-module/base-control/styles/base-control-styles.js.map +1 -1
  168. package/build-module/base-field/styles.js +5 -5
  169. package/build-module/base-field/styles.js.map +1 -1
  170. package/build-module/box-control/styles/box-control-visualizer-styles.js +8 -8
  171. package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
  172. package/build-module/color-list-picker/index.js +13 -5
  173. package/build-module/color-list-picker/index.js.map +1 -1
  174. package/build-module/color-palette/index.js +22 -11
  175. package/build-module/color-palette/index.js.map +1 -1
  176. package/build-module/color-palette/index.native.js +4 -4
  177. package/build-module/color-palette/index.native.js.map +1 -1
  178. package/build-module/combobox-control/index.js +6 -3
  179. package/build-module/combobox-control/index.js.map +1 -1
  180. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  181. package/build-module/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
  182. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
  183. package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
  184. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
  185. package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -0
  186. package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  187. package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
  188. package/build-module/custom-gradient-picker/index.js +16 -3
  189. package/build-module/custom-gradient-picker/index.js.map +1 -1
  190. package/build-module/custom-select-control/index.js +20 -12
  191. package/build-module/custom-select-control/index.js.map +1 -1
  192. package/build-module/custom-select-control/styles.js +22 -0
  193. package/build-module/custom-select-control/styles.js.map +1 -0
  194. package/build-module/date-time/constants.js +2 -0
  195. package/build-module/date-time/constants.js.map +1 -0
  196. package/build-module/date-time/date/index.js +178 -184
  197. package/build-module/date-time/date/index.js.map +1 -1
  198. package/build-module/date-time/date/styles.js +47 -38
  199. package/build-module/date-time/date/styles.js.map +1 -1
  200. package/build-module/date-time/date-time/index.js +4 -2
  201. package/build-module/date-time/date-time/index.js.map +1 -1
  202. package/build-module/date-time/time/index.js +20 -16
  203. package/build-module/date-time/time/index.js.map +1 -1
  204. package/build-module/date-time/utils.js +19 -0
  205. package/build-module/date-time/utils.js.map +1 -0
  206. package/build-module/dimension-control/index.js +1 -5
  207. package/build-module/dimension-control/index.js.map +1 -1
  208. package/build-module/disabled/index.js +28 -11
  209. package/build-module/disabled/index.js.map +1 -1
  210. package/build-module/disabled/styles/disabled-styles.js +3 -3
  211. package/build-module/disabled/styles/disabled-styles.js.map +1 -1
  212. package/build-module/{swatch → disabled}/types.js +0 -0
  213. package/build-module/{swatch → disabled}/types.js.map +0 -0
  214. package/build-module/dropdown/index.js +5 -6
  215. package/build-module/dropdown/index.js.map +1 -1
  216. package/build-module/duotone-picker/custom-duotone-bar.js +1 -1
  217. package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
  218. package/build-module/duotone-picker/duotone-picker.js +7 -1
  219. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  220. package/build-module/duotone-picker/duotone-swatch.js +11 -3
  221. package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
  222. package/build-module/focal-point-picker/index.js +4 -5
  223. package/build-module/focal-point-picker/index.js.map +1 -1
  224. package/build-module/focal-point-picker/styles/focal-point-style.js +4 -4
  225. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  226. package/build-module/font-size-picker/index.js +39 -14
  227. package/build-module/font-size-picker/index.js.map +1 -1
  228. package/build-module/font-size-picker/utils.js +31 -23
  229. package/build-module/font-size-picker/utils.js.map +1 -1
  230. package/build-module/form-token-field/index.js +12 -6
  231. package/build-module/form-token-field/index.js.map +1 -1
  232. package/build-module/gradient-picker/index.js +14 -3
  233. package/build-module/gradient-picker/index.js.map +1 -1
  234. package/build-module/guide/index.js +5 -3
  235. package/build-module/guide/index.js.map +1 -1
  236. package/build-module/guide/page-control.js +3 -6
  237. package/build-module/guide/page-control.js.map +1 -1
  238. package/build-module/item-group/styles.js +10 -10
  239. package/build-module/item-group/styles.js.map +1 -1
  240. package/build-module/mobile/bottom-sheet/index.native.js +3 -5
  241. package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
  242. package/build-module/mobile/global-styles-context/utils.native.js +2 -1
  243. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  244. package/build-module/mobile/image/index.native.js +8 -28
  245. package/build-module/mobile/image/index.native.js.map +1 -1
  246. package/build-module/mobile/picker/index.android.js +3 -3
  247. package/build-module/mobile/picker/index.android.js.map +1 -1
  248. package/build-module/modal/index.js +1 -2
  249. package/build-module/modal/index.js.map +1 -1
  250. package/build-module/navigable-container/container.js +9 -7
  251. package/build-module/navigable-container/container.js.map +1 -1
  252. package/build-module/navigator/navigator-back-button/hook.js +0 -4
  253. package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
  254. package/build-module/navigator/navigator-button/hook.js +0 -4
  255. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  256. package/build-module/notice/list.js +10 -5
  257. package/build-module/notice/list.js.map +1 -1
  258. package/build-module/palette-edit/index.js +1 -0
  259. package/build-module/palette-edit/index.js.map +1 -1
  260. package/build-module/palette-edit/styles.js +10 -10
  261. package/build-module/palette-edit/styles.js.map +1 -1
  262. package/build-module/popover/index.js +100 -98
  263. package/build-module/popover/index.js.map +1 -1
  264. package/build-module/popover/utils.js +164 -0
  265. package/build-module/popover/utils.js.map +1 -0
  266. package/build-module/range-control/index.js +3 -0
  267. package/build-module/range-control/index.js.map +1 -1
  268. package/build-module/range-control/styles/range-control-styles.js +43 -37
  269. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  270. package/build-module/select-control/chevron-down.js +21 -0
  271. package/build-module/select-control/chevron-down.js.map +1 -0
  272. package/build-module/select-control/index.js +7 -7
  273. package/build-module/select-control/index.js.map +1 -1
  274. package/build-module/select-control/styles/select-control-styles.js +24 -13
  275. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  276. package/build-module/snackbar/list.js +5 -2
  277. package/build-module/snackbar/list.js.map +1 -1
  278. package/build-module/spinner/index.js +2 -0
  279. package/build-module/spinner/index.js.map +1 -1
  280. package/build-module/text/styles.js +7 -7
  281. package/build-module/text/styles.js.map +1 -1
  282. package/build-module/toggle-group-control/toggle-group-control/component.js +14 -7
  283. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  284. package/build-module/toggle-group-control/toggle-group-control/styles.js +5 -4
  285. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  286. package/build-module/toggle-group-control/toggle-group-control-option/component.js +17 -3
  287. package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
  288. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
  289. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  290. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +16 -6
  291. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  292. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +27 -5
  293. package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
  294. package/build-module/tools-panel/styles.js +11 -11
  295. package/build-module/tools-panel/styles.js.map +1 -1
  296. package/build-module/ui/context/context-connect.js +1 -2
  297. package/build-module/ui/context/context-connect.js.map +1 -1
  298. package/build-module/unit-control/index.js +2 -2
  299. package/build-module/unit-control/index.js.map +1 -1
  300. package/build-module/utils/colors-values.js +52 -141
  301. package/build-module/utils/colors-values.js.map +1 -1
  302. package/build-module/utils/config-values.js +1 -1
  303. package/build-module/utils/config-values.js.map +1 -1
  304. package/build-module/utils/input/input-control.js +1 -1
  305. package/build-module/utils/input/input-control.js.map +1 -1
  306. package/build-module/utils/rtl.js +6 -4
  307. package/build-module/utils/rtl.js.map +1 -1
  308. package/build-module/utils/strings.js +37 -0
  309. package/build-module/utils/strings.js.map +1 -0
  310. package/build-style/style-rtl.css +176 -1227
  311. package/build-style/style.css +171 -1225
  312. package/build-types/color-palette/index.d.ts +2 -1
  313. package/build-types/color-palette/index.d.ts.map +1 -1
  314. package/build-types/color-picker/styles.d.ts +2 -2
  315. package/build-types/date-time/constants.d.ts +2 -0
  316. package/build-types/date-time/constants.d.ts.map +1 -0
  317. package/build-types/date-time/date/index.d.ts +3 -1
  318. package/build-types/date-time/date/index.d.ts.map +1 -1
  319. package/build-types/date-time/date/styles.d.ts +22 -8
  320. package/build-types/date-time/date/styles.d.ts.map +1 -1
  321. package/build-types/date-time/date/test/index.d.ts +1 -1
  322. package/build-types/date-time/date/test/index.d.ts.map +1 -1
  323. package/build-types/date-time/date-time/index.d.ts.map +1 -1
  324. package/build-types/date-time/time/index.d.ts.map +1 -1
  325. package/build-types/date-time/utils.d.ts +8 -0
  326. package/build-types/date-time/utils.d.ts.map +1 -0
  327. package/build-types/disabled/index.d.ts +35 -28
  328. package/build-types/disabled/index.d.ts.map +1 -1
  329. package/build-types/disabled/stories/index.d.ts +13 -0
  330. package/build-types/disabled/stories/index.d.ts.map +1 -0
  331. package/build-types/disabled/styles/disabled-styles.d.ts +2 -1
  332. package/build-types/disabled/styles/disabled-styles.d.ts.map +1 -1
  333. package/build-types/disabled/test/index.d.ts +2 -0
  334. package/build-types/{flyout/flyout → disabled/test}/index.d.ts.map +1 -1
  335. package/build-types/disabled/types.d.ts +14 -0
  336. package/build-types/disabled/types.d.ts.map +1 -0
  337. package/build-types/dropdown/index.d.ts.map +1 -1
  338. package/build-types/form-token-field/index.d.ts.map +1 -1
  339. package/build-types/form-token-field/stories/index.d.ts +1 -0
  340. package/build-types/form-token-field/stories/index.d.ts.map +1 -1
  341. package/build-types/form-token-field/types.d.ts +7 -0
  342. package/build-types/form-token-field/types.d.ts.map +1 -1
  343. package/build-types/navigator/navigator-back-button/hook.d.ts +0 -3
  344. package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
  345. package/build-types/navigator/navigator-button/hook.d.ts +0 -3
  346. package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
  347. package/build-types/placeholder/test/index.d.ts +2 -0
  348. package/build-types/{flyout → placeholder/test}/index.d.ts.map +1 -1
  349. package/build-types/popover/index.d.ts +1 -1
  350. package/build-types/popover/index.d.ts.map +1 -1
  351. package/build-types/popover/utils.d.ts +26 -69
  352. package/build-types/popover/utils.d.ts.map +1 -1
  353. package/build-types/range-control/index.d.ts +2 -2
  354. package/build-types/range-control/index.d.ts.map +1 -1
  355. package/build-types/range-control/styles/range-control-styles.d.ts +5 -2
  356. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  357. package/build-types/range-control/types.d.ts +2 -2
  358. package/build-types/range-control/types.d.ts.map +1 -1
  359. package/build-types/select-control/chevron-down.d.ts +4 -0
  360. package/build-types/select-control/chevron-down.d.ts.map +1 -0
  361. package/build-types/select-control/index.d.ts.map +1 -1
  362. package/build-types/select-control/styles/select-control-styles.d.ts +8 -0
  363. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  364. package/build-types/spinner/index.d.ts.map +1 -1
  365. package/build-types/toggle-group-control/stories/index.d.ts +25 -0
  366. package/build-types/toggle-group-control/stories/index.d.ts.map +1 -0
  367. package/build-types/toggle-group-control/test/index.d.ts +2 -0
  368. package/build-types/toggle-group-control/test/index.d.ts.map +1 -0
  369. package/build-types/toggle-group-control/toggle-group-control/component.d.ts +6 -3
  370. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  371. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +1 -0
  372. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  373. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +6 -7
  374. package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
  375. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  376. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +4 -0
  377. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  378. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +11 -9
  379. package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -1
  380. package/build-types/toggle-group-control/types.d.ts +23 -10
  381. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  382. package/build-types/ui/context/context-connect.d.ts +3 -0
  383. package/build-types/ui/context/context-connect.d.ts.map +1 -1
  384. package/build-types/ui/form-group/use-form-group.d.ts +2 -2
  385. package/build-types/unit-control/index.d.ts +2 -1
  386. package/build-types/unit-control/index.d.ts.map +1 -1
  387. package/build-types/unit-control/types.d.ts +5 -1
  388. package/build-types/unit-control/types.d.ts.map +1 -1
  389. package/build-types/utils/colors-values.d.ts +18 -97
  390. package/build-types/utils/colors-values.d.ts.map +1 -1
  391. package/build-types/utils/rtl.d.ts.map +1 -1
  392. package/build-types/utils/strings.d.ts +2 -0
  393. package/build-types/utils/strings.d.ts.map +1 -0
  394. package/package.json +22 -21
  395. package/src/alignment-matrix-control/index.js +1 -1
  396. package/src/alignment-matrix-control/stories/index.js +49 -24
  397. package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.js +1 -3
  398. package/src/angle-picker-control/index.js +7 -1
  399. package/src/angle-picker-control/stories/index.js +8 -5
  400. package/src/angle-picker-control/styles/angle-picker-control-styles.js +12 -3
  401. package/src/autocomplete/index.js +9 -18
  402. package/src/base-control/styles/base-control-styles.ts +1 -1
  403. package/src/base-field/styles.js +1 -1
  404. package/src/base-field/test/__snapshots__/index.js.snap +2 -2
  405. package/src/box-control/styles/box-control-visualizer-styles.js +0 -1
  406. package/src/box-control/test/index.js +8 -8
  407. package/src/button/test/index.js +188 -146
  408. package/src/color-list-picker/index.js +15 -3
  409. package/src/color-list-picker/style.scss +11 -0
  410. package/src/color-palette/index.js +32 -16
  411. package/src/color-palette/index.native.js +10 -6
  412. package/src/color-palette/stories/index.js +1 -1
  413. package/src/color-palette/test/__snapshots__/index.js.snap +17 -3
  414. package/src/combobox-control/index.js +6 -5
  415. package/src/combobox-control/stories/index.js +9 -3
  416. package/src/combobox-control/style.scss +0 -1
  417. package/src/confirm-dialog/test/index.js +85 -62
  418. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
  419. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +54 -50
  420. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -3
  421. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/test/utils.js +0 -0
  422. package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
  423. package/src/custom-gradient-picker/index.js +18 -3
  424. package/src/custom-gradient-picker/stories/index.js +4 -3
  425. package/src/custom-gradient-picker/style.scss +30 -27
  426. package/src/custom-select-control/README.md +10 -0
  427. package/src/custom-select-control/index.js +22 -16
  428. package/src/custom-select-control/stories/index.js +1 -1
  429. package/src/custom-select-control/style.scss +0 -12
  430. package/src/custom-select-control/styles.ts +28 -0
  431. package/src/custom-select-control/test/index.js +4 -1
  432. package/src/date-time/constants.ts +1 -0
  433. package/src/date-time/date/index.tsx +289 -184
  434. package/src/date-time/date/styles.ts +86 -27
  435. package/src/date-time/date/test/index.tsx +18 -28
  436. package/src/date-time/date-time/index.tsx +3 -2
  437. package/src/date-time/time/index.tsx +23 -19
  438. package/src/date-time/utils.ts +17 -0
  439. package/src/dimension-control/index.js +1 -5
  440. package/src/disabled/index.tsx +80 -0
  441. package/src/disabled/stories/index.tsx +87 -0
  442. package/src/disabled/styles/{disabled-styles.js → disabled-styles.tsx} +0 -0
  443. package/src/disabled/test/index.tsx +174 -0
  444. package/src/disabled/types.ts +13 -0
  445. package/src/dropdown/index.js +3 -5
  446. package/src/dropdown-menu/stories/index.js +13 -2
  447. package/src/duotone-picker/custom-duotone-bar.js +1 -1
  448. package/src/duotone-picker/duotone-picker.js +34 -26
  449. package/src/duotone-picker/duotone-swatch.js +12 -5
  450. package/src/duotone-picker/stories/duotone-picker.js +66 -0
  451. package/src/duotone-picker/stories/duotone-swatch.js +32 -0
  452. package/src/focal-point-picker/index.js +10 -5
  453. package/src/focal-point-picker/styles/focal-point-style.js +0 -1
  454. package/src/focal-point-picker/test/index.js +78 -45
  455. package/src/font-size-picker/index.js +161 -144
  456. package/src/font-size-picker/stories/index.js +1 -0
  457. package/src/font-size-picker/style.scss +8 -5
  458. package/src/font-size-picker/test/index.js +13 -6
  459. package/src/font-size-picker/test/{util.js → utils.js} +77 -1
  460. package/src/font-size-picker/utils.js +38 -23
  461. package/src/form-token-field/README.md +1 -0
  462. package/src/form-token-field/index.tsx +24 -10
  463. package/src/form-token-field/stories/index.tsx +8 -0
  464. package/src/form-token-field/test/index.js +31 -0
  465. package/src/form-token-field/types.ts +7 -0
  466. package/src/gradient-picker/index.js +22 -7
  467. package/src/gradient-picker/stories/index.js +56 -81
  468. package/src/guide/index.js +3 -1
  469. package/src/guide/page-control.js +1 -6
  470. package/src/guide/stories/index.js +12 -11
  471. package/src/guide/test/index.js +54 -37
  472. package/src/guide/test/page-control.js +14 -17
  473. package/src/higher-order/with-notices/test/index.js +4 -2
  474. package/src/higher-order/with-spoken-messages/test/index.js +1 -1
  475. package/src/item-group/styles.ts +3 -3
  476. package/src/menu-group/test/index.js +18 -7
  477. package/src/mobile/bottom-sheet/index.native.js +2 -4
  478. package/src/mobile/global-styles-context/utils.native.js +2 -1
  479. package/src/mobile/image/index.native.js +9 -30
  480. package/src/mobile/picker/index.android.js +10 -4
  481. package/src/mobile/picker/styles.native.scss +4 -4
  482. package/src/modal/index.js +1 -2
  483. package/src/modal/test/index.js +11 -9
  484. package/src/navigable-container/container.js +12 -18
  485. package/src/navigable-container/test/menu.js +14 -11
  486. package/src/navigator/navigator-back-button/hook.ts +0 -3
  487. package/src/navigator/navigator-button/hook.ts +0 -3
  488. package/src/notice/list.js +12 -10
  489. package/src/palette-edit/index.js +1 -0
  490. package/src/palette-edit/styles.js +6 -5
  491. package/src/placeholder/README.md +1 -1
  492. package/src/placeholder/style.scss +65 -20
  493. package/src/placeholder/test/index.tsx +174 -0
  494. package/src/popover/index.js +133 -112
  495. package/src/popover/stories/index.js +17 -3
  496. package/src/popover/test/__snapshots__/index.js.snap +6 -6
  497. package/src/popover/test/index.js +129 -36
  498. package/src/popover/utils.js +107 -0
  499. package/src/range-control/index.tsx +3 -0
  500. package/src/range-control/styles/range-control-styles.ts +9 -4
  501. package/src/range-control/types.ts +5 -2
  502. package/src/select-control/chevron-down.tsx +25 -0
  503. package/src/select-control/index.tsx +6 -9
  504. package/src/select-control/styles/select-control-styles.ts +23 -14
  505. package/src/slot-fill/test/slot.js +5 -5
  506. package/src/snackbar/list.js +3 -2
  507. package/src/spinner/index.tsx +2 -0
  508. package/src/style.scss +0 -2
  509. package/src/text/styles.js +1 -1
  510. package/src/text/test/index.tsx +1 -1
  511. package/src/toggle-group-control/stories/index.tsx +127 -0
  512. package/src/toggle-group-control/test/__snapshots__/{index.js.snap → index.tsx.snap} +28 -22
  513. package/src/toggle-group-control/test/{index.js → index.tsx} +2 -4
  514. package/src/toggle-group-control/toggle-group-control/README.md +2 -0
  515. package/src/toggle-group-control/toggle-group-control/component.tsx +18 -9
  516. package/src/toggle-group-control/toggle-group-control/styles.ts +9 -6
  517. package/src/toggle-group-control/toggle-group-control-option/component.tsx +19 -3
  518. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +3 -0
  519. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +18 -0
  520. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +6 -8
  521. package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +30 -7
  522. package/src/toggle-group-control/types.ts +74 -59
  523. package/src/toolbar/test/index.js +4 -4
  524. package/src/toolbar-group/test/index.js +9 -15
  525. package/src/tools-panel/styles.ts +2 -2
  526. package/src/tools-panel/test/index.js +3 -2
  527. package/src/tooltip/test/index.js +188 -172
  528. package/src/ui/context/context-connect.ts +3 -2
  529. package/src/unit-control/index.tsx +2 -2
  530. package/src/unit-control/types.ts +10 -1
  531. package/src/utils/colors-values.js +42 -137
  532. package/src/utils/config-values.js +1 -1
  533. package/src/utils/input/input-control.js +6 -6
  534. package/src/utils/rtl.js +6 -2
  535. package/src/utils/strings.ts +72 -0
  536. package/src/utils/test/strings.js +15 -0
  537. package/tsconfig.json +0 -1
  538. package/tsconfig.tsbuildinfo +1 -1
  539. package/build/custom-gradient-bar/constants.js.map +0 -1
  540. package/build/custom-gradient-bar/control-points.js.map +0 -1
  541. package/build/custom-gradient-bar/index.js.map +0 -1
  542. package/build/custom-gradient-bar/utils.js.map +0 -1
  543. package/build/date-time/date/utils.js +0 -34
  544. package/build/date-time/date/utils.js.map +0 -1
  545. package/build/swatch/index.js +0 -41
  546. package/build/swatch/index.js.map +0 -1
  547. package/build-module/custom-gradient-bar/constants.js.map +0 -1
  548. package/build-module/custom-gradient-bar/control-points.js.map +0 -1
  549. package/build-module/custom-gradient-bar/index.js.map +0 -1
  550. package/build-module/custom-gradient-bar/utils.js.map +0 -1
  551. package/build-module/date-time/date/utils.js +0 -22
  552. package/build-module/date-time/date/utils.js.map +0 -1
  553. package/build-module/swatch/index.js +0 -30
  554. package/build-module/swatch/index.js.map +0 -1
  555. package/build-types/color-picker/color-display.d.ts +0 -13
  556. package/build-types/color-picker/color-display.d.ts.map +0 -1
  557. package/build-types/date-time/date/test/utils.d.ts +0 -2
  558. package/build-types/date-time/date/test/utils.d.ts.map +0 -1
  559. package/build-types/date-time/date/utils.d.ts +0 -15
  560. package/build-types/date-time/date/utils.d.ts.map +0 -1
  561. package/build-types/flyout/context.d.ts +0 -6
  562. package/build-types/flyout/context.d.ts.map +0 -1
  563. package/build-types/flyout/flyout/component.d.ts +0 -21
  564. package/build-types/flyout/flyout/component.d.ts.map +0 -1
  565. package/build-types/flyout/flyout/hook.d.ts +0 -270
  566. package/build-types/flyout/flyout/hook.d.ts.map +0 -1
  567. package/build-types/flyout/flyout/index.d.ts +0 -3
  568. package/build-types/flyout/flyout-content/component.d.ts +0 -3
  569. package/build-types/flyout/flyout-content/component.d.ts.map +0 -1
  570. package/build-types/flyout/flyout-content/index.d.ts +0 -2
  571. package/build-types/flyout/flyout-content/index.d.ts.map +0 -1
  572. package/build-types/flyout/index.d.ts +0 -2
  573. package/build-types/flyout/styles.d.ts +0 -22
  574. package/build-types/flyout/styles.d.ts.map +0 -1
  575. package/build-types/flyout/types.d.ts +0 -80
  576. package/build-types/flyout/types.d.ts.map +0 -1
  577. package/build-types/flyout/utils.d.ts +0 -8
  578. package/build-types/flyout/utils.d.ts.map +0 -1
  579. package/build-types/swatch/index.d.ts +0 -5
  580. package/build-types/swatch/index.d.ts.map +0 -1
  581. package/build-types/swatch/types.d.ts +0 -11
  582. package/build-types/swatch/types.d.ts.map +0 -1
  583. package/build-types/utils/hooks/use-combined-ref.d.ts +0 -8
  584. package/build-types/utils/hooks/use-combined-ref.d.ts.map +0 -1
  585. package/src/date-time/date/datepicker.scss +0 -863
  586. package/src/date-time/date/style.scss +0 -85
  587. package/src/date-time/date/test/utils.ts +0 -32
  588. package/src/date-time/date/utils.ts +0 -20
  589. package/src/date-time/style.scss +0 -1
  590. package/src/disabled/index.js +0 -55
  591. package/src/disabled/stories/index.js +0 -61
  592. package/src/disabled/test/index.js +0 -240
  593. package/src/menu-group/test/__snapshots__/index.js.snap +0 -23
  594. package/src/placeholder/test/index.js +0 -163
  595. package/src/swatch/index.tsx +0 -22
  596. package/src/swatch/style.scss +0 -21
  597. package/src/swatch/types.ts +0 -11
  598. package/src/toggle-group-control/stories/index.js +0 -203
  599. package/src/tools-panel/test/__snapshots__/index.js.snap +0 -210
@@ -1,85 +0,0 @@
1
- @import "./datepicker.scss";
2
-
3
- // Styles that overrides the calendar styling provided by react-dates go here.
4
- // Everything else goes in styles.ts.
5
-
6
- .components-datetime__date {
7
- //
8
- // Margin overrides
9
- //
10
-
11
- // Remove the left and right margin from the calendar by setting all the
12
- // containers' widths to 100%. This means that the slide left / slide right
13
- // animation won't work but we don't want that, anyway.
14
-
15
- .CalendarMonthGrid__horizontal,
16
- .DayPicker_weekHeader_li {
17
- transform: none !important; // Override inline style.
18
- width: 100% !important; // Override inline style.
19
- }
20
-
21
- .CalendarMonthGrid_month__horizontal,
22
- .CalendarMonth_table,
23
- .DayPicker_weekHeader {
24
- width: 100%;
25
- }
26
-
27
- .DayPicker_weekHeaders__horizontal {
28
- margin: 0;
29
- }
30
-
31
- .DayPicker_weekHeader_ul {
32
- display: flex;
33
- }
34
-
35
- //
36
- // Theming
37
- //
38
-
39
- .DayPicker_weekHeader {
40
- top: 50px;
41
- }
42
-
43
- .CalendarMonth_caption {
44
- font-size: $default-font-size;
45
- }
46
-
47
- .CalendarMonth_table {
48
- border-collapse: separate;
49
- border-spacing: 2px;
50
- }
51
-
52
- .CalendarDay {
53
- border: none;
54
- font-size: $default-font-size;
55
- border-radius: $radius-round;
56
- background: $white;
57
-
58
- &:hover {
59
- color: var(--wp-admin-theme-color);
60
- }
61
-
62
- &:focus {
63
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color), inset 0 0 0 #{ $border-width-focus + $border-width } $white;
64
- outline: 2px solid transparent; // Shown in Windows 10 high contrast mode.
65
- }
66
- }
67
-
68
- .CalendarDay__today {
69
- background: $gray-100;
70
- }
71
-
72
- .CalendarDay__selected {
73
- background: var(--wp-admin-theme-color);
74
- border: 2px solid transparent; // This indicates selection in Windows 10 high contrast mode.
75
-
76
- &:hover {
77
- background: var(--wp-admin-theme-color-darker-20);
78
- color: $white;
79
- }
80
-
81
- &:focus {
82
- box-shadow: inset 0 0 0 $border-width $white;
83
- }
84
- }
85
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import moment from 'moment';
5
-
6
- /**
7
- * Internal dependencies
8
- */
9
- import { getMomentDate } from '../utils';
10
-
11
- describe( 'getMomentDate', () => {
12
- it( 'should return a Moment object representing a given date string', () => {
13
- const currentDate = '1986-10-18T23:00:00';
14
- const momentDate = getMomentDate( currentDate );
15
-
16
- expect( moment.isMoment( momentDate ) ).toBe( true );
17
- expect( momentDate?.isSame( moment( currentDate ) ) ).toBe( true );
18
- } );
19
-
20
- it( 'should return null when given a null argument', () => {
21
- const currentDate = null;
22
- const momentDate = getMomentDate( currentDate );
23
-
24
- expect( momentDate ).toBeNull();
25
- } );
26
-
27
- it( 'should return a Moment object representing now when given an undefined argument', () => {
28
- const momentDate = getMomentDate();
29
-
30
- expect( moment.isMoment( momentDate ) ).toBe( true );
31
- } );
32
- } );
@@ -1,20 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import moment from 'moment';
5
-
6
- /**
7
- * Create a Moment object from a date string. With no date supplied, default to
8
- * a Moment object representing now. If a null value is passed, return a null
9
- * value.
10
- *
11
- * @param [date] Date representing the currently selected
12
- * date or null to signify no selection.
13
- * @return Moment object for selected date or null.
14
- */
15
- export const getMomentDate = ( date?: Date | string | number | null ) => {
16
- if ( null === date ) {
17
- return null;
18
- }
19
- return date ? moment( date ) : moment();
20
- };
@@ -1 +0,0 @@
1
- @import "./date/style.scss";
@@ -1,55 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import classnames from 'classnames';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { useDisabled } from '@wordpress/compose';
10
- import { createContext } from '@wordpress/element';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import { StyledWrapper } from './styles/disabled-styles';
16
-
17
- const Context = createContext( false );
18
- const { Consumer, Provider } = Context;
19
-
20
- /**
21
- * @typedef OwnProps
22
- * @property {string} [className] Classname for the disabled element.
23
- * @property {import('react').ReactNode} children Children to disable.
24
- * @property {boolean} [isDisabled=true] Whether to disable the children.
25
- */
26
-
27
- /**
28
- * @param {OwnProps & import('react').HTMLAttributes<HTMLDivElement>} props
29
- * @return {JSX.Element} Element wrapping the children to disable them when isDisabled is true.
30
- */
31
- function Disabled( { className, children, isDisabled = true, ...props } ) {
32
- /** @type {import('react').RefCallback<HTMLDivElement>} */
33
- const ref = useDisabled();
34
-
35
- if ( ! isDisabled ) {
36
- return <Provider value={ false }>{ children }</Provider>;
37
- }
38
-
39
- return (
40
- <Provider value={ true }>
41
- <StyledWrapper
42
- ref={ ref }
43
- className={ classnames( className, 'components-disabled' ) }
44
- { ...props }
45
- >
46
- { children }
47
- </StyledWrapper>
48
- </Provider>
49
- );
50
- }
51
-
52
- Disabled.Context = Context;
53
- Disabled.Consumer = Consumer;
54
-
55
- export default Disabled;
@@ -1,61 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { useState } from '@wordpress/element';
5
-
6
- /**
7
- * Internal dependencies
8
- */
9
- import Disabled from '../';
10
- import Button from '../../button/';
11
- import SelectControl from '../../select-control/';
12
- import TextControl from '../../text-control/';
13
- import TextareaControl from '../../textarea-control/';
14
-
15
- export default {
16
- title: 'Components/Disabled',
17
- component: Disabled,
18
- };
19
-
20
- const Form = () => (
21
- <div>
22
- <TextControl label="Text Control" />
23
- <TextareaControl label="TextArea Control" />
24
- <SelectControl
25
- label="Select Control"
26
- onChange={ () => {} }
27
- options={ [
28
- { value: null, label: 'Select an option', disabled: true },
29
- { value: 'a', label: 'Option A' },
30
- { value: 'b', label: 'Option B' },
31
- { value: 'c', label: 'Option C' },
32
- ] }
33
- />
34
- </div>
35
- );
36
-
37
- export const _default = () => {
38
- return (
39
- <Disabled>
40
- <Form />
41
- </Disabled>
42
- );
43
- };
44
-
45
- export const DisabledWithProp = () => {
46
- const [ isDisabled, setState ] = useState( true );
47
- const toggleDisabled = () => {
48
- setState( () => ! isDisabled );
49
- };
50
-
51
- return (
52
- <div>
53
- <Disabled isDisabled={ isDisabled }>
54
- <Form />
55
- </Disabled>
56
- <Button variant="primary" onClick={ toggleDisabled }>
57
- Set isDisabled to { isDisabled ? 'false' : 'true' }
58
- </Button>
59
- </div>
60
- );
61
- };
@@ -1,240 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import TestUtils from 'react-dom/test-utils';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { Component } from '@wordpress/element';
10
-
11
- /**
12
- * Internal dependencies
13
- */
14
- import Disabled from '../';
15
-
16
- jest.mock( '@wordpress/dom', () => {
17
- const focus = jest.requireActual( '../../../../dom/src' ).focus;
18
-
19
- return {
20
- focus: {
21
- ...focus,
22
- focusable: {
23
- ...focus.focusable,
24
- find( context ) {
25
- // In JSDOM, all elements have zero'd widths and height.
26
- // This is a metric for focusable's `isVisible`, so find
27
- // and apply an arbitrary non-zero width.
28
- Array.from( context.querySelectorAll( '*' ) ).forEach(
29
- ( element ) => {
30
- Object.defineProperties( element, {
31
- offsetWidth: {
32
- get: () => 1,
33
- },
34
- } );
35
- }
36
- );
37
-
38
- return focus.focusable.find( ...arguments );
39
- },
40
- },
41
- },
42
- };
43
- } );
44
-
45
- describe( 'Disabled', () => {
46
- let MutationObserver;
47
-
48
- beforeAll( () => {
49
- MutationObserver = window.MutationObserver;
50
- window.MutationObserver = function () {};
51
- window.MutationObserver.prototype = {
52
- observe() {},
53
- disconnect() {},
54
- };
55
- } );
56
-
57
- afterAll( () => {
58
- window.MutationObserver = MutationObserver;
59
- } );
60
-
61
- const Form = () => (
62
- <form>
63
- <input />
64
- <div contentEditable tabIndex="0" />
65
- </form>
66
- );
67
-
68
- // This is needed because TestUtils does not accept a stateless component.
69
- class DisabledComponent extends Component {
70
- render() {
71
- const { children, isDisabled } = this.props;
72
-
73
- return <Disabled isDisabled={ isDisabled }>{ children }</Disabled>;
74
- }
75
- }
76
-
77
- it( 'will disable all fields', () => {
78
- const wrapper = TestUtils.renderIntoDocument(
79
- <DisabledComponent>
80
- <Form />
81
- </DisabledComponent>
82
- );
83
-
84
- const input = TestUtils.findRenderedDOMComponentWithTag(
85
- wrapper,
86
- 'input'
87
- );
88
- const div = TestUtils.scryRenderedDOMComponentsWithTag(
89
- wrapper,
90
- 'div'
91
- )[ 1 ];
92
-
93
- expect( input.hasAttribute( 'disabled' ) ).toBe( true );
94
- expect( div.getAttribute( 'contenteditable' ) ).toBe( 'false' );
95
- expect( div.hasAttribute( 'tabindex' ) ).toBe( false );
96
- expect( div.hasAttribute( 'disabled' ) ).toBe( false );
97
- } );
98
-
99
- it( 'should cleanly un-disable via reconciliation', () => {
100
- // If this test suddenly starts failing, it means React has become
101
- // smarter about reusing children into grandfather element when the
102
- // parent is dropped, so we'd need to find another way to restore
103
- // original form state.
104
- // Using state for this test for easier manipulation of the child props.
105
- class MaybeDisable extends Component {
106
- constructor() {
107
- super( ...arguments );
108
- this.state = { isDisabled: true };
109
- }
110
-
111
- render() {
112
- return this.state.isDisabled ? (
113
- <Disabled>
114
- <Form />
115
- </Disabled>
116
- ) : (
117
- <Form />
118
- );
119
- }
120
- }
121
-
122
- const wrapper = TestUtils.renderIntoDocument( <MaybeDisable /> );
123
- wrapper.setState( { isDisabled: false } );
124
-
125
- const input = TestUtils.findRenderedDOMComponentWithTag(
126
- wrapper,
127
- 'input'
128
- );
129
- const div = TestUtils.findRenderedDOMComponentWithTag( wrapper, 'div' );
130
-
131
- expect( input.hasAttribute( 'disabled' ) ).toBe( false );
132
- expect( div.getAttribute( 'contenteditable' ) ).toBe( 'true' );
133
- expect( div.hasAttribute( 'tabindex' ) ).toBe( true );
134
- } );
135
-
136
- it( 'will disable or enable descendant fields based on the isDisabled prop value', () => {
137
- class MaybeDisable extends Component {
138
- constructor() {
139
- super( ...arguments );
140
- this.state = { isDisabled: true };
141
- }
142
-
143
- render() {
144
- return (
145
- <DisabledComponent isDisabled={ this.state.isDisabled }>
146
- <Form />
147
- </DisabledComponent>
148
- );
149
- }
150
- }
151
-
152
- const wrapper = TestUtils.renderIntoDocument( <MaybeDisable /> );
153
-
154
- const input = TestUtils.findRenderedDOMComponentWithTag(
155
- wrapper,
156
- 'input'
157
- );
158
- const div = TestUtils.scryRenderedDOMComponentsWithTag(
159
- wrapper,
160
- 'div'
161
- )[ 1 ];
162
-
163
- expect( input.hasAttribute( 'disabled' ) ).toBe( true );
164
- expect( div.getAttribute( 'contenteditable' ) ).toBe( 'false' );
165
-
166
- wrapper.setState( { isDisabled: false } );
167
-
168
- const input2 = TestUtils.findRenderedDOMComponentWithTag(
169
- wrapper,
170
- 'input'
171
- );
172
- const div2 = TestUtils.scryRenderedDOMComponentsWithTag(
173
- wrapper,
174
- 'div'
175
- )[ 0 ];
176
-
177
- expect( input2.hasAttribute( 'disabled' ) ).toBe( false );
178
- expect( div2.getAttribute( 'contenteditable' ) ).not.toBe( 'false' );
179
- } );
180
-
181
- // Ideally, we'd have two more test cases here:
182
- //
183
- // - it( 'will disable all fields on component render change' )
184
- // - it( 'will disable all fields on sneaky DOM manipulation' )
185
- //
186
- // Alas, JSDOM does not support MutationObserver:
187
- //
188
- // https://github.com/jsdom/jsdom/issues/639
189
-
190
- describe( 'Consumer', () => {
191
- class DisabledStatus extends Component {
192
- render() {
193
- return (
194
- <p>
195
- <Disabled.Consumer>
196
- { ( isDisabled ) =>
197
- isDisabled ? 'Disabled' : 'Not disabled'
198
- }
199
- </Disabled.Consumer>
200
- </p>
201
- );
202
- }
203
- }
204
-
205
- test( "lets components know that they're disabled via context", () => {
206
- const wrapper = TestUtils.renderIntoDocument(
207
- <DisabledComponent>
208
- <DisabledStatus />
209
- </DisabledComponent>
210
- );
211
- const wrapperElement = TestUtils.findRenderedDOMComponentWithTag(
212
- wrapper,
213
- 'p'
214
- );
215
- expect( wrapperElement.textContent ).toBe( 'Disabled' );
216
- } );
217
-
218
- test( "lets components know that they're not disabled via context when isDisabled is false", () => {
219
- const wrapper = TestUtils.renderIntoDocument(
220
- <DisabledComponent isDisabled={ false }>
221
- <DisabledStatus />
222
- </DisabledComponent>
223
- );
224
- const wrapperElement = TestUtils.findRenderedDOMComponentWithTag(
225
- wrapper,
226
- 'p'
227
- );
228
- expect( wrapperElement.textContent ).toBe( 'Not disabled' );
229
- } );
230
-
231
- test( "lets components know that they're not disabled via context", () => {
232
- const wrapper = TestUtils.renderIntoDocument( <DisabledStatus /> );
233
- const wrapperElement = TestUtils.findRenderedDOMComponentWithTag(
234
- wrapper,
235
- 'p'
236
- );
237
- expect( wrapperElement.textContent ).toBe( 'Not disabled' );
238
- } );
239
- } );
240
- } );
@@ -1,23 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`MenuGroup should match snapshot 1`] = `
4
- <div
5
- className="components-menu-group"
6
- >
7
- <div
8
- aria-hidden="true"
9
- className="components-menu-group__label"
10
- id="components-menu-group-label-1"
11
- >
12
- My group
13
- </div>
14
- <div
15
- aria-labelledby="components-menu-group-label-1"
16
- role="group"
17
- >
18
- <p>
19
- My item
20
- </p>
21
- </div>
22
- </div>
23
- `;
@@ -1,163 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { shallow } from 'enzyme';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { more } from '@wordpress/icons';
10
- import { useResizeObserver } from '@wordpress/compose';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import Placeholder from '../';
16
-
17
- jest.mock( '@wordpress/compose', () => {
18
- return {
19
- ...jest.requireActual( '@wordpress/compose' ),
20
- useResizeObserver: jest.fn( () => [] ),
21
- };
22
- } );
23
-
24
- describe( 'Placeholder', () => {
25
- beforeEach( () => {
26
- useResizeObserver.mockReturnValue( [
27
- <div key="1" />,
28
- { width: 320 },
29
- ] );
30
- } );
31
-
32
- describe( 'basic rendering', () => {
33
- it( 'should by default render label section and fieldset.', () => {
34
- const placeholder = shallow( <Placeholder /> );
35
- const placeholderLabel = placeholder.find(
36
- '.components-placeholder__label'
37
- );
38
- const placeholderInstructions = placeholder.find(
39
- '.components-placeholder__instructions'
40
- );
41
- const placeholderFieldset = placeholder.find(
42
- '.components-placeholder__fieldset'
43
- );
44
-
45
- expect( placeholder.hasClass( 'components-placeholder' ) ).toBe(
46
- true
47
- );
48
- // Test for empty label.
49
- expect( placeholderLabel.exists() ).toBe( true );
50
- expect( placeholderLabel.find( 'Dashicon' ).exists() ).toBe(
51
- false
52
- );
53
- // Test for non existant instructions.
54
- expect( placeholderInstructions.exists() ).toBe( false );
55
- // Test for empty fieldset.
56
- expect( placeholderFieldset.exists() ).toBe( true );
57
- } );
58
-
59
- it( 'should render an Icon in the label section', () => {
60
- const placeholder = shallow( <Placeholder icon={ more } /> );
61
- const placeholderLabel = placeholder.find(
62
- '.components-placeholder__label'
63
- );
64
-
65
- expect( placeholderLabel.exists() ).toBe( true );
66
- expect( placeholderLabel.find( 'Icon' ).exists() ).toBe( true );
67
- } );
68
-
69
- it( 'should render a label section', () => {
70
- const label = 'WordPress';
71
- const placeholder = shallow( <Placeholder label={ label } /> );
72
- const placeholderLabel = placeholder.find(
73
- '.components-placeholder__label'
74
- );
75
- const child = placeholderLabel.childAt( 1 );
76
-
77
- expect( child.text() ).toBe( label );
78
- } );
79
-
80
- it( 'should display an instructions element', () => {
81
- const element = <div>Instructions</div>;
82
- const placeholder = shallow(
83
- <Placeholder instructions={ element } />
84
- );
85
- const placeholderInstructions = placeholder.find(
86
- '.components-placeholder__instructions'
87
- );
88
- const child = placeholderInstructions.childAt( 0 );
89
-
90
- expect( placeholderInstructions.exists() ).toBe( true );
91
- expect( child.matchesElement( element ) ).toBe( true );
92
- } );
93
-
94
- it( 'should display a fieldset from the children property', () => {
95
- const element = <div>Fieldset</div>;
96
- const placeholder = shallow( <Placeholder children={ element } /> );
97
- const placeholderFieldset = placeholder.find(
98
- 'fieldset.components-placeholder__fieldset'
99
- );
100
- const child = placeholderFieldset.childAt( 0 );
101
-
102
- expect( placeholderFieldset.exists() ).toBe( true );
103
- expect( child.matchesElement( element ) ).toBe( true );
104
- } );
105
-
106
- it( 'should display a legend if instructions are passed', () => {
107
- const element = <div>Fieldset</div>;
108
- const instructions = 'Choose an option.';
109
- const placeholder = shallow(
110
- <Placeholder
111
- children={ element }
112
- instructions={ instructions }
113
- />
114
- );
115
- const placeholderLegend = placeholder.find(
116
- 'legend.components-placeholder__instructions'
117
- );
118
-
119
- expect( placeholderLegend.exists() ).toBe( true );
120
- expect( placeholderLegend.text() ).toEqual( instructions );
121
- } );
122
-
123
- it( 'should add an additional className to the top container', () => {
124
- const placeholder = shallow(
125
- <Placeholder className="wp-placeholder" />
126
- );
127
- expect( placeholder.hasClass( 'wp-placeholder' ) ).toBe( true );
128
- } );
129
-
130
- it( 'should add additional props to the top level container', () => {
131
- const placeholder = shallow( <Placeholder test="test" /> );
132
- expect( placeholder.prop( 'test' ) ).toBe( 'test' );
133
- } );
134
- } );
135
-
136
- describe( 'resize aware', () => {
137
- it( 'should not assign modifier class in first-pass `null` width from `useResizeObserver`', () => {
138
- useResizeObserver.mockReturnValue( [
139
- <div key="1" />,
140
- { width: 480 },
141
- ] );
142
-
143
- const placeholder = shallow( <Placeholder /> );
144
-
145
- expect( placeholder.hasClass( 'is-large' ) ).toBe( true );
146
- expect( placeholder.hasClass( 'is-medium' ) ).toBe( false );
147
- expect( placeholder.hasClass( 'is-small' ) ).toBe( false );
148
- } );
149
-
150
- it( 'should assign modifier class', () => {
151
- useResizeObserver.mockReturnValue( [
152
- <div key="1" />,
153
- { width: null },
154
- ] );
155
-
156
- const placeholder = shallow( <Placeholder /> );
157
-
158
- expect( placeholder.hasClass( 'is-large' ) ).toBe( false );
159
- expect( placeholder.hasClass( 'is-medium' ) ).toBe( false );
160
- expect( placeholder.hasClass( 'is-small' ) ).toBe( false );
161
- } );
162
- } );
163
- } );
@@ -1,22 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { swatch } from '@wordpress/icons';
5
-
6
- /**
7
- * Internal dependencies
8
- */
9
- import Icon from '../icon';
10
- import type { SwatchProps } from './types';
11
-
12
- // This component will be deprecated. Use `ColorIndicator` instead.
13
- // TODO: Consolidate this component with `ColorIndicator`.
14
- function Swatch( { fill }: SwatchProps ) {
15
- return fill ? (
16
- <span className="components-swatch" style={ { background: fill } } />
17
- ) : (
18
- <Icon icon={ swatch } />
19
- );
20
- }
21
-
22
- export default Swatch;