@wordpress/components 28.6.0 → 28.8.1-next.1f6eadc42.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 (652) hide show
  1. package/CHANGELOG.md +109 -0
  2. package/CONTRIBUTING.md +42 -19
  3. package/build/alignment-matrix-control/cell.js +4 -7
  4. package/build/alignment-matrix-control/cell.js.map +1 -1
  5. package/build/alignment-matrix-control/icon.js +31 -19
  6. package/build/alignment-matrix-control/icon.js.map +1 -1
  7. package/build/alignment-matrix-control/index.js +55 -51
  8. package/build/alignment-matrix-control/index.js.map +1 -1
  9. package/build/alignment-matrix-control/styles.js +73 -0
  10. package/build/alignment-matrix-control/styles.js.map +1 -0
  11. package/build/alignment-matrix-control/types.js.map +1 -1
  12. package/build/angle-picker-control/angle-circle.js +9 -9
  13. package/build/angle-picker-control/angle-circle.js.map +1 -1
  14. package/build/border-control/border-control/component.js +18 -13
  15. package/build/border-control/border-control/component.js.map +1 -1
  16. package/build/box-control/utils.js +1 -1
  17. package/build/box-control/utils.js.map +1 -1
  18. package/build/circular-option-picker/circular-option-picker-option.js +15 -9
  19. package/build/circular-option-picker/circular-option-picker-option.js.map +1 -1
  20. package/build/circular-option-picker/circular-option-picker.js +15 -12
  21. package/build/circular-option-picker/circular-option-picker.js.map +1 -1
  22. package/build/circular-option-picker/types.js.map +1 -1
  23. package/build/clipboard-button/index.js +6 -6
  24. package/build/clipboard-button/index.js.map +1 -1
  25. package/build/color-palette/utils.js +1 -2
  26. package/build/color-palette/utils.js.map +1 -1
  27. package/build/color-picker/color-copy-button.js +8 -8
  28. package/build/color-picker/color-copy-button.js.map +1 -1
  29. package/build/color-picker/hex-input.js +8 -8
  30. package/build/color-picker/hex-input.js.map +1 -1
  31. package/build/color-picker/input-with-slider.js +8 -8
  32. package/build/color-picker/input-with-slider.js.map +1 -1
  33. package/build/color-picker/styles.js +8 -8
  34. package/build/color-picker/styles.js.map +1 -1
  35. package/build/combobox-control/types.js.map +1 -1
  36. package/build/composite/context.js +1 -1
  37. package/build/composite/context.js.map +1 -1
  38. package/build/composite/group-label.js +33 -0
  39. package/build/composite/group-label.js.map +1 -0
  40. package/build/composite/group.js +33 -0
  41. package/build/composite/group.js.map +1 -0
  42. package/build/composite/hover.js +33 -0
  43. package/build/composite/hover.js.map +1 -0
  44. package/build/composite/index.js +63 -118
  45. package/build/composite/index.js.map +1 -1
  46. package/build/composite/item.js +33 -0
  47. package/build/composite/item.js.map +1 -0
  48. package/build/composite/legacy/index.js +59 -7
  49. package/build/composite/legacy/index.js.map +1 -1
  50. package/build/composite/row.js +33 -0
  51. package/build/composite/row.js.map +1 -0
  52. package/build/composite/typeahead.js +33 -0
  53. package/build/composite/typeahead.js.map +1 -0
  54. package/build/composite/types.js.map +1 -1
  55. package/build/custom-gradient-picker/gradient-bar/control-points.js +8 -8
  56. package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  57. package/build/custom-select-control-v2/styles.js +12 -14
  58. package/build/custom-select-control-v2/styles.js.map +1 -1
  59. package/build/date-time/date/index.js +1 -1
  60. package/build/date-time/date/index.js.map +1 -1
  61. package/build/date-time/date/styles.js +37 -26
  62. package/build/date-time/date/styles.js.map +1 -1
  63. package/build/date-time/date/use-lilius/index.js +163 -0
  64. package/build/date-time/date/use-lilius/index.js.map +1 -0
  65. package/build/date-time/time/time-input/index.js +17 -19
  66. package/build/date-time/time/time-input/index.js.map +1 -1
  67. package/build/dimension-control/index.js +6 -1
  68. package/build/dimension-control/index.js.map +1 -1
  69. package/build/draggable/index.js +4 -4
  70. package/build/draggable/index.js.map +1 -1
  71. package/build/dropdown-menu-v2/checkbox-item.js +69 -0
  72. package/build/dropdown-menu-v2/checkbox-item.js.map +1 -0
  73. package/build/dropdown-menu-v2/context.js +17 -0
  74. package/build/dropdown-menu-v2/context.js.map +1 -0
  75. package/build/dropdown-menu-v2/group-label.js +40 -0
  76. package/build/dropdown-menu-v2/group-label.js.map +1 -0
  77. package/build/dropdown-menu-v2/group.js +29 -0
  78. package/build/dropdown-menu-v2/group.js.map +1 -0
  79. package/build/dropdown-menu-v2/index.js +58 -146
  80. package/build/dropdown-menu-v2/index.js.map +1 -1
  81. package/build/dropdown-menu-v2/item-help-text.js +27 -0
  82. package/build/dropdown-menu-v2/item-help-text.js.map +1 -0
  83. package/build/dropdown-menu-v2/item-label.js +27 -0
  84. package/build/dropdown-menu-v2/item-label.js.map +1 -0
  85. package/build/dropdown-menu-v2/item.js +53 -0
  86. package/build/dropdown-menu-v2/item.js.map +1 -0
  87. package/build/dropdown-menu-v2/radio-item.js +79 -0
  88. package/build/dropdown-menu-v2/radio-item.js.map +1 -0
  89. package/build/dropdown-menu-v2/separator.js +30 -0
  90. package/build/dropdown-menu-v2/separator.js.map +1 -0
  91. package/build/dropdown-menu-v2/styles.js +54 -78
  92. package/build/dropdown-menu-v2/styles.js.map +1 -1
  93. package/build/dropdown-menu-v2/types.js.map +1 -1
  94. package/build/dropdown-menu-v2/use-temporary-focus-visible-fix.js +27 -0
  95. package/build/dropdown-menu-v2/use-temporary-focus-visible-fix.js.map +1 -0
  96. package/build/focal-point-picker/styles/focal-point-style.js +7 -2
  97. package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
  98. package/build/form-token-field/types.js.map +1 -1
  99. package/build/index.js +13 -0
  100. package/build/index.js.map +1 -1
  101. package/build/input-control/index.js +2 -2
  102. package/build/input-control/index.js.map +1 -1
  103. package/build/input-control/input-base.js +5 -10
  104. package/build/input-control/input-base.js.map +1 -1
  105. package/build/input-control/input-prefix-wrapper.js +3 -3
  106. package/build/input-control/input-prefix-wrapper.js.map +1 -1
  107. package/build/input-control/input-suffix-wrapper.js +2 -3
  108. package/build/input-control/input-suffix-wrapper.js.map +1 -1
  109. package/build/input-control/reducer/reducer.js +8 -8
  110. package/build/input-control/reducer/reducer.js.map +1 -1
  111. package/build/input-control/styles/input-control-styles.js +75 -45
  112. package/build/input-control/styles/input-control-styles.js.map +1 -1
  113. package/build/input-control/types.js.map +1 -1
  114. package/build/input-control/utils.js +3 -3
  115. package/build/input-control/utils.js.map +1 -1
  116. package/build/item-group/styles.js +10 -10
  117. package/build/item-group/styles.js.map +1 -1
  118. package/build/modal/index.js +16 -9
  119. package/build/modal/index.js.map +1 -1
  120. package/build/navigation/index.js +4 -4
  121. package/build/navigation/index.js.map +1 -1
  122. package/build/navigation/styles/navigation-styles.js +13 -13
  123. package/build/navigation/styles/navigation-styles.js.map +1 -1
  124. package/build/navigator/index.js +12 -13
  125. package/build/navigator/index.js.map +1 -1
  126. package/build/navigator/navigator-back-button/hook.js +2 -2
  127. package/build/navigator/navigator-back-button/hook.js.map +1 -1
  128. package/build/navigator/navigator-button/hook.js +2 -2
  129. package/build/navigator/navigator-button/hook.js.map +1 -1
  130. package/build/navigator/navigator-provider/component.js +99 -67
  131. package/build/navigator/navigator-provider/component.js.map +1 -1
  132. package/build/navigator/navigator-screen/component.js +5 -0
  133. package/build/navigator/navigator-screen/component.js.map +1 -1
  134. package/build/navigator/navigator-to-parent-button/component.js +2 -2
  135. package/build/navigator/navigator-to-parent-button/component.js.map +1 -1
  136. package/build/navigator/types.js.map +1 -1
  137. package/build/navigator/use-navigator.js +1 -2
  138. package/build/navigator/use-navigator.js.map +1 -1
  139. package/build/palette-edit/index.js +2 -2
  140. package/build/palette-edit/index.js.map +1 -1
  141. package/build/private-apis.js +1 -14
  142. package/build/private-apis.js.map +1 -1
  143. package/build/range-control/styles/range-control-styles.js +30 -30
  144. package/build/range-control/styles/range-control-styles.js.map +1 -1
  145. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
  146. package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  147. package/build/select-control/styles/select-control-styles.js +12 -12
  148. package/build/select-control/styles/select-control-styles.js.map +1 -1
  149. package/build/slot-fill/bubbles-virtually/fill.js +4 -4
  150. package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
  151. package/build/slot-fill/index.js +1 -0
  152. package/build/slot-fill/index.js.map +1 -1
  153. package/build/snackbar/index.js +4 -4
  154. package/build/snackbar/index.js.map +1 -1
  155. package/build/tabs/index.js +4 -4
  156. package/build/tabs/index.js.map +1 -1
  157. package/build/tabs/styles.js +3 -3
  158. package/build/tabs/styles.js.map +1 -1
  159. package/build/tabs/tablist.js +5 -4
  160. package/build/tabs/tablist.js.map +1 -1
  161. package/build/toggle-group-control/toggle-group-control/utils.js +6 -6
  162. package/build/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  163. package/build/tools-panel/tools-panel/hook.js +6 -6
  164. package/build/tools-panel/tools-panel/hook.js.map +1 -1
  165. package/build/unit-control/styles/unit-control-styles.js +7 -7
  166. package/build/unit-control/styles/unit-control-styles.js.map +1 -1
  167. package/build/utils/config-values.js +6 -4
  168. package/build/utils/config-values.js.map +1 -1
  169. package/build/utils/element-rect.js +73 -105
  170. package/build/utils/element-rect.js.map +1 -1
  171. package/build/utils/hooks/use-update-effect.js +4 -4
  172. package/build/utils/hooks/use-update-effect.js.map +1 -1
  173. package/build-module/alignment-matrix-control/cell.js +2 -5
  174. package/build-module/alignment-matrix-control/cell.js.map +1 -1
  175. package/build-module/alignment-matrix-control/icon.js +31 -19
  176. package/build-module/alignment-matrix-control/icon.js.map +1 -1
  177. package/build-module/alignment-matrix-control/index.js +55 -50
  178. package/build-module/alignment-matrix-control/index.js.map +1 -1
  179. package/build-module/alignment-matrix-control/styles.js +70 -0
  180. package/build-module/alignment-matrix-control/styles.js.map +1 -0
  181. package/build-module/alignment-matrix-control/types.js.map +1 -1
  182. package/build-module/angle-picker-control/angle-circle.js +9 -9
  183. package/build-module/angle-picker-control/angle-circle.js.map +1 -1
  184. package/build-module/border-control/border-control/component.js +18 -13
  185. package/build-module/border-control/border-control/component.js.map +1 -1
  186. package/build-module/box-control/utils.js +1 -1
  187. package/build-module/box-control/utils.js.map +1 -1
  188. package/build-module/circular-option-picker/circular-option-picker-option.js +16 -10
  189. package/build-module/circular-option-picker/circular-option-picker-option.js.map +1 -1
  190. package/build-module/circular-option-picker/circular-option-picker.js +16 -13
  191. package/build-module/circular-option-picker/circular-option-picker.js.map +1 -1
  192. package/build-module/circular-option-picker/types.js.map +1 -1
  193. package/build-module/clipboard-button/index.js +6 -6
  194. package/build-module/clipboard-button/index.js.map +1 -1
  195. package/build-module/color-palette/utils.js +1 -2
  196. package/build-module/color-palette/utils.js.map +1 -1
  197. package/build-module/color-picker/color-copy-button.js +8 -8
  198. package/build-module/color-picker/color-copy-button.js.map +1 -1
  199. package/build-module/color-picker/hex-input.js +7 -8
  200. package/build-module/color-picker/hex-input.js.map +1 -1
  201. package/build-module/color-picker/input-with-slider.js +7 -8
  202. package/build-module/color-picker/input-with-slider.js.map +1 -1
  203. package/build-module/color-picker/styles.js +8 -8
  204. package/build-module/color-picker/styles.js.map +1 -1
  205. package/build-module/combobox-control/types.js.map +1 -1
  206. package/build-module/composite/context.js +1 -1
  207. package/build-module/composite/context.js.map +1 -1
  208. package/build-module/composite/group-label.js +25 -0
  209. package/build-module/composite/group-label.js.map +1 -0
  210. package/build-module/composite/group.js +25 -0
  211. package/build-module/composite/group.js.map +1 -0
  212. package/build-module/composite/hover.js +25 -0
  213. package/build-module/composite/hover.js.map +1 -0
  214. package/build-module/composite/index.js +64 -118
  215. package/build-module/composite/index.js.map +1 -1
  216. package/build-module/composite/item.js +25 -0
  217. package/build-module/composite/item.js.map +1 -0
  218. package/build-module/composite/legacy/index.js +57 -8
  219. package/build-module/composite/legacy/index.js.map +1 -1
  220. package/build-module/composite/row.js +25 -0
  221. package/build-module/composite/row.js.map +1 -0
  222. package/build-module/composite/typeahead.js +25 -0
  223. package/build-module/composite/typeahead.js.map +1 -0
  224. package/build-module/composite/types.js.map +1 -1
  225. package/build-module/custom-gradient-picker/gradient-bar/control-points.js +8 -8
  226. package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
  227. package/build-module/custom-select-control-v2/styles.js +12 -14
  228. package/build-module/custom-select-control-v2/styles.js.map +1 -1
  229. package/build-module/date-time/date/index.js +1 -2
  230. package/build-module/date-time/date/index.js.map +1 -1
  231. package/build-module/date-time/date/styles.js +33 -26
  232. package/build-module/date-time/date/styles.js.map +1 -1
  233. package/build-module/date-time/date/use-lilius/index.js +158 -0
  234. package/build-module/date-time/date/use-lilius/index.js.map +1 -0
  235. package/build-module/date-time/time/time-input/index.js +17 -19
  236. package/build-module/date-time/time/time-input/index.js.map +1 -1
  237. package/build-module/dimension-control/index.js +6 -1
  238. package/build-module/dimension-control/index.js.map +1 -1
  239. package/build-module/draggable/index.js +4 -4
  240. package/build-module/draggable/index.js.map +1 -1
  241. package/build-module/dropdown-menu-v2/checkbox-item.js +62 -0
  242. package/build-module/dropdown-menu-v2/checkbox-item.js.map +1 -0
  243. package/build-module/dropdown-menu-v2/context.js +11 -0
  244. package/build-module/dropdown-menu-v2/context.js.map +1 -0
  245. package/build-module/dropdown-menu-v2/group-label.js +32 -0
  246. package/build-module/dropdown-menu-v2/group-label.js.map +1 -0
  247. package/build-module/dropdown-menu-v2/group.js +21 -0
  248. package/build-module/dropdown-menu-v2/group.js.map +1 -0
  249. package/build-module/dropdown-menu-v2/index.js +57 -144
  250. package/build-module/dropdown-menu-v2/index.js.map +1 -1
  251. package/build-module/dropdown-menu-v2/item-help-text.js +19 -0
  252. package/build-module/dropdown-menu-v2/item-help-text.js.map +1 -0
  253. package/build-module/dropdown-menu-v2/item-label.js +19 -0
  254. package/build-module/dropdown-menu-v2/item-label.js.map +1 -0
  255. package/build-module/dropdown-menu-v2/item.js +46 -0
  256. package/build-module/dropdown-menu-v2/item.js.map +1 -0
  257. package/build-module/dropdown-menu-v2/radio-item.js +72 -0
  258. package/build-module/dropdown-menu-v2/radio-item.js.map +1 -0
  259. package/build-module/dropdown-menu-v2/separator.js +22 -0
  260. package/build-module/dropdown-menu-v2/separator.js.map +1 -0
  261. package/build-module/dropdown-menu-v2/styles.js +54 -78
  262. package/build-module/dropdown-menu-v2/styles.js.map +1 -1
  263. package/build-module/dropdown-menu-v2/types.js.map +1 -1
  264. package/build-module/dropdown-menu-v2/use-temporary-focus-visible-fix.js +20 -0
  265. package/build-module/dropdown-menu-v2/use-temporary-focus-visible-fix.js.map +1 -0
  266. package/build-module/focal-point-picker/styles/focal-point-style.js +6 -2
  267. package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
  268. package/build-module/form-token-field/types.js.map +1 -1
  269. package/build-module/index.js +3 -1
  270. package/build-module/index.js.map +1 -1
  271. package/build-module/input-control/index.js +2 -2
  272. package/build-module/input-control/index.js.map +1 -1
  273. package/build-module/input-control/input-base.js +6 -11
  274. package/build-module/input-control/input-base.js.map +1 -1
  275. package/build-module/input-control/input-prefix-wrapper.js +4 -3
  276. package/build-module/input-control/input-prefix-wrapper.js.map +1 -1
  277. package/build-module/input-control/input-suffix-wrapper.js +3 -3
  278. package/build-module/input-control/input-suffix-wrapper.js.map +1 -1
  279. package/build-module/input-control/reducer/reducer.js +8 -8
  280. package/build-module/input-control/reducer/reducer.js.map +1 -1
  281. package/build-module/input-control/styles/input-control-styles.js +74 -44
  282. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  283. package/build-module/input-control/types.js.map +1 -1
  284. package/build-module/input-control/utils.js +3 -3
  285. package/build-module/input-control/utils.js.map +1 -1
  286. package/build-module/item-group/styles.js +10 -10
  287. package/build-module/item-group/styles.js.map +1 -1
  288. package/build-module/modal/index.js +17 -9
  289. package/build-module/modal/index.js.map +1 -1
  290. package/build-module/navigation/index.js +4 -4
  291. package/build-module/navigation/index.js.map +1 -1
  292. package/build-module/navigation/styles/navigation-styles.js +14 -14
  293. package/build-module/navigation/styles/navigation-styles.js.map +1 -1
  294. package/build-module/navigator/index.js +6 -6
  295. package/build-module/navigator/index.js.map +1 -1
  296. package/build-module/navigator/navigator-back-button/hook.js +1 -1
  297. package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
  298. package/build-module/navigator/navigator-button/hook.js +1 -1
  299. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  300. package/build-module/navigator/navigator-provider/component.js +99 -67
  301. package/build-module/navigator/navigator-provider/component.js.map +1 -1
  302. package/build-module/navigator/navigator-screen/component.js +4 -0
  303. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  304. package/build-module/navigator/navigator-to-parent-button/component.js +1 -1
  305. package/build-module/navigator/navigator-to-parent-button/component.js.map +1 -1
  306. package/build-module/navigator/types.js.map +1 -1
  307. package/build-module/navigator/use-navigator.js +1 -2
  308. package/build-module/navigator/use-navigator.js.map +1 -1
  309. package/build-module/palette-edit/index.js +2 -2
  310. package/build-module/palette-edit/index.js.map +1 -1
  311. package/build-module/private-apis.js +1 -14
  312. package/build-module/private-apis.js.map +1 -1
  313. package/build-module/range-control/styles/range-control-styles.js +31 -31
  314. package/build-module/range-control/styles/range-control-styles.js.map +1 -1
  315. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +5 -5
  316. package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
  317. package/build-module/select-control/styles/select-control-styles.js +13 -13
  318. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  319. package/build-module/slot-fill/bubbles-virtually/fill.js +4 -4
  320. package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
  321. package/build-module/slot-fill/index.js +1 -0
  322. package/build-module/slot-fill/index.js.map +1 -1
  323. package/build-module/snackbar/index.js +4 -4
  324. package/build-module/snackbar/index.js.map +1 -1
  325. package/build-module/tabs/index.js +4 -4
  326. package/build-module/tabs/index.js.map +1 -1
  327. package/build-module/tabs/styles.js +4 -4
  328. package/build-module/tabs/styles.js.map +1 -1
  329. package/build-module/tabs/tablist.js +5 -4
  330. package/build-module/tabs/tablist.js.map +1 -1
  331. package/build-module/toggle-group-control/toggle-group-control/utils.js +6 -6
  332. package/build-module/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  333. package/build-module/tools-panel/tools-panel/hook.js +6 -6
  334. package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
  335. package/build-module/unit-control/styles/unit-control-styles.js +7 -7
  336. package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
  337. package/build-module/utils/config-values.js +6 -4
  338. package/build-module/utils/config-values.js.map +1 -1
  339. package/build-module/utils/element-rect.js +74 -105
  340. package/build-module/utils/element-rect.js.map +1 -1
  341. package/build-module/utils/hooks/use-update-effect.js +4 -4
  342. package/build-module/utils/hooks/use-update-effect.js.map +1 -1
  343. package/build-style/style-rtl.css +12 -27
  344. package/build-style/style.css +12 -27
  345. package/build-types/alignment-matrix-control/cell.d.ts +1 -1
  346. package/build-types/alignment-matrix-control/cell.d.ts.map +1 -1
  347. package/build-types/alignment-matrix-control/icon.d.ts +1 -1
  348. package/build-types/alignment-matrix-control/icon.d.ts.map +1 -1
  349. package/build-types/alignment-matrix-control/index.d.ts +16 -6
  350. package/build-types/alignment-matrix-control/index.d.ts.map +1 -1
  351. package/build-types/alignment-matrix-control/stories/index.story.d.ts.map +1 -1
  352. package/build-types/alignment-matrix-control/{styles/alignment-matrix-control-styles.d.ts → styles.d.ts} +9 -10
  353. package/build-types/alignment-matrix-control/styles.d.ts.map +1 -0
  354. package/build-types/alignment-matrix-control/types.d.ts +12 -1
  355. package/build-types/alignment-matrix-control/types.d.ts.map +1 -1
  356. package/build-types/angle-picker-control/angle-circle.d.ts.map +1 -1
  357. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  358. package/build-types/box-control/stories/index.story.d.ts.map +1 -1
  359. package/build-types/box-control/utils.d.ts +1 -1
  360. package/build-types/box-control/utils.d.ts.map +1 -1
  361. package/build-types/circular-option-picker/circular-option-picker-option.d.ts.map +1 -1
  362. package/build-types/circular-option-picker/circular-option-picker.d.ts.map +1 -1
  363. package/build-types/circular-option-picker/types.d.ts +2 -2
  364. package/build-types/circular-option-picker/types.d.ts.map +1 -1
  365. package/build-types/color-palette/utils.d.ts.map +1 -1
  366. package/build-types/color-picker/color-copy-button.d.ts.map +1 -1
  367. package/build-types/color-picker/hex-input.d.ts.map +1 -1
  368. package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
  369. package/build-types/color-picker/styles.d.ts.map +1 -1
  370. package/build-types/combobox-control/types.d.ts +1 -0
  371. package/build-types/combobox-control/types.d.ts.map +1 -1
  372. package/build-types/composite/context.d.ts.map +1 -1
  373. package/build-types/composite/group-label.d.ts +3 -0
  374. package/build-types/composite/group-label.d.ts.map +1 -0
  375. package/build-types/composite/group.d.ts +3 -0
  376. package/build-types/composite/group.d.ts.map +1 -0
  377. package/build-types/composite/hover.d.ts +3 -0
  378. package/build-types/composite/hover.d.ts.map +1 -0
  379. package/build-types/composite/index.d.ts +63 -47
  380. package/build-types/composite/index.d.ts.map +1 -1
  381. package/build-types/composite/item.d.ts +3 -0
  382. package/build-types/composite/item.d.ts.map +1 -0
  383. package/build-types/composite/legacy/index.d.ts +23 -3
  384. package/build-types/composite/legacy/index.d.ts.map +1 -1
  385. package/build-types/composite/legacy/stories/index.story.d.ts.map +1 -1
  386. package/build-types/composite/row.d.ts +3 -0
  387. package/build-types/composite/row.d.ts.map +1 -0
  388. package/build-types/composite/stories/index.story.d.ts +9 -8
  389. package/build-types/composite/stories/index.story.d.ts.map +1 -1
  390. package/build-types/composite/typeahead.d.ts +3 -0
  391. package/build-types/composite/typeahead.d.ts.map +1 -0
  392. package/build-types/composite/types.d.ts +12 -11
  393. package/build-types/composite/types.d.ts.map +1 -1
  394. package/build-types/date-time/date/index.d.ts +0 -3
  395. package/build-types/date-time/date/index.d.ts.map +1 -1
  396. package/build-types/date-time/date/styles.d.ts.map +1 -1
  397. package/build-types/date-time/date/test/use-lilius.d.ts +2 -0
  398. package/build-types/date-time/date/test/use-lilius.d.ts.map +1 -0
  399. package/build-types/date-time/date/use-lilius/index.d.ts +169 -0
  400. package/build-types/date-time/date/use-lilius/index.d.ts.map +1 -0
  401. package/build-types/date-time/time/time-input/index.d.ts.map +1 -1
  402. package/build-types/dimension-control/index.d.ts +1 -1
  403. package/build-types/dimension-control/index.d.ts.map +1 -1
  404. package/build-types/dimension-control/stories/index.story.d.ts +5 -0
  405. package/build-types/dimension-control/stories/index.story.d.ts.map +1 -1
  406. package/build-types/dropdown-menu-v2/checkbox-item.d.ts +3 -0
  407. package/build-types/dropdown-menu-v2/checkbox-item.d.ts.map +1 -0
  408. package/build-types/dropdown-menu-v2/context.d.ts +6 -0
  409. package/build-types/dropdown-menu-v2/context.d.ts.map +1 -0
  410. package/build-types/dropdown-menu-v2/group-label.d.ts +3 -0
  411. package/build-types/dropdown-menu-v2/group-label.d.ts.map +1 -0
  412. package/build-types/dropdown-menu-v2/group.d.ts +3 -0
  413. package/build-types/dropdown-menu-v2/group.d.ts.map +1 -0
  414. package/build-types/dropdown-menu-v2/index.d.ts +39 -18
  415. package/build-types/dropdown-menu-v2/index.d.ts.map +1 -1
  416. package/build-types/dropdown-menu-v2/item-help-text.d.ts +6 -0
  417. package/build-types/dropdown-menu-v2/item-help-text.d.ts.map +1 -0
  418. package/build-types/dropdown-menu-v2/item-label.d.ts +6 -0
  419. package/build-types/dropdown-menu-v2/item-label.d.ts.map +1 -0
  420. package/build-types/dropdown-menu-v2/item.d.ts +3 -0
  421. package/build-types/dropdown-menu-v2/item.d.ts.map +1 -0
  422. package/build-types/dropdown-menu-v2/radio-item.d.ts +3 -0
  423. package/build-types/dropdown-menu-v2/radio-item.d.ts.map +1 -0
  424. package/build-types/dropdown-menu-v2/separator.d.ts +3 -0
  425. package/build-types/dropdown-menu-v2/separator.d.ts.map +1 -0
  426. package/build-types/dropdown-menu-v2/stories/index.story.d.ts +10 -10
  427. package/build-types/dropdown-menu-v2/stories/index.story.d.ts.map +1 -1
  428. package/build-types/dropdown-menu-v2/styles.d.ts +14 -6
  429. package/build-types/dropdown-menu-v2/styles.d.ts.map +1 -1
  430. package/build-types/dropdown-menu-v2/types.d.ts +6 -0
  431. package/build-types/dropdown-menu-v2/types.d.ts.map +1 -1
  432. package/build-types/dropdown-menu-v2/use-temporary-focus-visible-fix.d.ts +8 -0
  433. package/build-types/dropdown-menu-v2/use-temporary-focus-visible-fix.d.ts.map +1 -0
  434. package/build-types/focal-point-picker/styles/focal-point-style.d.ts.map +1 -1
  435. package/build-types/form-token-field/types.d.ts +1 -0
  436. package/build-types/form-token-field/types.d.ts.map +1 -1
  437. package/build-types/index.d.ts +4 -1
  438. package/build-types/index.d.ts.map +1 -1
  439. package/build-types/input-control/input-base.d.ts.map +1 -1
  440. package/build-types/input-control/input-prefix-wrapper.d.ts +2 -2
  441. package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -1
  442. package/build-types/input-control/input-suffix-wrapper.d.ts +2 -2
  443. package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -1
  444. package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
  445. package/build-types/input-control/stories/index.story.d.ts +9 -0
  446. package/build-types/input-control/stories/index.story.d.ts.map +1 -1
  447. package/build-types/input-control/styles/input-control-styles.d.ts +15 -9
  448. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  449. package/build-types/input-control/types.d.ts +23 -6
  450. package/build-types/input-control/types.d.ts.map +1 -1
  451. package/build-types/modal/index.d.ts.map +1 -1
  452. package/build-types/modal/stories/index.story.d.ts +3 -0
  453. package/build-types/modal/stories/index.story.d.ts.map +1 -1
  454. package/build-types/navigation/styles/navigation-styles.d.ts.map +1 -1
  455. package/build-types/navigator/index.d.ts +6 -6
  456. package/build-types/navigator/index.d.ts.map +1 -1
  457. package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
  458. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  459. package/build-types/navigator/stories/index.story.d.ts +1 -1
  460. package/build-types/navigator/stories/index.story.d.ts.map +1 -1
  461. package/build-types/navigator/types.d.ts +3 -1
  462. package/build-types/navigator/types.d.ts.map +1 -1
  463. package/build-types/navigator/use-navigator.d.ts +1 -2
  464. package/build-types/navigator/use-navigator.d.ts.map +1 -1
  465. package/build-types/private-apis.d.ts.map +1 -1
  466. package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
  467. package/build-types/resizable-box/resize-tooltip/styles/resize-tooltip.styles.d.ts.map +1 -1
  468. package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
  469. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  470. package/build-types/slot-fill/index.d.ts +3 -0
  471. package/build-types/slot-fill/index.d.ts.map +1 -1
  472. package/build-types/tabs/index.d.ts.map +1 -1
  473. package/build-types/tabs/styles.d.ts.map +1 -1
  474. package/build-types/tabs/tablist.d.ts.map +1 -1
  475. package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
  476. package/build-types/utils/config-values.d.ts +3 -3
  477. package/build-types/utils/element-rect.d.ts +32 -74
  478. package/build-types/utils/element-rect.d.ts.map +1 -1
  479. package/package.json +19 -20
  480. package/src/alignment-matrix-control/README.md +1 -5
  481. package/src/alignment-matrix-control/cell.tsx +3 -9
  482. package/src/alignment-matrix-control/icon.tsx +48 -30
  483. package/src/alignment-matrix-control/index.tsx +60 -50
  484. package/src/alignment-matrix-control/stories/index.story.tsx +3 -12
  485. package/src/alignment-matrix-control/styles.ts +113 -0
  486. package/src/alignment-matrix-control/types.ts +12 -1
  487. package/src/angle-picker-control/angle-circle.tsx +11 -9
  488. package/src/border-control/border-control/component.tsx +23 -16
  489. package/src/box-control/utils.ts +1 -1
  490. package/src/circular-option-picker/circular-option-picker-option.tsx +16 -19
  491. package/src/circular-option-picker/circular-option-picker.tsx +26 -12
  492. package/src/circular-option-picker/types.ts +2 -2
  493. package/src/clipboard-button/index.tsx +6 -6
  494. package/src/color-palette/test/utils.ts +21 -2
  495. package/src/color-palette/utils.ts +1 -3
  496. package/src/color-picker/color-copy-button.tsx +10 -8
  497. package/src/color-picker/hex-input.tsx +6 -10
  498. package/src/color-picker/input-with-slider.tsx +6 -10
  499. package/src/color-picker/styles.ts +1 -1
  500. package/src/combobox-control/types.ts +1 -0
  501. package/src/composite/README.md +5 -24
  502. package/src/composite/{context.ts → context.tsx} +1 -2
  503. package/src/composite/group-label.tsx +30 -0
  504. package/src/composite/group.tsx +30 -0
  505. package/src/composite/hover.tsx +30 -0
  506. package/src/composite/index.tsx +71 -166
  507. package/src/composite/item.tsx +30 -0
  508. package/src/composite/legacy/index.tsx +73 -11
  509. package/src/composite/legacy/stories/index.story.tsx +2 -1
  510. package/src/composite/legacy/test/index.tsx +57 -1
  511. package/src/composite/row.tsx +30 -0
  512. package/src/composite/stories/index.story.tsx +254 -365
  513. package/src/composite/typeahead.tsx +30 -0
  514. package/src/composite/types.ts +14 -16
  515. package/src/custom-gradient-picker/gradient-bar/control-points.tsx +10 -10
  516. package/src/custom-gradient-picker/style.scss +2 -21
  517. package/src/custom-select-control-v2/styles.ts +4 -4
  518. package/src/date-time/date/index.tsx +1 -1
  519. package/src/date-time/date/styles.ts +33 -13
  520. package/src/date-time/date/test/use-lilius.ts +417 -0
  521. package/src/date-time/date/use-lilius/index.ts +394 -0
  522. package/src/date-time/time/test/index.tsx +3 -6
  523. package/src/date-time/time/time-input/index.tsx +25 -25
  524. package/src/date-time/time/time-input/test/index.tsx +6 -7
  525. package/src/dimension-control/README.md +4 -0
  526. package/src/dimension-control/index.tsx +7 -1
  527. package/src/dimension-control/stories/index.story.tsx +7 -2
  528. package/src/dimension-control/test/__snapshots__/index.test.js.snap +16 -16
  529. package/src/dimension-control/test/index.test.js +1 -0
  530. package/src/draggable/index.tsx +4 -4
  531. package/src/dropdown-menu-v2/README.md +73 -60
  532. package/src/dropdown-menu-v2/checkbox-item.tsx +63 -0
  533. package/src/dropdown-menu-v2/context.tsx +13 -0
  534. package/src/dropdown-menu-v2/group-label.tsx +37 -0
  535. package/src/dropdown-menu-v2/group.tsx +26 -0
  536. package/src/dropdown-menu-v2/index.tsx +57 -197
  537. package/src/dropdown-menu-v2/item-help-text.tsx +23 -0
  538. package/src/dropdown-menu-v2/item-label.tsx +23 -0
  539. package/src/dropdown-menu-v2/item.tsx +50 -0
  540. package/src/dropdown-menu-v2/radio-item.tsx +70 -0
  541. package/src/dropdown-menu-v2/separator.tsx +27 -0
  542. package/src/dropdown-menu-v2/stories/index.story.tsx +295 -262
  543. package/src/dropdown-menu-v2/styles.ts +102 -66
  544. package/src/dropdown-menu-v2/test/index.tsx +159 -132
  545. package/src/dropdown-menu-v2/types.ts +7 -0
  546. package/src/dropdown-menu-v2/use-temporary-focus-visible-fix.ts +22 -0
  547. package/src/focal-point-picker/styles/focal-point-style.ts +6 -1
  548. package/src/form-toggle/style.scss +1 -1
  549. package/src/form-token-field/style.scss +2 -3
  550. package/src/form-token-field/types.ts +1 -0
  551. package/src/index.ts +6 -1
  552. package/src/input-control/index.tsx +2 -2
  553. package/src/input-control/input-base.tsx +4 -14
  554. package/src/input-control/input-prefix-wrapper.tsx +8 -4
  555. package/src/input-control/input-suffix-wrapper.tsx +4 -6
  556. package/src/input-control/reducer/reducer.ts +13 -10
  557. package/src/input-control/stories/index.story.tsx +31 -12
  558. package/src/input-control/styles/input-control-styles.tsx +42 -11
  559. package/src/input-control/types.ts +23 -7
  560. package/src/input-control/utils.ts +3 -3
  561. package/src/item-group/styles.ts +3 -3
  562. package/src/item-group/test/__snapshots__/index.js.snap +3 -3
  563. package/src/modal/index.tsx +21 -12
  564. package/src/modal/stories/index.story.tsx +8 -14
  565. package/src/modal/style.scss +5 -9
  566. package/src/navigation/index.tsx +4 -4
  567. package/src/navigation/styles/navigation-styles.tsx +3 -3
  568. package/src/navigator/index.ts +6 -6
  569. package/src/navigator/navigator-back-button/hook.ts +1 -1
  570. package/src/navigator/navigator-button/hook.ts +1 -1
  571. package/src/navigator/navigator-provider/README.md +2 -3
  572. package/src/navigator/navigator-provider/component.tsx +97 -82
  573. package/src/navigator/navigator-screen/component.tsx +7 -0
  574. package/src/navigator/navigator-to-parent-button/component.tsx +1 -1
  575. package/src/navigator/stories/index.story.tsx +82 -253
  576. package/src/navigator/test/index.tsx +8 -0
  577. package/src/navigator/types.ts +3 -1
  578. package/src/navigator/use-navigator.ts +1 -3
  579. package/src/palette-edit/index.tsx +2 -2
  580. package/src/popover/style.scss +2 -1
  581. package/src/private-apis.ts +1 -23
  582. package/src/range-control/styles/range-control-styles.ts +7 -7
  583. package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.ts +2 -2
  584. package/src/resizable-box/style.scss +2 -2
  585. package/src/select-control/README.md +2 -2
  586. package/src/select-control/styles/select-control-styles.ts +5 -5
  587. package/src/slot-fill/bubbles-virtually/fill.tsx +4 -4
  588. package/src/slot-fill/index.tsx +1 -0
  589. package/src/snackbar/index.tsx +4 -4
  590. package/src/tab-panel/style.scss +0 -1
  591. package/src/tabs/index.tsx +8 -4
  592. package/src/tabs/styles.ts +42 -14
  593. package/src/tabs/tablist.tsx +5 -4
  594. package/src/text-control/style.scss +3 -2
  595. package/src/toggle-group-control/toggle-group-control/utils.ts +7 -7
  596. package/src/tools-panel/tools-panel/hook.ts +6 -6
  597. package/src/unit-control/styles/unit-control-styles.ts +2 -1
  598. package/src/utils/config-values.js +6 -4
  599. package/src/utils/element-rect.ts +93 -130
  600. package/src/utils/hooks/use-update-effect.js +4 -4
  601. package/tsconfig.tsbuildinfo +1 -1
  602. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +0 -66
  603. package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +0 -1
  604. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +0 -77
  605. package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +0 -1
  606. package/build/navigator/navigator-back-button/index.js +0 -14
  607. package/build/navigator/navigator-back-button/index.js.map +0 -1
  608. package/build/navigator/navigator-button/index.js +0 -14
  609. package/build/navigator/navigator-button/index.js.map +0 -1
  610. package/build/navigator/navigator-provider/index.js +0 -14
  611. package/build/navigator/navigator-provider/index.js.map +0 -1
  612. package/build/navigator/navigator-screen/index.js +0 -14
  613. package/build/navigator/navigator-screen/index.js.map +0 -1
  614. package/build/navigator/navigator-to-parent-button/index.js +0 -14
  615. package/build/navigator/navigator-to-parent-button/index.js.map +0 -1
  616. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +0 -63
  617. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +0 -1
  618. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +0 -72
  619. package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +0 -1
  620. package/build-module/navigator/navigator-back-button/index.js +0 -2
  621. package/build-module/navigator/navigator-back-button/index.js.map +0 -1
  622. package/build-module/navigator/navigator-button/index.js +0 -2
  623. package/build-module/navigator/navigator-button/index.js.map +0 -1
  624. package/build-module/navigator/navigator-provider/index.js +0 -2
  625. package/build-module/navigator/navigator-provider/index.js.map +0 -1
  626. package/build-module/navigator/navigator-screen/index.js +0 -2
  627. package/build-module/navigator/navigator-screen/index.js.map +0 -1
  628. package/build-module/navigator/navigator-to-parent-button/index.js +0 -2
  629. package/build-module/navigator/navigator-to-parent-button/index.js.map +0 -1
  630. package/build-types/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.d.ts +0 -18
  631. package/build-types/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.d.ts.map +0 -1
  632. package/build-types/alignment-matrix-control/styles/alignment-matrix-control-styles.d.ts.map +0 -1
  633. package/build-types/composite/stories/utils.d.ts +0 -29
  634. package/build-types/composite/stories/utils.d.ts.map +0 -1
  635. package/build-types/navigator/navigator-back-button/index.d.ts +0 -2
  636. package/build-types/navigator/navigator-back-button/index.d.ts.map +0 -1
  637. package/build-types/navigator/navigator-button/index.d.ts +0 -2
  638. package/build-types/navigator/navigator-button/index.d.ts.map +0 -1
  639. package/build-types/navigator/navigator-provider/index.d.ts +0 -2
  640. package/build-types/navigator/navigator-provider/index.d.ts.map +0 -1
  641. package/build-types/navigator/navigator-screen/index.d.ts +0 -2
  642. package/build-types/navigator/navigator-screen/index.d.ts.map +0 -1
  643. package/build-types/navigator/navigator-to-parent-button/index.d.ts +0 -2
  644. package/build-types/navigator/navigator-to-parent-button/index.d.ts.map +0 -1
  645. package/src/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.ts +0 -77
  646. package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.ts +0 -102
  647. package/src/composite/stories/utils.tsx +0 -76
  648. package/src/navigator/navigator-back-button/index.ts +0 -1
  649. package/src/navigator/navigator-button/index.ts +0 -1
  650. package/src/navigator/navigator-provider/index.ts +0 -1
  651. package/src/navigator/navigator-screen/index.ts +0 -1
  652. package/src/navigator/navigator-to-parent-button/index.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useStoreState","__","isRTL","useInstanceId","Cell","Composite","useCompositeStore","Root","Row","AlignmentMatrixControlIcon","GRID","getItemId","getItemValue","jsx","_jsx","AlignmentMatrixControl","className","id","label","defaultValue","value","onChange","width","props","baseId","compositeStore","defaultActiveId","activeId","setActiveId","nextActiveId","nextValue","rtl","classes","store","render","role","size","children","map","cells","index","cell","cellId","isActive","Icon"],"sources":["@wordpress/components/src/alignment-matrix-control/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport { useStoreState } from '@ariakit/react';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Cell from './cell';\nimport { Composite, useCompositeStore } from '../composite';\nimport { Root, Row } from './styles/alignment-matrix-control-styles';\nimport AlignmentMatrixControlIcon from './icon';\nimport { GRID, getItemId, getItemValue } from './utils';\nimport type { WordPressComponentProps } from '../context';\nimport type { AlignmentMatrixControlProps } from './types';\n\n/**\n *\n * AlignmentMatrixControl components enable adjustments to horizontal and vertical alignments for UI.\n *\n * ```jsx\n * import { __experimentalAlignmentMatrixControl as AlignmentMatrixControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ alignment, setAlignment ] = useState( 'center center' );\n *\n * \treturn (\n * \t\t<AlignmentMatrixControl\n * \t\t\tvalue={ alignment }\n * \t\t\tonChange={ setAlignment }\n * \t\t/>\n * \t);\n * };\n * ```\n */\nexport function AlignmentMatrixControl( {\n\tclassName,\n\tid,\n\tlabel = __( 'Alignment Matrix Control' ),\n\tdefaultValue = 'center center',\n\tvalue,\n\tonChange,\n\twidth = 92,\n\t...props\n}: WordPressComponentProps< AlignmentMatrixControlProps, 'div', false > ) {\n\tconst baseId = useInstanceId(\n\t\tAlignmentMatrixControl,\n\t\t'alignment-matrix-control',\n\t\tid\n\t);\n\n\tconst compositeStore = useCompositeStore( {\n\t\tdefaultActiveId: getItemId( baseId, defaultValue ),\n\t\tactiveId: getItemId( baseId, value ),\n\t\tsetActiveId: ( nextActiveId ) => {\n\t\t\tconst nextValue = getItemValue( baseId, nextActiveId );\n\t\t\tif ( nextValue ) {\n\t\t\t\tonChange?.( nextValue );\n\t\t\t}\n\t\t},\n\t\trtl: isRTL(),\n\t} );\n\n\tconst activeId = useStoreState( compositeStore, 'activeId' );\n\n\tconst classes = clsx( 'component-alignment-matrix-control', className );\n\n\treturn (\n\t\t<Composite\n\t\t\tstore={ compositeStore }\n\t\t\trender={\n\t\t\t\t<Root\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ label }\n\t\t\t\t\tclassName={ classes }\n\t\t\t\t\tid={ baseId }\n\t\t\t\t\trole=\"grid\"\n\t\t\t\t\tsize={ width }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ GRID.map( ( cells, index ) => (\n\t\t\t\t<Composite.Row render={ <Row role=\"row\" /> } key={ index }>\n\t\t\t\t\t{ cells.map( ( cell ) => {\n\t\t\t\t\t\tconst cellId = getItemId( baseId, cell );\n\t\t\t\t\t\tconst isActive = cellId === activeId;\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Cell\n\t\t\t\t\t\t\t\tid={ cellId }\n\t\t\t\t\t\t\t\tisActive={ isActive }\n\t\t\t\t\t\t\t\tkey={ cell }\n\t\t\t\t\t\t\t\tvalue={ cell }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</Composite.Row>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nAlignmentMatrixControl.Icon = AlignmentMatrixControlIcon;\n\nexport default AlignmentMatrixControl;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,gBAAgB;;AAE9C;AACA;AACA;AACA,SAASC,EAAE,EAAEC,KAAK,QAAQ,iBAAiB;AAC3C,SAASC,aAAa,QAAQ,oBAAoB;;AAElD;AACA;AACA;AACA,OAAOC,IAAI,MAAM,QAAQ;AACzB,SAASC,SAAS,EAAEC,iBAAiB,QAAQ,cAAc;AAC3D,SAASC,IAAI,EAAEC,GAAG,QAAQ,0CAA0C;AACpE,OAAOC,0BAA0B,MAAM,QAAQ;AAC/C,SAASC,IAAI,EAAEC,SAAS,EAAEC,YAAY,QAAQ,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAIxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAAE;EACvCC,SAAS;EACTC,EAAE;EACFC,KAAK,GAAGjB,EAAE,CAAE,0BAA2B,CAAC;EACxCkB,YAAY,GAAG,eAAe;EAC9BC,KAAK;EACLC,QAAQ;EACRC,KAAK,GAAG,EAAE;EACV,GAAGC;AACkE,CAAC,EAAG;EACzE,MAAMC,MAAM,GAAGrB,aAAa,CAC3BY,sBAAsB,EACtB,0BAA0B,EAC1BE,EACD,CAAC;EAED,MAAMQ,cAAc,GAAGnB,iBAAiB,CAAE;IACzCoB,eAAe,EAAEf,SAAS,CAAEa,MAAM,EAAEL,YAAa,CAAC;IAClDQ,QAAQ,EAAEhB,SAAS,CAAEa,MAAM,EAAEJ,KAAM,CAAC;IACpCQ,WAAW,EAAIC,YAAY,IAAM;MAChC,MAAMC,SAAS,GAAGlB,YAAY,CAAEY,MAAM,EAAEK,YAAa,CAAC;MACtD,IAAKC,SAAS,EAAG;QAChBT,QAAQ,GAAIS,SAAU,CAAC;MACxB;IACD,CAAC;IACDC,GAAG,EAAE7B,KAAK,CAAC;EACZ,CAAE,CAAC;EAEH,MAAMyB,QAAQ,GAAG3B,aAAa,CAAEyB,cAAc,EAAE,UAAW,CAAC;EAE5D,MAAMO,OAAO,GAAGjC,IAAI,CAAE,oCAAoC,EAAEiB,SAAU,CAAC;EAEvE,oBACCF,IAAA,CAACT,SAAS;IACT4B,KAAK,EAAGR,cAAgB;IACxBS,MAAM,eACLpB,IAAA,CAACP,IAAI;MAAA,GACCgB,KAAK;MACV,cAAaL,KAAO;MACpBF,SAAS,EAAGgB,OAAS;MACrBf,EAAE,EAAGO,MAAQ;MACbW,IAAI,EAAC,MAAM;MACXC,IAAI,EAAGd;IAAO,CACd,CACD;IAAAe,QAAA,EAEC3B,IAAI,CAAC4B,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,kBACzB1B,IAAA,CAACT,SAAS,CAACG,GAAG;MAAC0B,MAAM,eAAGpB,IAAA,CAACN,GAAG;QAAC2B,IAAI,EAAC;MAAK,CAAE,CAAG;MAAAE,QAAA,EACzCE,KAAK,CAACD,GAAG,CAAIG,IAAI,IAAM;QACxB,MAAMC,MAAM,GAAG/B,SAAS,CAAEa,MAAM,EAAEiB,IAAK,CAAC;QACxC,MAAME,QAAQ,GAAGD,MAAM,KAAKf,QAAQ;QAEpC,oBACCb,IAAA,CAACV,IAAI;UACJa,EAAE,EAAGyB,MAAQ;UACbC,QAAQ,EAAGA,QAAU;UAErBvB,KAAK,EAAGqB;QAAM,GADRA,IAEN,CAAC;MAEJ,CAAE;IAAC,GAb+CD,KAcpC,CACd;EAAC,CACO,CAAC;AAEd;AAEAzB,sBAAsB,CAAC6B,IAAI,GAAGnC,0BAA0B;AAExD,eAAeM,sBAAsB","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__","isRTL","useInstanceId","useCallback","Cell","Composite","GridContainer","GridRow","AlignmentMatrixControlIcon","GRID","getItemId","getItemValue","jsx","_jsx","UnforwardedAlignmentMatrixControl","className","id","label","defaultValue","value","onChange","width","props","baseId","setActiveId","nextActiveId","nextValue","classes","defaultActiveId","activeId","rtl","render","role","size","children","map","cells","index","Row","cell","AlignmentMatrixControl","Object","assign","Icon","displayName"],"sources":["@wordpress/components/src/alignment-matrix-control/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Cell from './cell';\nimport { Composite } from '../composite';\nimport { GridContainer, GridRow } from './styles';\nimport AlignmentMatrixControlIcon from './icon';\nimport { GRID, getItemId, getItemValue } from './utils';\nimport type { WordPressComponentProps } from '../context';\nimport type { AlignmentMatrixControlProps } from './types';\n\nfunction UnforwardedAlignmentMatrixControl( {\n\tclassName,\n\tid,\n\tlabel = __( 'Alignment Matrix Control' ),\n\tdefaultValue = 'center center',\n\tvalue,\n\tonChange,\n\twidth = 92,\n\t...props\n}: WordPressComponentProps< AlignmentMatrixControlProps, 'div', false > ) {\n\tconst baseId = useInstanceId(\n\t\tUnforwardedAlignmentMatrixControl,\n\t\t'alignment-matrix-control',\n\t\tid\n\t);\n\n\tconst setActiveId = useCallback<\n\t\tNonNullable< React.ComponentProps< typeof Composite >[ 'setActiveId' ] >\n\t>(\n\t\t( nextActiveId ) => {\n\t\t\tconst nextValue = getItemValue( baseId, nextActiveId );\n\t\t\tif ( nextValue ) {\n\t\t\t\tonChange?.( nextValue );\n\t\t\t}\n\t\t},\n\t\t[ baseId, onChange ]\n\t);\n\n\tconst classes = clsx( 'component-alignment-matrix-control', className );\n\n\treturn (\n\t\t<Composite\n\t\t\tdefaultActiveId={ getItemId( baseId, defaultValue ) }\n\t\t\tactiveId={ getItemId( baseId, value ) }\n\t\t\tsetActiveId={ setActiveId }\n\t\t\trtl={ isRTL() }\n\t\t\trender={\n\t\t\t\t<GridContainer\n\t\t\t\t\t{ ...props }\n\t\t\t\t\taria-label={ label }\n\t\t\t\t\tclassName={ classes }\n\t\t\t\t\tid={ baseId }\n\t\t\t\t\trole=\"grid\"\n\t\t\t\t\tsize={ width }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t{ GRID.map( ( cells, index ) => (\n\t\t\t\t<Composite.Row render={ <GridRow role=\"row\" /> } key={ index }>\n\t\t\t\t\t{ cells.map( ( cell ) => (\n\t\t\t\t\t\t<Cell\n\t\t\t\t\t\t\tid={ getItemId( baseId, cell ) }\n\t\t\t\t\t\t\tkey={ cell }\n\t\t\t\t\t\t\tvalue={ cell }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</Composite.Row>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\n/**\n * AlignmentMatrixControl components enable adjustments to horizontal and vertical alignments for UI.\n *\n * ```jsx\n * import { AlignmentMatrixControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ alignment, setAlignment ] = useState( 'center center' );\n *\n * \treturn (\n * \t\t<AlignmentMatrixControl\n * \t\t\tvalue={ alignment }\n * \t\t\tonChange={ setAlignment }\n * \t\t/>\n * \t);\n * };\n * ```\n */\nexport const AlignmentMatrixControl = Object.assign(\n\tUnforwardedAlignmentMatrixControl,\n\t{\n\t\t/**\n\t\t * Render an alignment matrix as an icon.\n\t\t *\n\t\t * ```jsx\n\t\t * import { AlignmentMatrixControl } from '@wordpress/components';\n\t\t *\n\t\t * <Icon icon={<AlignmentMatrixControl.Icon value=\"top left\" />} />\n\t\t * ```\n\t\t */\n\t\tIcon: Object.assign( AlignmentMatrixControlIcon, {\n\t\t\tdisplayName: 'AlignmentMatrixControl.Icon',\n\t\t} ),\n\t}\n);\n\nexport default AlignmentMatrixControl;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,EAAE,EAAEC,KAAK,QAAQ,iBAAiB;AAC3C,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;AACA,OAAOC,IAAI,MAAM,QAAQ;AACzB,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,aAAa,EAAEC,OAAO,QAAQ,UAAU;AACjD,OAAOC,0BAA0B,MAAM,QAAQ;AAC/C,SAASC,IAAI,EAAEC,SAAS,EAAEC,YAAY,QAAQ,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAIxD,SAASC,iCAAiCA,CAAE;EAC3CC,SAAS;EACTC,EAAE;EACFC,KAAK,GAAGjB,EAAE,CAAE,0BAA2B,CAAC;EACxCkB,YAAY,GAAG,eAAe;EAC9BC,KAAK;EACLC,QAAQ;EACRC,KAAK,GAAG,EAAE;EACV,GAAGC;AACkE,CAAC,EAAG;EACzE,MAAMC,MAAM,GAAGrB,aAAa,CAC3BY,iCAAiC,EACjC,0BAA0B,EAC1BE,EACD,CAAC;EAED,MAAMQ,WAAW,GAAGrB,WAAW,CAG5BsB,YAAY,IAAM;IACnB,MAAMC,SAAS,GAAGf,YAAY,CAAEY,MAAM,EAAEE,YAAa,CAAC;IACtD,IAAKC,SAAS,EAAG;MAChBN,QAAQ,GAAIM,SAAU,CAAC;IACxB;EACD,CAAC,EACD,CAAEH,MAAM,EAAEH,QAAQ,CACnB,CAAC;EAED,MAAMO,OAAO,GAAG5B,IAAI,CAAE,oCAAoC,EAAEgB,SAAU,CAAC;EAEvE,oBACCF,IAAA,CAACR,SAAS;IACTuB,eAAe,EAAGlB,SAAS,CAAEa,MAAM,EAAEL,YAAa,CAAG;IACrDW,QAAQ,EAAGnB,SAAS,CAAEa,MAAM,EAAEJ,KAAM,CAAG;IACvCK,WAAW,EAAGA,WAAa;IAC3BM,GAAG,EAAG7B,KAAK,CAAC,CAAG;IACf8B,MAAM,eACLlB,IAAA,CAACP,aAAa;MAAA,GACRgB,KAAK;MACV,cAAaL,KAAO;MACpBF,SAAS,EAAGY,OAAS;MACrBX,EAAE,EAAGO,MAAQ;MACbS,IAAI,EAAC,MAAM;MACXC,IAAI,EAAGZ;IAAO,CACd,CACD;IAAAa,QAAA,EAECzB,IAAI,CAAC0B,GAAG,CAAE,CAAEC,KAAK,EAAEC,KAAK,kBACzBxB,IAAA,CAACR,SAAS,CAACiC,GAAG;MAACP,MAAM,eAAGlB,IAAA,CAACN,OAAO;QAACyB,IAAI,EAAC;MAAK,CAAE,CAAG;MAAAE,QAAA,EAC7CE,KAAK,CAACD,GAAG,CAAII,IAAI,iBAClB1B,IAAA,CAACT,IAAI;QACJY,EAAE,EAAGN,SAAS,CAAEa,MAAM,EAAEgB,IAAK,CAAG;QAEhCpB,KAAK,EAAGoB;MAAM,GADRA,IAEN,CACA;IAAC,GAPmDF,KAQxC,CACd;EAAC,CACO,CAAC;AAEd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMG,sBAAsB,GAAGC,MAAM,CAACC,MAAM,CAClD5B,iCAAiC,EACjC;EACC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE6B,IAAI,EAAEF,MAAM,CAACC,MAAM,CAAElC,0BAA0B,EAAE;IAChDoC,WAAW,EAAE;EACd,CAAE;AACH,CACD,CAAC;AAED,eAAeJ,sBAAsB","ignoreList":[]}
@@ -0,0 +1,70 @@
1
+ import _styled from "@emotion/styled/base";
2
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
3
+ /**
4
+ * External dependencies
5
+ */
6
+
7
+ import { css } from '@emotion/react';
8
+
9
+ /**
10
+ * Internal dependencies
11
+ */
12
+ import { COLORS, CONFIG } from '../utils';
13
+ // Grid structure
14
+
15
+ const rootBase = ({
16
+ size = 92
17
+ }) => /*#__PURE__*/css("direction:ltr;display:grid;grid-template-columns:repeat( 3, 1fr );grid-template-rows:repeat( 3, 1fr );box-sizing:border-box;width:", size, "px;aspect-ratio:1;border-radius:", CONFIG.radiusMedium, ";outline:none;" + (process.env.NODE_ENV === "production" ? "" : ";label:rootBase;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQnlDIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgQ09MT1JTLCBDT05GSUcgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7XG5cdEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wcyxcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIEdyaWQgc3RydWN0dXJlXG5cbmNvbnN0IHJvb3RCYXNlID0gKCB7IHNpemUgPSA5MiB9ICkgPT4gY3NzYFxuXHRkaXJlY3Rpb246IGx0cjtcblxuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCggMywgMWZyICk7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KCAzLCAxZnIgKTtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgc2l6ZSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRib3JkZXItcmFkaXVzOiAkeyBDT05GSUcucmFkaXVzTWVkaXVtIH07XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8IHtcblx0c2l6ZT86IEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wc1sgJ3dpZHRoJyBdO1xuXHRkaXNhYmxlUG9pbnRlckV2ZW50cz86IEFsaWdubWVudE1hdHJpeENvbnRyb2xJY29uUHJvcHNbICdkaXNhYmxlUG9pbnRlckV2ZW50cycgXTtcbn0gPmBcblx0JHsgcm9vdEJhc2UgfVxuXG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdCR7ICggcHJvcHMgKSA9PlxuXHRcdHByb3BzLmRpc2FibGVQb2ludGVyRXZlbnRzXG5cdFx0XHQ/IGNzc2BgXG5cdFx0XHQ6IGNzc2Bcblx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQgIGAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IEdyaWRSb3cgPSBzdHlsZWQuZGl2YFxuXHRncmlkLWNvbHVtbjogMSAvIC0xO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcbmA7XG5cbi8vIENlbGxcbmV4cG9ydCBjb25zdCBDZWxsID0gc3R5bGVkLnNwYW5gXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuY29uc3QgUE9JTlRfU0laRSA9IDY7XG5leHBvcnQgY29uc3QgUG9pbnQgPSBzdHlsZWQuc3BhbmBcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNvbnRhaW46IHN0cmljdDtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgUE9JTlRfU0laRSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRtYXJnaW46IGF1dG87XG5cblx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5ncmF5WyA0MDAgXSB9O1xuXG5cdC8qIFVzZSBib3JkZXIgaW5zdGVhZCBvZiBiYWNrZ3JvdW5kIGNvbG9yIHNvIHRoYXQgdGhlIHBvaW50IHNob3dzXG5cdGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBNb2RlICovXG5cdGJvcmRlcjogJHsgUE9JTlRfU0laRSAvIDIgfXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuXHQvKiBIaWdobGlnaHQgYWN0aXZlIGl0ZW0gKi9cblx0JHsgQ2VsbCB9W2RhdGEtYWN0aXZlLWl0ZW1dICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMuZ3JheVsgOTAwIF0gfTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKCBjYWxjKCA1IC8gMyApICk7XG5cdH1cblxuXHQvKiBIb3ZlciBzdHlsZXMgZm9yIG5vbi1hY3RpdmUgaXRlbXMgKi9cblx0JHsgQ2VsbCB9Om5vdChbZGF0YS1hY3RpdmUtaXRlbV0pOmhvdmVyICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudGhlbWUuYWNjZW50IH07XG5cdH1cblxuXHQvKiBTaG93IGFuIG91dGxpbmUgb25seSB3aGVuIGludGVyYWN0aW5nIHdpdGgga2V5Ym9hcmQgKi9cblx0JHsgQ2VsbCB9W2RhdGEtZm9jdXMtdmlzaWJsZV0gJiB7XG5cdFx0b3V0bGluZTogMXB4IHNvbGlkICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHR9XG5cblx0QG1lZGlhIG5vdCAoIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gKSB7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHR9XG5gO1xuIl19 */");
18
+ var _ref = process.env.NODE_ENV === "production" ? {
19
+ name: "e0dnmk",
20
+ styles: "cursor:pointer"
21
+ } : {
22
+ name: "1h7pcau-GridContainer",
23
+ styles: "cursor:pointer;label:GridContainer;",
24
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQ1EiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9hbGlnbm1lbnQtbWF0cml4LWNvbnRyb2wvc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBDT0xPUlMsIENPTkZJRyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHtcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzLFxuXHRBbGlnbm1lbnRNYXRyaXhDb250cm9sSWNvblByb3BzLFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8gR3JpZCBzdHJ1Y3R1cmVcblxuY29uc3Qgcm9vdEJhc2UgPSAoIHsgc2l6ZSA9IDkyIH0gKSA9PiBjc3NgXG5cdGRpcmVjdGlvbjogbHRyO1xuXG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoIDMsIDFmciApO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBzaXplIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdGJvcmRlci1yYWRpdXM6ICR7IENPTkZJRy5yYWRpdXNNZWRpdW0gfTtcblx0b3V0bGluZTogbm9uZTtcbmA7XG5cbmV4cG9ydCBjb25zdCBHcmlkQ29udGFpbmVyID0gc3R5bGVkLmRpdjwge1xuXHRzaXplPzogQWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzWyAnd2lkdGgnIF07XG5cdGRpc2FibGVQb2ludGVyRXZlbnRzPzogQWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wc1sgJ2Rpc2FibGVQb2ludGVyRXZlbnRzJyBdO1xufSA+YFxuXHQkeyByb290QmFzZSB9XG5cblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0JHsgKCBwcm9wcyApID0+XG5cdFx0cHJvcHMuZGlzYWJsZVBvaW50ZXJFdmVudHNcblx0XHRcdD8gY3NzYGBcblx0XHRcdDogY3NzYFxuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdCAgYCB9XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZFJvdyA9IHN0eWxlZC5kaXZgXG5cdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoIDMsIDFmciApO1xuYDtcblxuLy8gQ2VsbFxuZXhwb3J0IGNvbnN0IENlbGwgPSBzdHlsZWQuc3BhbmBcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5jb25zdCBQT0lOVF9TSVpFID0gNjtcbmV4cG9ydCBjb25zdCBQb2ludCA9IHN0eWxlZC5zcGFuYFxuXHRkaXNwbGF5OiBibG9jaztcblx0Y29udGFpbjogc3RyaWN0O1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBQT0lOVF9TSVpFIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdG1hcmdpbjogYXV0bztcblxuXHRjb2xvcjogJHsgQ09MT1JTLnRoZW1lLmdyYXlbIDQwMCBdIH07XG5cblx0LyogVXNlIGJvcmRlciBpbnN0ZWFkIG9mIGJhY2tncm91bmQgY29sb3Igc28gdGhhdCB0aGUgcG9pbnQgc2hvd3Ncblx0aW4gV2luZG93cyBIaWdoIENvbnRyYXN0IE1vZGUgKi9cblx0Ym9yZGVyOiAkeyBQT0lOVF9TSVpFIC8gMiB9cHggc29saWQgY3VycmVudENvbG9yO1xuXG5cdC8qIEhpZ2hsaWdodCBhY3RpdmUgaXRlbSAqL1xuXHQkeyBDZWxsIH1bZGF0YS1hY3RpdmUtaXRlbV0gJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy5ncmF5WyA5MDAgXSB9O1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoIGNhbGMoIDUgLyAzICkgKTtcblx0fVxuXG5cdC8qIEhvdmVyIHN0eWxlcyBmb3Igbm9uLWFjdGl2ZSBpdGVtcyAqL1xuXHQkeyBDZWxsIH06bm90KFtkYXRhLWFjdGl2ZS1pdGVtXSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0fVxuXG5cdC8qIFNob3cgYW4gb3V0bGluZSBvbmx5IHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCBrZXlib2FyZCAqL1xuXHQkeyBDZWxsIH1bZGF0YS1mb2N1cy12aXNpYmxlXSAmIHtcblx0XHRvdXRsaW5lOiAxcHggc29saWQgJHsgQ09MT1JTLnRoZW1lLmFjY2VudCB9O1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdH1cblxuXHRAbWVkaWEgbm90ICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbiApIHtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDEyMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdH1cbmA7XG4iXX0= */",
25
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
26
+ };
27
+ export const GridContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
28
+ target: "e1r95csn3"
29
+ } : {
30
+ target: "e1r95csn3",
31
+ label: "GridContainer"
32
+ })(rootBase, " border:1px solid transparent;", props => props.disablePointerEvents ? /*#__PURE__*/css(process.env.NODE_ENV === "production" ? "" : ";label:GridContainer;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwQ1EiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9hbGlnbm1lbnQtbWF0cml4LWNvbnRyb2wvc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBDT0xPUlMsIENPTkZJRyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHtcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzLFxuXHRBbGlnbm1lbnRNYXRyaXhDb250cm9sSWNvblByb3BzLFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8gR3JpZCBzdHJ1Y3R1cmVcblxuY29uc3Qgcm9vdEJhc2UgPSAoIHsgc2l6ZSA9IDkyIH0gKSA9PiBjc3NgXG5cdGRpcmVjdGlvbjogbHRyO1xuXG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoIDMsIDFmciApO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBzaXplIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdGJvcmRlci1yYWRpdXM6ICR7IENPTkZJRy5yYWRpdXNNZWRpdW0gfTtcblx0b3V0bGluZTogbm9uZTtcbmA7XG5cbmV4cG9ydCBjb25zdCBHcmlkQ29udGFpbmVyID0gc3R5bGVkLmRpdjwge1xuXHRzaXplPzogQWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzWyAnd2lkdGgnIF07XG5cdGRpc2FibGVQb2ludGVyRXZlbnRzPzogQWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wc1sgJ2Rpc2FibGVQb2ludGVyRXZlbnRzJyBdO1xufSA+YFxuXHQkeyByb290QmFzZSB9XG5cblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0JHsgKCBwcm9wcyApID0+XG5cdFx0cHJvcHMuZGlzYWJsZVBvaW50ZXJFdmVudHNcblx0XHRcdD8gY3NzYGBcblx0XHRcdDogY3NzYFxuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdCAgYCB9XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZFJvdyA9IHN0eWxlZC5kaXZgXG5cdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoIDMsIDFmciApO1xuYDtcblxuLy8gQ2VsbFxuZXhwb3J0IGNvbnN0IENlbGwgPSBzdHlsZWQuc3BhbmBcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5jb25zdCBQT0lOVF9TSVpFID0gNjtcbmV4cG9ydCBjb25zdCBQb2ludCA9IHN0eWxlZC5zcGFuYFxuXHRkaXNwbGF5OiBibG9jaztcblx0Y29udGFpbjogc3RyaWN0O1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBQT0lOVF9TSVpFIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdG1hcmdpbjogYXV0bztcblxuXHRjb2xvcjogJHsgQ09MT1JTLnRoZW1lLmdyYXlbIDQwMCBdIH07XG5cblx0LyogVXNlIGJvcmRlciBpbnN0ZWFkIG9mIGJhY2tncm91bmQgY29sb3Igc28gdGhhdCB0aGUgcG9pbnQgc2hvd3Ncblx0aW4gV2luZG93cyBIaWdoIENvbnRyYXN0IE1vZGUgKi9cblx0Ym9yZGVyOiAkeyBQT0lOVF9TSVpFIC8gMiB9cHggc29saWQgY3VycmVudENvbG9yO1xuXG5cdC8qIEhpZ2hsaWdodCBhY3RpdmUgaXRlbSAqL1xuXHQkeyBDZWxsIH1bZGF0YS1hY3RpdmUtaXRlbV0gJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy5ncmF5WyA5MDAgXSB9O1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoIGNhbGMoIDUgLyAzICkgKTtcblx0fVxuXG5cdC8qIEhvdmVyIHN0eWxlcyBmb3Igbm9uLWFjdGl2ZSBpdGVtcyAqL1xuXHQkeyBDZWxsIH06bm90KFtkYXRhLWFjdGl2ZS1pdGVtXSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0fVxuXG5cdC8qIFNob3cgYW4gb3V0bGluZSBvbmx5IHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCBrZXlib2FyZCAqL1xuXHQkeyBDZWxsIH1bZGF0YS1mb2N1cy12aXNpYmxlXSAmIHtcblx0XHRvdXRsaW5lOiAxcHggc29saWQgJHsgQ09MT1JTLnRoZW1lLmFjY2VudCB9O1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdH1cblxuXHRAbWVkaWEgbm90ICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbiApIHtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDEyMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdH1cbmA7XG4iXX0= */") : _ref, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQ0ciLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9hbGlnbm1lbnQtbWF0cml4LWNvbnRyb2wvc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBDT0xPUlMsIENPTkZJRyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHtcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzLFxuXHRBbGlnbm1lbnRNYXRyaXhDb250cm9sSWNvblByb3BzLFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8gR3JpZCBzdHJ1Y3R1cmVcblxuY29uc3Qgcm9vdEJhc2UgPSAoIHsgc2l6ZSA9IDkyIH0gKSA9PiBjc3NgXG5cdGRpcmVjdGlvbjogbHRyO1xuXG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoIDMsIDFmciApO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBzaXplIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdGJvcmRlci1yYWRpdXM6ICR7IENPTkZJRy5yYWRpdXNNZWRpdW0gfTtcblx0b3V0bGluZTogbm9uZTtcbmA7XG5cbmV4cG9ydCBjb25zdCBHcmlkQ29udGFpbmVyID0gc3R5bGVkLmRpdjwge1xuXHRzaXplPzogQWxpZ25tZW50TWF0cml4Q29udHJvbFByb3BzWyAnd2lkdGgnIF07XG5cdGRpc2FibGVQb2ludGVyRXZlbnRzPzogQWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wc1sgJ2Rpc2FibGVQb2ludGVyRXZlbnRzJyBdO1xufSA+YFxuXHQkeyByb290QmFzZSB9XG5cblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0JHsgKCBwcm9wcyApID0+XG5cdFx0cHJvcHMuZGlzYWJsZVBvaW50ZXJFdmVudHNcblx0XHRcdD8gY3NzYGBcblx0XHRcdDogY3NzYFxuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdCAgYCB9XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZFJvdyA9IHN0eWxlZC5kaXZgXG5cdGdyaWQtY29sdW1uOiAxIC8gLTE7XG5cblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoIDMsIDFmciApO1xuYDtcblxuLy8gQ2VsbFxuZXhwb3J0IGNvbnN0IENlbGwgPSBzdHlsZWQuc3BhbmBcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblxuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5jb25zdCBQT0lOVF9TSVpFID0gNjtcbmV4cG9ydCBjb25zdCBQb2ludCA9IHN0eWxlZC5zcGFuYFxuXHRkaXNwbGF5OiBibG9jaztcblx0Y29udGFpbjogc3RyaWN0O1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHdpZHRoOiAkeyBQT0lOVF9TSVpFIH1weDtcblx0YXNwZWN0LXJhdGlvOiAxO1xuXG5cdG1hcmdpbjogYXV0bztcblxuXHRjb2xvcjogJHsgQ09MT1JTLnRoZW1lLmdyYXlbIDQwMCBdIH07XG5cblx0LyogVXNlIGJvcmRlciBpbnN0ZWFkIG9mIGJhY2tncm91bmQgY29sb3Igc28gdGhhdCB0aGUgcG9pbnQgc2hvd3Ncblx0aW4gV2luZG93cyBIaWdoIENvbnRyYXN0IE1vZGUgKi9cblx0Ym9yZGVyOiAkeyBQT0lOVF9TSVpFIC8gMiB9cHggc29saWQgY3VycmVudENvbG9yO1xuXG5cdC8qIEhpZ2hsaWdodCBhY3RpdmUgaXRlbSAqL1xuXHQkeyBDZWxsIH1bZGF0YS1hY3RpdmUtaXRlbV0gJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy5ncmF5WyA5MDAgXSB9O1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoIGNhbGMoIDUgLyAzICkgKTtcblx0fVxuXG5cdC8qIEhvdmVyIHN0eWxlcyBmb3Igbm9uLWFjdGl2ZSBpdGVtcyAqL1xuXHQkeyBDZWxsIH06bm90KFtkYXRhLWFjdGl2ZS1pdGVtXSk6aG92ZXIgJiB7XG5cdFx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0fVxuXG5cdC8qIFNob3cgYW4gb3V0bGluZSBvbmx5IHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCBrZXlib2FyZCAqL1xuXHQkeyBDZWxsIH1bZGF0YS1mb2N1cy12aXNpYmxlXSAmIHtcblx0XHRvdXRsaW5lOiAxcHggc29saWQgJHsgQ09MT1JTLnRoZW1lLmFjY2VudCB9O1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cdH1cblxuXHRAbWVkaWEgbm90ICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbiApIHtcblx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDEyMG1zO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdH1cbmA7XG4iXX0= */"));
33
+ export const GridRow = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
34
+ target: "e1r95csn2"
35
+ } : {
36
+ target: "e1r95csn2",
37
+ label: "GridRow"
38
+ })(process.env.NODE_ENV === "production" ? {
39
+ name: "1fbxn64",
40
+ styles: "grid-column:1/-1;box-sizing:border-box;display:grid;grid-template-columns:repeat( 3, 1fr )"
41
+ } : {
42
+ name: "1fbxn64",
43
+ styles: "grid-column:1/-1;box-sizing:border-box;display:grid;grid-template-columns:repeat( 3, 1fr )",
44
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRGlDIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgQ09MT1JTLCBDT05GSUcgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7XG5cdEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wcyxcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIEdyaWQgc3RydWN0dXJlXG5cbmNvbnN0IHJvb3RCYXNlID0gKCB7IHNpemUgPSA5MiB9ICkgPT4gY3NzYFxuXHRkaXJlY3Rpb246IGx0cjtcblxuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCggMywgMWZyICk7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KCAzLCAxZnIgKTtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgc2l6ZSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRib3JkZXItcmFkaXVzOiAkeyBDT05GSUcucmFkaXVzTWVkaXVtIH07XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8IHtcblx0c2l6ZT86IEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wc1sgJ3dpZHRoJyBdO1xuXHRkaXNhYmxlUG9pbnRlckV2ZW50cz86IEFsaWdubWVudE1hdHJpeENvbnRyb2xJY29uUHJvcHNbICdkaXNhYmxlUG9pbnRlckV2ZW50cycgXTtcbn0gPmBcblx0JHsgcm9vdEJhc2UgfVxuXG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdCR7ICggcHJvcHMgKSA9PlxuXHRcdHByb3BzLmRpc2FibGVQb2ludGVyRXZlbnRzXG5cdFx0XHQ/IGNzc2BgXG5cdFx0XHQ6IGNzc2Bcblx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQgIGAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IEdyaWRSb3cgPSBzdHlsZWQuZGl2YFxuXHRncmlkLWNvbHVtbjogMSAvIC0xO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcbmA7XG5cbi8vIENlbGxcbmV4cG9ydCBjb25zdCBDZWxsID0gc3R5bGVkLnNwYW5gXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuY29uc3QgUE9JTlRfU0laRSA9IDY7XG5leHBvcnQgY29uc3QgUG9pbnQgPSBzdHlsZWQuc3BhbmBcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNvbnRhaW46IHN0cmljdDtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgUE9JTlRfU0laRSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRtYXJnaW46IGF1dG87XG5cblx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5ncmF5WyA0MDAgXSB9O1xuXG5cdC8qIFVzZSBib3JkZXIgaW5zdGVhZCBvZiBiYWNrZ3JvdW5kIGNvbG9yIHNvIHRoYXQgdGhlIHBvaW50IHNob3dzXG5cdGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBNb2RlICovXG5cdGJvcmRlcjogJHsgUE9JTlRfU0laRSAvIDIgfXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuXHQvKiBIaWdobGlnaHQgYWN0aXZlIGl0ZW0gKi9cblx0JHsgQ2VsbCB9W2RhdGEtYWN0aXZlLWl0ZW1dICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMuZ3JheVsgOTAwIF0gfTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKCBjYWxjKCA1IC8gMyApICk7XG5cdH1cblxuXHQvKiBIb3ZlciBzdHlsZXMgZm9yIG5vbi1hY3RpdmUgaXRlbXMgKi9cblx0JHsgQ2VsbCB9Om5vdChbZGF0YS1hY3RpdmUtaXRlbV0pOmhvdmVyICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudGhlbWUuYWNjZW50IH07XG5cdH1cblxuXHQvKiBTaG93IGFuIG91dGxpbmUgb25seSB3aGVuIGludGVyYWN0aW5nIHdpdGgga2V5Ym9hcmQgKi9cblx0JHsgQ2VsbCB9W2RhdGEtZm9jdXMtdmlzaWJsZV0gJiB7XG5cdFx0b3V0bGluZTogMXB4IHNvbGlkICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHR9XG5cblx0QG1lZGlhIG5vdCAoIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gKSB7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHR9XG5gO1xuIl19 */",
45
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
46
+ });
47
+
48
+ // Cell
49
+ export const Cell = /*#__PURE__*/_styled("span", process.env.NODE_ENV === "production" ? {
50
+ target: "e1r95csn1"
51
+ } : {
52
+ target: "e1r95csn1",
53
+ label: "Cell"
54
+ })(process.env.NODE_ENV === "production" ? {
55
+ name: "e2kws5",
56
+ styles: "position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:0;padding:0;appearance:none;border:none;outline:none"
57
+ } : {
58
+ name: "e2kws5",
59
+ styles: "position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:0;padding:0;appearance:none;border:none;outline:none",
60
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5RCtCIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgQ09MT1JTLCBDT05GSUcgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7XG5cdEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wcyxcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIEdyaWQgc3RydWN0dXJlXG5cbmNvbnN0IHJvb3RCYXNlID0gKCB7IHNpemUgPSA5MiB9ICkgPT4gY3NzYFxuXHRkaXJlY3Rpb246IGx0cjtcblxuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCggMywgMWZyICk7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KCAzLCAxZnIgKTtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgc2l6ZSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRib3JkZXItcmFkaXVzOiAkeyBDT05GSUcucmFkaXVzTWVkaXVtIH07XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8IHtcblx0c2l6ZT86IEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wc1sgJ3dpZHRoJyBdO1xuXHRkaXNhYmxlUG9pbnRlckV2ZW50cz86IEFsaWdubWVudE1hdHJpeENvbnRyb2xJY29uUHJvcHNbICdkaXNhYmxlUG9pbnRlckV2ZW50cycgXTtcbn0gPmBcblx0JHsgcm9vdEJhc2UgfVxuXG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdCR7ICggcHJvcHMgKSA9PlxuXHRcdHByb3BzLmRpc2FibGVQb2ludGVyRXZlbnRzXG5cdFx0XHQ/IGNzc2BgXG5cdFx0XHQ6IGNzc2Bcblx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQgIGAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IEdyaWRSb3cgPSBzdHlsZWQuZGl2YFxuXHRncmlkLWNvbHVtbjogMSAvIC0xO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcbmA7XG5cbi8vIENlbGxcbmV4cG9ydCBjb25zdCBDZWxsID0gc3R5bGVkLnNwYW5gXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuY29uc3QgUE9JTlRfU0laRSA9IDY7XG5leHBvcnQgY29uc3QgUG9pbnQgPSBzdHlsZWQuc3BhbmBcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNvbnRhaW46IHN0cmljdDtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgUE9JTlRfU0laRSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRtYXJnaW46IGF1dG87XG5cblx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5ncmF5WyA0MDAgXSB9O1xuXG5cdC8qIFVzZSBib3JkZXIgaW5zdGVhZCBvZiBiYWNrZ3JvdW5kIGNvbG9yIHNvIHRoYXQgdGhlIHBvaW50IHNob3dzXG5cdGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBNb2RlICovXG5cdGJvcmRlcjogJHsgUE9JTlRfU0laRSAvIDIgfXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuXHQvKiBIaWdobGlnaHQgYWN0aXZlIGl0ZW0gKi9cblx0JHsgQ2VsbCB9W2RhdGEtYWN0aXZlLWl0ZW1dICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMuZ3JheVsgOTAwIF0gfTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKCBjYWxjKCA1IC8gMyApICk7XG5cdH1cblxuXHQvKiBIb3ZlciBzdHlsZXMgZm9yIG5vbi1hY3RpdmUgaXRlbXMgKi9cblx0JHsgQ2VsbCB9Om5vdChbZGF0YS1hY3RpdmUtaXRlbV0pOmhvdmVyICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudGhlbWUuYWNjZW50IH07XG5cdH1cblxuXHQvKiBTaG93IGFuIG91dGxpbmUgb25seSB3aGVuIGludGVyYWN0aW5nIHdpdGgga2V5Ym9hcmQgKi9cblx0JHsgQ2VsbCB9W2RhdGEtZm9jdXMtdmlzaWJsZV0gJiB7XG5cdFx0b3V0bGluZTogMXB4IHNvbGlkICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHR9XG5cblx0QG1lZGlhIG5vdCAoIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gKSB7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHR9XG5gO1xuIl19 */",
61
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
62
+ });
63
+ const POINT_SIZE = 6;
64
+ export const Point = /*#__PURE__*/_styled("span", process.env.NODE_ENV === "production" ? {
65
+ target: "e1r95csn0"
66
+ } : {
67
+ target: "e1r95csn0",
68
+ label: "Point"
69
+ })("display:block;contain:strict;box-sizing:border-box;width:", POINT_SIZE, "px;aspect-ratio:1;margin:auto;color:", COLORS.theme.gray[400], ";border:", POINT_SIZE / 2, "px solid currentColor;", Cell, "[data-active-item] &{color:", COLORS.gray[900], ";transform:scale( calc( 5 / 3 ) );}", Cell, ":not([data-active-item]):hover &{color:", COLORS.theme.accent, ";}", Cell, "[data-focus-visible] &{outline:1px solid ", COLORS.theme.accent, ";outline-offset:1px;}@media not ( prefers-reduced-motion ){transition-property:color,transform;transition-duration:120ms;transition-timing-function:linear;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwRWdDIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvYWxpZ25tZW50LW1hdHJpeC1jb250cm9sL3N0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyoqXG4gKiBJbnRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgQ09MT1JTLCBDT05GSUcgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7XG5cdEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wcyxcblx0QWxpZ25tZW50TWF0cml4Q29udHJvbEljb25Qcm9wcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8vIEdyaWQgc3RydWN0dXJlXG5cbmNvbnN0IHJvb3RCYXNlID0gKCB7IHNpemUgPSA5MiB9ICkgPT4gY3NzYFxuXHRkaXJlY3Rpb246IGx0cjtcblxuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCggMywgMWZyICk7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KCAzLCAxZnIgKTtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgc2l6ZSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRib3JkZXItcmFkaXVzOiAkeyBDT05GSUcucmFkaXVzTWVkaXVtIH07XG5cdG91dGxpbmU6IG5vbmU7XG5gO1xuXG5leHBvcnQgY29uc3QgR3JpZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8IHtcblx0c2l6ZT86IEFsaWdubWVudE1hdHJpeENvbnRyb2xQcm9wc1sgJ3dpZHRoJyBdO1xuXHRkaXNhYmxlUG9pbnRlckV2ZW50cz86IEFsaWdubWVudE1hdHJpeENvbnRyb2xJY29uUHJvcHNbICdkaXNhYmxlUG9pbnRlckV2ZW50cycgXTtcbn0gPmBcblx0JHsgcm9vdEJhc2UgfVxuXG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdCR7ICggcHJvcHMgKSA9PlxuXHRcdHByb3BzLmRpc2FibGVQb2ludGVyRXZlbnRzXG5cdFx0XHQ/IGNzc2BgXG5cdFx0XHQ6IGNzc2Bcblx0XHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHQgIGAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IEdyaWRSb3cgPSBzdHlsZWQuZGl2YFxuXHRncmlkLWNvbHVtbjogMSAvIC0xO1xuXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCAzLCAxZnIgKTtcbmA7XG5cbi8vIENlbGxcbmV4cG9ydCBjb25zdCBDZWxsID0gc3R5bGVkLnNwYW5gXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cblx0YXBwZWFyYW5jZTogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRvdXRsaW5lOiBub25lO1xuYDtcblxuY29uc3QgUE9JTlRfU0laRSA9IDY7XG5leHBvcnQgY29uc3QgUG9pbnQgPSBzdHlsZWQuc3BhbmBcblx0ZGlzcGxheTogYmxvY2s7XG5cdGNvbnRhaW46IHN0cmljdDtcblxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR3aWR0aDogJHsgUE9JTlRfU0laRSB9cHg7XG5cdGFzcGVjdC1yYXRpbzogMTtcblxuXHRtYXJnaW46IGF1dG87XG5cblx0Y29sb3I6ICR7IENPTE9SUy50aGVtZS5ncmF5WyA0MDAgXSB9O1xuXG5cdC8qIFVzZSBib3JkZXIgaW5zdGVhZCBvZiBiYWNrZ3JvdW5kIGNvbG9yIHNvIHRoYXQgdGhlIHBvaW50IHNob3dzXG5cdGluIFdpbmRvd3MgSGlnaCBDb250cmFzdCBNb2RlICovXG5cdGJvcmRlcjogJHsgUE9JTlRfU0laRSAvIDIgfXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuXHQvKiBIaWdobGlnaHQgYWN0aXZlIGl0ZW0gKi9cblx0JHsgQ2VsbCB9W2RhdGEtYWN0aXZlLWl0ZW1dICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMuZ3JheVsgOTAwIF0gfTtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKCBjYWxjKCA1IC8gMyApICk7XG5cdH1cblxuXHQvKiBIb3ZlciBzdHlsZXMgZm9yIG5vbi1hY3RpdmUgaXRlbXMgKi9cblx0JHsgQ2VsbCB9Om5vdChbZGF0YS1hY3RpdmUtaXRlbV0pOmhvdmVyICYge1xuXHRcdGNvbG9yOiAkeyBDT0xPUlMudGhlbWUuYWNjZW50IH07XG5cdH1cblxuXHQvKiBTaG93IGFuIG91dGxpbmUgb25seSB3aGVuIGludGVyYWN0aW5nIHdpdGgga2V5Ym9hcmQgKi9cblx0JHsgQ2VsbCB9W2RhdGEtZm9jdXMtdmlzaWJsZV0gJiB7XG5cdFx0b3V0bGluZTogMXB4IHNvbGlkICR7IENPTE9SUy50aGVtZS5hY2NlbnQgfTtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHR9XG5cblx0QG1lZGlhIG5vdCAoIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gKSB7XG5cdFx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIHRyYW5zZm9ybTtcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjBtcztcblx0XHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXHR9XG5gO1xuIl19 */"));
70
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["css","COLORS","CONFIG","rootBase","size","radiusMedium","process","env","NODE_ENV","_ref","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","GridContainer","_styled","target","label","props","disablePointerEvents","GridRow","Cell","POINT_SIZE","Point","theme","gray","accent"],"sources":["@wordpress/components/src/alignment-matrix-control/styles.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\n\n/**\n * Internal dependencies\n */\nimport { COLORS, CONFIG } from '../utils';\nimport type {\n\tAlignmentMatrixControlProps,\n\tAlignmentMatrixControlIconProps,\n} from './types';\n\n// Grid structure\n\nconst rootBase = ( { size = 92 } ) => css`\n\tdirection: ltr;\n\n\tdisplay: grid;\n\tgrid-template-columns: repeat( 3, 1fr );\n\tgrid-template-rows: repeat( 3, 1fr );\n\n\tbox-sizing: border-box;\n\twidth: ${ size }px;\n\taspect-ratio: 1;\n\n\tborder-radius: ${ CONFIG.radiusMedium };\n\toutline: none;\n`;\n\nexport const GridContainer = styled.div< {\n\tsize?: AlignmentMatrixControlProps[ 'width' ];\n\tdisablePointerEvents?: AlignmentMatrixControlIconProps[ 'disablePointerEvents' ];\n} >`\n\t${ rootBase }\n\n\tborder: 1px solid transparent;\n\n\t${ ( props ) =>\n\t\tprops.disablePointerEvents\n\t\t\t? css``\n\t\t\t: css`\n\t\t\t\t\tcursor: pointer;\n\t\t\t ` }\n`;\n\nexport const GridRow = styled.div`\n\tgrid-column: 1 / -1;\n\n\tbox-sizing: border-box;\n\tdisplay: grid;\n\tgrid-template-columns: repeat( 3, 1fr );\n`;\n\n// Cell\nexport const Cell = styled.span`\n\tposition: relative;\n\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\tbox-sizing: border-box;\n\tmargin: 0;\n\tpadding: 0;\n\n\tappearance: none;\n\tborder: none;\n\toutline: none;\n`;\n\nconst POINT_SIZE = 6;\nexport const Point = styled.span`\n\tdisplay: block;\n\tcontain: strict;\n\n\tbox-sizing: border-box;\n\twidth: ${ POINT_SIZE }px;\n\taspect-ratio: 1;\n\n\tmargin: auto;\n\n\tcolor: ${ COLORS.theme.gray[ 400 ] };\n\n\t/* Use border instead of background color so that the point shows\n\tin Windows High Contrast Mode */\n\tborder: ${ POINT_SIZE / 2 }px solid currentColor;\n\n\t/* Highlight active item */\n\t${ Cell }[data-active-item] & {\n\t\tcolor: ${ COLORS.gray[ 900 ] };\n\t\ttransform: scale( calc( 5 / 3 ) );\n\t}\n\n\t/* Hover styles for non-active items */\n\t${ Cell }:not([data-active-item]):hover & {\n\t\tcolor: ${ COLORS.theme.accent };\n\t}\n\n\t/* Show an outline only when interacting with keyboard */\n\t${ Cell }[data-focus-visible] & {\n\t\toutline: 1px solid ${ COLORS.theme.accent };\n\t\toutline-offset: 1px;\n\t}\n\n\t@media not ( prefers-reduced-motion ) {\n\t\ttransition-property: color, transform;\n\t\ttransition-duration: 120ms;\n\t\ttransition-timing-function: linear;\n\t}\n`;\n"],"mappings":";;AAAA;AACA;AACA;;AAEA,SAASA,GAAG,QAAQ,gBAAgB;;AAEpC;AACA;AACA;AACA,SAASC,MAAM,EAAEC,MAAM,QAAQ,UAAU;AAMzC;;AAEA,MAAMC,QAAQ,GAAGA,CAAE;EAAEC,IAAI,GAAG;AAAG,CAAC,kBAAMJ,GAAG,uIAQ9BI,IAAI,sCAGIF,MAAM,CAACG,YAAY,sBAAAC,OAAA,CAAAC,GAAA,CAAAC,QAAA,8CAAAF,OAAA,CAAAC,GAAA,CAAAC,QAAA,2jHAErC;AAAC,IAAAC,IAAA,GAAAH,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAE,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAC;AAAA;AAEF,OAAO,MAAMC,aAAa,gBAAAC,OAAA,QAAAV,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAS,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAItBf,QAAQ,oCAINgB,KAAK,IACTA,KAAK,CAACC,oBAAoB,gBACvBpB,GAAG,CAAAM,OAAA,CAAAC,GAAA,CAAAC,QAAA,kDAAAF,OAAA,CAAAC,GAAA,CAAAC,QAAA,8jHAAAC,IAGF,SAAAH,OAAA,CAAAC,GAAA,CAAAC,QAAA,4jHACL;AAED,OAAO,MAAMa,OAAO,gBAAAL,OAAA,QAAAV,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAS,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAAAZ,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAE,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAC;AAAA,EAMnB;;AAED;AACA,OAAO,MAAMQ,IAAI,gBAAAN,OAAA,SAAAV,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAS,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,GAAAZ,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAE,IAAA;EAAAC,MAAA;AAAA;EAAAD,IAAA;EAAAC,MAAA;EAAAC,GAAA;EAAAC,QAAA,EAAAC;AAAA,EAchB;AAED,MAAMS,UAAU,GAAG,CAAC;AACpB,OAAO,MAAMC,KAAK,gBAAAR,OAAA,SAAAV,OAAA,CAAAC,GAAA,CAAAC,QAAA;EAAAS,MAAA;AAAA;EAAAA,MAAA;EAAAC,KAAA;AAAA,gEAKPK,UAAU,0CAKVtB,MAAM,CAACwB,KAAK,CAACC,IAAI,CAAE,GAAG,CAAE,cAIvBH,UAAU,GAAG,CAAC,4BAGtBD,IAAI,iCACIrB,MAAM,CAACyB,IAAI,CAAE,GAAG,CAAE,yCAK1BJ,IAAI,6CACIrB,MAAM,CAACwB,KAAK,CAACE,MAAM,QAI3BL,IAAI,+CACgBrB,MAAM,CAACwB,KAAK,CAACE,MAAM,oKAAArB,OAAA,CAAAC,GAAA,CAAAC,QAAA,4jHAS1C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["@wordpress/components/src/alignment-matrix-control/types.ts"],"sourcesContent":["export type AlignmentMatrixControlValue =\n\t| 'top left'\n\t| 'top center'\n\t| 'top right'\n\t| 'center left'\n\t| 'center'\n\t| 'center center'\n\t| 'center right'\n\t| 'bottom left'\n\t| 'bottom center'\n\t| 'bottom right';\n\nexport type AlignmentMatrixControlProps = {\n\t/**\n\t * Accessible label. If provided, sets the `aria-label` attribute of the\n\t * underlying `grid` widget.\n\t *\n\t * @default 'Alignment Matrix Control'\n\t */\n\tlabel?: string;\n\t/**\n\t * If provided, sets the default alignment value.\n\t *\n\t * @default 'center center'\n\t */\n\tdefaultValue?: AlignmentMatrixControlValue;\n\t/**\n\t * The current alignment value.\n\t */\n\tvalue?: AlignmentMatrixControlValue;\n\t/**\n\t * A function that receives the updated alignment value.\n\t */\n\tonChange?: ( newValue: AlignmentMatrixControlValue ) => void;\n\t/**\n\t * If provided, sets the width of the control.\n\t *\n\t * @default 92\n\t */\n\twidth?: number;\n};\n\nexport type AlignmentMatrixControlIconProps = Pick<\n\tAlignmentMatrixControlProps,\n\t'value'\n> & {\n\tdisablePointerEvents?: boolean;\n\tsize?: number;\n};\n\nexport type AlignmentMatrixControlCellProps = {\n\tisActive?: boolean;\n\tvalue: NonNullable< AlignmentMatrixControlProps[ 'value' ] >;\n};\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["@wordpress/components/src/alignment-matrix-control/types.ts"],"sourcesContent":["export type AlignmentMatrixControlValue =\n\t| 'top left'\n\t| 'top center'\n\t| 'top right'\n\t| 'center left'\n\t| 'center'\n\t| 'center center'\n\t| 'center right'\n\t| 'bottom left'\n\t| 'bottom center'\n\t| 'bottom right';\n\nexport type AlignmentMatrixControlProps = {\n\t/**\n\t * Accessible label. If provided, sets the `aria-label` attribute of the\n\t * underlying `grid` widget.\n\t *\n\t * @default 'Alignment Matrix Control'\n\t */\n\tlabel?: string;\n\t/**\n\t * If provided, sets the default alignment value.\n\t *\n\t * @default 'center center'\n\t */\n\tdefaultValue?: AlignmentMatrixControlValue;\n\t/**\n\t * The current alignment value.\n\t */\n\tvalue?: AlignmentMatrixControlValue;\n\t/**\n\t * A function that receives the updated alignment value.\n\t */\n\tonChange?: ( newValue: AlignmentMatrixControlValue ) => void;\n\t/**\n\t * If provided, sets the width of the control.\n\t *\n\t * @default 92\n\t */\n\twidth?: number;\n};\n\nexport type AlignmentMatrixControlIconProps = Pick<\n\tAlignmentMatrixControlProps,\n\t'value'\n> & {\n\t/**\n\t * If `true`, disables pointer events on the icon.\n\t * @default true\n\t */\n\tdisablePointerEvents?: boolean;\n\t/**\n\t * _Note: this prop is deprecated. Use the `size` prop on the parent `Icon`\n\t * component instead_\n\t *\n\t * The size of the icon.\n\t * @ignore\n\t * @default 24\n\t */\n\tsize?: number;\n};\n\nexport type AlignmentMatrixControlCellProps = {\n\tvalue: NonNullable< AlignmentMatrixControlProps[ 'value' ] >;\n};\n"],"mappings":"","ignoreList":[]}
@@ -15,14 +15,14 @@ function AngleCircle({
15
15
  ...props
16
16
  }) {
17
17
  const angleCircleRef = useRef(null);
18
- const angleCircleCenter = useRef();
19
- const previousCursorValue = useRef();
18
+ const angleCircleCenterRef = useRef();
19
+ const previousCursorValueRef = useRef();
20
20
  const setAngleCircleCenter = () => {
21
21
  if (angleCircleRef.current === null) {
22
22
  return;
23
23
  }
24
24
  const rect = angleCircleRef.current.getBoundingClientRect();
25
- angleCircleCenter.current = {
25
+ angleCircleCenterRef.current = {
26
26
  x: rect.x + rect.width / 2,
27
27
  y: rect.y + rect.height / 2
28
28
  };
@@ -37,11 +37,11 @@ function AngleCircle({
37
37
  event.preventDefault();
38
38
  // Input control needs to lose focus and by preventDefault above, it doesn't.
39
39
  event.target?.focus();
40
- if (angleCircleCenter.current !== undefined && onChange !== undefined) {
40
+ if (angleCircleCenterRef.current !== undefined && onChange !== undefined) {
41
41
  const {
42
42
  x: centerX,
43
43
  y: centerY
44
- } = angleCircleCenter.current;
44
+ } = angleCircleCenterRef.current;
45
45
  onChange(getAngle(centerX, centerY, event.clientX, event.clientY));
46
46
  }
47
47
  };
@@ -58,13 +58,13 @@ function AngleCircle({
58
58
  });
59
59
  useEffect(() => {
60
60
  if (isDragging) {
61
- if (previousCursorValue.current === undefined) {
62
- previousCursorValue.current = document.body.style.cursor;
61
+ if (previousCursorValueRef.current === undefined) {
62
+ previousCursorValueRef.current = document.body.style.cursor;
63
63
  }
64
64
  document.body.style.cursor = 'grabbing';
65
65
  } else {
66
- document.body.style.cursor = previousCursorValue.current || '';
67
- previousCursorValue.current = undefined;
66
+ document.body.style.cursor = previousCursorValueRef.current || '';
67
+ previousCursorValueRef.current = undefined;
68
68
  }
69
69
  }, [isDragging]);
70
70
  return /*#__PURE__*/_jsx(CircleRoot, {
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","__experimentalUseDragging","useDragging","CircleRoot","CircleIndicatorWrapper","CircleIndicator","jsx","_jsx","AngleCircle","value","onChange","props","angleCircleRef","angleCircleCenter","previousCursorValue","setAngleCircleCenter","current","rect","getBoundingClientRect","x","width","y","height","changeAngleToPosition","event","undefined","preventDefault","target","focus","centerX","centerY","getAngle","clientX","clientY","startDrag","isDragging","onDragStart","onDragMove","onDragEnd","document","body","style","cursor","ref","onMouseDown","className","children","transform","tabIndex","pointX","pointY","angleInRadians","Math","atan2","angleInDeg","round","PI"],"sources":["@wordpress/components/src/angle-picker-control/angle-circle.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCircleRoot,\n\tCircleIndicatorWrapper,\n\tCircleIndicator,\n} from './styles/angle-picker-control-styles';\n\nimport type { WordPressComponentProps } from '../context';\nimport type { AngleCircleProps } from './types';\n\ntype UseDraggingArgumentType = Parameters< typeof useDragging >[ 0 ];\ntype UseDraggingCallbackEvent =\n\t| Parameters< UseDraggingArgumentType[ 'onDragStart' ] >[ 0 ]\n\t| Parameters< UseDraggingArgumentType[ 'onDragMove' ] >[ 0 ]\n\t| Parameters< UseDraggingArgumentType[ 'onDragEnd' ] >[ 0 ];\n\nfunction AngleCircle( {\n\tvalue,\n\tonChange,\n\t...props\n}: WordPressComponentProps< AngleCircleProps, 'div' > ) {\n\tconst angleCircleRef = useRef< HTMLDivElement | null >( null );\n\tconst angleCircleCenter = useRef< { x: number; y: number } | undefined >();\n\tconst previousCursorValue = useRef< CSSStyleDeclaration[ 'cursor' ] >();\n\n\tconst setAngleCircleCenter = () => {\n\t\tif ( angleCircleRef.current === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rect = angleCircleRef.current.getBoundingClientRect();\n\t\tangleCircleCenter.current = {\n\t\t\tx: rect.x + rect.width / 2,\n\t\t\ty: rect.y + rect.height / 2,\n\t\t};\n\t};\n\n\tconst changeAngleToPosition = ( event: UseDraggingCallbackEvent ) => {\n\t\tif ( event === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Prevent (drag) mouse events from selecting and accidentally\n\t\t// triggering actions from other elements.\n\t\tevent.preventDefault();\n\t\t// Input control needs to lose focus and by preventDefault above, it doesn't.\n\t\t( event.target as HTMLDivElement | null )?.focus();\n\n\t\tif (\n\t\t\tangleCircleCenter.current !== undefined &&\n\t\t\tonChange !== undefined\n\t\t) {\n\t\t\tconst { x: centerX, y: centerY } = angleCircleCenter.current;\n\t\t\tonChange(\n\t\t\t\tgetAngle( centerX, centerY, event.clientX, event.clientY )\n\t\t\t);\n\t\t}\n\t};\n\n\tconst { startDrag, isDragging } = useDragging( {\n\t\tonDragStart: ( event ) => {\n\t\t\tsetAngleCircleCenter();\n\t\t\tchangeAngleToPosition( event );\n\t\t},\n\t\tonDragMove: changeAngleToPosition,\n\t\tonDragEnd: changeAngleToPosition,\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isDragging ) {\n\t\t\tif ( previousCursorValue.current === undefined ) {\n\t\t\t\tpreviousCursorValue.current = document.body.style.cursor;\n\t\t\t}\n\t\t\tdocument.body.style.cursor = 'grabbing';\n\t\t} else {\n\t\t\tdocument.body.style.cursor = previousCursorValue.current || '';\n\t\t\tpreviousCursorValue.current = undefined;\n\t\t}\n\t}, [ isDragging ] );\n\n\treturn (\n\t\t<CircleRoot\n\t\t\tref={ angleCircleRef }\n\t\t\tonMouseDown={ startDrag }\n\t\t\tclassName=\"components-angle-picker-control__angle-circle\"\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<CircleIndicatorWrapper\n\t\t\t\tstyle={\n\t\t\t\t\tvalue ? { transform: `rotate(${ value }deg)` } : undefined\n\t\t\t\t}\n\t\t\t\tclassName=\"components-angle-picker-control__angle-circle-indicator-wrapper\"\n\t\t\t\ttabIndex={ -1 }\n\t\t\t>\n\t\t\t\t<CircleIndicator className=\"components-angle-picker-control__angle-circle-indicator\" />\n\t\t\t</CircleIndicatorWrapper>\n\t\t</CircleRoot>\n\t);\n}\n\nfunction getAngle(\n\tcenterX: number,\n\tcenterY: number,\n\tpointX: number,\n\tpointY: number\n) {\n\tconst y = pointY - centerY;\n\tconst x = pointX - centerX;\n\n\tconst angleInRadians = Math.atan2( y, x );\n\tconst angleInDeg = Math.round( angleInRadians * ( 180 / Math.PI ) ) + 90;\n\tif ( angleInDeg < 0 ) {\n\t\treturn 360 + angleInDeg;\n\t}\n\treturn angleInDeg;\n}\n\nexport default AngleCircle;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","__experimentalUseDragging","useDragging","CircleRoot","CircleIndicatorWrapper","CircleIndicator","jsx","_jsx","AngleCircle","value","onChange","props","angleCircleRef","angleCircleCenterRef","previousCursorValueRef","setAngleCircleCenter","current","rect","getBoundingClientRect","x","width","y","height","changeAngleToPosition","event","undefined","preventDefault","target","focus","centerX","centerY","getAngle","clientX","clientY","startDrag","isDragging","onDragStart","onDragMove","onDragEnd","document","body","style","cursor","ref","onMouseDown","className","children","transform","tabIndex","pointX","pointY","angleInRadians","Math","atan2","angleInDeg","round","PI"],"sources":["@wordpress/components/src/angle-picker-control/angle-circle.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tCircleRoot,\n\tCircleIndicatorWrapper,\n\tCircleIndicator,\n} from './styles/angle-picker-control-styles';\n\nimport type { WordPressComponentProps } from '../context';\nimport type { AngleCircleProps } from './types';\n\ntype UseDraggingArgumentType = Parameters< typeof useDragging >[ 0 ];\ntype UseDraggingCallbackEvent =\n\t| Parameters< UseDraggingArgumentType[ 'onDragStart' ] >[ 0 ]\n\t| Parameters< UseDraggingArgumentType[ 'onDragMove' ] >[ 0 ]\n\t| Parameters< UseDraggingArgumentType[ 'onDragEnd' ] >[ 0 ];\n\nfunction AngleCircle( {\n\tvalue,\n\tonChange,\n\t...props\n}: WordPressComponentProps< AngleCircleProps, 'div' > ) {\n\tconst angleCircleRef = useRef< HTMLDivElement | null >( null );\n\tconst angleCircleCenterRef = useRef<\n\t\t{ x: number; y: number } | undefined\n\t>();\n\tconst previousCursorValueRef = useRef< CSSStyleDeclaration[ 'cursor' ] >();\n\n\tconst setAngleCircleCenter = () => {\n\t\tif ( angleCircleRef.current === null ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rect = angleCircleRef.current.getBoundingClientRect();\n\t\tangleCircleCenterRef.current = {\n\t\t\tx: rect.x + rect.width / 2,\n\t\t\ty: rect.y + rect.height / 2,\n\t\t};\n\t};\n\n\tconst changeAngleToPosition = ( event: UseDraggingCallbackEvent ) => {\n\t\tif ( event === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Prevent (drag) mouse events from selecting and accidentally\n\t\t// triggering actions from other elements.\n\t\tevent.preventDefault();\n\t\t// Input control needs to lose focus and by preventDefault above, it doesn't.\n\t\t( event.target as HTMLDivElement | null )?.focus();\n\n\t\tif (\n\t\t\tangleCircleCenterRef.current !== undefined &&\n\t\t\tonChange !== undefined\n\t\t) {\n\t\t\tconst { x: centerX, y: centerY } = angleCircleCenterRef.current;\n\t\t\tonChange(\n\t\t\t\tgetAngle( centerX, centerY, event.clientX, event.clientY )\n\t\t\t);\n\t\t}\n\t};\n\n\tconst { startDrag, isDragging } = useDragging( {\n\t\tonDragStart: ( event ) => {\n\t\t\tsetAngleCircleCenter();\n\t\t\tchangeAngleToPosition( event );\n\t\t},\n\t\tonDragMove: changeAngleToPosition,\n\t\tonDragEnd: changeAngleToPosition,\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isDragging ) {\n\t\t\tif ( previousCursorValueRef.current === undefined ) {\n\t\t\t\tpreviousCursorValueRef.current = document.body.style.cursor;\n\t\t\t}\n\t\t\tdocument.body.style.cursor = 'grabbing';\n\t\t} else {\n\t\t\tdocument.body.style.cursor = previousCursorValueRef.current || '';\n\t\t\tpreviousCursorValueRef.current = undefined;\n\t\t}\n\t}, [ isDragging ] );\n\n\treturn (\n\t\t<CircleRoot\n\t\t\tref={ angleCircleRef }\n\t\t\tonMouseDown={ startDrag }\n\t\t\tclassName=\"components-angle-picker-control__angle-circle\"\n\t\t\t{ ...props }\n\t\t>\n\t\t\t<CircleIndicatorWrapper\n\t\t\t\tstyle={\n\t\t\t\t\tvalue ? { transform: `rotate(${ value }deg)` } : undefined\n\t\t\t\t}\n\t\t\t\tclassName=\"components-angle-picker-control__angle-circle-indicator-wrapper\"\n\t\t\t\ttabIndex={ -1 }\n\t\t\t>\n\t\t\t\t<CircleIndicator className=\"components-angle-picker-control__angle-circle-indicator\" />\n\t\t\t</CircleIndicatorWrapper>\n\t\t</CircleRoot>\n\t);\n}\n\nfunction getAngle(\n\tcenterX: number,\n\tcenterY: number,\n\tpointX: number,\n\tpointY: number\n) {\n\tconst y = pointY - centerY;\n\tconst x = pointX - centerX;\n\n\tconst angleInRadians = Math.atan2( y, x );\n\tconst angleInDeg = Math.round( angleInRadians * ( 180 / Math.PI ) ) + 90;\n\tif ( angleInDeg < 0 ) {\n\t\treturn 360 + angleInDeg;\n\t}\n\treturn angleInDeg;\n}\n\nexport default AngleCircle;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SAASC,yBAAyB,IAAIC,WAAW,QAAQ,oBAAoB;;AAE7E;AACA;AACA;AACA,SACCC,UAAU,EACVC,sBAAsB,EACtBC,eAAe,QACT,sCAAsC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAW9C,SAASC,WAAWA,CAAE;EACrBC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACgD,CAAC,EAAG;EACvD,MAAMC,cAAc,GAAGZ,MAAM,CAA2B,IAAK,CAAC;EAC9D,MAAMa,oBAAoB,GAAGb,MAAM,CAEjC,CAAC;EACH,MAAMc,sBAAsB,GAAGd,MAAM,CAAoC,CAAC;EAE1E,MAAMe,oBAAoB,GAAGA,CAAA,KAAM;IAClC,IAAKH,cAAc,CAACI,OAAO,KAAK,IAAI,EAAG;MACtC;IACD;IAEA,MAAMC,IAAI,GAAGL,cAAc,CAACI,OAAO,CAACE,qBAAqB,CAAC,CAAC;IAC3DL,oBAAoB,CAACG,OAAO,GAAG;MAC9BG,CAAC,EAAEF,IAAI,CAACE,CAAC,GAAGF,IAAI,CAACG,KAAK,GAAG,CAAC;MAC1BC,CAAC,EAAEJ,IAAI,CAACI,CAAC,GAAGJ,IAAI,CAACK,MAAM,GAAG;IAC3B,CAAC;EACF,CAAC;EAED,MAAMC,qBAAqB,GAAKC,KAA+B,IAAM;IACpE,IAAKA,KAAK,KAAKC,SAAS,EAAG;MAC1B;IACD;;IAEA;IACA;IACAD,KAAK,CAACE,cAAc,CAAC,CAAC;IACtB;IACEF,KAAK,CAACG,MAAM,EAA6BC,KAAK,CAAC,CAAC;IAElD,IACCf,oBAAoB,CAACG,OAAO,KAAKS,SAAS,IAC1Cf,QAAQ,KAAKe,SAAS,EACrB;MACD,MAAM;QAAEN,CAAC,EAAEU,OAAO;QAAER,CAAC,EAAES;MAAQ,CAAC,GAAGjB,oBAAoB,CAACG,OAAO;MAC/DN,QAAQ,CACPqB,QAAQ,CAAEF,OAAO,EAAEC,OAAO,EAAEN,KAAK,CAACQ,OAAO,EAAER,KAAK,CAACS,OAAQ,CAC1D,CAAC;IACF;EACD,CAAC;EAED,MAAM;IAAEC,SAAS;IAAEC;EAAW,CAAC,GAAGjC,WAAW,CAAE;IAC9CkC,WAAW,EAAIZ,KAAK,IAAM;MACzBT,oBAAoB,CAAC,CAAC;MACtBQ,qBAAqB,CAAEC,KAAM,CAAC;IAC/B,CAAC;IACDa,UAAU,EAAEd,qBAAqB;IACjCe,SAAS,EAAEf;EACZ,CAAE,CAAC;EAEHxB,SAAS,CAAE,MAAM;IAChB,IAAKoC,UAAU,EAAG;MACjB,IAAKrB,sBAAsB,CAACE,OAAO,KAAKS,SAAS,EAAG;QACnDX,sBAAsB,CAACE,OAAO,GAAGuB,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,MAAM;MAC5D;MACAH,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG,UAAU;IACxC,CAAC,MAAM;MACNH,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,MAAM,GAAG5B,sBAAsB,CAACE,OAAO,IAAI,EAAE;MACjEF,sBAAsB,CAACE,OAAO,GAAGS,SAAS;IAC3C;EACD,CAAC,EAAE,CAAEU,UAAU,CAAG,CAAC;EAEnB,oBACC5B,IAAA,CAACJ,UAAU;IACVwC,GAAG,EAAG/B,cAAgB;IACtBgC,WAAW,EAAGV,SAAW;IACzBW,SAAS,EAAC,+CAA+C;IAAA,GACpDlC,KAAK;IAAAmC,QAAA,eAEVvC,IAAA,CAACH,sBAAsB;MACtBqC,KAAK,EACJhC,KAAK,GAAG;QAAEsC,SAAS,EAAG,UAAUtC,KAAO;MAAM,CAAC,GAAGgB,SACjD;MACDoB,SAAS,EAAC,iEAAiE;MAC3EG,QAAQ,EAAG,CAAC,CAAG;MAAAF,QAAA,eAEfvC,IAAA,CAACF,eAAe;QAACwC,SAAS,EAAC;MAAyD,CAAE;IAAC,CAChE;EAAC,CACd,CAAC;AAEf;AAEA,SAASd,QAAQA,CAChBF,OAAe,EACfC,OAAe,EACfmB,MAAc,EACdC,MAAc,EACb;EACD,MAAM7B,CAAC,GAAG6B,MAAM,GAAGpB,OAAO;EAC1B,MAAMX,CAAC,GAAG8B,MAAM,GAAGpB,OAAO;EAE1B,MAAMsB,cAAc,GAAGC,IAAI,CAACC,KAAK,CAAEhC,CAAC,EAAEF,CAAE,CAAC;EACzC,MAAMmC,UAAU,GAAGF,IAAI,CAACG,KAAK,CAAEJ,cAAc,IAAK,GAAG,GAAGC,IAAI,CAACI,EAAE,CAAG,CAAC,GAAG,EAAE;EACxE,IAAKF,UAAU,GAAG,CAAC,EAAG;IACrB,OAAO,GAAG,GAAGA,UAAU;EACxB;EACA,OAAOA,UAAU;AAClB;AAEA,eAAe9C,WAAW","ignoreList":[]}
@@ -15,6 +15,7 @@ import { View } from '../../view';
15
15
  import { VisuallyHidden } from '../../visually-hidden';
16
16
  import { contextConnect } from '../../context';
17
17
  import { useBorderControl } from './hook';
18
+ import { Spacer } from '../../spacer';
18
19
  import { jsx as _jsx } from "react/jsx-runtime";
19
20
  import { jsxs as _jsxs } from "react/jsx-runtime";
20
21
  const BorderLabel = props => {
@@ -73,19 +74,23 @@ const UnconnectedBorderControl = (props, forwardedRef) => {
73
74
  spacing: 4,
74
75
  className: innerWrapperClassName,
75
76
  children: [/*#__PURE__*/_jsx(UnitControl, {
76
- prefix: /*#__PURE__*/_jsx(BorderControlDropdown, {
77
- border: border,
78
- colors: colors,
79
- __unstablePopoverProps: __unstablePopoverProps,
80
- disableCustomColors: disableCustomColors,
81
- enableAlpha: enableAlpha,
82
- enableStyle: enableStyle,
83
- isStyleSettable: isStyleSettable,
84
- onChange: onBorderChange,
85
- previousStyleSelection: previousStyleSelection,
86
- showDropdownHeader: showDropdownHeader,
87
- __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
88
- size: size
77
+ prefix: /*#__PURE__*/_jsx(Spacer, {
78
+ marginRight: 1,
79
+ marginBottom: 0,
80
+ children: /*#__PURE__*/_jsx(BorderControlDropdown, {
81
+ border: border,
82
+ colors: colors,
83
+ __unstablePopoverProps: __unstablePopoverProps,
84
+ disableCustomColors: disableCustomColors,
85
+ enableAlpha: enableAlpha,
86
+ enableStyle: enableStyle,
87
+ isStyleSettable: isStyleSettable,
88
+ onChange: onBorderChange,
89
+ previousStyleSelection: previousStyleSelection,
90
+ showDropdownHeader: showDropdownHeader,
91
+ __experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
92
+ size: size
93
+ })
89
94
  }),
90
95
  label: __('Border width'),
91
96
  hideLabelFromVision: true,
@@ -1 +1 @@
1
- {"version":3,"names":["__","BorderControlDropdown","UnitControl","RangeControl","HStack","StyledLabel","View","VisuallyHidden","contextConnect","useBorderControl","jsx","_jsx","jsxs","_jsxs","BorderLabel","props","label","hideLabelFromVision","as","children","UnconnectedBorderControl","forwardedRef","__next40pxDefaultSize","colors","disableCustomColors","disableUnits","enableAlpha","enableStyle","innerWrapperClassName","inputWidth","isStyleSettable","onBorderChange","onSliderChange","onWidthChange","placeholder","__unstablePopoverProps","previousStyleSelection","showDropdownHeader","size","sliderClassName","value","border","widthUnit","widthValue","withSlider","__experimentalIsRenderedInSidebar","otherProps","ref","spacing","className","prefix","onChange","min","width","__unstableInputWidth","__nextHasNoMarginBottom","initialPosition","max","step","includes","undefined","withInputField","BorderControl"],"sources":["@wordpress/components/src/border-control/border-control/component.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderControlDropdown from '../border-control-dropdown';\nimport UnitControl from '../../unit-control';\nimport RangeControl from '../../range-control';\nimport { HStack } from '../../h-stack';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport { View } from '../../view';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { useBorderControl } from './hook';\n\nimport type { BorderControlProps, LabelProps } from '../types';\n\nconst BorderLabel = ( props: LabelProps ) => {\n\tconst { label, hideLabelFromVision } = props;\n\n\tif ( ! label ) {\n\t\treturn null;\n\t}\n\n\treturn hideLabelFromVision ? (\n\t\t<VisuallyHidden as=\"legend\">{ label }</VisuallyHidden>\n\t) : (\n\t\t<StyledLabel as=\"legend\">{ label }</StyledLabel>\n\t);\n};\n\nconst UnconnectedBorderControl = (\n\tprops: WordPressComponentProps< BorderControlProps, 'div', false >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tdisableUnits,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\thideLabelFromVision,\n\t\tinnerWrapperClassName,\n\t\tinputWidth,\n\t\tisStyleSettable,\n\t\tlabel,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tplaceholder,\n\t\t__unstablePopoverProps,\n\t\tpreviousStyleSelection,\n\t\tshowDropdownHeader,\n\t\tsize,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthUnit,\n\t\twidthValue,\n\t\twithSlider,\n\t\t__experimentalIsRenderedInSidebar,\n\t\t...otherProps\n\t} = useBorderControl( props );\n\n\treturn (\n\t\t<View as=\"fieldset\" { ...otherProps } ref={ forwardedRef }>\n\t\t\t<BorderLabel\n\t\t\t\tlabel={ label }\n\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t/>\n\t\t\t<HStack spacing={ 4 } className={ innerWrapperClassName }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tprefix={\n\t\t\t\t\t\t<BorderControlDropdown\n\t\t\t\t\t\t\tborder={ border }\n\t\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\t\t__unstablePopoverProps={ __unstablePopoverProps }\n\t\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t\tenableStyle={ enableStyle }\n\t\t\t\t\t\t\tisStyleSettable={ isStyleSettable }\n\t\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\t\tpreviousStyleSelection={ previousStyleSelection }\n\t\t\t\t\t\t\tshowDropdownHeader={ showDropdownHeader }\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ onWidthChange }\n\t\t\t\t\tvalue={ border?.width || '' }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tdisableUnits={ disableUnits }\n\t\t\t\t\t__unstableInputWidth={ inputWidth }\n\t\t\t\t\tsize={ size }\n\t\t\t\t/>\n\t\t\t\t{ withSlider && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tclassName={ sliderClassName }\n\t\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ onSliderChange }\n\t\t\t\t\t\tstep={ [ 'px', '%' ].includes( widthUnit ) ? 1 : 0.1 }\n\t\t\t\t\t\tvalue={ widthValue || undefined }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</View>\n\t);\n};\n\n/**\n * The `BorderControl` brings together internal sub-components which allow users to\n * set the various properties of a border. The first sub-component, a\n * `BorderDropdown` contains options representing border color and style. The\n * border width is controlled via a `UnitControl` and an optional `RangeControl`.\n *\n * Border radius is not covered by this control as it may be desired separate to\n * color, style, and width. For example, the border radius may be absorbed under\n * a \"shape\" abstraction.\n *\n * ```jsx\n * import { __experimentalBorderControl as BorderControl } from '@wordpress/components';\n * import { __ } from '@wordpress/i18n';\n *\n * const colors = [\n * \t{ name: 'Blue 20', color: '#72aee6' },\n * \t// ...\n * ];\n *\n * const MyBorderControl = () => {\n * \tconst [ border, setBorder ] = useState();\n * \tconst onChange = ( newBorder ) => setBorder( newBorder );\n *\n * \treturn (\n * \t\t<BorderControl\n * \t\t\tcolors={ colors }\n * \t\t\tlabel={ __( 'Border' ) }\n * \t\t\tonChange={ onChange }\n * \t\t\tvalue={ border }\n * \t\t/>\n * \t);\n * };\n * ```\n */\nexport const BorderControl = contextConnect(\n\tUnconnectedBorderControl,\n\t'BorderControl'\n);\n\nexport default BorderControl;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","BorderControlDropdown","UnitControl","RangeControl","HStack","StyledLabel","View","VisuallyHidden","contextConnect","useBorderControl","Spacer","jsx","_jsx","jsxs","_jsxs","BorderLabel","props","label","hideLabelFromVision","as","children","UnconnectedBorderControl","forwardedRef","__next40pxDefaultSize","colors","disableCustomColors","disableUnits","enableAlpha","enableStyle","innerWrapperClassName","inputWidth","isStyleSettable","onBorderChange","onSliderChange","onWidthChange","placeholder","__unstablePopoverProps","previousStyleSelection","showDropdownHeader","size","sliderClassName","value","border","widthUnit","widthValue","withSlider","__experimentalIsRenderedInSidebar","otherProps","ref","spacing","className","prefix","marginRight","marginBottom","onChange","min","width","__unstableInputWidth","__nextHasNoMarginBottom","initialPosition","max","step","includes","undefined","withInputField","BorderControl"],"sources":["@wordpress/components/src/border-control/border-control/component.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BorderControlDropdown from '../border-control-dropdown';\nimport UnitControl from '../../unit-control';\nimport RangeControl from '../../range-control';\nimport { HStack } from '../../h-stack';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport { View } from '../../view';\nimport { VisuallyHidden } from '../../visually-hidden';\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { useBorderControl } from './hook';\n\nimport type { BorderControlProps, LabelProps } from '../types';\nimport { Spacer } from '../../spacer';\n\nconst BorderLabel = ( props: LabelProps ) => {\n\tconst { label, hideLabelFromVision } = props;\n\n\tif ( ! label ) {\n\t\treturn null;\n\t}\n\n\treturn hideLabelFromVision ? (\n\t\t<VisuallyHidden as=\"legend\">{ label }</VisuallyHidden>\n\t) : (\n\t\t<StyledLabel as=\"legend\">{ label }</StyledLabel>\n\t);\n};\n\nconst UnconnectedBorderControl = (\n\tprops: WordPressComponentProps< BorderControlProps, 'div', false >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__next40pxDefaultSize = false,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tdisableUnits,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\thideLabelFromVision,\n\t\tinnerWrapperClassName,\n\t\tinputWidth,\n\t\tisStyleSettable,\n\t\tlabel,\n\t\tonBorderChange,\n\t\tonSliderChange,\n\t\tonWidthChange,\n\t\tplaceholder,\n\t\t__unstablePopoverProps,\n\t\tpreviousStyleSelection,\n\t\tshowDropdownHeader,\n\t\tsize,\n\t\tsliderClassName,\n\t\tvalue: border,\n\t\twidthUnit,\n\t\twidthValue,\n\t\twithSlider,\n\t\t__experimentalIsRenderedInSidebar,\n\t\t...otherProps\n\t} = useBorderControl( props );\n\n\treturn (\n\t\t<View as=\"fieldset\" { ...otherProps } ref={ forwardedRef }>\n\t\t\t<BorderLabel\n\t\t\t\tlabel={ label }\n\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t/>\n\t\t\t<HStack spacing={ 4 } className={ innerWrapperClassName }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tprefix={\n\t\t\t\t\t\t<Spacer marginRight={ 1 } marginBottom={ 0 }>\n\t\t\t\t\t\t\t<BorderControlDropdown\n\t\t\t\t\t\t\t\tborder={ border }\n\t\t\t\t\t\t\t\tcolors={ colors }\n\t\t\t\t\t\t\t\t__unstablePopoverProps={\n\t\t\t\t\t\t\t\t\t__unstablePopoverProps\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisableCustomColors={ disableCustomColors }\n\t\t\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t\t\tenableStyle={ enableStyle }\n\t\t\t\t\t\t\t\tisStyleSettable={ isStyleSettable }\n\t\t\t\t\t\t\t\tonChange={ onBorderChange }\n\t\t\t\t\t\t\t\tpreviousStyleSelection={\n\t\t\t\t\t\t\t\t\tpreviousStyleSelection\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tshowDropdownHeader={ showDropdownHeader }\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsize={ size }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t}\n\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ onWidthChange }\n\t\t\t\t\tvalue={ border?.width || '' }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tdisableUnits={ disableUnits }\n\t\t\t\t\t__unstableInputWidth={ inputWidth }\n\t\t\t\t\tsize={ size }\n\t\t\t\t/>\n\t\t\t\t{ withSlider && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Border width' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tclassName={ sliderClassName }\n\t\t\t\t\t\tinitialPosition={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tonChange={ onSliderChange }\n\t\t\t\t\t\tstep={ [ 'px', '%' ].includes( widthUnit ) ? 1 : 0.1 }\n\t\t\t\t\t\tvalue={ widthValue || undefined }\n\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</View>\n\t);\n};\n\n/**\n * The `BorderControl` brings together internal sub-components which allow users to\n * set the various properties of a border. The first sub-component, a\n * `BorderDropdown` contains options representing border color and style. The\n * border width is controlled via a `UnitControl` and an optional `RangeControl`.\n *\n * Border radius is not covered by this control as it may be desired separate to\n * color, style, and width. For example, the border radius may be absorbed under\n * a \"shape\" abstraction.\n *\n * ```jsx\n * import { __experimentalBorderControl as BorderControl } from '@wordpress/components';\n * import { __ } from '@wordpress/i18n';\n *\n * const colors = [\n * \t{ name: 'Blue 20', color: '#72aee6' },\n * \t// ...\n * ];\n *\n * const MyBorderControl = () => {\n * \tconst [ border, setBorder ] = useState();\n * \tconst onChange = ( newBorder ) => setBorder( newBorder );\n *\n * \treturn (\n * \t\t<BorderControl\n * \t\t\tcolors={ colors }\n * \t\t\tlabel={ __( 'Border' ) }\n * \t\t\tonChange={ onChange }\n * \t\t\tvalue={ border }\n * \t\t/>\n * \t);\n * };\n * ```\n */\nexport const BorderControl = contextConnect(\n\tUnconnectedBorderControl,\n\t'BorderControl'\n);\n\nexport default BorderControl;\n"],"mappings":"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","ignoreList":[]}
@@ -227,7 +227,7 @@ export function isValuesMixed(values = {}, selectedUnits, sides = ALL_SIDES) {
227
227
  * @return Whether values are mixed.
228
228
  */
229
229
  export function isValuesDefined(values) {
230
- return values !== undefined && Object.values(values).filter(
230
+ return values && Object.values(values).filter(
231
231
  // Switching units when input is empty causes values only
232
232
  // containing units. This gives false positive on mixed values
233
233
  // unless filtered.
@@ -1 +1 @@
1
- {"version":3,"names":["__","parseQuantityAndUnitFromRawValue","CUSTOM_VALUE_SETTINGS","px","max","step","vw","vh","em","rm","svw","lvw","dvw","svh","lvh","dvh","vi","svi","lvi","dvi","vb","svb","lvb","dvb","vmin","svmin","lvmin","dvmin","vmax","svmax","lvmax","dvmax","LABELS","all","top","bottom","left","right","mixed","vertical","horizontal","DEFAULT_VALUES","undefined","ALL_SIDES","mode","arr","sort","a","b","filter","v","length","pop","getAllValue","values","selectedUnits","availableSides","sides","normalizeSides","parsedQuantitiesAndUnits","map","side","allParsedQuantities","value","_value$","allParsedUnits","commonQuantity","every","commonUnit","_getAllUnitFallback","getAllUnitFallback","join","filteredUnits","Object","Boolean","isValuesMixed","allValue","isMixed","isNaN","parseFloat","isValuesDefined","test","getInitialSide","isLinked","splitOnAxis","initialSide","filteredSides","includes","push","newSides","applyValueToSides","currentValues","newValue","newValues","forEach"],"sources":["@wordpress/components/src/box-control/utils.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { parseQuantityAndUnitFromRawValue } from '../unit-control/utils';\nimport type {\n\tBoxControlProps,\n\tBoxControlValue,\n\tCustomValueUnits,\n} from './types';\n\nexport const CUSTOM_VALUE_SETTINGS: CustomValueUnits = {\n\tpx: { max: 300, step: 1 },\n\t'%': { max: 100, step: 1 },\n\tvw: { max: 100, step: 1 },\n\tvh: { max: 100, step: 1 },\n\tem: { max: 10, step: 0.1 },\n\trm: { max: 10, step: 0.1 },\n\tsvw: { max: 100, step: 1 },\n\tlvw: { max: 100, step: 1 },\n\tdvw: { max: 100, step: 1 },\n\tsvh: { max: 100, step: 1 },\n\tlvh: { max: 100, step: 1 },\n\tdvh: { max: 100, step: 1 },\n\tvi: { max: 100, step: 1 },\n\tsvi: { max: 100, step: 1 },\n\tlvi: { max: 100, step: 1 },\n\tdvi: { max: 100, step: 1 },\n\tvb: { max: 100, step: 1 },\n\tsvb: { max: 100, step: 1 },\n\tlvb: { max: 100, step: 1 },\n\tdvb: { max: 100, step: 1 },\n\tvmin: { max: 100, step: 1 },\n\tsvmin: { max: 100, step: 1 },\n\tlvmin: { max: 100, step: 1 },\n\tdvmin: { max: 100, step: 1 },\n\tvmax: { max: 100, step: 1 },\n\tsvmax: { max: 100, step: 1 },\n\tlvmax: { max: 100, step: 1 },\n\tdvmax: { max: 100, step: 1 },\n};\n\nexport const LABELS = {\n\tall: __( 'All sides' ),\n\ttop: __( 'Top side' ),\n\tbottom: __( 'Bottom side' ),\n\tleft: __( 'Left side' ),\n\tright: __( 'Right side' ),\n\tmixed: __( 'Mixed' ),\n\tvertical: __( 'Top and bottom sides' ),\n\thorizontal: __( 'Left and right sides' ),\n};\n\nexport const DEFAULT_VALUES = {\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\nexport const ALL_SIDES = [ 'top', 'right', 'bottom', 'left' ] as const;\n\n/**\n * Gets an items with the most occurrence within an array\n * https://stackoverflow.com/a/20762713\n *\n * @param arr Array of items to check.\n * @return The item with the most occurrences.\n */\nfunction mode< T >( arr: T[] ) {\n\treturn arr\n\t\t.sort(\n\t\t\t( a, b ) =>\n\t\t\t\tarr.filter( ( v ) => v === a ).length -\n\t\t\t\tarr.filter( ( v ) => v === b ).length\n\t\t)\n\t\t.pop();\n}\n\n/**\n * Gets the 'all' input value and unit from values data.\n *\n * @param values Box values.\n * @param selectedUnits Box units.\n * @param availableSides Available box sides to evaluate.\n *\n * @return A value + unit for the 'all' input.\n */\nexport function getAllValue(\n\tvalues: BoxControlValue = {},\n\tselectedUnits?: BoxControlValue,\n\tavailableSides: BoxControlProps[ 'sides' ] = ALL_SIDES\n) {\n\tconst sides = normalizeSides( availableSides );\n\tconst parsedQuantitiesAndUnits = sides.map( ( side ) =>\n\t\tparseQuantityAndUnitFromRawValue( values[ side ] )\n\t);\n\tconst allParsedQuantities = parsedQuantitiesAndUnits.map(\n\t\t( value ) => value[ 0 ] ?? ''\n\t);\n\tconst allParsedUnits = parsedQuantitiesAndUnits.map(\n\t\t( value ) => value[ 1 ]\n\t);\n\n\tconst commonQuantity = allParsedQuantities.every(\n\t\t( v ) => v === allParsedQuantities[ 0 ]\n\t)\n\t\t? allParsedQuantities[ 0 ]\n\t\t: '';\n\n\t/**\n\t * The typeof === 'number' check is important. On reset actions, the incoming value\n\t * may be null or an empty string.\n\t *\n\t * Also, the value may also be zero (0), which is considered a valid unit value.\n\t *\n\t * typeof === 'number' is more specific for these cases, rather than relying on a\n\t * simple truthy check.\n\t */\n\tlet commonUnit;\n\tif ( typeof commonQuantity === 'number' ) {\n\t\tcommonUnit = mode( allParsedUnits );\n\t} else {\n\t\t// Set meaningful unit selection if no commonQuantity and user has previously\n\t\t// selected units without assigning values while controls were unlinked.\n\t\tcommonUnit =\n\t\t\tgetAllUnitFallback( selectedUnits ) ?? mode( allParsedUnits );\n\t}\n\n\treturn [ commonQuantity, commonUnit ].join( '' );\n}\n\n/**\n * Determine the most common unit selection to use as a fallback option.\n *\n * @param selectedUnits Current unit selections for individual sides.\n * @return Most common unit selection.\n */\nexport function getAllUnitFallback( selectedUnits?: BoxControlValue ) {\n\tif ( ! selectedUnits || typeof selectedUnits !== 'object' ) {\n\t\treturn undefined;\n\t}\n\n\tconst filteredUnits = Object.values( selectedUnits ).filter( Boolean );\n\n\treturn mode( filteredUnits );\n}\n\n/**\n * Checks to determine if values are mixed.\n *\n * @param values Box values.\n * @param selectedUnits Box units.\n * @param sides Available box sides to evaluate.\n *\n * @return Whether values are mixed.\n */\nexport function isValuesMixed(\n\tvalues: BoxControlValue = {},\n\tselectedUnits?: BoxControlValue,\n\tsides: BoxControlProps[ 'sides' ] = ALL_SIDES\n) {\n\tconst allValue = getAllValue( values, selectedUnits, sides );\n\tconst isMixed = isNaN( parseFloat( allValue ) );\n\n\treturn isMixed;\n}\n\n/**\n * Checks to determine if values are defined.\n *\n * @param values Box values.\n *\n * @return Whether values are mixed.\n */\nexport function isValuesDefined( values?: BoxControlValue ) {\n\treturn (\n\t\tvalues !== undefined &&\n\t\tObject.values( values ).filter(\n\t\t\t// Switching units when input is empty causes values only\n\t\t\t// containing units. This gives false positive on mixed values\n\t\t\t// unless filtered.\n\t\t\t( value ) => !! value && /\\d/.test( value )\n\t\t).length > 0\n\t);\n}\n\n/**\n * Get initial selected side, factoring in whether the sides are linked,\n * and whether the vertical / horizontal directions are grouped via splitOnAxis.\n *\n * @param isLinked Whether the box control's fields are linked.\n * @param splitOnAxis Whether splitting by horizontal or vertical axis.\n * @return The initial side.\n */\nexport function getInitialSide( isLinked: boolean, splitOnAxis: boolean ) {\n\tlet initialSide: keyof typeof LABELS = 'all';\n\n\tif ( ! isLinked ) {\n\t\tinitialSide = splitOnAxis ? 'vertical' : 'top';\n\t}\n\n\treturn initialSide;\n}\n\n/**\n * Normalizes provided sides configuration to an array containing only top,\n * right, bottom and left. This essentially just maps `horizontal` or `vertical`\n * to their appropriate sides to facilitate correctly determining value for\n * all input control.\n *\n * @param sides Available sides for box control.\n * @return Normalized sides configuration.\n */\nexport function normalizeSides( sides: BoxControlProps[ 'sides' ] ) {\n\tconst filteredSides: ( keyof BoxControlValue )[] = [];\n\n\tif ( ! sides?.length ) {\n\t\treturn ALL_SIDES;\n\t}\n\n\tif ( sides.includes( 'vertical' ) ) {\n\t\tfilteredSides.push( ...( [ 'top', 'bottom' ] as const ) );\n\t} else if ( sides.includes( 'horizontal' ) ) {\n\t\tfilteredSides.push( ...( [ 'left', 'right' ] as const ) );\n\t} else {\n\t\tconst newSides = ALL_SIDES.filter( ( side ) => sides.includes( side ) );\n\t\tfilteredSides.push( ...newSides );\n\t}\n\n\treturn filteredSides;\n}\n\n/**\n * Applies a value to an object representing top, right, bottom and left sides\n * while taking into account any custom side configuration.\n *\n * @param currentValues The current values for each side.\n * @param newValue The value to apply to the sides object.\n * @param sides Array defining valid sides.\n *\n * @return Object containing the updated values for each side.\n */\nexport function applyValueToSides(\n\tcurrentValues: BoxControlValue,\n\tnewValue?: string,\n\tsides?: BoxControlProps[ 'sides' ]\n): BoxControlValue {\n\tconst newValues = { ...currentValues };\n\n\tif ( sides?.length ) {\n\t\tsides.forEach( ( side ) => {\n\t\t\tif ( side === 'vertical' ) {\n\t\t\t\tnewValues.top = newValue;\n\t\t\t\tnewValues.bottom = newValue;\n\t\t\t} else if ( side === 'horizontal' ) {\n\t\t\t\tnewValues.left = newValue;\n\t\t\t\tnewValues.right = newValue;\n\t\t\t} else {\n\t\t\t\tnewValues[ side ] = newValue;\n\t\t\t}\n\t\t} );\n\t} else {\n\t\tALL_SIDES.forEach( ( side ) => ( newValues[ side ] = newValue ) );\n\t}\n\n\treturn newValues;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","parseQuantityAndUnitFromRawValue","CUSTOM_VALUE_SETTINGS","px","max","step","vw","vh","em","rm","svw","lvw","dvw","svh","lvh","dvh","vi","svi","lvi","dvi","vb","svb","lvb","dvb","vmin","svmin","lvmin","dvmin","vmax","svmax","lvmax","dvmax","LABELS","all","top","bottom","left","right","mixed","vertical","horizontal","DEFAULT_VALUES","undefined","ALL_SIDES","mode","arr","sort","a","b","filter","v","length","pop","getAllValue","values","selectedUnits","availableSides","sides","normalizeSides","parsedQuantitiesAndUnits","map","side","allParsedQuantities","value","_value$","allParsedUnits","commonQuantity","every","commonUnit","_getAllUnitFallback","getAllUnitFallback","join","filteredUnits","Object","Boolean","isValuesMixed","allValue","isMixed","isNaN","parseFloat","isValuesDefined","test","getInitialSide","isLinked","splitOnAxis","initialSide","filteredSides","includes","push","newSides","applyValueToSides","currentValues","newValue","newValues","forEach"],"sources":["@wordpress/components/src/box-control/utils.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { parseQuantityAndUnitFromRawValue } from '../unit-control/utils';\nimport type {\n\tBoxControlProps,\n\tBoxControlValue,\n\tCustomValueUnits,\n} from './types';\n\nexport const CUSTOM_VALUE_SETTINGS: CustomValueUnits = {\n\tpx: { max: 300, step: 1 },\n\t'%': { max: 100, step: 1 },\n\tvw: { max: 100, step: 1 },\n\tvh: { max: 100, step: 1 },\n\tem: { max: 10, step: 0.1 },\n\trm: { max: 10, step: 0.1 },\n\tsvw: { max: 100, step: 1 },\n\tlvw: { max: 100, step: 1 },\n\tdvw: { max: 100, step: 1 },\n\tsvh: { max: 100, step: 1 },\n\tlvh: { max: 100, step: 1 },\n\tdvh: { max: 100, step: 1 },\n\tvi: { max: 100, step: 1 },\n\tsvi: { max: 100, step: 1 },\n\tlvi: { max: 100, step: 1 },\n\tdvi: { max: 100, step: 1 },\n\tvb: { max: 100, step: 1 },\n\tsvb: { max: 100, step: 1 },\n\tlvb: { max: 100, step: 1 },\n\tdvb: { max: 100, step: 1 },\n\tvmin: { max: 100, step: 1 },\n\tsvmin: { max: 100, step: 1 },\n\tlvmin: { max: 100, step: 1 },\n\tdvmin: { max: 100, step: 1 },\n\tvmax: { max: 100, step: 1 },\n\tsvmax: { max: 100, step: 1 },\n\tlvmax: { max: 100, step: 1 },\n\tdvmax: { max: 100, step: 1 },\n};\n\nexport const LABELS = {\n\tall: __( 'All sides' ),\n\ttop: __( 'Top side' ),\n\tbottom: __( 'Bottom side' ),\n\tleft: __( 'Left side' ),\n\tright: __( 'Right side' ),\n\tmixed: __( 'Mixed' ),\n\tvertical: __( 'Top and bottom sides' ),\n\thorizontal: __( 'Left and right sides' ),\n};\n\nexport const DEFAULT_VALUES = {\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\nexport const ALL_SIDES = [ 'top', 'right', 'bottom', 'left' ] as const;\n\n/**\n * Gets an items with the most occurrence within an array\n * https://stackoverflow.com/a/20762713\n *\n * @param arr Array of items to check.\n * @return The item with the most occurrences.\n */\nfunction mode< T >( arr: T[] ) {\n\treturn arr\n\t\t.sort(\n\t\t\t( a, b ) =>\n\t\t\t\tarr.filter( ( v ) => v === a ).length -\n\t\t\t\tarr.filter( ( v ) => v === b ).length\n\t\t)\n\t\t.pop();\n}\n\n/**\n * Gets the 'all' input value and unit from values data.\n *\n * @param values Box values.\n * @param selectedUnits Box units.\n * @param availableSides Available box sides to evaluate.\n *\n * @return A value + unit for the 'all' input.\n */\nexport function getAllValue(\n\tvalues: BoxControlValue = {},\n\tselectedUnits?: BoxControlValue,\n\tavailableSides: BoxControlProps[ 'sides' ] = ALL_SIDES\n) {\n\tconst sides = normalizeSides( availableSides );\n\tconst parsedQuantitiesAndUnits = sides.map( ( side ) =>\n\t\tparseQuantityAndUnitFromRawValue( values[ side ] )\n\t);\n\tconst allParsedQuantities = parsedQuantitiesAndUnits.map(\n\t\t( value ) => value[ 0 ] ?? ''\n\t);\n\tconst allParsedUnits = parsedQuantitiesAndUnits.map(\n\t\t( value ) => value[ 1 ]\n\t);\n\n\tconst commonQuantity = allParsedQuantities.every(\n\t\t( v ) => v === allParsedQuantities[ 0 ]\n\t)\n\t\t? allParsedQuantities[ 0 ]\n\t\t: '';\n\n\t/**\n\t * The typeof === 'number' check is important. On reset actions, the incoming value\n\t * may be null or an empty string.\n\t *\n\t * Also, the value may also be zero (0), which is considered a valid unit value.\n\t *\n\t * typeof === 'number' is more specific for these cases, rather than relying on a\n\t * simple truthy check.\n\t */\n\tlet commonUnit;\n\tif ( typeof commonQuantity === 'number' ) {\n\t\tcommonUnit = mode( allParsedUnits );\n\t} else {\n\t\t// Set meaningful unit selection if no commonQuantity and user has previously\n\t\t// selected units without assigning values while controls were unlinked.\n\t\tcommonUnit =\n\t\t\tgetAllUnitFallback( selectedUnits ) ?? mode( allParsedUnits );\n\t}\n\n\treturn [ commonQuantity, commonUnit ].join( '' );\n}\n\n/**\n * Determine the most common unit selection to use as a fallback option.\n *\n * @param selectedUnits Current unit selections for individual sides.\n * @return Most common unit selection.\n */\nexport function getAllUnitFallback( selectedUnits?: BoxControlValue ) {\n\tif ( ! selectedUnits || typeof selectedUnits !== 'object' ) {\n\t\treturn undefined;\n\t}\n\n\tconst filteredUnits = Object.values( selectedUnits ).filter( Boolean );\n\n\treturn mode( filteredUnits );\n}\n\n/**\n * Checks to determine if values are mixed.\n *\n * @param values Box values.\n * @param selectedUnits Box units.\n * @param sides Available box sides to evaluate.\n *\n * @return Whether values are mixed.\n */\nexport function isValuesMixed(\n\tvalues: BoxControlValue = {},\n\tselectedUnits?: BoxControlValue,\n\tsides: BoxControlProps[ 'sides' ] = ALL_SIDES\n) {\n\tconst allValue = getAllValue( values, selectedUnits, sides );\n\tconst isMixed = isNaN( parseFloat( allValue ) );\n\n\treturn isMixed;\n}\n\n/**\n * Checks to determine if values are defined.\n *\n * @param values Box values.\n *\n * @return Whether values are mixed.\n */\nexport function isValuesDefined( values?: BoxControlValue ) {\n\treturn (\n\t\tvalues &&\n\t\tObject.values( values ).filter(\n\t\t\t// Switching units when input is empty causes values only\n\t\t\t// containing units. This gives false positive on mixed values\n\t\t\t// unless filtered.\n\t\t\t( value ) => !! value && /\\d/.test( value )\n\t\t).length > 0\n\t);\n}\n\n/**\n * Get initial selected side, factoring in whether the sides are linked,\n * and whether the vertical / horizontal directions are grouped via splitOnAxis.\n *\n * @param isLinked Whether the box control's fields are linked.\n * @param splitOnAxis Whether splitting by horizontal or vertical axis.\n * @return The initial side.\n */\nexport function getInitialSide( isLinked: boolean, splitOnAxis: boolean ) {\n\tlet initialSide: keyof typeof LABELS = 'all';\n\n\tif ( ! isLinked ) {\n\t\tinitialSide = splitOnAxis ? 'vertical' : 'top';\n\t}\n\n\treturn initialSide;\n}\n\n/**\n * Normalizes provided sides configuration to an array containing only top,\n * right, bottom and left. This essentially just maps `horizontal` or `vertical`\n * to their appropriate sides to facilitate correctly determining value for\n * all input control.\n *\n * @param sides Available sides for box control.\n * @return Normalized sides configuration.\n */\nexport function normalizeSides( sides: BoxControlProps[ 'sides' ] ) {\n\tconst filteredSides: ( keyof BoxControlValue )[] = [];\n\n\tif ( ! sides?.length ) {\n\t\treturn ALL_SIDES;\n\t}\n\n\tif ( sides.includes( 'vertical' ) ) {\n\t\tfilteredSides.push( ...( [ 'top', 'bottom' ] as const ) );\n\t} else if ( sides.includes( 'horizontal' ) ) {\n\t\tfilteredSides.push( ...( [ 'left', 'right' ] as const ) );\n\t} else {\n\t\tconst newSides = ALL_SIDES.filter( ( side ) => sides.includes( side ) );\n\t\tfilteredSides.push( ...newSides );\n\t}\n\n\treturn filteredSides;\n}\n\n/**\n * Applies a value to an object representing top, right, bottom and left sides\n * while taking into account any custom side configuration.\n *\n * @param currentValues The current values for each side.\n * @param newValue The value to apply to the sides object.\n * @param sides Array defining valid sides.\n *\n * @return Object containing the updated values for each side.\n */\nexport function applyValueToSides(\n\tcurrentValues: BoxControlValue,\n\tnewValue?: string,\n\tsides?: BoxControlProps[ 'sides' ]\n): BoxControlValue {\n\tconst newValues = { ...currentValues };\n\n\tif ( sides?.length ) {\n\t\tsides.forEach( ( side ) => {\n\t\t\tif ( side === 'vertical' ) {\n\t\t\t\tnewValues.top = newValue;\n\t\t\t\tnewValues.bottom = newValue;\n\t\t\t} else if ( side === 'horizontal' ) {\n\t\t\t\tnewValues.left = newValue;\n\t\t\t\tnewValues.right = newValue;\n\t\t\t} else {\n\t\t\t\tnewValues[ side ] = newValue;\n\t\t\t}\n\t\t} );\n\t} else {\n\t\tALL_SIDES.forEach( ( side ) => ( newValues[ side ] = newValue ) );\n\t}\n\n\treturn newValues;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,12 +2,11 @@
2
2
  * External dependencies
3
3
  */
4
4
  import clsx from 'clsx';
5
- import { useStoreState } from '@ariakit/react';
6
5
  /**
7
6
  * WordPress dependencies
8
7
  */
9
8
  import { useInstanceId } from '@wordpress/compose';
10
- import { forwardRef, useContext } from '@wordpress/element';
9
+ import { forwardRef, useContext, useEffect } from '@wordpress/element';
11
10
  import { Icon, check } from '@wordpress/icons';
12
11
 
13
12
  /**
@@ -35,13 +34,20 @@ function UnforwardedOptionAsOption(props, forwardedRef) {
35
34
  const {
36
35
  id,
37
36
  isSelected,
38
- compositeStore,
39
37
  ...additionalProps
40
38
  } = props;
41
- const activeId = useStoreState(compositeStore, 'activeId');
42
- if (isSelected && !activeId) {
43
- compositeStore.setActiveId(id);
44
- }
39
+ const {
40
+ setActiveId,
41
+ activeId
42
+ } = useContext(CircularOptionPickerContext);
43
+ useEffect(() => {
44
+ if (isSelected && !activeId) {
45
+ // The setTimeout call is necessary to make sure that this update
46
+ // doesn't get overridden by `Composite`'s internal logic, which picks
47
+ // an initial active item if one is not specifically set.
48
+ window.setTimeout(() => setActiveId?.(id), 0);
49
+ }
50
+ }, [isSelected, setActiveId, activeId, id]);
45
51
  return /*#__PURE__*/_jsx(Composite.Item, {
46
52
  render: /*#__PURE__*/_jsx(Button, {
47
53
  ...additionalProps,
@@ -62,7 +68,7 @@ export function Option({
62
68
  }) {
63
69
  const {
64
70
  baseId,
65
- compositeStore
71
+ setActiveId
66
72
  } = useContext(CircularOptionPickerContext);
67
73
  const id = useInstanceId(Option, baseId || 'components-circular-option-picker__option');
68
74
  const commonProps = {
@@ -70,9 +76,9 @@ export function Option({
70
76
  className: 'components-circular-option-picker__option',
71
77
  ...additionalProps
72
78
  };
73
- const optionControl = compositeStore ? /*#__PURE__*/_jsx(OptionAsOption, {
79
+ const isListbox = setActiveId !== undefined;
80
+ const optionControl = isListbox ? /*#__PURE__*/_jsx(OptionAsOption, {
74
81
  ...commonProps,
75
- compositeStore: compositeStore,
76
82
  isSelected: isSelected
77
83
  }) : /*#__PURE__*/_jsx(OptionAsButton, {
78
84
  ...commonProps,
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useStoreState","useInstanceId","forwardRef","useContext","Icon","check","CircularOptionPickerContext","Button","Composite","Tooltip","jsx","_jsx","jsxs","_jsxs","UnforwardedOptionAsButton","props","forwardedRef","isPressed","additionalProps","ref","OptionAsButton","UnforwardedOptionAsOption","id","isSelected","compositeStore","activeId","setActiveId","Item","render","role","OptionAsOption","Option","className","selectedIconProps","tooltipText","baseId","commonProps","optionControl","children","text","icon"],"sources":["@wordpress/components/src/circular-option-picker/circular-option-picker-option.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport { useStoreState } from '@ariakit/react';\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useContext } from '@wordpress/element';\nimport { Icon, check } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { CircularOptionPickerContext } from './circular-option-picker-context';\nimport Button from '../button';\nimport { Composite } from '../composite';\nimport Tooltip from '../tooltip';\nimport type { OptionProps } from './types';\n\nfunction UnforwardedOptionAsButton(\n\tprops: {\n\t\tid?: string;\n\t\tclassName?: string;\n\t\tisPressed?: boolean;\n\t},\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { isPressed, ...additionalProps } = props;\n\treturn (\n\t\t<Button\n\t\t\t{ ...additionalProps }\n\t\t\taria-pressed={ isPressed }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n}\n\nconst OptionAsButton = forwardRef( UnforwardedOptionAsButton );\n\nfunction UnforwardedOptionAsOption(\n\tprops: {\n\t\tid: string;\n\t\tclassName?: string;\n\t\tisSelected?: boolean;\n\t\tcompositeStore: NonNullable<\n\t\t\tReact.ComponentProps< typeof Composite >[ 'store' ]\n\t\t>;\n\t},\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { id, isSelected, compositeStore, ...additionalProps } = props;\n\tconst activeId = useStoreState( compositeStore, 'activeId' );\n\n\tif ( isSelected && ! activeId ) {\n\t\tcompositeStore.setActiveId( id );\n\t}\n\n\treturn (\n\t\t<Composite.Item\n\t\t\trender={\n\t\t\t\t<Button\n\t\t\t\t\t{ ...additionalProps }\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\taria-selected={ !! isSelected }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t/>\n\t\t\t}\n\t\t\tid={ id }\n\t\t/>\n\t);\n}\n\nconst OptionAsOption = forwardRef( UnforwardedOptionAsOption );\n\nexport function Option( {\n\tclassName,\n\tisSelected,\n\tselectedIconProps = {},\n\ttooltipText,\n\t...additionalProps\n}: OptionProps ) {\n\tconst { baseId, compositeStore } = useContext(\n\t\tCircularOptionPickerContext\n\t);\n\tconst id = useInstanceId(\n\t\tOption,\n\t\tbaseId || 'components-circular-option-picker__option'\n\t);\n\n\tconst commonProps = {\n\t\tid,\n\t\tclassName: 'components-circular-option-picker__option',\n\t\t...additionalProps,\n\t};\n\n\tconst optionControl = compositeStore ? (\n\t\t<OptionAsOption\n\t\t\t{ ...commonProps }\n\t\t\tcompositeStore={ compositeStore }\n\t\t\tisSelected={ isSelected }\n\t\t/>\n\t) : (\n\t\t<OptionAsButton { ...commonProps } isPressed={ isSelected } />\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\tclassName,\n\t\t\t\t'components-circular-option-picker__option-wrapper'\n\t\t\t) }\n\t\t>\n\t\t\t{ tooltipText ? (\n\t\t\t\t<Tooltip text={ tooltipText }>{ optionControl }</Tooltip>\n\t\t\t) : (\n\t\t\t\toptionControl\n\t\t\t) }\n\t\t\t{ isSelected && <Icon icon={ check } { ...selectedIconProps } /> }\n\t\t</div>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,gBAAgB;AAG9C;AACA;AACA;AACA,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,UAAU,EAAEC,UAAU,QAAQ,oBAAoB;AAC3D,SAASC,IAAI,EAAEC,KAAK,QAAQ,kBAAkB;;AAE9C;AACA;AACA;AACA,SAASC,2BAA2B,QAAQ,kCAAkC;AAC9E,OAAOC,MAAM,MAAM,WAAW;AAC9B,SAASC,SAAS,QAAQ,cAAc;AACxC,OAAOC,OAAO,MAAM,YAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAGjC,SAASC,yBAAyBA,CACjCC,KAIC,EACDC,YAAiC,EAChC;EACD,MAAM;IAAEC,SAAS;IAAE,GAAGC;EAAgB,CAAC,GAAGH,KAAK;EAC/C,oBACCJ,IAAA,CAACJ,MAAM;IAAA,GACDW,eAAe;IACpB,gBAAeD,SAAW;IAC1BE,GAAG,EAAGH;EAAc,CACpB,CAAC;AAEJ;AAEA,MAAMI,cAAc,GAAGlB,UAAU,CAAEY,yBAA0B,CAAC;AAE9D,SAASO,yBAAyBA,CACjCN,KAOC,EACDC,YAAiC,EAChC;EACD,MAAM;IAAEM,EAAE;IAAEC,UAAU;IAAEC,cAAc;IAAE,GAAGN;EAAgB,CAAC,GAAGH,KAAK;EACpE,MAAMU,QAAQ,GAAGzB,aAAa,CAAEwB,cAAc,EAAE,UAAW,CAAC;EAE5D,IAAKD,UAAU,IAAI,CAAEE,QAAQ,EAAG;IAC/BD,cAAc,CAACE,WAAW,CAAEJ,EAAG,CAAC;EACjC;EAEA,oBACCX,IAAA,CAACH,SAAS,CAACmB,IAAI;IACdC,MAAM,eACLjB,IAAA,CAACJ,MAAM;MAAA,GACDW,eAAe;MACpBW,IAAI,EAAC,QAAQ;MACb,iBAAgB,CAAC,CAAEN,UAAY;MAC/BJ,GAAG,EAAGH;IAAc,CACpB,CACD;IACDM,EAAE,EAAGA;EAAI,CACT,CAAC;AAEJ;AAEA,MAAMQ,cAAc,GAAG5B,UAAU,CAAEmB,yBAA0B,CAAC;AAE9D,OAAO,SAASU,MAAMA,CAAE;EACvBC,SAAS;EACTT,UAAU;EACVU,iBAAiB,GAAG,CAAC,CAAC;EACtBC,WAAW;EACX,GAAGhB;AACS,CAAC,EAAG;EAChB,MAAM;IAAEiB,MAAM;IAAEX;EAAe,CAAC,GAAGrB,UAAU,CAC5CG,2BACD,CAAC;EACD,MAAMgB,EAAE,GAAGrB,aAAa,CACvB8B,MAAM,EACNI,MAAM,IAAI,2CACX,CAAC;EAED,MAAMC,WAAW,GAAG;IACnBd,EAAE;IACFU,SAAS,EAAE,2CAA2C;IACtD,GAAGd;EACJ,CAAC;EAED,MAAMmB,aAAa,GAAGb,cAAc,gBACnCb,IAAA,CAACmB,cAAc;IAAA,GACTM,WAAW;IAChBZ,cAAc,EAAGA,cAAgB;IACjCD,UAAU,EAAGA;EAAY,CACzB,CAAC,gBAEFZ,IAAA,CAACS,cAAc;IAAA,GAAMgB,WAAW;IAAGnB,SAAS,EAAGM;EAAY,CAAE,CAC7D;EAED,oBACCV,KAAA;IACCmB,SAAS,EAAGjC,IAAI,CACfiC,SAAS,EACT,mDACD,CAAG;IAAAM,QAAA,GAEDJ,WAAW,gBACZvB,IAAA,CAACF,OAAO;MAAC8B,IAAI,EAAGL,WAAa;MAAAI,QAAA,EAAGD;IAAa,CAAW,CAAC,GAEzDA,aACA,EACCd,UAAU,iBAAIZ,IAAA,CAACP,IAAI;MAACoC,IAAI,EAAGnC,KAAO;MAAA,GAAM4B;IAAiB,CAAI,CAAC;EAAA,CAC5D,CAAC;AAER","ignoreList":[]}
1
+ {"version":3,"names":["clsx","useInstanceId","forwardRef","useContext","useEffect","Icon","check","CircularOptionPickerContext","Button","Composite","Tooltip","jsx","_jsx","jsxs","_jsxs","UnforwardedOptionAsButton","props","forwardedRef","isPressed","additionalProps","ref","OptionAsButton","UnforwardedOptionAsOption","id","isSelected","setActiveId","activeId","window","setTimeout","Item","render","role","OptionAsOption","Option","className","selectedIconProps","tooltipText","baseId","commonProps","isListbox","undefined","optionControl","children","text","icon"],"sources":["@wordpress/components/src/circular-option-picker/circular-option-picker-option.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef, useContext, useEffect } from '@wordpress/element';\nimport { Icon, check } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { CircularOptionPickerContext } from './circular-option-picker-context';\nimport Button from '../button';\nimport { Composite } from '../composite';\nimport Tooltip from '../tooltip';\nimport type { OptionProps } from './types';\n\nfunction UnforwardedOptionAsButton(\n\tprops: {\n\t\tid?: string;\n\t\tclassName?: string;\n\t\tisPressed?: boolean;\n\t},\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { isPressed, ...additionalProps } = props;\n\treturn (\n\t\t<Button\n\t\t\t{ ...additionalProps }\n\t\t\taria-pressed={ isPressed }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n}\n\nconst OptionAsButton = forwardRef( UnforwardedOptionAsButton );\n\nfunction UnforwardedOptionAsOption(\n\tprops: {\n\t\tid: string;\n\t\tclassName?: string;\n\t\tisSelected?: boolean;\n\t},\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { id, isSelected, ...additionalProps } = props;\n\n\tconst { setActiveId, activeId } = useContext( CircularOptionPickerContext );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && ! activeId ) {\n\t\t\t// The setTimeout call is necessary to make sure that this update\n\t\t\t// doesn't get overridden by `Composite`'s internal logic, which picks\n\t\t\t// an initial active item if one is not specifically set.\n\t\t\twindow.setTimeout( () => setActiveId?.( id ), 0 );\n\t\t}\n\t}, [ isSelected, setActiveId, activeId, id ] );\n\n\treturn (\n\t\t<Composite.Item\n\t\t\trender={\n\t\t\t\t<Button\n\t\t\t\t\t{ ...additionalProps }\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\taria-selected={ !! isSelected }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t/>\n\t\t\t}\n\t\t\tid={ id }\n\t\t/>\n\t);\n}\n\nconst OptionAsOption = forwardRef( UnforwardedOptionAsOption );\n\nexport function Option( {\n\tclassName,\n\tisSelected,\n\tselectedIconProps = {},\n\ttooltipText,\n\t...additionalProps\n}: OptionProps ) {\n\tconst { baseId, setActiveId } = useContext( CircularOptionPickerContext );\n\tconst id = useInstanceId(\n\t\tOption,\n\t\tbaseId || 'components-circular-option-picker__option'\n\t);\n\n\tconst commonProps = {\n\t\tid,\n\t\tclassName: 'components-circular-option-picker__option',\n\t\t...additionalProps,\n\t};\n\n\tconst isListbox = setActiveId !== undefined;\n\tconst optionControl = isListbox ? (\n\t\t<OptionAsOption { ...commonProps } isSelected={ isSelected } />\n\t) : (\n\t\t<OptionAsButton { ...commonProps } isPressed={ isSelected } />\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\tclassName,\n\t\t\t\t'components-circular-option-picker__option-wrapper'\n\t\t\t) }\n\t\t>\n\t\t\t{ tooltipText ? (\n\t\t\t\t<Tooltip text={ tooltipText }>{ optionControl }</Tooltip>\n\t\t\t) : (\n\t\t\t\toptionControl\n\t\t\t) }\n\t\t\t{ isSelected && <Icon icon={ check } { ...selectedIconProps } /> }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}