@wordpress/components 25.13.0 → 25.14.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 (224) hide show
  1. package/CHANGELOG.md +38 -1
  2. package/build/border-control/border-control-dropdown/component.js +4 -2
  3. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  4. package/build/border-control/border-control-dropdown/hook.js +3 -2
  5. package/build/border-control/border-control-dropdown/hook.js.map +1 -1
  6. package/build/border-control/styles.js +17 -17
  7. package/build/border-control/styles.js.map +1 -1
  8. package/build/checkbox-control/index.js +1 -1
  9. package/build/checkbox-control/index.js.map +1 -1
  10. package/build/checkbox-control/types.js.map +1 -1
  11. package/build/date-time/time/timezone.js +11 -2
  12. package/build/date-time/time/timezone.js.map +1 -1
  13. package/build/dimension-control/index.js +2 -0
  14. package/build/dimension-control/index.js.map +1 -1
  15. package/build/dimension-control/types.js.map +1 -1
  16. package/build/dropdown-menu-v2-ariakit/styles.js +14 -14
  17. package/build/dropdown-menu-v2-ariakit/styles.js.map +1 -1
  18. package/build/focal-point-picker/controls.js +5 -1
  19. package/build/focal-point-picker/controls.js.map +1 -1
  20. package/build/focal-point-picker/index.js +2 -0
  21. package/build/focal-point-picker/index.js.map +1 -1
  22. package/build/focal-point-picker/styles/focal-point-picker-style.js +15 -15
  23. package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  24. package/build/focal-point-picker/types.js.map +1 -1
  25. package/build/font-size-picker/font-size-picker-select.js +2 -0
  26. package/build/font-size-picker/font-size-picker-select.js.map +1 -1
  27. package/build/font-size-picker/font-size-picker-toggle-group.js +2 -0
  28. package/build/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  29. package/build/font-size-picker/index.js +6 -1
  30. package/build/font-size-picker/index.js.map +1 -1
  31. package/build/font-size-picker/types.js.map +1 -1
  32. package/build/index.native.js +0 -16
  33. package/build/index.native.js.map +1 -1
  34. package/build/mobile/global-styles-context/utils.native.js +13 -0
  35. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  36. package/build/palette-edit/index.js +21 -1
  37. package/build/palette-edit/index.js.map +1 -1
  38. package/build/query-controls/author-select.js +3 -1
  39. package/build/query-controls/author-select.js.map +1 -1
  40. package/build/query-controls/category-select.js +3 -1
  41. package/build/query-controls/category-select.js.map +1 -1
  42. package/build/query-controls/index.js +6 -1
  43. package/build/query-controls/index.js.map +1 -1
  44. package/build/query-controls/types.js.map +1 -1
  45. package/build/tabs/index.js +18 -1
  46. package/build/tabs/index.js.map +1 -1
  47. package/build/tabs/tab.js +2 -2
  48. package/build/tabs/tab.js.map +1 -1
  49. package/build/tabs/tabpanel.js +3 -2
  50. package/build/tabs/tabpanel.js.map +1 -1
  51. package/build/tabs/types.js.map +1 -1
  52. package/build/toggle-group-control/toggle-group-control/utils.js +17 -17
  53. package/build/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  54. package/build/tools-panel/tools-panel-item/hook.js +11 -11
  55. package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
  56. package/build-module/border-control/border-control-dropdown/component.js +4 -2
  57. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  58. package/build-module/border-control/border-control-dropdown/hook.js +3 -2
  59. package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
  60. package/build-module/border-control/styles.js +17 -17
  61. package/build-module/border-control/styles.js.map +1 -1
  62. package/build-module/checkbox-control/index.js +1 -1
  63. package/build-module/checkbox-control/index.js.map +1 -1
  64. package/build-module/checkbox-control/types.js.map +1 -1
  65. package/build-module/date-time/time/timezone.js +11 -2
  66. package/build-module/date-time/time/timezone.js.map +1 -1
  67. package/build-module/dimension-control/index.js +2 -0
  68. package/build-module/dimension-control/index.js.map +1 -1
  69. package/build-module/dimension-control/types.js.map +1 -1
  70. package/build-module/dropdown-menu-v2-ariakit/styles.js +14 -14
  71. package/build-module/dropdown-menu-v2-ariakit/styles.js.map +1 -1
  72. package/build-module/focal-point-picker/controls.js +5 -1
  73. package/build-module/focal-point-picker/controls.js.map +1 -1
  74. package/build-module/focal-point-picker/index.js +2 -0
  75. package/build-module/focal-point-picker/index.js.map +1 -1
  76. package/build-module/focal-point-picker/styles/focal-point-picker-style.js +15 -15
  77. package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
  78. package/build-module/focal-point-picker/types.js.map +1 -1
  79. package/build-module/font-size-picker/font-size-picker-select.js +2 -0
  80. package/build-module/font-size-picker/font-size-picker-select.js.map +1 -1
  81. package/build-module/font-size-picker/font-size-picker-toggle-group.js +2 -0
  82. package/build-module/font-size-picker/font-size-picker-toggle-group.js.map +1 -1
  83. package/build-module/font-size-picker/index.js +6 -1
  84. package/build-module/font-size-picker/index.js.map +1 -1
  85. package/build-module/font-size-picker/types.js.map +1 -1
  86. package/build-module/index.native.js +0 -2
  87. package/build-module/index.native.js.map +1 -1
  88. package/build-module/mobile/global-styles-context/utils.native.js +13 -0
  89. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  90. package/build-module/palette-edit/index.js +20 -3
  91. package/build-module/palette-edit/index.js.map +1 -1
  92. package/build-module/query-controls/author-select.js +3 -1
  93. package/build-module/query-controls/author-select.js.map +1 -1
  94. package/build-module/query-controls/category-select.js +3 -1
  95. package/build-module/query-controls/category-select.js.map +1 -1
  96. package/build-module/query-controls/index.js +6 -1
  97. package/build-module/query-controls/index.js.map +1 -1
  98. package/build-module/query-controls/types.js.map +1 -1
  99. package/build-module/tabs/index.js +18 -1
  100. package/build-module/tabs/index.js.map +1 -1
  101. package/build-module/tabs/tab.js +2 -2
  102. package/build-module/tabs/tab.js.map +1 -1
  103. package/build-module/tabs/tabpanel.js +3 -2
  104. package/build-module/tabs/tabpanel.js.map +1 -1
  105. package/build-module/tabs/types.js.map +1 -1
  106. package/build-module/toggle-group-control/toggle-group-control/utils.js +17 -17
  107. package/build-module/toggle-group-control/toggle-group-control/utils.js.map +1 -1
  108. package/build-module/tools-panel/tools-panel-item/hook.js +11 -11
  109. package/build-module/tools-panel/tools-panel-item/hook.js.map +1 -1
  110. package/build-style/style-rtl.css +1 -1
  111. package/build-style/style.css +1 -1
  112. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  113. package/build-types/border-control/border-control-dropdown/hook.d.ts +1 -0
  114. package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
  115. package/build-types/border-control/styles.d.ts +1 -1
  116. package/build-types/border-control/styles.d.ts.map +1 -1
  117. package/build-types/checkbox-control/index.d.ts.map +1 -1
  118. package/build-types/checkbox-control/types.d.ts +3 -2
  119. package/build-types/checkbox-control/types.d.ts.map +1 -1
  120. package/build-types/date-time/time/timezone.d.ts.map +1 -1
  121. package/build-types/dimension-control/index.d.ts.map +1 -1
  122. package/build-types/dimension-control/types.d.ts +6 -0
  123. package/build-types/dimension-control/types.d.ts.map +1 -1
  124. package/build-types/dropdown-menu-v2-ariakit/styles.d.ts.map +1 -1
  125. package/build-types/focal-point-picker/controls.d.ts +1 -1
  126. package/build-types/focal-point-picker/controls.d.ts.map +1 -1
  127. package/build-types/focal-point-picker/index.d.ts +1 -1
  128. package/build-types/focal-point-picker/index.d.ts.map +1 -1
  129. package/build-types/focal-point-picker/stories/index.story.d.ts +8 -4
  130. package/build-types/focal-point-picker/stories/index.story.d.ts.map +1 -1
  131. package/build-types/focal-point-picker/types.d.ts +7 -0
  132. package/build-types/focal-point-picker/types.d.ts.map +1 -1
  133. package/build-types/font-size-picker/font-size-picker-select.d.ts.map +1 -1
  134. package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
  135. package/build-types/font-size-picker/index.d.ts.map +1 -1
  136. package/build-types/font-size-picker/types.d.ts +8 -1
  137. package/build-types/font-size-picker/types.d.ts.map +1 -1
  138. package/build-types/palette-edit/index.d.ts +6 -1
  139. package/build-types/palette-edit/index.d.ts.map +1 -1
  140. package/build-types/query-controls/author-select.d.ts +1 -1
  141. package/build-types/query-controls/author-select.d.ts.map +1 -1
  142. package/build-types/query-controls/category-select.d.ts +1 -1
  143. package/build-types/query-controls/category-select.d.ts.map +1 -1
  144. package/build-types/query-controls/index.d.ts +1 -1
  145. package/build-types/query-controls/index.d.ts.map +1 -1
  146. package/build-types/query-controls/types.d.ts +9 -0
  147. package/build-types/query-controls/types.d.ts.map +1 -1
  148. package/build-types/tabs/index.d.ts +2 -2
  149. package/build-types/tabs/index.d.ts.map +1 -1
  150. package/build-types/tabs/tab.d.ts +2 -1
  151. package/build-types/tabs/tab.d.ts.map +1 -1
  152. package/build-types/tabs/tabpanel.d.ts +2 -1
  153. package/build-types/tabs/tabpanel.d.ts.map +1 -1
  154. package/build-types/tabs/types.d.ts +8 -3
  155. package/build-types/tabs/types.d.ts.map +1 -1
  156. package/build-types/toggle-group-control/toggle-group-control/utils.d.ts.map +1 -1
  157. package/build-types/tools-panel/tools-panel-item/hook.d.ts.map +1 -1
  158. package/package.json +19 -19
  159. package/src/border-control/border-control-dropdown/component.tsx +3 -1
  160. package/src/border-control/border-control-dropdown/hook.ts +3 -2
  161. package/src/border-control/styles.ts +2 -9
  162. package/src/checkbox-control/README.md +2 -1
  163. package/src/checkbox-control/index.tsx +8 -6
  164. package/src/checkbox-control/test/__snapshots__/index.tsx.snap +3 -8
  165. package/src/checkbox-control/test/index.tsx +7 -0
  166. package/src/checkbox-control/types.ts +3 -2
  167. package/src/custom-select-control/test/index.js +367 -35
  168. package/src/date-time/time/timezone.tsx +15 -3
  169. package/src/dimension-control/index.tsx +2 -0
  170. package/src/dimension-control/test/__snapshots__/index.test.js.snap +2 -2
  171. package/src/dimension-control/types.ts +6 -0
  172. package/src/dropdown-menu-v2-ariakit/styles.ts +12 -0
  173. package/src/focal-point-picker/controls.tsx +4 -0
  174. package/src/focal-point-picker/index.tsx +2 -0
  175. package/src/focal-point-picker/styles/focal-point-picker-style.ts +1 -1
  176. package/src/focal-point-picker/types.ts +7 -0
  177. package/src/font-size-picker/font-size-picker-select.tsx +2 -0
  178. package/src/font-size-picker/font-size-picker-toggle-group.tsx +9 -1
  179. package/src/font-size-picker/index.tsx +11 -3
  180. package/src/font-size-picker/types.ts +8 -1
  181. package/src/form-toggle/style.scss +4 -2
  182. package/src/index.native.js +0 -2
  183. package/src/mobile/global-styles-context/test/utils.native.js +22 -0
  184. package/src/mobile/global-styles-context/utils.native.js +14 -0
  185. package/src/mobile/link-settings/style.native.scss +0 -17
  186. package/src/palette-edit/index.tsx +22 -8
  187. package/src/palette-edit/style.scss +2 -2
  188. package/src/palette-edit/test/index.tsx +75 -1
  189. package/src/query-controls/author-select.tsx +2 -0
  190. package/src/query-controls/category-select.tsx +2 -0
  191. package/src/query-controls/index.tsx +6 -1
  192. package/src/query-controls/types.ts +9 -0
  193. package/src/search-control/README.md +2 -0
  194. package/src/spinner/README.md +2 -0
  195. package/src/tabs/README.md +4 -4
  196. package/src/tabs/index.tsx +22 -1
  197. package/src/tabs/stories/index.story.tsx +48 -48
  198. package/src/tabs/tab.tsx +3 -3
  199. package/src/tabs/tabpanel.tsx +7 -3
  200. package/src/tabs/test/index.tsx +180 -106
  201. package/src/tabs/types.ts +8 -3
  202. package/src/toggle-group-control/test/index.tsx +54 -1
  203. package/src/toggle-group-control/toggle-group-control/utils.ts +15 -20
  204. package/src/tools-panel/tools-panel-item/hook.ts +10 -21
  205. package/tsconfig.tsbuildinfo +1 -1
  206. package/build/mobile/inserter-button/index.native.js +0 -98
  207. package/build/mobile/inserter-button/index.native.js.map +0 -1
  208. package/build/mobile/inserter-button/sparkles.js +0 -23
  209. package/build/mobile/inserter-button/sparkles.js.map +0 -1
  210. package/build/mobile/link-settings/image-link-destinations-screen.native.js +0 -119
  211. package/build/mobile/link-settings/image-link-destinations-screen.native.js.map +0 -1
  212. package/build-module/mobile/inserter-button/index.native.js +0 -89
  213. package/build-module/mobile/inserter-button/index.native.js.map +0 -1
  214. package/build-module/mobile/inserter-button/sparkles.js +0 -15
  215. package/build-module/mobile/inserter-button/sparkles.js.map +0 -1
  216. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js +0 -110
  217. package/build-module/mobile/link-settings/image-link-destinations-screen.native.js.map +0 -1
  218. package/build-types/mobile/inserter-button/sparkles.d.ts +0 -3
  219. package/build-types/mobile/inserter-button/sparkles.d.ts.map +0 -1
  220. package/src/mobile/inserter-button/README.md +0 -62
  221. package/src/mobile/inserter-button/index.native.js +0 -116
  222. package/src/mobile/inserter-button/sparkles.js +0 -15
  223. package/src/mobile/inserter-button/style.native.scss +0 -72
  224. package/src/mobile/link-settings/image-link-destinations-screen.native.js +0 -152
package/CHANGELOG.md CHANGED
@@ -2,15 +2,52 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 25.14.0 (2023-12-13)
6
+
7
+ ### Enhancements
8
+
9
+ - `FormToggle`: fix sass deprecation warning ([#56672](https://github.com/WordPress/gutenberg/pull/56672)).
10
+ - `QueryControls`: Add opt-in prop for 40px default size ([#56576](https://github.com/WordPress/gutenberg/pull/56576)).
11
+ - `CheckboxControl`: Add option to not render label ([#56158](https://github.com/WordPress/gutenberg/pull/56158)).
12
+ - `PaletteEdit`: Gradient pickers to use same width as color pickers ([#56801](https://github.com/WordPress/gutenberg/pull/56801)).
13
+ - `FocalPointPicker`: Add opt-in prop for 40px default size ([#56021](https://github.com/WordPress/gutenberg/pull/56021)).
14
+ - `DimensionControl`: Add opt-in prop for 40px default size ([#56805](https://github.com/WordPress/gutenberg/pull/56805)).
15
+ - `FontSizePicker`: Add opt-in prop for 40px default size ([#56804](https://github.com/WordPress/gutenberg/pull/56804)).
16
+
17
+ ### Bug Fix
18
+ - `PaletteEdit`: temporary custom gradient not saving ([#56896](https://github.com/WordPress/gutenberg/pull/56896)).
19
+ - `ToggleGroupControl`: react correctly to external controlled updates ([#56678](https://github.com/WordPress/gutenberg/pull/56678)).
20
+ - `ToolsPanel`: fix a performance issue ([#56770](https://github.com/WordPress/gutenberg/pull/56770)).
21
+ - `BorderControl`: adjust `BorderControlDropdown` Button size to fix misaligned border ([#56730](https://github.com/WordPress/gutenberg/pull/56730)).
22
+
23
+ ### Internal
24
+
25
+ - `DropdownMenuV2Ariakit`: prevent prefix collapsing if all radios or checkboxes are unselected ([#56720](https://github.com/WordPress/gutenberg/pull/56720)).
26
+
27
+ ### Experimental
28
+
29
+ - `Tabs`: implement new `tabId` prop ([#56883](https://github.com/WordPress/gutenberg/pull/56883)).
30
+
31
+ ### Experimental
32
+
33
+ - `Tabs`: improve focus handling in controlled mode ([#56658](https://github.com/WordPress/gutenberg/pull/56658)).
34
+
35
+ ### Documentation
36
+
37
+ - `Search`: Added links to storybook for more information on usage. ([#56815](https://github.com/WordPress/gutenberg/pull/56815)).
38
+ - `Spinner`: Added links to storybook for more information on usage. ([#56953](https://github.com/WordPress/gutenberg/pull/56953)).
39
+
5
40
  ## 25.13.0 (2023-11-29)
6
41
 
7
42
  ### Enhancements
8
43
 
9
44
  - `FormToggle`: refine animation and improve high contrast styles ([#56515](https://github.com/WordPress/gutenberg/pull/56515)).
10
45
  - `Button`: Add focus rings to focusable disabled buttons ([#56383](https://github.com/WordPress/gutenberg/pull/56383)).
46
+ - `InserterButton`: Move mobile InserterButton from components package to block-editor package ([#56494](https://github.com/WordPress/gutenberg/pull/56494))
11
47
 
12
48
  ### Bug Fix
13
49
 
50
+ - `DateTime`: Make the Timezone indication render a tooltip only when necessary. ([#56214](https://github.com/WordPress/gutenberg/pull/56214)).
14
51
  - `ToolsPanelItem`: Use useLayoutEffect to prevent rendering glitch for last panel item styling. ([#56536](https://github.com/WordPress/gutenberg/pull/56536)).
15
52
  - `FormTokenField`: Fix broken suggestions scrollbar when the `__experimentalExpandOnFocus` prop is defined ([#56426](https://github.com/WordPress/gutenberg/pull/56426)).
16
53
  - `FormTokenField`: `onFocus` prop is now typed as a React `FocusEvent` ([#56426](https://github.com/WordPress/gutenberg/pull/56426)).
@@ -22,7 +59,7 @@
22
59
 
23
60
  ### Documentation
24
61
 
25
- - `Text` and `Heading`: improve docs around default values and truncation logic ([#56518](https://github.com/WordPress/gutenberg/pull/56518))
62
+ - `Text` and `Heading`: improve docs around default values and truncation logic ([#56518](https://github.com/WordPress/gutenberg/pull/56518))
26
63
 
27
64
  ### Internal
28
65
 
@@ -105,6 +105,7 @@ const BorderControlDropdown = (props, forwardedRef) => {
105
105
  popoverControlsClassName,
106
106
  resetButtonClassName,
107
107
  showDropdownHeader,
108
+ size,
108
109
  __unstablePopoverProps,
109
110
  ...otherProps
110
111
  } = (0, _hook.useBorderControlDropdown)(props);
@@ -124,7 +125,8 @@ const BorderControlDropdown = (props, forwardedRef) => {
124
125
  "aria-label": toggleAriaLabel,
125
126
  tooltipPosition: dropdownPosition,
126
127
  label: (0, _i18n.__)('Border color and style picker'),
127
- showTooltip: true
128
+ showTooltip: true,
129
+ __next40pxDefaultSize: size === '__unstable-large' ? true : false
128
130
  }, (0, _react.createElement)("span", {
129
131
  className: indicatorWrapperClassName
130
132
  }, (0, _react.createElement)(_colorIndicator.default, {
@@ -139,7 +141,7 @@ const BorderControlDropdown = (props, forwardedRef) => {
139
141
  className: popoverControlsClassName,
140
142
  spacing: 6
141
143
  }, showDropdownHeader ? (0, _react.createElement)(_hStack.HStack, null, (0, _react.createElement)(_baseControlStyles.StyledLabel, null, (0, _i18n.__)('Border color')), (0, _react.createElement)(_button.default, {
142
- isSmall: true,
144
+ size: "small",
143
145
  label: (0, _i18n.__)('Close border color'),
144
146
  icon: _icons.closeSmall,
145
147
  onClick: onClose
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_icons","_borderControlStylePicker","_interopRequireDefault","_button","_colorIndicator","_colorPalette","_dropdown","_hStack","_vStack","_context","_hook","_baseControlStyles","_dropdownContentWrapper","_utils","getAriaLabelColorValue","colorValue","replace","getColorObject","colors","isMultiplePaletteArray","matchedColor","some","origin","color","find","getToggleAriaLabel","colorObject","style","isStyleEnabled","ariaLabelValue","sprintf","name","__","BorderControlDropdown","props","forwardedRef","__experimentalIsRenderedInSidebar","border","disableCustomColors","enableAlpha","enableStyle","indicatorClassName","indicatorWrapperClassName","onReset","onColorChange","onStyleChange","popoverContentClassName","popoverControlsClassName","resetButtonClassName","showDropdownHeader","__unstablePopoverProps","otherProps","useBorderControlDropdown","toggleAriaLabel","showResetButton","dropdownPosition","undefined","renderToggle","onToggle","_react","createElement","default","onClick","variant","tooltipPosition","label","showTooltip","className","renderContent","onClose","Fragment","paddingSize","VStack","spacing","HStack","StyledLabel","isSmall","icon","closeSmall","value","onChange","clearable","popoverProps","ref","ConnectedBorderControlDropdown","contextConnect","_default","exports"],"sources":["@wordpress/components/src/border-control/border-control-dropdown/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BorderControlStylePicker from '../border-control-style-picker';\nimport Button from '../../button';\nimport ColorIndicator from '../../color-indicator';\nimport ColorPalette from '../../color-palette';\nimport Dropdown from '../../dropdown';\nimport { HStack } from '../../h-stack';\nimport { VStack } from '../../v-stack';\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { useBorderControlDropdown } from './hook';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';\n\nimport type { ColorObject } from '../../color-palette/types';\nimport { isMultiplePaletteArray } from '../../color-palette/utils';\nimport type { DropdownProps as DropdownComponentProps } from '../../dropdown/types';\nimport type { ColorProps, DropdownProps } from '../types';\n\nconst getAriaLabelColorValue = ( colorValue: string ) => {\n\t// Leave hex values as-is. Remove the `var()` wrapper from CSS vars.\n\treturn colorValue.replace( /^var\\((.+)\\)$/, '$1' );\n};\n\nconst getColorObject = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolors: ColorProps[ 'colors' ] | undefined\n) => {\n\tif ( ! colorValue || ! colors ) {\n\t\treturn;\n\t}\n\n\tif ( isMultiplePaletteArray( colors ) ) {\n\t\t// Multiple origins\n\t\tlet matchedColor;\n\n\t\tcolors.some( ( origin ) =>\n\t\t\torigin.colors.some( ( color ) => {\n\t\t\t\tif ( color.color === colorValue ) {\n\t\t\t\t\tmatchedColor = color;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t} )\n\t\t);\n\n\t\treturn matchedColor;\n\t}\n\n\t// Single origin\n\treturn colors.find( ( color ) => color.color === colorValue );\n};\n\nconst getToggleAriaLabel = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolorObject: ColorObject | undefined,\n\tstyle: CSSProperties[ 'borderStyle' ],\n\tisStyleEnabled: boolean\n) => {\n\tif ( isStyleEnabled ) {\n\t\tif ( colorObject ) {\n\t\t\tconst ariaLabelValue = getAriaLabelColorValue( colorObject.color );\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\". %3$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\". The currently selected style is \"%3$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tariaLabelValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tariaLabelValue\n\t\t\t\t );\n\t\t}\n\n\t\tif ( colorValue ) {\n\t\t\tconst ariaLabelValue = getAriaLabelColorValue( colorValue );\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\". %2$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\". The currently selected style is \"%2$s\".',\n\t\t\t\t\t\tariaLabelValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g: \"#f00\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\".',\n\t\t\t\t\t\tariaLabelValue\n\t\t\t\t );\n\t\t}\n\n\t\treturn __( 'Border color and style picker.' );\n\t}\n\n\tif ( colorObject ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g: \"#f00\".\n\t\t\t'Border color picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\tcolorObject.name,\n\t\t\tgetAriaLabelColorValue( colorObject.color )\n\t\t);\n\t}\n\n\tif ( colorValue ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The color's hex code e.g: \"#f00\".\n\t\t\t'Border color picker. The currently selected color has a value of \"%1$s\".',\n\t\t\tgetAriaLabelColorValue( colorValue )\n\t\t);\n\t}\n\n\treturn __( 'Border color picker.' );\n};\n\nconst BorderControlDropdown = (\n\tprops: WordPressComponentProps< DropdownProps, 'div' >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__experimentalIsRenderedInSidebar,\n\t\tborder,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonReset,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\tshowDropdownHeader,\n\t\t__unstablePopoverProps,\n\t\t...otherProps\n\t} = useBorderControlDropdown( props );\n\n\tconst { color, style } = border || {};\n\tconst colorObject = getColorObject( color, colors );\n\n\tconst toggleAriaLabel = getToggleAriaLabel(\n\t\tcolor,\n\t\tcolorObject,\n\t\tstyle,\n\t\tenableStyle\n\t);\n\n\tconst showResetButton = color || ( style && style !== 'none' );\n\tconst dropdownPosition = __experimentalIsRenderedInSidebar\n\t\t? 'bottom left'\n\t\t: undefined;\n\n\tconst renderToggle: DropdownComponentProps[ 'renderToggle' ] = ( {\n\t\tonToggle,\n\t} ) => (\n\t\t<Button\n\t\t\tonClick={ onToggle }\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-label={ toggleAriaLabel }\n\t\t\ttooltipPosition={ dropdownPosition }\n\t\t\tlabel={ __( 'Border color and style picker' ) }\n\t\t\tshowTooltip={ true }\n\t\t>\n\t\t\t<span className={ indicatorWrapperClassName }>\n\t\t\t\t<ColorIndicator\n\t\t\t\t\tclassName={ indicatorClassName }\n\t\t\t\t\tcolorValue={ color }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</Button>\n\t);\n\n\tconst renderContent: DropdownComponentProps[ 'renderContent' ] = ( {\n\t\tonClose,\n\t} ) => (\n\t\t<>\n\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t<VStack className={ popoverControlsClassName } spacing={ 6 }>\n\t\t\t\t\t{ showDropdownHeader ? (\n\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t<StyledLabel>{ __( 'Border color' ) }</StyledLabel>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tlabel={ __( 'Close border color' ) }\n\t\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t) : undefined }\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclassName={ popoverContentClassName }\n\t\t\t\t\t\tvalue={ color }\n\t\t\t\t\t\tonChange={ onColorChange }\n\t\t\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableStyle && (\n\t\t\t\t\t\t<BorderControlStylePicker\n\t\t\t\t\t\t\tlabel={ __( 'Style' ) }\n\t\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\t\tonChange={ onStyleChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t</DropdownContentWrapper>\n\t\t\t{ showResetButton && (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ resetButtonClassName }\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<Dropdown\n\t\t\trenderToggle={ renderToggle }\n\t\t\trenderContent={ renderContent }\n\t\t\tpopoverProps={ {\n\t\t\t\t...__unstablePopoverProps,\n\t\t\t} }\n\t\t\t{ ...otherProps }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n};\n\nconst ConnectedBorderControlDropdown = contextConnect(\n\tBorderControlDropdown,\n\t'BorderControlDropdown'\n);\n\nexport default ConnectedBorderControlDropdown;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_icons","_borderControlStylePicker","_interopRequireDefault","_button","_colorIndicator","_colorPalette","_dropdown","_hStack","_vStack","_context","_hook","_baseControlStyles","_dropdownContentWrapper","_utils","getAriaLabelColorValue","colorValue","replace","getColorObject","colors","isMultiplePaletteArray","matchedColor","some","origin","color","find","getToggleAriaLabel","colorObject","style","isStyleEnabled","ariaLabelValue","sprintf","name","__","BorderControlDropdown","props","forwardedRef","__experimentalIsRenderedInSidebar","border","disableCustomColors","enableAlpha","enableStyle","indicatorClassName","indicatorWrapperClassName","onReset","onColorChange","onStyleChange","popoverContentClassName","popoverControlsClassName","resetButtonClassName","showDropdownHeader","size","__unstablePopoverProps","otherProps","useBorderControlDropdown","toggleAriaLabel","showResetButton","dropdownPosition","undefined","renderToggle","onToggle","_react","createElement","default","onClick","variant","tooltipPosition","label","showTooltip","__next40pxDefaultSize","className","renderContent","onClose","Fragment","paddingSize","VStack","spacing","HStack","StyledLabel","icon","closeSmall","value","onChange","clearable","popoverProps","ref","ConnectedBorderControlDropdown","contextConnect","_default","exports"],"sources":["@wordpress/components/src/border-control/border-control-dropdown/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { CSSProperties } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport BorderControlStylePicker from '../border-control-style-picker';\nimport Button from '../../button';\nimport ColorIndicator from '../../color-indicator';\nimport ColorPalette from '../../color-palette';\nimport Dropdown from '../../dropdown';\nimport { HStack } from '../../h-stack';\nimport { VStack } from '../../v-stack';\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { useBorderControlDropdown } from './hook';\nimport { StyledLabel } from '../../base-control/styles/base-control-styles';\nimport DropdownContentWrapper from '../../dropdown/dropdown-content-wrapper';\n\nimport type { ColorObject } from '../../color-palette/types';\nimport { isMultiplePaletteArray } from '../../color-palette/utils';\nimport type { DropdownProps as DropdownComponentProps } from '../../dropdown/types';\nimport type { ColorProps, DropdownProps } from '../types';\n\nconst getAriaLabelColorValue = ( colorValue: string ) => {\n\t// Leave hex values as-is. Remove the `var()` wrapper from CSS vars.\n\treturn colorValue.replace( /^var\\((.+)\\)$/, '$1' );\n};\n\nconst getColorObject = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolors: ColorProps[ 'colors' ] | undefined\n) => {\n\tif ( ! colorValue || ! colors ) {\n\t\treturn;\n\t}\n\n\tif ( isMultiplePaletteArray( colors ) ) {\n\t\t// Multiple origins\n\t\tlet matchedColor;\n\n\t\tcolors.some( ( origin ) =>\n\t\t\torigin.colors.some( ( color ) => {\n\t\t\t\tif ( color.color === colorValue ) {\n\t\t\t\t\tmatchedColor = color;\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\treturn false;\n\t\t\t} )\n\t\t);\n\n\t\treturn matchedColor;\n\t}\n\n\t// Single origin\n\treturn colors.find( ( color ) => color.color === colorValue );\n};\n\nconst getToggleAriaLabel = (\n\tcolorValue: CSSProperties[ 'borderColor' ],\n\tcolorObject: ColorObject | undefined,\n\tstyle: CSSProperties[ 'borderStyle' ],\n\tisStyleEnabled: boolean\n) => {\n\tif ( isStyleEnabled ) {\n\t\tif ( colorObject ) {\n\t\t\tconst ariaLabelValue = getAriaLabelColorValue( colorObject.color );\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\". %3$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\". The currently selected style is \"%3$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tariaLabelValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g.: \"#f00:\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\t\t\t\tcolorObject.name,\n\t\t\t\t\t\tariaLabelValue\n\t\t\t\t );\n\t\t}\n\n\t\tif ( colorValue ) {\n\t\t\tconst ariaLabelValue = getAriaLabelColorValue( colorValue );\n\t\t\treturn style\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g.: \"#f00:\". %2$s: The current border style selection e.g. \"solid\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\". The currently selected style is \"%2$s\".',\n\t\t\t\t\t\tariaLabelValue,\n\t\t\t\t\t\tstyle\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %1$s: The color's hex code e.g: \"#f00\".\n\t\t\t\t\t\t'Border color and style picker. The currently selected color has a value of \"%1$s\".',\n\t\t\t\t\t\tariaLabelValue\n\t\t\t\t );\n\t\t}\n\n\t\treturn __( 'Border color and style picker.' );\n\t}\n\n\tif ( colorObject ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The name of the color e.g. \"vivid red\". %2$s: The color's hex code e.g: \"#f00\".\n\t\t\t'Border color picker. The currently selected color is called \"%1$s\" and has a value of \"%2$s\".',\n\t\t\tcolorObject.name,\n\t\t\tgetAriaLabelColorValue( colorObject.color )\n\t\t);\n\t}\n\n\tif ( colorValue ) {\n\t\treturn sprintf(\n\t\t\t// translators: %1$s: The color's hex code e.g: \"#f00\".\n\t\t\t'Border color picker. The currently selected color has a value of \"%1$s\".',\n\t\t\tgetAriaLabelColorValue( colorValue )\n\t\t);\n\t}\n\n\treturn __( 'Border color picker.' );\n};\n\nconst BorderControlDropdown = (\n\tprops: WordPressComponentProps< DropdownProps, 'div' >,\n\tforwardedRef: React.ForwardedRef< any >\n) => {\n\tconst {\n\t\t__experimentalIsRenderedInSidebar,\n\t\tborder,\n\t\tcolors,\n\t\tdisableCustomColors,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonReset,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\tshowDropdownHeader,\n\t\tsize,\n\t\t__unstablePopoverProps,\n\t\t...otherProps\n\t} = useBorderControlDropdown( props );\n\n\tconst { color, style } = border || {};\n\tconst colorObject = getColorObject( color, colors );\n\n\tconst toggleAriaLabel = getToggleAriaLabel(\n\t\tcolor,\n\t\tcolorObject,\n\t\tstyle,\n\t\tenableStyle\n\t);\n\n\tconst showResetButton = color || ( style && style !== 'none' );\n\tconst dropdownPosition = __experimentalIsRenderedInSidebar\n\t\t? 'bottom left'\n\t\t: undefined;\n\n\tconst renderToggle: DropdownComponentProps[ 'renderToggle' ] = ( {\n\t\tonToggle,\n\t} ) => (\n\t\t<Button\n\t\t\tonClick={ onToggle }\n\t\t\tvariant=\"tertiary\"\n\t\t\taria-label={ toggleAriaLabel }\n\t\t\ttooltipPosition={ dropdownPosition }\n\t\t\tlabel={ __( 'Border color and style picker' ) }\n\t\t\tshowTooltip={ true }\n\t\t\t__next40pxDefaultSize={ size === '__unstable-large' ? true : false }\n\t\t>\n\t\t\t<span className={ indicatorWrapperClassName }>\n\t\t\t\t<ColorIndicator\n\t\t\t\t\tclassName={ indicatorClassName }\n\t\t\t\t\tcolorValue={ color }\n\t\t\t\t/>\n\t\t\t</span>\n\t\t</Button>\n\t);\n\n\tconst renderContent: DropdownComponentProps[ 'renderContent' ] = ( {\n\t\tonClose,\n\t} ) => (\n\t\t<>\n\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t<VStack className={ popoverControlsClassName } spacing={ 6 }>\n\t\t\t\t\t{ showDropdownHeader ? (\n\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t<StyledLabel>{ __( 'Border color' ) }</StyledLabel>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Close border color' ) }\n\t\t\t\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t) : undefined }\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclassName={ popoverContentClassName }\n\t\t\t\t\t\tvalue={ color }\n\t\t\t\t\t\tonChange={ onColorChange }\n\t\t\t\t\t\t{ ...{ colors, disableCustomColors } }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableStyle && (\n\t\t\t\t\t\t<BorderControlStylePicker\n\t\t\t\t\t\t\tlabel={ __( 'Style' ) }\n\t\t\t\t\t\t\tvalue={ style }\n\t\t\t\t\t\t\tonChange={ onStyleChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</VStack>\n\t\t\t</DropdownContentWrapper>\n\t\t\t{ showResetButton && (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ resetButtonClassName }\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<Dropdown\n\t\t\trenderToggle={ renderToggle }\n\t\t\trenderContent={ renderContent }\n\t\t\tpopoverProps={ {\n\t\t\t\t...__unstablePopoverProps,\n\t\t\t} }\n\t\t\t{ ...otherProps }\n\t\t\tref={ forwardedRef }\n\t\t/>\n\t);\n};\n\nconst ConnectedBorderControlDropdown = contextConnect(\n\tBorderControlDropdown,\n\t'BorderControlDropdown'\n);\n\nexport default ConnectedBorderControlDropdown;\n"],"mappings":"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"}
@@ -62,8 +62,8 @@ function useBorderControlDropdown(props) {
62
62
  // Generate class names.
63
63
  const cx = (0, _useCx.useCx)();
64
64
  const classes = (0, _element.useMemo)(() => {
65
- return cx(styles.borderControlDropdown(size), className);
66
- }, [className, cx, size]);
65
+ return cx(styles.borderControlDropdown, className);
66
+ }, [className, cx]);
67
67
  const indicatorClassName = (0, _element.useMemo)(() => {
68
68
  return cx(styles.borderColorIndicator);
69
69
  }, [cx]);
@@ -94,6 +94,7 @@ function useBorderControlDropdown(props) {
94
94
  popoverContentClassName,
95
95
  popoverControlsClassName,
96
96
  resetButtonClassName,
97
+ size,
97
98
  __experimentalIsRenderedInSidebar
98
99
  };
99
100
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","styles","_interopRequireWildcard","_utils","_context","_useCx","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","useBorderControlDropdown","props","border","className","colors","enableAlpha","enableStyle","onChange","previousStyleSelection","size","__experimentalIsRenderedInSidebar","otherProps","useContextSystem","widthValue","parseQuantityAndUnitFromRawValue","width","hasZeroWidth","onColorChange","color","style","onStyleChange","onReset","undefined","cx","useCx","classes","useMemo","borderControlDropdown","indicatorClassName","borderColorIndicator","indicatorWrapperClassName","colorIndicatorWrapper","popoverControlsClassName","borderControlPopoverControls","popoverContentClassName","borderControlPopoverContent","resetButtonClassName","resetButton"],"sources":["@wordpress/components/src/border-control/border-control-dropdown/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { DropdownProps } from '../types';\n\nexport function useBorderControlDropdown(\n\tprops: WordPressComponentProps< DropdownProps, 'div' >\n) {\n\tconst {\n\t\tborder,\n\t\tclassName,\n\t\tcolors = [],\n\t\tenableAlpha = false,\n\t\tenableStyle = true,\n\t\tonChange,\n\t\tpreviousStyleSelection,\n\t\tsize = 'default',\n\t\t__experimentalIsRenderedInSidebar = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControlDropdown' );\n\n\tconst [ widthValue ] = parseQuantityAndUnitFromRawValue( border?.width );\n\tconst hasZeroWidth = widthValue === 0;\n\n\tconst onColorChange = ( color?: string ) => {\n\t\tconst style =\n\t\t\tborder?.style === 'none' ? previousStyleSelection : border?.style;\n\t\tconst width = hasZeroWidth && !! color ? '1px' : border?.width;\n\n\t\tonChange( { color, style, width } );\n\t};\n\n\tconst onStyleChange = ( style?: string ) => {\n\t\tconst width = hasZeroWidth && !! style ? '1px' : border?.width;\n\t\tonChange( { ...border, style, width } );\n\t};\n\n\tconst onReset = () => {\n\t\tonChange( {\n\t\t\t...border,\n\t\t\tcolor: undefined,\n\t\t\tstyle: undefined,\n\t\t} );\n\t};\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControlDropdown( size ), className );\n\t}, [ className, cx, size ] );\n\n\tconst indicatorClassName = useMemo( () => {\n\t\treturn cx( styles.borderColorIndicator );\n\t}, [ cx ] );\n\n\tconst indicatorWrapperClassName = useMemo( () => {\n\t\treturn cx( styles.colorIndicatorWrapper( border, size ) );\n\t}, [ border, cx, size ] );\n\n\tconst popoverControlsClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverControls );\n\t}, [ cx ] );\n\n\tconst popoverContentClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverContent );\n\t}, [ cx ] );\n\n\tconst resetButtonClassName = useMemo( () => {\n\t\treturn cx( styles.resetButton );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tborder,\n\t\tclassName: classes,\n\t\tcolors,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tonReset,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\t__experimentalIsRenderedInSidebar,\n\t};\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","styles","_interopRequireWildcard","_utils","_context","_useCx","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","useBorderControlDropdown","props","border","className","colors","enableAlpha","enableStyle","onChange","previousStyleSelection","size","__experimentalIsRenderedInSidebar","otherProps","useContextSystem","widthValue","parseQuantityAndUnitFromRawValue","width","hasZeroWidth","onColorChange","color","style","onStyleChange","onReset","undefined","cx","useCx","classes","useMemo","borderControlDropdown","indicatorClassName","borderColorIndicator","indicatorWrapperClassName","colorIndicatorWrapper","popoverControlsClassName","borderControlPopoverControls","popoverContentClassName","borderControlPopoverContent","resetButtonClassName","resetButton"],"sources":["@wordpress/components/src/border-control/border-control-dropdown/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { parseQuantityAndUnitFromRawValue } from '../../unit-control/utils';\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\n\nimport type { DropdownProps } from '../types';\n\nexport function useBorderControlDropdown(\n\tprops: WordPressComponentProps< DropdownProps, 'div' >\n) {\n\tconst {\n\t\tborder,\n\t\tclassName,\n\t\tcolors = [],\n\t\tenableAlpha = false,\n\t\tenableStyle = true,\n\t\tonChange,\n\t\tpreviousStyleSelection,\n\t\tsize = 'default',\n\t\t__experimentalIsRenderedInSidebar = false,\n\t\t...otherProps\n\t} = useContextSystem( props, 'BorderControlDropdown' );\n\n\tconst [ widthValue ] = parseQuantityAndUnitFromRawValue( border?.width );\n\tconst hasZeroWidth = widthValue === 0;\n\n\tconst onColorChange = ( color?: string ) => {\n\t\tconst style =\n\t\t\tborder?.style === 'none' ? previousStyleSelection : border?.style;\n\t\tconst width = hasZeroWidth && !! color ? '1px' : border?.width;\n\n\t\tonChange( { color, style, width } );\n\t};\n\n\tconst onStyleChange = ( style?: string ) => {\n\t\tconst width = hasZeroWidth && !! style ? '1px' : border?.width;\n\t\tonChange( { ...border, style, width } );\n\t};\n\n\tconst onReset = () => {\n\t\tonChange( {\n\t\t\t...border,\n\t\t\tcolor: undefined,\n\t\t\tstyle: undefined,\n\t\t} );\n\t};\n\n\t// Generate class names.\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\treturn cx( styles.borderControlDropdown, className );\n\t}, [ className, cx ] );\n\n\tconst indicatorClassName = useMemo( () => {\n\t\treturn cx( styles.borderColorIndicator );\n\t}, [ cx ] );\n\n\tconst indicatorWrapperClassName = useMemo( () => {\n\t\treturn cx( styles.colorIndicatorWrapper( border, size ) );\n\t}, [ border, cx, size ] );\n\n\tconst popoverControlsClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverControls );\n\t}, [ cx ] );\n\n\tconst popoverContentClassName = useMemo( () => {\n\t\treturn cx( styles.borderControlPopoverContent );\n\t}, [ cx ] );\n\n\tconst resetButtonClassName = useMemo( () => {\n\t\treturn cx( styles.resetButton );\n\t}, [ cx ] );\n\n\treturn {\n\t\t...otherProps,\n\t\tborder,\n\t\tclassName: classes,\n\t\tcolors,\n\t\tenableAlpha,\n\t\tenableStyle,\n\t\tindicatorClassName,\n\t\tindicatorWrapperClassName,\n\t\tonColorChange,\n\t\tonStyleChange,\n\t\tonReset,\n\t\tpopoverContentClassName,\n\t\tpopoverControlsClassName,\n\t\tresetButtonClassName,\n\t\tsize,\n\t\t__experimentalIsRenderedInSidebar,\n\t};\n}\n"],"mappings":"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"}