@wordpress/block-library 8.21.0 → 8.22.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 (217) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/avatar/index.js +5 -1
  3. package/build/avatar/index.js.map +1 -1
  4. package/build/block/edit-title.native.js +11 -3
  5. package/build/block/edit-title.native.js.map +1 -1
  6. package/build/block/edit.js +3 -3
  7. package/build/block/edit.js.map +1 -1
  8. package/build/column/edit.js +2 -1
  9. package/build/column/edit.js.map +1 -1
  10. package/build/column/edit.native.js +2 -1
  11. package/build/column/edit.native.js.map +1 -1
  12. package/build/columns/edit.native.js +2 -1
  13. package/build/columns/edit.native.js.map +1 -1
  14. package/build/cover/controls.native.js +2 -1
  15. package/build/cover/controls.native.js.map +1 -1
  16. package/build/cover/edit/index.js +2 -1
  17. package/build/cover/edit/index.js.map +1 -1
  18. package/build/cover/edit/inspector-controls.js +2 -1
  19. package/build/cover/edit/inspector-controls.js.map +1 -1
  20. package/build/file/view.js +1 -1
  21. package/build/file/view.js.map +1 -1
  22. package/build/form/edit.js +2 -2
  23. package/build/form/edit.js.map +1 -1
  24. package/build/form/index.js +25 -5
  25. package/build/form/index.js.map +1 -1
  26. package/build/form/variations.js +1 -1
  27. package/build/form/variations.js.map +1 -1
  28. package/build/form-input/index.js +2 -2
  29. package/build/form-input/index.js.map +1 -1
  30. package/build/form-input/variations.js +7 -7
  31. package/build/form-input/variations.js.map +1 -1
  32. package/build/form-submission-notification/index.js +1 -1
  33. package/build/form-submission-notification/index.js.map +1 -1
  34. package/build/form-submission-notification/variations.js +4 -4
  35. package/build/form-submission-notification/variations.js.map +1 -1
  36. package/build/form-submit-button/index.js +2 -2
  37. package/build/form-submit-button/index.js.map +1 -1
  38. package/build/group/edit.js +2 -11
  39. package/build/group/edit.js.map +1 -1
  40. package/build/html/preview.js +2 -4
  41. package/build/html/preview.js.map +1 -1
  42. package/build/image/image.js +11 -5
  43. package/build/image/image.js.map +1 -1
  44. package/build/image/view.js +10 -20
  45. package/build/image/view.js.map +1 -1
  46. package/build/missing/edit.native.js +46 -8
  47. package/build/missing/edit.native.js.map +1 -1
  48. package/build/paragraph/edit.js +1 -1
  49. package/build/paragraph/edit.js.map +1 -1
  50. package/build/post-featured-image/dimension-controls.js +2 -2
  51. package/build/post-featured-image/dimension-controls.js.map +1 -1
  52. package/build/post-terms/edit.js +2 -2
  53. package/build/post-terms/edit.js.map +1 -1
  54. package/build/query/edit/enhanced-pagination-modal.js +27 -13
  55. package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
  56. package/build/query/edit/inspector-controls/enhanced-pagination-control.js +15 -12
  57. package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  58. package/build/query/utils.js +29 -8
  59. package/build/query/utils.js.map +1 -1
  60. package/build/query/view.js +4 -2
  61. package/build/query/view.js.map +1 -1
  62. package/build/search/edit.js +1 -2
  63. package/build/search/edit.js.map +1 -1
  64. package/build/social-link/edit.native.js +7 -19
  65. package/build/social-link/edit.native.js.map +1 -1
  66. package/build/spacer/controls.js +3 -3
  67. package/build/spacer/controls.js.map +1 -1
  68. package/build/spacer/controls.native.js +2 -1
  69. package/build/spacer/controls.native.js.map +1 -1
  70. package/build/spacer/edit.js +1 -1
  71. package/build/spacer/edit.js.map +1 -1
  72. package/build/spacer/edit.native.js +5 -1
  73. package/build/spacer/edit.native.js.map +1 -1
  74. package/build/tag-cloud/edit.js +2 -1
  75. package/build/tag-cloud/edit.js.map +1 -1
  76. package/build/template-part/edit/inner-blocks.js +2 -2
  77. package/build/template-part/edit/inner-blocks.js.map +1 -1
  78. package/build/term-description/index.js +0 -1
  79. package/build/term-description/index.js.map +1 -1
  80. package/build-module/avatar/index.js +5 -1
  81. package/build-module/avatar/index.js.map +1 -1
  82. package/build-module/block/edit-title.native.js +12 -4
  83. package/build-module/block/edit-title.native.js.map +1 -1
  84. package/build-module/block/edit.js +3 -3
  85. package/build-module/block/edit.js.map +1 -1
  86. package/build-module/column/edit.js +3 -2
  87. package/build-module/column/edit.js.map +1 -1
  88. package/build-module/column/edit.native.js +3 -2
  89. package/build-module/column/edit.native.js.map +1 -1
  90. package/build-module/columns/edit.native.js +3 -2
  91. package/build-module/columns/edit.native.js.map +1 -1
  92. package/build-module/cover/controls.native.js +3 -2
  93. package/build-module/cover/controls.native.js.map +1 -1
  94. package/build-module/cover/edit/index.js +3 -2
  95. package/build-module/cover/edit/index.js.map +1 -1
  96. package/build-module/cover/edit/inspector-controls.js +3 -2
  97. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  98. package/build-module/file/view.js +2 -2
  99. package/build-module/file/view.js.map +1 -1
  100. package/build-module/form/edit.js +2 -2
  101. package/build-module/form/edit.js.map +1 -1
  102. package/build-module/form/index.js +29 -5
  103. package/build-module/form/index.js.map +1 -1
  104. package/build-module/form/variations.js +1 -1
  105. package/build-module/form/variations.js.map +1 -1
  106. package/build-module/form-input/index.js +2 -2
  107. package/build-module/form-input/index.js.map +1 -1
  108. package/build-module/form-input/variations.js +7 -7
  109. package/build-module/form-input/variations.js.map +1 -1
  110. package/build-module/form-submission-notification/index.js +1 -1
  111. package/build-module/form-submission-notification/index.js.map +1 -1
  112. package/build-module/form-submission-notification/variations.js +4 -4
  113. package/build-module/form-submission-notification/variations.js.map +1 -1
  114. package/build-module/form-submit-button/index.js +2 -2
  115. package/build-module/form-submit-button/index.js.map +1 -1
  116. package/build-module/group/edit.js +3 -12
  117. package/build-module/group/edit.js.map +1 -1
  118. package/build-module/html/preview.js +2 -4
  119. package/build-module/html/preview.js.map +1 -1
  120. package/build-module/image/image.js +12 -6
  121. package/build-module/image/image.js.map +1 -1
  122. package/build-module/image/view.js +10 -20
  123. package/build-module/image/view.js.map +1 -1
  124. package/build-module/missing/edit.native.js +47 -9
  125. package/build-module/missing/edit.native.js.map +1 -1
  126. package/build-module/paragraph/edit.js +2 -2
  127. package/build-module/paragraph/edit.js.map +1 -1
  128. package/build-module/post-featured-image/dimension-controls.js +3 -3
  129. package/build-module/post-featured-image/dimension-controls.js.map +1 -1
  130. package/build-module/post-terms/edit.js +2 -2
  131. package/build-module/post-terms/edit.js.map +1 -1
  132. package/build-module/query/edit/enhanced-pagination-modal.js +28 -14
  133. package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
  134. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +17 -14
  135. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  136. package/build-module/query/utils.js +27 -5
  137. package/build-module/query/utils.js.map +1 -1
  138. package/build-module/query/view.js +4 -2
  139. package/build-module/query/view.js.map +1 -1
  140. package/build-module/search/edit.js +2 -3
  141. package/build-module/search/edit.js.map +1 -1
  142. package/build-module/social-link/edit.native.js +8 -20
  143. package/build-module/social-link/edit.native.js.map +1 -1
  144. package/build-module/spacer/controls.js +4 -4
  145. package/build-module/spacer/controls.js.map +1 -1
  146. package/build-module/spacer/controls.native.js +3 -2
  147. package/build-module/spacer/controls.native.js.map +1 -1
  148. package/build-module/spacer/edit.js +2 -2
  149. package/build-module/spacer/edit.js.map +1 -1
  150. package/build-module/spacer/edit.native.js +6 -2
  151. package/build-module/spacer/edit.native.js.map +1 -1
  152. package/build-module/tag-cloud/edit.js +3 -2
  153. package/build-module/tag-cloud/edit.js.map +1 -1
  154. package/build-module/template-part/edit/inner-blocks.js +3 -3
  155. package/build-module/template-part/edit/inner-blocks.js.map +1 -1
  156. package/build-module/term-description/index.js +0 -1
  157. package/build-module/term-description/index.js.map +1 -1
  158. package/build-style/file/style-rtl.css +0 -5
  159. package/build-style/file/style.css +0 -5
  160. package/build-style/navigation/style-rtl.css +5 -0
  161. package/build-style/navigation/style.css +5 -0
  162. package/build-style/style-rtl.css +5 -5
  163. package/build-style/style.css +5 -5
  164. package/package.json +32 -32
  165. package/src/avatar/block.json +5 -1
  166. package/src/block/edit-title.native.js +16 -13
  167. package/src/block/edit.js +1 -1
  168. package/src/calendar/index.php +2 -6
  169. package/src/column/edit.js +3 -8
  170. package/src/column/edit.native.js +3 -8
  171. package/src/columns/edit.native.js +3 -8
  172. package/src/comment-author-avatar/index.php +1 -1
  173. package/src/cover/controls.native.js +3 -8
  174. package/src/cover/edit/index.js +3 -2
  175. package/src/cover/edit/inspector-controls.js +3 -8
  176. package/src/file/index.php +2 -1
  177. package/src/file/style.scss +0 -6
  178. package/src/file/view.js +2 -2
  179. package/src/form/edit.js +3 -1
  180. package/src/form/index.js +38 -1
  181. package/src/form/variations.js +1 -1
  182. package/src/form-input/block.json +2 -2
  183. package/src/form-input/variations.js +7 -7
  184. package/src/form-submission-notification/block.json +1 -1
  185. package/src/form-submission-notification/variations.js +4 -4
  186. package/src/form-submit-button/block.json +2 -2
  187. package/src/freeform/test/__snapshots__/index.native.js.snap +7 -0
  188. package/src/freeform/test/index.native.js +57 -0
  189. package/src/group/edit.js +2 -7
  190. package/src/html/preview.js +9 -4
  191. package/src/image/image.js +17 -6
  192. package/src/image/index.php +5 -6
  193. package/src/image/view.js +13 -19
  194. package/src/missing/edit.native.js +43 -6
  195. package/src/navigation/index.php +1 -1
  196. package/src/navigation/style.scss +6 -1
  197. package/src/paragraph/edit.js +2 -2
  198. package/src/post-featured-image/dimension-controls.js +3 -3
  199. package/src/post-terms/edit.js +2 -2
  200. package/src/query/edit/enhanced-pagination-modal.js +37 -21
  201. package/src/query/edit/inspector-controls/enhanced-pagination-control.js +18 -22
  202. package/src/query/index.php +97 -8
  203. package/src/query/utils.js +29 -8
  204. package/src/query/view.js +11 -2
  205. package/src/query-pagination-next/index.php +1 -1
  206. package/src/query-pagination-previous/index.php +1 -1
  207. package/src/search/edit.js +5 -3
  208. package/src/social-link/edit.native.js +12 -26
  209. package/src/social-link/editor.native.scss +0 -9
  210. package/src/social-link/index.php +2 -2
  211. package/src/spacer/controls.js +9 -12
  212. package/src/spacer/controls.native.js +3 -8
  213. package/src/spacer/edit.js +2 -2
  214. package/src/spacer/edit.native.js +6 -5
  215. package/src/tag-cloud/edit.js +3 -7
  216. package/src/template-part/edit/inner-blocks.js +3 -3
  217. package/src/term-description/block.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_element","_components","_compose","_icons","_i18n","_dom","_icons2","_utils","DEFAULT_INNER_PADDING","BUTTON_BEHAVIOR_EXPAND","SearchEdit","className","attributes","setAttributes","toggleSelection","isSelected","clientId","label","showLabel","placeholder","width","widthUnit","align","buttonText","buttonPosition","buttonUseIcon","buttonBehavior","isSearchFieldHidden","style","wasJustInsertedIntoNavigationBlock","useSelect","select","getBlockParentsByBlockName","wasBlockJustInserted","blockEditorStore","length","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","borderRadius","border","radius","borderProps","useBorderProps","colorProps","useColorProps","fluidTypographySettings","useSetting","layout","typographyProps","useTypographyProps","typography","fluid","wideSize","unitControlInstanceId","useInstanceId","UnitControl","unitControlInputId","isButtonPositionInside","isButtonPositionOutside","hasNoButton","hasOnlyButton","searchFieldRef","useRef","buttonRef","units","useCustomUnits","availableUnits","defaultValues","PC_WIDTH_DEFAULT","px","PX_WIDTH_DEFAULT","getBlockClassNames","classnames","undefined","buttonPositionControls","role","title","__","isActive","icon","buttonOutside","onClick","buttonInside","noButton","buttonOnly","getButtonPositionIcon","getResizableSides","right","left","renderTextField","textFieldClasses","textFieldStyles","textDecoration","_react","createElement","type","value","onChange","event","target","ref","renderButton","buttonClasses","__experimentalGetElementClassName","buttonStyles","handleButtonClick","Fragment","stripHTML","Icon","search","RichText","withoutInteractiveFormatting","html","controls","BlockControls","ToolbarGroup","ToolbarButton","toggleLabel","ToolbarDropdownMenu","buttonWithIcon","InspectorControls","PanelBody","BaseControl","id","__experimentalUnitControl","min","isPercentageUnit","MIN_WIDTH","max","step","newWidth","filteredWidth","parseInt","onUnitChange","newUnit","__unstableInputWidth","ButtonGroup","map","widthValue","Button","key","isSmall","variant","padBorderRadius","getWrapperStyles","styles","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","isNonZeroBorderRadius","topLeft","topRight","bottomLeft","bottomRight","Number","isInteger","blockProps","useBlockProps","labelClassnames","ResizableBox","size","minWidth","enable","onResizeStart","direction","elt","offsetWidth","onResizeStop","delta","showHandle"],"sources":["@wordpress/block-library/src/search/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\tgetTypographyClassesAndStyles as useTypographyProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n\tuseSetting,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tToolbarDropdownMenu,\n\tToolbarGroup,\n\tButton,\n\tButtonGroup,\n\tToolbarButton,\n\tResizableBox,\n\tPanelBody,\n\tBaseControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { Icon, search } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuttonOnly,\n\tbuttonOutside,\n\tbuttonInside,\n\tnoButton,\n\tbuttonWithIcon,\n\ttoggleLabel,\n} from './icons';\nimport {\n\tPC_WIDTH_DEFAULT,\n\tPX_WIDTH_DEFAULT,\n\tMIN_WIDTH,\n\tisPercentageUnit,\n} from './utils.js';\n\n// Used to calculate border radius adjustment to avoid \"fat\" corners when\n// button is placed inside wrapper.\nconst DEFAULT_INNER_PADDING = '4px';\n\nconst BUTTON_BEHAVIOR_EXPAND = 'expand-searchfield';\n\nexport default function SearchEdit( {\n\tclassName,\n\tattributes,\n\tsetAttributes,\n\ttoggleSelection,\n\tisSelected,\n\tclientId,\n} ) {\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tplaceholder,\n\t\twidth,\n\t\twidthUnit,\n\t\talign,\n\t\tbuttonText,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tbuttonBehavior,\n\t\tisSearchFieldHidden,\n\t\tstyle,\n\t} = attributes;\n\n\tconst wasJustInsertedIntoNavigationBlock = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParentsByBlockName, wasBlockJustInserted } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\t!! getBlockParentsByBlockName( clientId, 'core/navigation' )\n\t\t\t\t\t?.length && wasBlockJustInserted( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( wasJustInsertedIntoNavigationBlock ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tshowLabel: false,\n\t\t\t\tbuttonUseIcon: true,\n\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t} );\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\twasJustInsertedIntoNavigationBlock,\n\t\tsetAttributes,\n\t] );\n\n\tconst borderRadius = style?.border?.radius;\n\tconst borderProps = useBorderProps( attributes );\n\n\t// Check for old deprecated numerical border radius. Done as a separate\n\t// check so that a borderRadius style won't overwrite the longhand\n\t// per-corner styles.\n\tif ( typeof borderRadius === 'number' ) {\n\t\tborderProps.style.borderRadius = `${ borderRadius }px`;\n\t}\n\n\tconst colorProps = useColorProps( attributes );\n\tconst fluidTypographySettings = useSetting( 'typography.fluid' );\n\tconst layout = useSetting( 'layout' );\n\tconst typographyProps = useTypographyProps( attributes, {\n\t\ttypography: {\n\t\t\tfluid: fluidTypographySettings,\n\t\t},\n\t\tlayout: {\n\t\t\twideSize: layout?.wideSize,\n\t\t},\n\t} );\n\tconst unitControlInstanceId = useInstanceId( UnitControl );\n\tconst unitControlInputId = `wp-block-search__width-${ unitControlInstanceId }`;\n\tconst isButtonPositionInside = 'button-inside' === buttonPosition;\n\tconst isButtonPositionOutside = 'button-outside' === buttonPosition;\n\tconst hasNoButton = 'no-button' === buttonPosition;\n\tconst hasOnlyButton = 'button-only' === buttonPosition;\n\tconst searchFieldRef = useRef();\n\tconst buttonRef = useRef();\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: [ '%', 'px' ],\n\t\tdefaultValues: { '%': PC_WIDTH_DEFAULT, px: PX_WIDTH_DEFAULT },\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( hasOnlyButton && ! isSelected ) {\n\t\t\tsetAttributes( {\n\t\t\t\tisSearchFieldHidden: true,\n\t\t\t} );\n\t\t}\n\t}, [ hasOnlyButton, isSelected, setAttributes ] );\n\n\t// Show the search field when width changes.\n\tuseEffect( () => {\n\t\tif ( ! hasOnlyButton || ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tisSearchFieldHidden: false,\n\t\t} );\n\t}, [ hasOnlyButton, isSelected, setAttributes, width ] );\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\tisButtonPositionInside\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\tisButtonPositionOutside\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\thasNoButton ? 'wp-block-search__no-button' : undefined,\n\t\t\thasOnlyButton ? 'wp-block-search__button-only' : undefined,\n\t\t\t! buttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && BUTTON_BEHAVIOR_EXPAND === buttonBehavior\n\t\t\t\t? 'wp-block-search__button-behavior-expand'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && isSearchFieldHidden\n\t\t\t\t? 'wp-block-search__searchfield-hidden'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst buttonPositionControls = [\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button outside' ),\n\t\t\tisActive: buttonPosition === 'button-outside',\n\t\t\ticon: buttonOutside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-outside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button inside' ),\n\t\t\tisActive: buttonPosition === 'button-inside',\n\t\t\ticon: buttonInside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'No button' ),\n\t\t\tisActive: buttonPosition === 'no-button',\n\t\t\ticon: noButton,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'no-button',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button only' ),\n\t\t\tisActive: buttonPosition === 'button-only',\n\t\t\ticon: buttonOnly,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-only',\n\t\t\t\t\tisSearchFieldHidden: true,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t];\n\n\tconst getButtonPositionIcon = () => {\n\t\tswitch ( buttonPosition ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn buttonInside;\n\t\t\tcase 'button-outside':\n\t\t\t\treturn buttonOutside;\n\t\t\tcase 'no-button':\n\t\t\t\treturn noButton;\n\t\t\tcase 'button-only':\n\t\t\t\treturn buttonOnly;\n\t\t}\n\t};\n\n\tconst getResizableSides = () => {\n\t\tif ( hasOnlyButton ) {\n\t\t\treturn {};\n\t\t}\n\n\t\treturn {\n\t\t\tright: align !== 'right',\n\t\t\tleft: align === 'right',\n\t\t};\n\t};\n\n\tconst renderTextField = () => {\n\t\t// If the input is inside the wrapper, the wrapper gets the border color styles/classes, not the input control.\n\t\tconst textFieldClasses = classnames(\n\t\t\t'wp-block-search__input',\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\ttypographyProps.className\n\t\t);\n\t\tconst textFieldStyles = {\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t\t...typographyProps.style,\n\t\t\ttextDecoration: undefined,\n\t\t};\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype=\"search\"\n\t\t\t\tclassName={ textFieldClasses }\n\t\t\t\tstyle={ textFieldStyles }\n\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t// which is confusing.\n\t\t\t\tplaceholder={\n\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t}\n\t\t\t\tvalue={ placeholder }\n\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t}\n\t\t\t\tref={ searchFieldRef }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderButton = () => {\n\t\t// If the button is inside the wrapper, the wrapper gets the border color styles/classes, not the button.\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-search__button',\n\t\t\tcolorProps.className,\n\t\t\ttypographyProps.className,\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\tbuttonUseIcon ? 'has-icon' : undefined,\n\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t);\n\t\tconst buttonStyles = {\n\t\t\t...colorProps.style,\n\t\t\t...typographyProps.style,\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t};\n\t\tconst handleButtonClick = () => {\n\t\t\tif ( hasOnlyButton && BUTTON_BEHAVIOR_EXPAND === buttonBehavior ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tisSearchFieldHidden: ! isSearchFieldHidden,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\tbuttonText\n\t\t\t\t\t\t\t\t? stripHTML( buttonText )\n\t\t\t\t\t\t\t\t: __( 'Search' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t\tref={ buttonRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon icon={ search } />\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add button text…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Toggle search label' ) }\n\t\t\t\t\t\ticon={ toggleLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tclassName={ showLabel ? 'is-pressed' : undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ getButtonPositionIcon() }\n\t\t\t\t\t\tlabel={ __( 'Change button position' ) }\n\t\t\t\t\t\tcontrols={ buttonPositionControls }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! hasNoButton && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Use button with icon' ) }\n\t\t\t\t\t\t\ticon={ buttonWithIcon }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\tbuttonUseIcon ? 'is-pressed' : undefined\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</ToolbarGroup>\n\t\t\t</BlockControls>\n\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Display Settings' ) }>\n\t\t\t\t\t<BaseControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 0 : MIN_WIDTH\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 100 : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tstep={ 1 }\n\t\t\t\t\t\t\tonChange={ ( newWidth ) => {\n\t\t\t\t\t\t\t\tconst filteredWidth =\n\t\t\t\t\t\t\t\t\twidthUnit === '%' &&\n\t\t\t\t\t\t\t\t\tparseInt( newWidth, 10 ) > 100\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: newWidth;\n\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth: parseInt( filteredWidth, 10 ),\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonUnitChange={ ( newUnit ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t'%' === newUnit\n\t\t\t\t\t\t\t\t\t\t\t? PC_WIDTH_DEFAULT\n\t\t\t\t\t\t\t\t\t\t\t: PX_WIDTH_DEFAULT,\n\t\t\t\t\t\t\t\t\twidthUnit: newUnit,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t__unstableInputWidth={ '80px' }\n\t\t\t\t\t\t\tvalue={ `${ width }${ widthUnit }` }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<ButtonGroup\n\t\t\t\t\t\t\tclassName=\"wp-block-search__components-button-group\"\n\t\t\t\t\t\t\taria-label={ __( 'Percentage Width' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\twidthValue === width &&\n\t\t\t\t\t\t\t\t\t\t\twidthUnit === '%'\n\t\t\t\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\twidth: widthValue,\n\t\t\t\t\t\t\t\t\t\t\t\twidthUnit: '%',\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</ButtonGroup>\n\t\t\t\t\t</BaseControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst padBorderRadius = ( radius ) =>\n\t\tradius ? `calc(${ radius } + ${ DEFAULT_INNER_PADDING })` : undefined;\n\n\tconst getWrapperStyles = () => {\n\t\tconst styles = isButtonPositionInside\n\t\t\t? borderProps.style\n\t\t\t: {\n\t\t\t\t\tborderRadius: borderProps.style?.borderRadius,\n\t\t\t\t\tborderTopLeftRadius: borderProps.style?.borderTopLeftRadius,\n\t\t\t\t\tborderTopRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderTopRightRadius,\n\t\t\t\t\tborderBottomLeftRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomLeftRadius,\n\t\t\t\t\tborderBottomRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomRightRadius,\n\t\t\t };\n\n\t\tconst isNonZeroBorderRadius =\n\t\t\tborderRadius !== undefined && parseInt( borderRadius, 10 ) !== 0;\n\n\t\tif ( isButtonPositionInside && isNonZeroBorderRadius ) {\n\t\t\t// We have button inside wrapper and a border radius value to apply.\n\t\t\t// Add default padding so we don't get \"fat\" corners.\n\t\t\t//\n\t\t\t// CSS calc() is used here to support non-pixel units. The inline\n\t\t\t// style using calc() will only apply if both values have units.\n\n\t\t\tif ( typeof borderRadius === 'object' ) {\n\t\t\t\t// Individual corner border radii present.\n\t\t\t\tconst { topLeft, topRight, bottomLeft, bottomRight } =\n\t\t\t\t\tborderRadius;\n\n\t\t\t\treturn {\n\t\t\t\t\t...styles,\n\t\t\t\t\tborderTopLeftRadius: padBorderRadius( topLeft ),\n\t\t\t\t\tborderTopRightRadius: padBorderRadius( topRight ),\n\t\t\t\t\tborderBottomLeftRadius: padBorderRadius( bottomLeft ),\n\t\t\t\t\tborderBottomRightRadius: padBorderRadius( bottomRight ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// The inline style using calc() will only apply if both values\n\t\t\t// supplied to calc() have units. Deprecated block's may have\n\t\t\t// unitless integer.\n\t\t\tconst radius = Number.isInteger( borderRadius )\n\t\t\t\t? `${ borderRadius }px`\n\t\t\t\t: borderRadius;\n\n\t\t\tstyles.borderRadius = `calc(${ radius } + ${ DEFAULT_INNER_PADDING })`;\n\t\t}\n\n\t\treturn styles;\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t\tstyle: {\n\t\t\t...typographyProps.style,\n\t\t\t// Input opts out of text decoration.\n\t\t\ttextDecoration: undefined,\n\t\t},\n\t} );\n\n\tconst labelClassnames = classnames(\n\t\t'wp-block-search__label',\n\t\ttypographyProps.className\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<RichText\n\t\t\t\t\tclassName={ labelClassnames }\n\t\t\t\t\taria-label={ __( 'Label text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( html ) => setAttributes( { label: html } ) }\n\t\t\t\t\tstyle={ typographyProps.style }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: `${ width }${ widthUnit }`,\n\t\t\t\t} }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'wp-block-search__inside-wrapper',\n\t\t\t\t\tisButtonPositionInside ? borderProps.className : undefined\n\t\t\t\t) }\n\t\t\t\tstyle={ getWrapperStyles() }\n\t\t\t\tminWidth={ MIN_WIDTH }\n\t\t\t\tenable={ getResizableSides() }\n\t\t\t\tonResizeStart={ ( event, direction, elt ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( elt.offsetWidth, 10 ),\n\t\t\t\t\t\twidthUnit: 'px',\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( width + delta.width, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t>\n\t\t\t\t{ ( isButtonPositionInside ||\n\t\t\t\t\tisButtonPositionOutside ||\n\t\t\t\t\thasOnlyButton ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t\t{ renderButton() }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\n\t\t\t\t{ hasNoButton && renderTextField() }\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAYA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAYA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,IAAA,GAAAR,OAAA;AAKA,IAAAS,OAAA,GAAAT,OAAA;AAQA,IAAAU,MAAA,GAAAV,OAAA;AAlDA;AACA;AACA;;AAGA;AACA;AACA;;AAgCA;AACA;AACA;;AAgBA;AACA;AACA,MAAMW,qBAAqB,GAAG,KAAK;AAEnC,MAAMC,sBAAsB,GAAG,oBAAoB;AAEpC,SAASC,UAAUA,CAAE;EACnCC,SAAS;EACTC,UAAU;EACVC,aAAa;EACbC,eAAe;EACfC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,KAAK;IACLC,SAAS;IACTC,WAAW;IACXC,KAAK;IACLC,SAAS;IACTC,KAAK;IACLC,UAAU;IACVC,cAAc;IACdC,aAAa;IACbC,cAAc;IACdC,mBAAmB;IACnBC;EACD,CAAC,GAAGhB,UAAU;EAEd,MAAMiB,kCAAkC,GAAG,IAAAC,eAAS,EACjDC,MAAM,IAAM;IACb,MAAM;MAAEC,0BAA0B;MAAEC;IAAqB,CAAC,GACzDF,MAAM,CAAEG,kBAAiB,CAAC;IAC3B,OACC,CAAC,CAAEF,0BAA0B,CAAEhB,QAAQ,EAAE,iBAAkB,CAAC,EACzDmB,MAAM,IAAIF,oBAAoB,CAAEjB,QAAS,CAAC;EAE/C,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EACD,MAAM;IAAEoB;EAAwC,CAAC,GAChD,IAAAC,iBAAW,EAAEH,kBAAiB,CAAC;EAEhC,IAAAI,kBAAS,EAAE,MAAM;IAChB,IAAKT,kCAAkC,EAAG;MACzC;MACAO,uCAAuC,CAAC,CAAC;MACzCvB,aAAa,CAAE;QACdK,SAAS,EAAE,KAAK;QAChBO,aAAa,EAAE,IAAI;QACnBD,cAAc,EAAE;MACjB,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CACFY,uCAAuC,EACvCP,kCAAkC,EAClChB,aAAa,CACZ,CAAC;EAEH,MAAM0B,YAAY,GAAGX,KAAK,EAAEY,MAAM,EAAEC,MAAM;EAC1C,MAAMC,WAAW,GAAG,IAAAC,yCAAc,EAAE/B,UAAW,CAAC;;EAEhD;EACA;EACA;EACA,IAAK,OAAO2B,YAAY,KAAK,QAAQ,EAAG;IACvCG,WAAW,CAACd,KAAK,CAACW,YAAY,GAAI,GAAGA,YAAc,IAAG;EACvD;EAEA,MAAMK,UAAU,GAAG,IAAAC,wCAAa,EAAEjC,UAAW,CAAC;EAC9C,MAAMkC,uBAAuB,GAAG,IAAAC,uBAAU,EAAE,kBAAmB,CAAC;EAChE,MAAMC,MAAM,GAAG,IAAAD,uBAAU,EAAE,QAAS,CAAC;EACrC,MAAME,eAAe,GAAG,IAAAC,0CAAkB,EAAEtC,UAAU,EAAE;IACvDuC,UAAU,EAAE;MACXC,KAAK,EAAEN;IACR,CAAC;IACDE,MAAM,EAAE;MACPK,QAAQ,EAAEL,MAAM,EAAEK;IACnB;EACD,CAAE,CAAC;EACH,MAAMC,qBAAqB,GAAG,IAAAC,sBAAa,EAAEC,qCAAY,CAAC;EAC1D,MAAMC,kBAAkB,GAAI,0BAA0BH,qBAAuB,EAAC;EAC9E,MAAMI,sBAAsB,GAAG,eAAe,KAAKlC,cAAc;EACjE,MAAMmC,uBAAuB,GAAG,gBAAgB,KAAKnC,cAAc;EACnE,MAAMoC,WAAW,GAAG,WAAW,KAAKpC,cAAc;EAClD,MAAMqC,aAAa,GAAG,aAAa,KAAKrC,cAAc;EACtD,MAAMsC,cAAc,GAAG,IAAAC,eAAM,EAAC,CAAC;EAC/B,MAAMC,SAAS,GAAG,IAAAD,eAAM,EAAC,CAAC;EAE1B,MAAME,KAAK,GAAG,IAAAC,wCAAc,EAAE;IAC7BC,cAAc,EAAE,CAAE,GAAG,EAAE,IAAI,CAAE;IAC7BC,aAAa,EAAE;MAAE,GAAG,EAAEC,uBAAgB;MAAEC,EAAE,EAAEC;IAAiB;EAC9D,CAAE,CAAC;EAEH,IAAAjC,kBAAS,EAAE,MAAM;IAChB,IAAKuB,aAAa,IAAI,CAAE9C,UAAU,EAAG;MACpCF,aAAa,CAAE;QACdc,mBAAmB,EAAE;MACtB,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CAAEkC,aAAa,EAAE9C,UAAU,EAAEF,aAAa,CAAG,CAAC;;EAEjD;EACA,IAAAyB,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAEuB,aAAa,IAAI,CAAE9C,UAAU,EAAG;MACtC;IACD;IAEAF,aAAa,CAAE;MACdc,mBAAmB,EAAE;IACtB,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEkC,aAAa,EAAE9C,UAAU,EAAEF,aAAa,EAAEO,KAAK,CAAG,CAAC;EAExD,MAAMoD,kBAAkB,GAAGA,CAAA,KAAM;IAChC,OAAO,IAAAC,mBAAU,EAChB9D,SAAS,EACT+C,sBAAsB,GACnB,gCAAgC,GAChCgB,SAAS,EACZf,uBAAuB,GACpB,iCAAiC,GACjCe,SAAS,EACZd,WAAW,GAAG,4BAA4B,GAAGc,SAAS,EACtDb,aAAa,GAAG,8BAA8B,GAAGa,SAAS,EAC1D,CAAEjD,aAAa,IAAI,CAAEmC,WAAW,GAC7B,8BAA8B,GAC9Bc,SAAS,EACZjD,aAAa,IAAI,CAAEmC,WAAW,GAC3B,8BAA8B,GAC9Bc,SAAS,EACZb,aAAa,IAAIpD,sBAAsB,KAAKiB,cAAc,GACvD,yCAAyC,GACzCgD,SAAS,EACZb,aAAa,IAAIlC,mBAAmB,GACjC,qCAAqC,GACrC+C,SACJ,CAAC;EACF,CAAC;EAED,MAAMC,sBAAsB,GAAG,CAC9B;IACCC,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB,CAAC;IAC7BC,QAAQ,EAAEvD,cAAc,KAAK,gBAAgB;IAC7CwD,IAAI,EAAEC,qBAAa;IACnBC,OAAO,EAAEA,CAAA,KAAM;MACdrE,aAAa,CAAE;QACdW,cAAc,EAAE,gBAAgB;QAChCG,mBAAmB,EAAE;MACtB,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCiD,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAE,IAAAC,QAAE,EAAE,eAAgB,CAAC;IAC5BC,QAAQ,EAAEvD,cAAc,KAAK,eAAe;IAC5CwD,IAAI,EAAEG,oBAAY;IAClBD,OAAO,EAAEA,CAAA,KAAM;MACdrE,aAAa,CAAE;QACdW,cAAc,EAAE,eAAe;QAC/BG,mBAAmB,EAAE;MACtB,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCiD,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAE,IAAAC,QAAE,EAAE,WAAY,CAAC;IACxBC,QAAQ,EAAEvD,cAAc,KAAK,WAAW;IACxCwD,IAAI,EAAEI,gBAAQ;IACdF,OAAO,EAAEA,CAAA,KAAM;MACdrE,aAAa,CAAE;QACdW,cAAc,EAAE,WAAW;QAC3BG,mBAAmB,EAAE;MACtB,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCiD,IAAI,EAAE,eAAe;IACrBC,KAAK,EAAE,IAAAC,QAAE,EAAE,aAAc,CAAC;IAC1BC,QAAQ,EAAEvD,cAAc,KAAK,aAAa;IAC1CwD,IAAI,EAAEK,kBAAU;IAChBH,OAAO,EAAEA,CAAA,KAAM;MACdrE,aAAa,CAAE;QACdW,cAAc,EAAE,aAAa;QAC7BG,mBAAmB,EAAE;MACtB,CAAE,CAAC;IACJ;EACD,CAAC,CACD;EAED,MAAM2D,qBAAqB,GAAGA,CAAA,KAAM;IACnC,QAAS9D,cAAc;MACtB,KAAK,eAAe;QACnB,OAAO2D,oBAAY;MACpB,KAAK,gBAAgB;QACpB,OAAOF,qBAAa;MACrB,KAAK,WAAW;QACf,OAAOG,gBAAQ;MAChB,KAAK,aAAa;QACjB,OAAOC,kBAAU;IACnB;EACD,CAAC;EAED,MAAME,iBAAiB,GAAGA,CAAA,KAAM;IAC/B,IAAK1B,aAAa,EAAG;MACpB,OAAO,CAAC,CAAC;IACV;IAEA,OAAO;MACN2B,KAAK,EAAElE,KAAK,KAAK,OAAO;MACxBmE,IAAI,EAAEnE,KAAK,KAAK;IACjB,CAAC;EACF,CAAC;EAED,MAAMoE,eAAe,GAAGA,CAAA,KAAM;IAC7B;IACA,MAAMC,gBAAgB,GAAG,IAAAlB,mBAAU,EAClC,wBAAwB,EACxBf,sBAAsB,GAAGgB,SAAS,GAAGhC,WAAW,CAAC/B,SAAS,EAC1DsC,eAAe,CAACtC,SACjB,CAAC;IACD,MAAMiF,eAAe,GAAG;MACvB,IAAKlC,sBAAsB,GACxB;QAAEnB;MAAa,CAAC,GAChBG,WAAW,CAACd,KAAK,CAAE;MACtB,GAAGqB,eAAe,CAACrB,KAAK;MACxBiE,cAAc,EAAEnB;IACjB,CAAC;IAED,OACC,IAAAoB,MAAA,CAAAC,aAAA;MACCC,IAAI,EAAC,QAAQ;MACbrF,SAAS,EAAGgF,gBAAkB;MAC9B/D,KAAK,EAAGgE,eAAiB;MACzB,cAAa,IAAAd,QAAE,EAAE,2BAA4B;MAC7C;MACA;MACA;MAAA;MACA3D,WAAW,EACVA,WAAW,GAAGuD,SAAS,GAAG,IAAAI,QAAE,EAAE,uBAAwB,CACtD;MACDmB,KAAK,EAAG9E,WAAa;MACrB+E,QAAQ,EAAKC,KAAK,IACjBtF,aAAa,CAAE;QAAEM,WAAW,EAAEgF,KAAK,CAACC,MAAM,CAACH;MAAM,CAAE,CACnD;MACDI,GAAG,EAAGvC;IAAgB,CACtB,CAAC;EAEJ,CAAC;EAED,MAAMwC,YAAY,GAAGA,CAAA,KAAM;IAC1B;IACA,MAAMC,aAAa,GAAG,IAAA9B,mBAAU,EAC/B,yBAAyB,EACzB7B,UAAU,CAACjC,SAAS,EACpBsC,eAAe,CAACtC,SAAS,EACzB+C,sBAAsB,GAAGgB,SAAS,GAAGhC,WAAW,CAAC/B,SAAS,EAC1Dc,aAAa,GAAG,UAAU,GAAGiD,SAAS,EACtC,IAAA8B,8CAAiC,EAAE,QAAS,CAC7C,CAAC;IACD,MAAMC,YAAY,GAAG;MACpB,GAAG7D,UAAU,CAAChB,KAAK;MACnB,GAAGqB,eAAe,CAACrB,KAAK;MACxB,IAAK8B,sBAAsB,GACxB;QAAEnB;MAAa,CAAC,GAChBG,WAAW,CAACd,KAAK;IACrB,CAAC;IACD,MAAM8E,iBAAiB,GAAGA,CAAA,KAAM;MAC/B,IAAK7C,aAAa,IAAIpD,sBAAsB,KAAKiB,cAAc,EAAG;QACjEb,aAAa,CAAE;UACdc,mBAAmB,EAAE,CAAEA;QACxB,CAAE,CAAC;MACJ;IACD,CAAC;IAED,OACC,IAAAmE,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAa,QAAA,QACGlF,aAAa,IACd,IAAAqE,MAAA,CAAAC,aAAA;MACCC,IAAI,EAAC,QAAQ;MACbrF,SAAS,EAAG4F,aAAe;MAC3B3E,KAAK,EAAG6E,YAAc;MACtB,cACClF,UAAU,GACP,IAAAqF,wBAAS,EAAErF,UAAW,CAAC,GACvB,IAAAuD,QAAE,EAAE,QAAS,CAChB;MACDI,OAAO,EAAGwB,iBAAmB;MAC7BL,GAAG,EAAGrC;IAAW,GAEjB,IAAA8B,MAAA,CAAAC,aAAA,EAAC5F,MAAA,CAAA0G,IAAI;MAAC7B,IAAI,EAAG8B;IAAQ,CAAE,CAChB,CACR,EAEC,CAAErF,aAAa,IAChB,IAAAqE,MAAA,CAAAC,aAAA,EAACjG,YAAA,CAAAiH,QAAQ;MACRpG,SAAS,EAAG4F,aAAe;MAC3B3E,KAAK,EAAG6E,YAAc;MACtB,cAAa,IAAA3B,QAAE,EAAE,aAAc,CAAG;MAClC3D,WAAW,EAAG,IAAA2D,QAAE,EAAE,kBAAmB,CAAG;MACxCkC,4BAA4B;MAC5Bf,KAAK,EAAG1E,UAAY;MACpB2E,QAAQ,EAAKe,IAAI,IAChBpG,aAAa,CAAE;QAAEU,UAAU,EAAE0F;MAAK,CAAE,CACpC;MACD/B,OAAO,EAAGwB;IAAmB,CAC7B,CAED,CAAC;EAEL,CAAC;EAED,MAAMQ,QAAQ,GACb,IAAApB,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAa,QAAA,QACC,IAAAb,MAAA,CAAAC,aAAA,EAACjG,YAAA,CAAAqH,aAAa,QACb,IAAArB,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAmH,YAAY,QACZ,IAAAtB,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAoH,aAAa;IACbxC,KAAK,EAAG,IAAAC,QAAE,EAAE,qBAAsB,CAAG;IACrCE,IAAI,EAAGsC,mBAAa;IACpBpC,OAAO,EAAGA,CAAA,KAAM;MACfrE,aAAa,CAAE;QACdK,SAAS,EAAE,CAAEA;MACd,CAAE,CAAC;IACJ,CAAG;IACHP,SAAS,EAAGO,SAAS,GAAG,YAAY,GAAGwD;EAAW,CAClD,CAAC,EACF,IAAAoB,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAsH,mBAAmB;IACnBvC,IAAI,EAAGM,qBAAqB,CAAC,CAAG;IAChCrE,KAAK,EAAG,IAAA6D,QAAE,EAAE,wBAAyB,CAAG;IACxCoC,QAAQ,EAAGvC;EAAwB,CACnC,CAAC,EACA,CAAEf,WAAW,IACd,IAAAkC,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAoH,aAAa;IACbxC,KAAK,EAAG,IAAAC,QAAE,EAAE,sBAAuB,CAAG;IACtCE,IAAI,EAAGwC,sBAAgB;IACvBtC,OAAO,EAAGA,CAAA,KAAM;MACfrE,aAAa,CAAE;QACdY,aAAa,EAAE,CAAEA;MAClB,CAAE,CAAC;IACJ,CAAG;IACHd,SAAS,EACRc,aAAa,GAAG,YAAY,GAAGiD;EAC/B,CACD,CAEW,CACA,CAAC,EAEhB,IAAAoB,MAAA,CAAAC,aAAA,EAACjG,YAAA,CAAA2H,iBAAiB,QACjB,IAAA3B,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAyH,SAAS;IAAC7C,KAAK,EAAG,IAAAC,QAAE,EAAE,kBAAmB;EAAG,GAC5C,IAAAgB,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAA0H,WAAW;IACX1G,KAAK,EAAG,IAAA6D,QAAE,EAAE,OAAQ,CAAG;IACvB8C,EAAE,EAAGnE;EAAoB,GAEzB,IAAAqC,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAA4H,yBAAW;IACXD,EAAE,EAAGnE,kBAAoB;IACzBqE,GAAG,EACF,IAAAC,uBAAgB,EAAE1G,SAAU,CAAC,GAAG,CAAC,GAAG2G,gBACpC;IACDC,GAAG,EACF,IAAAF,uBAAgB,EAAE1G,SAAU,CAAC,GAAG,GAAG,GAAGqD,SACtC;IACDwD,IAAI,EAAG,CAAG;IACVhC,QAAQ,EAAKiC,QAAQ,IAAM;MAC1B,MAAMC,aAAa,GAClB/G,SAAS,KAAK,GAAG,IACjBgH,QAAQ,CAAEF,QAAQ,EAAE,EAAG,CAAC,GAAG,GAAG,GAC3B,GAAG,GACHA,QAAQ;MAEZtH,aAAa,CAAE;QACdO,KAAK,EAAEiH,QAAQ,CAAED,aAAa,EAAE,EAAG;MACpC,CAAE,CAAC;IACJ,CAAG;IACHE,YAAY,EAAKC,OAAO,IAAM;MAC7B1H,aAAa,CAAE;QACdO,KAAK,EACJ,GAAG,KAAKmH,OAAO,GACZlE,uBAAgB,GAChBE,uBAAgB;QACpBlD,SAAS,EAAEkH;MACZ,CAAE,CAAC;IACJ,CAAG;IACHC,oBAAoB,EAAG,MAAQ;IAC/BvC,KAAK,EAAI,GAAG7E,KAAO,GAAGC,SAAW,EAAG;IACpC4C,KAAK,EAAGA;EAAO,CACf,CAAC,EAEF,IAAA6B,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAwI,WAAW;IACX9H,SAAS,EAAC,0CAA0C;IACpD,cAAa,IAAAmE,QAAE,EAAE,kBAAmB;EAAG,GAErC,CAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAE,CAAC4D,GAAG,CAAIC,UAAU,IAAM;IAC5C,OACC,IAAA7C,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAA2I,MAAM;MACNC,GAAG,EAAGF,UAAY;MAClBG,OAAO;MACPC,OAAO,EACNJ,UAAU,KAAKvH,KAAK,IACpBC,SAAS,KAAK,GAAG,GACd,SAAS,GACTqD,SACH;MACDQ,OAAO,EAAGA,CAAA,KACTrE,aAAa,CAAE;QACdO,KAAK,EAAEuH,UAAU;QACjBtH,SAAS,EAAE;MACZ,CAAE;IACF,GAECsH,UAAU,EAAE,GACP,CAAC;EAEX,CAAE,CACU,CACD,CACH,CACO,CAClB,CACF;EAED,MAAMK,eAAe,GAAKvG,MAAM,IAC/BA,MAAM,GAAI,QAAQA,MAAQ,MAAMjC,qBAAuB,GAAE,GAAGkE,SAAS;EAEtE,MAAMuE,gBAAgB,GAAGA,CAAA,KAAM;IAC9B,MAAMC,MAAM,GAAGxF,sBAAsB,GAClChB,WAAW,CAACd,KAAK,GACjB;MACAW,YAAY,EAAEG,WAAW,CAACd,KAAK,EAAEW,YAAY;MAC7C4G,mBAAmB,EAAEzG,WAAW,CAACd,KAAK,EAAEuH,mBAAmB;MAC3DC,oBAAoB,EACnB1G,WAAW,CAACd,KAAK,EAAEwH,oBAAoB;MACxCC,sBAAsB,EACrB3G,WAAW,CAACd,KAAK,EAAEyH,sBAAsB;MAC1CC,uBAAuB,EACtB5G,WAAW,CAACd,KAAK,EAAE0H;IACpB,CAAC;IAEJ,MAAMC,qBAAqB,GAC1BhH,YAAY,KAAKmC,SAAS,IAAI2D,QAAQ,CAAE9F,YAAY,EAAE,EAAG,CAAC,KAAK,CAAC;IAEjE,IAAKmB,sBAAsB,IAAI6F,qBAAqB,EAAG;MACtD;MACA;MACA;MACA;MACA;;MAEA,IAAK,OAAOhH,YAAY,KAAK,QAAQ,EAAG;QACvC;QACA,MAAM;UAAEiH,OAAO;UAAEC,QAAQ;UAAEC,UAAU;UAAEC;QAAY,CAAC,GACnDpH,YAAY;QAEb,OAAO;UACN,GAAG2G,MAAM;UACTC,mBAAmB,EAAEH,eAAe,CAAEQ,OAAQ,CAAC;UAC/CJ,oBAAoB,EAAEJ,eAAe,CAAES,QAAS,CAAC;UACjDJ,sBAAsB,EAAEL,eAAe,CAAEU,UAAW,CAAC;UACrDJ,uBAAuB,EAAEN,eAAe,CAAEW,WAAY;QACvD,CAAC;MACF;;MAEA;MACA;MACA;MACA,MAAMlH,MAAM,GAAGmH,MAAM,CAACC,SAAS,CAAEtH,YAAa,CAAC,GAC3C,GAAGA,YAAc,IAAG,GACrBA,YAAY;MAEf2G,MAAM,CAAC3G,YAAY,GAAI,QAAQE,MAAQ,MAAMjC,qBAAuB,GAAE;IACvE;IAEA,OAAO0I,MAAM;EACd,CAAC;EAED,MAAMY,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCpJ,SAAS,EAAE6D,kBAAkB,CAAC,CAAC;IAC/B5C,KAAK,EAAE;MACN,GAAGqB,eAAe,CAACrB,KAAK;MACxB;MACAiE,cAAc,EAAEnB;IACjB;EACD,CAAE,CAAC;EAEH,MAAMsF,eAAe,GAAG,IAAAvF,mBAAU,EACjC,wBAAwB,EACxBxB,eAAe,CAACtC,SACjB,CAAC;EAED,OACC,IAAAmF,MAAA,CAAAC,aAAA;IAAA,GAAU+D;EAAU,GACjB5C,QAAQ,EAERhG,SAAS,IACV,IAAA4E,MAAA,CAAAC,aAAA,EAACjG,YAAA,CAAAiH,QAAQ;IACRpG,SAAS,EAAGqJ,eAAiB;IAC7B,cAAa,IAAAlF,QAAE,EAAE,YAAa,CAAG;IACjC3D,WAAW,EAAG,IAAA2D,QAAE,EAAE,YAAa,CAAG;IAClCkC,4BAA4B;IAC5Bf,KAAK,EAAGhF,KAAO;IACfiF,QAAQ,EAAKe,IAAI,IAAMpG,aAAa,CAAE;MAAEI,KAAK,EAAEgG;IAAK,CAAE,CAAG;IACzDrF,KAAK,EAAGqB,eAAe,CAACrB;EAAO,CAC/B,CACD,EAED,IAAAkE,MAAA,CAAAC,aAAA,EAAC9F,WAAA,CAAAgK,YAAY;IACZC,IAAI,EAAG;MACN9I,KAAK,EAAG,GAAGA,KAAO,GAAGC,SAAW;IACjC,CAAG;IACHV,SAAS,EAAG,IAAA8D,mBAAU,EACrB,iCAAiC,EACjCf,sBAAsB,GAAGhB,WAAW,CAAC/B,SAAS,GAAG+D,SAClD,CAAG;IACH9C,KAAK,EAAGqH,gBAAgB,CAAC,CAAG;IAC5BkB,QAAQ,EAAGnC,gBAAW;IACtBoC,MAAM,EAAG7E,iBAAiB,CAAC,CAAG;IAC9B8E,aAAa,EAAGA,CAAElE,KAAK,EAAEmE,SAAS,EAAEC,GAAG,KAAM;MAC5C1J,aAAa,CAAE;QACdO,KAAK,EAAEiH,QAAQ,CAAEkC,GAAG,CAACC,WAAW,EAAE,EAAG,CAAC;QACtCnJ,SAAS,EAAE;MACZ,CAAE,CAAC;MACHP,eAAe,CAAE,KAAM,CAAC;IACzB,CAAG;IACH2J,YAAY,EAAGA,CAAEtE,KAAK,EAAEmE,SAAS,EAAEC,GAAG,EAAEG,KAAK,KAAM;MAClD7J,aAAa,CAAE;QACdO,KAAK,EAAEiH,QAAQ,CAAEjH,KAAK,GAAGsJ,KAAK,CAACtJ,KAAK,EAAE,EAAG;MAC1C,CAAE,CAAC;MACHN,eAAe,CAAE,IAAK,CAAC;IACxB,CAAG;IACH6J,UAAU,EAAG5J;EAAY,GAEvB,CAAE2C,sBAAsB,IACzBC,uBAAuB,IACvBE,aAAa,KACb,IAAAiC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAa,QAAA,QACGjB,eAAe,CAAC,CAAC,EACjBY,YAAY,CAAC,CACd,CACF,EAEC1C,WAAW,IAAI8B,eAAe,CAAC,CACpB,CACV,CAAC;AAER"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_data","_element","_components","_compose","_icons","_i18n","_dom","_icons2","_utils","DEFAULT_INNER_PADDING","BUTTON_BEHAVIOR_EXPAND","SearchEdit","className","attributes","setAttributes","toggleSelection","isSelected","clientId","label","showLabel","placeholder","width","widthUnit","align","buttonText","buttonPosition","buttonUseIcon","buttonBehavior","isSearchFieldHidden","style","wasJustInsertedIntoNavigationBlock","useSelect","select","getBlockParentsByBlockName","wasBlockJustInserted","blockEditorStore","length","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","borderRadius","border","radius","borderProps","useBorderProps","colorProps","useColorProps","fluidTypographySettings","layout","useSettings","typographyProps","useTypographyProps","typography","fluid","wideSize","unitControlInstanceId","useInstanceId","UnitControl","unitControlInputId","isButtonPositionInside","isButtonPositionOutside","hasNoButton","hasOnlyButton","searchFieldRef","useRef","buttonRef","units","useCustomUnits","availableUnits","defaultValues","PC_WIDTH_DEFAULT","px","PX_WIDTH_DEFAULT","getBlockClassNames","classnames","undefined","buttonPositionControls","role","title","__","isActive","icon","buttonOutside","onClick","buttonInside","noButton","buttonOnly","getButtonPositionIcon","getResizableSides","right","left","renderTextField","textFieldClasses","textFieldStyles","textDecoration","_react","createElement","type","value","onChange","event","target","ref","renderButton","buttonClasses","__experimentalGetElementClassName","buttonStyles","handleButtonClick","Fragment","stripHTML","Icon","search","RichText","withoutInteractiveFormatting","html","controls","BlockControls","ToolbarGroup","ToolbarButton","toggleLabel","ToolbarDropdownMenu","buttonWithIcon","InspectorControls","PanelBody","BaseControl","id","__experimentalUnitControl","min","isPercentageUnit","MIN_WIDTH","max","step","newWidth","filteredWidth","parseInt","onUnitChange","newUnit","__unstableInputWidth","ButtonGroup","map","widthValue","Button","key","isSmall","variant","padBorderRadius","getWrapperStyles","styles","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","isNonZeroBorderRadius","topLeft","topRight","bottomLeft","bottomRight","Number","isInteger","blockProps","useBlockProps","labelClassnames","ResizableBox","size","minWidth","enable","onResizeStart","direction","elt","offsetWidth","onResizeStop","delta","showHandle"],"sources":["@wordpress/block-library/src/search/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\tgetTypographyClassesAndStyles as useTypographyProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tToolbarDropdownMenu,\n\tToolbarGroup,\n\tButton,\n\tButtonGroup,\n\tToolbarButton,\n\tResizableBox,\n\tPanelBody,\n\tBaseControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { Icon, search } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuttonOnly,\n\tbuttonOutside,\n\tbuttonInside,\n\tnoButton,\n\tbuttonWithIcon,\n\ttoggleLabel,\n} from './icons';\nimport {\n\tPC_WIDTH_DEFAULT,\n\tPX_WIDTH_DEFAULT,\n\tMIN_WIDTH,\n\tisPercentageUnit,\n} from './utils.js';\n\n// Used to calculate border radius adjustment to avoid \"fat\" corners when\n// button is placed inside wrapper.\nconst DEFAULT_INNER_PADDING = '4px';\n\nconst BUTTON_BEHAVIOR_EXPAND = 'expand-searchfield';\n\nexport default function SearchEdit( {\n\tclassName,\n\tattributes,\n\tsetAttributes,\n\ttoggleSelection,\n\tisSelected,\n\tclientId,\n} ) {\n\tconst {\n\t\tlabel,\n\t\tshowLabel,\n\t\tplaceholder,\n\t\twidth,\n\t\twidthUnit,\n\t\talign,\n\t\tbuttonText,\n\t\tbuttonPosition,\n\t\tbuttonUseIcon,\n\t\tbuttonBehavior,\n\t\tisSearchFieldHidden,\n\t\tstyle,\n\t} = attributes;\n\n\tconst wasJustInsertedIntoNavigationBlock = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockParentsByBlockName, wasBlockJustInserted } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\t!! getBlockParentsByBlockName( clientId, 'core/navigation' )\n\t\t\t\t\t?.length && wasBlockJustInserted( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( wasJustInsertedIntoNavigationBlock ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tshowLabel: false,\n\t\t\t\tbuttonUseIcon: true,\n\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t} );\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\twasJustInsertedIntoNavigationBlock,\n\t\tsetAttributes,\n\t] );\n\n\tconst borderRadius = style?.border?.radius;\n\tconst borderProps = useBorderProps( attributes );\n\n\t// Check for old deprecated numerical border radius. Done as a separate\n\t// check so that a borderRadius style won't overwrite the longhand\n\t// per-corner styles.\n\tif ( typeof borderRadius === 'number' ) {\n\t\tborderProps.style.borderRadius = `${ borderRadius }px`;\n\t}\n\n\tconst colorProps = useColorProps( attributes );\n\tconst [ fluidTypographySettings, layout ] = useSettings(\n\t\t'typography.fluid',\n\t\t'layout'\n\t);\n\tconst typographyProps = useTypographyProps( attributes, {\n\t\ttypography: {\n\t\t\tfluid: fluidTypographySettings,\n\t\t},\n\t\tlayout: {\n\t\t\twideSize: layout?.wideSize,\n\t\t},\n\t} );\n\tconst unitControlInstanceId = useInstanceId( UnitControl );\n\tconst unitControlInputId = `wp-block-search__width-${ unitControlInstanceId }`;\n\tconst isButtonPositionInside = 'button-inside' === buttonPosition;\n\tconst isButtonPositionOutside = 'button-outside' === buttonPosition;\n\tconst hasNoButton = 'no-button' === buttonPosition;\n\tconst hasOnlyButton = 'button-only' === buttonPosition;\n\tconst searchFieldRef = useRef();\n\tconst buttonRef = useRef();\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: [ '%', 'px' ],\n\t\tdefaultValues: { '%': PC_WIDTH_DEFAULT, px: PX_WIDTH_DEFAULT },\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( hasOnlyButton && ! isSelected ) {\n\t\t\tsetAttributes( {\n\t\t\t\tisSearchFieldHidden: true,\n\t\t\t} );\n\t\t}\n\t}, [ hasOnlyButton, isSelected, setAttributes ] );\n\n\t// Show the search field when width changes.\n\tuseEffect( () => {\n\t\tif ( ! hasOnlyButton || ! isSelected ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tisSearchFieldHidden: false,\n\t\t} );\n\t}, [ hasOnlyButton, isSelected, setAttributes, width ] );\n\n\tconst getBlockClassNames = () => {\n\t\treturn classnames(\n\t\t\tclassName,\n\t\t\tisButtonPositionInside\n\t\t\t\t? 'wp-block-search__button-inside'\n\t\t\t\t: undefined,\n\t\t\tisButtonPositionOutside\n\t\t\t\t? 'wp-block-search__button-outside'\n\t\t\t\t: undefined,\n\t\t\thasNoButton ? 'wp-block-search__no-button' : undefined,\n\t\t\thasOnlyButton ? 'wp-block-search__button-only' : undefined,\n\t\t\t! buttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__text-button'\n\t\t\t\t: undefined,\n\t\t\tbuttonUseIcon && ! hasNoButton\n\t\t\t\t? 'wp-block-search__icon-button'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && BUTTON_BEHAVIOR_EXPAND === buttonBehavior\n\t\t\t\t? 'wp-block-search__button-behavior-expand'\n\t\t\t\t: undefined,\n\t\t\thasOnlyButton && isSearchFieldHidden\n\t\t\t\t? 'wp-block-search__searchfield-hidden'\n\t\t\t\t: undefined\n\t\t);\n\t};\n\n\tconst buttonPositionControls = [\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button outside' ),\n\t\t\tisActive: buttonPosition === 'button-outside',\n\t\t\ticon: buttonOutside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-outside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button inside' ),\n\t\t\tisActive: buttonPosition === 'button-inside',\n\t\t\ticon: buttonInside,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-inside',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'No button' ),\n\t\t\tisActive: buttonPosition === 'no-button',\n\t\t\ticon: noButton,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'no-button',\n\t\t\t\t\tisSearchFieldHidden: false,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\trole: 'menuitemradio',\n\t\t\ttitle: __( 'Button only' ),\n\t\t\tisActive: buttonPosition === 'button-only',\n\t\t\ticon: buttonOnly,\n\t\t\tonClick: () => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tbuttonPosition: 'button-only',\n\t\t\t\t\tisSearchFieldHidden: true,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t];\n\n\tconst getButtonPositionIcon = () => {\n\t\tswitch ( buttonPosition ) {\n\t\t\tcase 'button-inside':\n\t\t\t\treturn buttonInside;\n\t\t\tcase 'button-outside':\n\t\t\t\treturn buttonOutside;\n\t\t\tcase 'no-button':\n\t\t\t\treturn noButton;\n\t\t\tcase 'button-only':\n\t\t\t\treturn buttonOnly;\n\t\t}\n\t};\n\n\tconst getResizableSides = () => {\n\t\tif ( hasOnlyButton ) {\n\t\t\treturn {};\n\t\t}\n\n\t\treturn {\n\t\t\tright: align !== 'right',\n\t\t\tleft: align === 'right',\n\t\t};\n\t};\n\n\tconst renderTextField = () => {\n\t\t// If the input is inside the wrapper, the wrapper gets the border color styles/classes, not the input control.\n\t\tconst textFieldClasses = classnames(\n\t\t\t'wp-block-search__input',\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\ttypographyProps.className\n\t\t);\n\t\tconst textFieldStyles = {\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t\t...typographyProps.style,\n\t\t\ttextDecoration: undefined,\n\t\t};\n\n\t\treturn (\n\t\t\t<input\n\t\t\t\ttype=\"search\"\n\t\t\t\tclassName={ textFieldClasses }\n\t\t\t\tstyle={ textFieldStyles }\n\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t// which is confusing.\n\t\t\t\tplaceholder={\n\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t}\n\t\t\t\tvalue={ placeholder }\n\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t}\n\t\t\t\tref={ searchFieldRef }\n\t\t\t/>\n\t\t);\n\t};\n\n\tconst renderButton = () => {\n\t\t// If the button is inside the wrapper, the wrapper gets the border color styles/classes, not the button.\n\t\tconst buttonClasses = classnames(\n\t\t\t'wp-block-search__button',\n\t\t\tcolorProps.className,\n\t\t\ttypographyProps.className,\n\t\t\tisButtonPositionInside ? undefined : borderProps.className,\n\t\t\tbuttonUseIcon ? 'has-icon' : undefined,\n\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t);\n\t\tconst buttonStyles = {\n\t\t\t...colorProps.style,\n\t\t\t...typographyProps.style,\n\t\t\t...( isButtonPositionInside\n\t\t\t\t? { borderRadius }\n\t\t\t\t: borderProps.style ),\n\t\t};\n\t\tconst handleButtonClick = () => {\n\t\t\tif ( hasOnlyButton && BUTTON_BEHAVIOR_EXPAND === buttonBehavior ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\tisSearchFieldHidden: ! isSearchFieldHidden,\n\t\t\t\t} );\n\t\t\t}\n\t\t};\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ buttonUseIcon && (\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\tbuttonText\n\t\t\t\t\t\t\t\t? stripHTML( buttonText )\n\t\t\t\t\t\t\t\t: __( 'Search' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t\tref={ buttonRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon icon={ search } />\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\n\t\t\t\t{ ! buttonUseIcon && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tclassName={ buttonClasses }\n\t\t\t\t\t\tstyle={ buttonStyles }\n\t\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add button text…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ buttonText }\n\t\t\t\t\t\tonChange={ ( html ) =>\n\t\t\t\t\t\t\tsetAttributes( { buttonText: html } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonClick={ handleButtonClick }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t};\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Toggle search label' ) }\n\t\t\t\t\t\ticon={ toggleLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tclassName={ showLabel ? 'is-pressed' : undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ getButtonPositionIcon() }\n\t\t\t\t\t\tlabel={ __( 'Change button position' ) }\n\t\t\t\t\t\tcontrols={ buttonPositionControls }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! hasNoButton && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Use button with icon' ) }\n\t\t\t\t\t\t\ticon={ buttonWithIcon }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tbuttonUseIcon: ! buttonUseIcon,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\tbuttonUseIcon ? 'is-pressed' : undefined\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</ToolbarGroup>\n\t\t\t</BlockControls>\n\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Display Settings' ) }>\n\t\t\t\t\t<BaseControl\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\tid={ unitControlInputId }\n\t\t\t\t\t\t\tmin={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 0 : MIN_WIDTH\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t\tisPercentageUnit( widthUnit ) ? 100 : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tstep={ 1 }\n\t\t\t\t\t\t\tonChange={ ( newWidth ) => {\n\t\t\t\t\t\t\t\tconst filteredWidth =\n\t\t\t\t\t\t\t\t\twidthUnit === '%' &&\n\t\t\t\t\t\t\t\t\tparseInt( newWidth, 10 ) > 100\n\t\t\t\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t\t\t\t: newWidth;\n\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth: parseInt( filteredWidth, 10 ),\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonUnitChange={ ( newUnit ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t'%' === newUnit\n\t\t\t\t\t\t\t\t\t\t\t? PC_WIDTH_DEFAULT\n\t\t\t\t\t\t\t\t\t\t\t: PX_WIDTH_DEFAULT,\n\t\t\t\t\t\t\t\t\twidthUnit: newUnit,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t__unstableInputWidth={ '80px' }\n\t\t\t\t\t\t\tvalue={ `${ width }${ widthUnit }` }\n\t\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t<ButtonGroup\n\t\t\t\t\t\t\tclassName=\"wp-block-search__components-button-group\"\n\t\t\t\t\t\t\taria-label={ __( 'Percentage Width' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\twidthValue === width &&\n\t\t\t\t\t\t\t\t\t\t\twidthUnit === '%'\n\t\t\t\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\twidth: widthValue,\n\t\t\t\t\t\t\t\t\t\t\t\twidthUnit: '%',\n\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</ButtonGroup>\n\t\t\t\t\t</BaseControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst padBorderRadius = ( radius ) =>\n\t\tradius ? `calc(${ radius } + ${ DEFAULT_INNER_PADDING })` : undefined;\n\n\tconst getWrapperStyles = () => {\n\t\tconst styles = isButtonPositionInside\n\t\t\t? borderProps.style\n\t\t\t: {\n\t\t\t\t\tborderRadius: borderProps.style?.borderRadius,\n\t\t\t\t\tborderTopLeftRadius: borderProps.style?.borderTopLeftRadius,\n\t\t\t\t\tborderTopRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderTopRightRadius,\n\t\t\t\t\tborderBottomLeftRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomLeftRadius,\n\t\t\t\t\tborderBottomRightRadius:\n\t\t\t\t\t\tborderProps.style?.borderBottomRightRadius,\n\t\t\t };\n\n\t\tconst isNonZeroBorderRadius =\n\t\t\tborderRadius !== undefined && parseInt( borderRadius, 10 ) !== 0;\n\n\t\tif ( isButtonPositionInside && isNonZeroBorderRadius ) {\n\t\t\t// We have button inside wrapper and a border radius value to apply.\n\t\t\t// Add default padding so we don't get \"fat\" corners.\n\t\t\t//\n\t\t\t// CSS calc() is used here to support non-pixel units. The inline\n\t\t\t// style using calc() will only apply if both values have units.\n\n\t\t\tif ( typeof borderRadius === 'object' ) {\n\t\t\t\t// Individual corner border radii present.\n\t\t\t\tconst { topLeft, topRight, bottomLeft, bottomRight } =\n\t\t\t\t\tborderRadius;\n\n\t\t\t\treturn {\n\t\t\t\t\t...styles,\n\t\t\t\t\tborderTopLeftRadius: padBorderRadius( topLeft ),\n\t\t\t\t\tborderTopRightRadius: padBorderRadius( topRight ),\n\t\t\t\t\tborderBottomLeftRadius: padBorderRadius( bottomLeft ),\n\t\t\t\t\tborderBottomRightRadius: padBorderRadius( bottomRight ),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// The inline style using calc() will only apply if both values\n\t\t\t// supplied to calc() have units. Deprecated block's may have\n\t\t\t// unitless integer.\n\t\t\tconst radius = Number.isInteger( borderRadius )\n\t\t\t\t? `${ borderRadius }px`\n\t\t\t\t: borderRadius;\n\n\t\t\tstyles.borderRadius = `calc(${ radius } + ${ DEFAULT_INNER_PADDING })`;\n\t\t}\n\n\t\treturn styles;\n\t};\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: getBlockClassNames(),\n\t\tstyle: {\n\t\t\t...typographyProps.style,\n\t\t\t// Input opts out of text decoration.\n\t\t\ttextDecoration: undefined,\n\t\t},\n\t} );\n\n\tconst labelClassnames = classnames(\n\t\t'wp-block-search__label',\n\t\ttypographyProps.className\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\n\t\t\t{ showLabel && (\n\t\t\t\t<RichText\n\t\t\t\t\tclassName={ labelClassnames }\n\t\t\t\t\taria-label={ __( 'Label text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add label…' ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tonChange={ ( html ) => setAttributes( { label: html } ) }\n\t\t\t\t\tstyle={ typographyProps.style }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: `${ width }${ widthUnit }`,\n\t\t\t\t} }\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'wp-block-search__inside-wrapper',\n\t\t\t\t\tisButtonPositionInside ? borderProps.className : undefined\n\t\t\t\t) }\n\t\t\t\tstyle={ getWrapperStyles() }\n\t\t\t\tminWidth={ MIN_WIDTH }\n\t\t\t\tenable={ getResizableSides() }\n\t\t\t\tonResizeStart={ ( event, direction, elt ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( elt.offsetWidth, 10 ),\n\t\t\t\t\t\twidthUnit: 'px',\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t} }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( width + delta.width, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t>\n\t\t\t\t{ ( isButtonPositionInside ||\n\t\t\t\t\tisButtonPositionOutside ||\n\t\t\t\t\thasOnlyButton ) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ renderTextField() }\n\t\t\t\t\t\t{ renderButton() }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\n\t\t\t\t{ hasNoButton && renderTextField() }\n\t\t\t</ResizableBox>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -32,10 +32,6 @@ const DEFAULT_ACTIVE_ICON_STYLES = {
32
32
  backgroundColor: '#f0f0f0',
33
33
  color: '#444'
34
34
  };
35
- const DEFAULT_INACTIVE_ICON_STYLES = {
36
- backgroundColor: '#0000003f',
37
- color: '#fff'
38
- };
39
35
  const ANIMATION_DELAY = 300;
40
36
  const ANIMATION_DURATION = 400;
41
37
  const linkSettingsOptions = {
@@ -66,7 +62,6 @@ const SocialLinkEdit = ({
66
62
  const [isLinkSheetVisible, setIsLinkSheetVisible] = (0, _element.useState)(false);
67
63
  const [hasUrl, setHasUrl] = (0, _element.useState)(!!url);
68
64
  const activeIcon = _editor.default[`wp-social-link-${service}`] || _editor.default[`wp-social-link`] || DEFAULT_ACTIVE_ICON_STYLES;
69
- const inactiveIcon = (0, _compose.usePreferredColorSchemeStyle)(_editor.default.inactiveIcon, _editor.default.inactiveIconDark) || DEFAULT_INACTIVE_ICON_STYLES;
70
65
  const animatedValue = (0, _element.useRef)(new _reactNative.Animated.Value(0)).current;
71
66
  const IconComponent = (0, _socialList.getIconBySite)(service)();
72
67
  const socialLinkName = (0, _socialList.getNameBySite)(service);
@@ -86,20 +81,13 @@ const SocialLinkEdit = ({
86
81
  }
87
82
  }, [url]);
88
83
  const interpolationColors = {
89
- backgroundColor: animatedValue.interpolate({
90
- inputRange: [0, 1],
91
- outputRange: [inactiveIcon.backgroundColor, activeIcon.backgroundColor]
92
- }),
93
- color: animatedValue.interpolate({
84
+ opacity: animatedValue.interpolate({
94
85
  inputRange: [0, 1],
95
- outputRange: [inactiveIcon.color, activeIcon.color]
96
- }),
97
- stroke: ''
86
+ outputRange: [0.3, 1]
87
+ })
98
88
  };
99
89
  const {
100
- backgroundColor,
101
- color,
102
- stroke
90
+ opacity
103
91
  } = hasUrl ? activeIcon : interpolationColors;
104
92
  function animateColors() {
105
93
  _reactNative.Animated.sequence([_reactNative.Animated.delay(ANIMATION_DELAY), _reactNative.Animated.timing(animatedValue, {
@@ -159,14 +147,14 @@ const SocialLinkEdit = ({
159
147
  accessibilityHint: accessibilityHint
160
148
  }, (0, _react.createElement)(_reactNative.Animated.View, {
161
149
  style: [_editor.default.iconContainer, {
162
- backgroundColor
150
+ backgroundColor: activeIcon.backgroundColor,
151
+ opacity
163
152
  }]
164
153
  }, (0, _react.createElement)(_icons.Icon, {
165
154
  animated: true,
166
155
  icon: IconComponent,
167
156
  style: {
168
- stroke,
169
- color
157
+ color: activeIcon.color
170
158
  }
171
159
  }))));
172
160
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_blockEditor","_element","_components","_compose","_i18n","_icons","_data","_socialList","_editor","_interopRequireDefault","DEFAULT_ACTIVE_ICON_STYLES","backgroundColor","color","DEFAULT_INACTIVE_ICON_STYLES","ANIMATION_DELAY","ANIMATION_DURATION","linkSettingsOptions","url","label","__","placeholder","autoFocus","linkLabel","footer","SocialLinkEdit","attributes","setAttributes","isSelected","onFocus","name","service","isLinkSheetVisible","setIsLinkSheetVisible","useState","hasUrl","setHasUrl","activeIcon","styles","inactiveIcon","usePreferredColorSchemeStyle","inactiveIconDark","animatedValue","useRef","Animated","Value","current","IconComponent","getIconBySite","socialLinkName","getNameBySite","useEffect","setValue","animateColors","interpolationColors","interpolate","inputRange","outputRange","stroke","sequence","delay","timing","toValue","duration","easing","Easing","circle","useNativeDriver","start","onCloseSettingsSheet","useCallback","onOpenSettingsSheet","onEmptyURL","onIconPress","accessibilityHint","sprintf","_react","createElement","View","style","container","Fragment","BlockControls","ToolbarGroup","ToolbarButton","title","icon","link","onClick","isActive","LinkSettingsNavigation","isVisible","rel","onClose","options","withBottomSheet","TouchableWithoutFeedback","onPress","accessibilityRole","accessibilityLabel","iconContainer","Icon","animated","_default","compose","withSelect","select","clientId","getBlock","blockEditorStore","block","substring","exports","default"],"sources":["@wordpress/block-library/src/social-link/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Animated, Easing, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect, useState, useRef, useCallback } from '@wordpress/element';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n} from '@wordpress/components';\nimport { compose, usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { link, Icon } from '@wordpress/icons';\nimport { withSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\nimport styles from './editor.scss';\n\nconst DEFAULT_ACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#f0f0f0',\n\tcolor: '#444',\n};\nconst DEFAULT_INACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#0000003f',\n\tcolor: '#fff',\n};\nconst ANIMATION_DELAY = 300;\nconst ANIMATION_DURATION = 400;\n\nconst linkSettingsOptions = {\n\turl: {\n\t\tlabel: __( 'URL' ),\n\t\tplaceholder: __( 'Add URL' ),\n\t\tautoFocus: true,\n\t},\n\tlinkLabel: {\n\t\tlabel: __( 'Link label' ),\n\t\tplaceholder: __( 'None' ),\n\t},\n\tfooter: {\n\t\tlabel: __( 'Briefly describe the link to help screen reader user' ),\n\t},\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tonFocus,\n\tname,\n} ) => {\n\tconst { url, service = name } = attributes;\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ hasUrl, setHasUrl ] = useState( !! url );\n\tconst activeIcon =\n\t\tstyles[ `wp-social-link-${ service }` ] ||\n\t\tstyles[ `wp-social-link` ] ||\n\t\tDEFAULT_ACTIVE_ICON_STYLES;\n\tconst inactiveIcon =\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.inactiveIcon,\n\t\t\tstyles.inactiveIconDark\n\t\t) || DEFAULT_INACTIVE_ICON_STYLES;\n\n\tconst animatedValue = useRef( new Animated.Value( 0 ) ).current;\n\n\tconst IconComponent = getIconBySite( service )();\n\tconst socialLinkName = getNameBySite( service );\n\n\t// When new social icon is added link sheet is opened automatically.\n\tuseEffect( () => {\n\t\tif ( isSelected && ! url ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! url ) {\n\t\t\tsetHasUrl( false );\n\t\t\tanimatedValue.setValue( 0 );\n\t\t} else if ( url ) {\n\t\t\tanimateColors();\n\t\t}\n\t}, [ url ] );\n\n\tconst interpolationColors = {\n\t\tbackgroundColor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [\n\t\t\t\tinactiveIcon.backgroundColor,\n\t\t\t\tactiveIcon.backgroundColor,\n\t\t\t],\n\t\t} ),\n\t\tcolor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [ inactiveIcon.color, activeIcon.color ],\n\t\t} ),\n\t\tstroke: '',\n\t};\n\n\tconst { backgroundColor, color, stroke } = hasUrl\n\t\t? activeIcon\n\t\t: interpolationColors;\n\n\tfunction animateColors() {\n\t\tAnimated.sequence( [\n\t\t\tAnimated.delay( ANIMATION_DELAY ),\n\t\t\tAnimated.timing( animatedValue, {\n\t\t\t\ttoValue: 1,\n\t\t\t\tduration: ANIMATION_DURATION,\n\t\t\t\teasing: Easing.circle,\n\t\t\t\tuseNativeDriver: false,\n\t\t\t} ),\n\t\t] ).start( () => setHasUrl( true ) );\n\t}\n\n\tconst onCloseSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( false );\n\t}, [] );\n\n\tconst onOpenSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( true );\n\t}, [] );\n\n\tconst onEmptyURL = useCallback( () => {\n\t\tanimatedValue.setValue( 0 );\n\t\tsetHasUrl( false );\n\t}, [ animatedValue ] );\n\n\tfunction onIconPress() {\n\t\tif ( isSelected ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t} else {\n\t\t\tonFocus();\n\t\t}\n\t}\n\n\tconst accessibilityHint = url\n\t\t? sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has URL set' ),\n\t\t\t\tsocialLinkName\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has no URL set' ),\n\t\t\t\tsocialLinkName\n\t\t );\n\n\treturn (\n\t\t<View style={ styles.container }>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t\t\t\t\t__( 'Add link to %s' ),\n\t\t\t\t\t\t\t\t\tsocialLinkName\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onOpenSettingsSheet }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<LinkSettingsNavigation\n\t\t\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\t\t\turl={ attributes.url }\n\t\t\t\t\t\tlabel={ attributes.label }\n\t\t\t\t\t\trel={ attributes.rel }\n\t\t\t\t\t\tonEmptyURL={ onEmptyURL }\n\t\t\t\t\t\tonClose={ onCloseSettingsSheet }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\t\t\twithBottomSheet\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ onIconPress }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityLabel={ sprintf(\n\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t__( '%s social icon' ),\n\t\t\t\t\tsocialLinkName\n\t\t\t\t) }\n\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t>\n\t\t\t\t<Animated.View\n\t\t\t\t\tstyle={ [ styles.iconContainer, { backgroundColor } ] }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tanimated\n\t\t\t\t\t\ticon={ IconComponent }\n\t\t\t\t\t\tstyle={ { stroke, color } }\n\t\t\t\t\t/>\n\t\t\t\t</Animated.View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\n\t\tconst block = getBlock( clientId );\n\t\tconst name = block?.name.substring( 17 );\n\n\t\treturn {\n\t\t\tname,\n\t\t};\n\t} ),\n] )( SocialLinkEdit );\n"],"mappings":";;;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAIA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAKA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AAIA,IAAAQ,WAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAC,sBAAA,CAAAV,OAAA;AA1BA;AACA;AACA;;AAGA;AACA;AACA;;AAeA;AACA;AACA;;AAIA,MAAMW,0BAA0B,GAAG;EAClCC,eAAe,EAAE,SAAS;EAC1BC,KAAK,EAAE;AACR,CAAC;AACD,MAAMC,4BAA4B,GAAG;EACpCF,eAAe,EAAE,WAAW;EAC5BC,KAAK,EAAE;AACR,CAAC;AACD,MAAME,eAAe,GAAG,GAAG;AAC3B,MAAMC,kBAAkB,GAAG,GAAG;AAE9B,MAAMC,mBAAmB,GAAG;EAC3BC,GAAG,EAAE;IACJC,KAAK,EAAE,IAAAC,QAAE,EAAE,KAAM,CAAC;IAClBC,WAAW,EAAE,IAAAD,QAAE,EAAE,SAAU,CAAC;IAC5BE,SAAS,EAAE;EACZ,CAAC;EACDC,SAAS,EAAE;IACVJ,KAAK,EAAE,IAAAC,QAAE,EAAE,YAAa,CAAC;IACzBC,WAAW,EAAE,IAAAD,QAAE,EAAE,MAAO;EACzB,CAAC;EACDI,MAAM,EAAE;IACPL,KAAK,EAAE,IAAAC,QAAE,EAAE,sDAAuD;EACnE;AACD,CAAC;AAED,MAAMK,cAAc,GAAGA,CAAE;EACxBC,UAAU;EACVC,aAAa;EACbC,UAAU;EACVC,OAAO;EACPC;AACD,CAAC,KAAM;EACN,MAAM;IAAEZ,GAAG;IAAEa,OAAO,GAAGD;EAAK,CAAC,GAAGJ,UAAU;EAC1C,MAAM,CAAEM,kBAAkB,EAAEC,qBAAqB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACvE,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAG,IAAAF,iBAAQ,EAAE,CAAC,CAAEhB,GAAI,CAAC;EAChD,MAAMmB,UAAU,GACfC,eAAM,CAAG,kBAAkBP,OAAS,EAAC,CAAE,IACvCO,eAAM,CAAG,gBAAe,CAAE,IAC1B3B,0BAA0B;EAC3B,MAAM4B,YAAY,GACjB,IAAAC,qCAA4B,EAC3BF,eAAM,CAACC,YAAY,EACnBD,eAAM,CAACG,gBACR,CAAC,IAAI3B,4BAA4B;EAElC,MAAM4B,aAAa,GAAG,IAAAC,eAAM,EAAE,IAAIC,qBAAQ,CAACC,KAAK,CAAE,CAAE,CAAE,CAAC,CAACC,OAAO;EAE/D,MAAMC,aAAa,GAAG,IAAAC,yBAAa,EAAEjB,OAAQ,CAAC,CAAC,CAAC;EAChD,MAAMkB,cAAc,GAAG,IAAAC,yBAAa,EAAEnB,OAAQ,CAAC;;EAE/C;EACA,IAAAoB,kBAAS,EAAE,MAAM;IAChB,IAAKvB,UAAU,IAAI,CAAEV,GAAG,EAAG;MAC1Be,qBAAqB,CAAE,IAAK,CAAC;IAC9B;EACD,CAAC,EAAE,EAAG,CAAC;EAEP,IAAAkB,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAEjC,GAAG,EAAG;MACZkB,SAAS,CAAE,KAAM,CAAC;MAClBM,aAAa,CAACU,QAAQ,CAAE,CAAE,CAAC;IAC5B,CAAC,MAAM,IAAKlC,GAAG,EAAG;MACjBmC,aAAa,CAAC,CAAC;IAChB;EACD,CAAC,EAAE,CAAEnC,GAAG,CAAG,CAAC;EAEZ,MAAMoC,mBAAmB,GAAG;IAC3B1C,eAAe,EAAE8B,aAAa,CAACa,WAAW,CAAE;MAC3CC,UAAU,EAAE,CAAE,CAAC,EAAE,CAAC,CAAE;MACpBC,WAAW,EAAE,CACZlB,YAAY,CAAC3B,eAAe,EAC5ByB,UAAU,CAACzB,eAAe;IAE5B,CAAE,CAAC;IACHC,KAAK,EAAE6B,aAAa,CAACa,WAAW,CAAE;MACjCC,UAAU,EAAE,CAAE,CAAC,EAAE,CAAC,CAAE;MACpBC,WAAW,EAAE,CAAElB,YAAY,CAAC1B,KAAK,EAAEwB,UAAU,CAACxB,KAAK;IACpD,CAAE,CAAC;IACH6C,MAAM,EAAE;EACT,CAAC;EAED,MAAM;IAAE9C,eAAe;IAAEC,KAAK;IAAE6C;EAAO,CAAC,GAAGvB,MAAM,GAC9CE,UAAU,GACViB,mBAAmB;EAEtB,SAASD,aAAaA,CAAA,EAAG;IACxBT,qBAAQ,CAACe,QAAQ,CAAE,CAClBf,qBAAQ,CAACgB,KAAK,CAAE7C,eAAgB,CAAC,EACjC6B,qBAAQ,CAACiB,MAAM,CAAEnB,aAAa,EAAE;MAC/BoB,OAAO,EAAE,CAAC;MACVC,QAAQ,EAAE/C,kBAAkB;MAC5BgD,MAAM,EAAEC,mBAAM,CAACC,MAAM;MACrBC,eAAe,EAAE;IAClB,CAAE,CAAC,CACF,CAAC,CAACC,KAAK,CAAE,MAAMhC,SAAS,CAAE,IAAK,CAAE,CAAC;EACrC;EAEA,MAAMiC,oBAAoB,GAAG,IAAAC,oBAAW,EAAE,MAAM;IAC/CrC,qBAAqB,CAAE,KAAM,CAAC;EAC/B,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMsC,mBAAmB,GAAG,IAAAD,oBAAW,EAAE,MAAM;IAC9CrC,qBAAqB,CAAE,IAAK,CAAC;EAC9B,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMuC,UAAU,GAAG,IAAAF,oBAAW,EAAE,MAAM;IACrC5B,aAAa,CAACU,QAAQ,CAAE,CAAE,CAAC;IAC3BhB,SAAS,CAAE,KAAM,CAAC;EACnB,CAAC,EAAE,CAAEM,aAAa,CAAG,CAAC;EAEtB,SAAS+B,WAAWA,CAAA,EAAG;IACtB,IAAK7C,UAAU,EAAG;MACjBK,qBAAqB,CAAE,IAAK,CAAC;IAC9B,CAAC,MAAM;MACNJ,OAAO,CAAC,CAAC;IACV;EACD;EAEA,MAAM6C,iBAAiB,GAAGxD,GAAG,GAC1B,IAAAyD,aAAO;EACP;EACA,IAAAvD,QAAE,EAAE,gBAAiB,CAAC,EACtB6B,cACA,CAAC,GACD,IAAA0B,aAAO;EACP;EACA,IAAAvD,QAAE,EAAE,mBAAoB,CAAC,EACzB6B,cACA,CAAC;EAEJ,OACC,IAAA2B,MAAA,CAAAC,aAAA,EAAC9E,YAAA,CAAA+E,IAAI;IAACC,KAAK,EAAGzC,eAAM,CAAC0C;EAAW,GAC7BpD,UAAU,IACX,IAAAgD,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAK,QAAA,QACC,IAAAL,MAAA,CAAAC,aAAA,EAAC5E,YAAA,CAAAiF,aAAa,QACb,IAAAN,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAgF,YAAY,QACZ,IAAAP,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAiF,aAAa;IACbC,KAAK,EAAG,IAAAV,aAAO;IACd;IACA,IAAAvD,QAAE,EAAE,gBAAiB,CAAC,EACtB6B,cACD,CAAG;IACHqC,IAAI,EAAGC,WAAM;IACbC,OAAO,EAAGjB,mBAAqB;IAC/BkB,QAAQ,EAAGvE;EAAK,CAChB,CACY,CACA,CAAC,EAChB,IAAA0D,MAAA,CAAAC,aAAA,EAAC1E,WAAA,CAAAuF,sBAAsB;IACtBC,SAAS,EAAG3D,kBAAoB;IAChCd,GAAG,EAAGQ,UAAU,CAACR,GAAK;IACtBC,KAAK,EAAGO,UAAU,CAACP,KAAO;IAC1ByE,GAAG,EAAGlE,UAAU,CAACkE,GAAK;IACtBpB,UAAU,EAAGA,UAAY;IACzBqB,OAAO,EAAGxB,oBAAsB;IAChC1C,aAAa,EAAGA,aAAe;IAC/BmE,OAAO,EAAG7E,mBAAqB;IAC/B8E,eAAe;EAAA,CACf,CACA,CACF,EAED,IAAAnB,MAAA,CAAAC,aAAA,EAAC9E,YAAA,CAAAiG,wBAAwB;IACxBC,OAAO,EAAGxB,WAAa;IACvByB,iBAAiB,EAAG,QAAU;IAC9BC,kBAAkB,EAAG,IAAAxB,aAAO;IAC3B;IACA,IAAAvD,QAAE,EAAE,gBAAiB,CAAC,EACtB6B,cACD,CAAG;IACHyB,iBAAiB,EAAGA;EAAmB,GAEvC,IAAAE,MAAA,CAAAC,aAAA,EAAC9E,YAAA,CAAA6C,QAAQ,CAACkC,IAAI;IACbC,KAAK,EAAG,CAAEzC,eAAM,CAAC8D,aAAa,EAAE;MAAExF;IAAgB,CAAC;EAAI,GAEvD,IAAAgE,MAAA,CAAAC,aAAA,EAACvE,MAAA,CAAA+F,IAAI;IACJC,QAAQ;IACRhB,IAAI,EAAGvC,aAAe;IACtBgC,KAAK,EAAG;MAAErB,MAAM;MAAE7C;IAAM;EAAG,CAC3B,CACa,CACU,CACrB,CAAC;AAET,CAAC;AAAC,IAAA0F,QAAA,GAEa,IAAAC,gBAAO,EAAE,CACvB,IAAAC,gBAAU,EAAE,CAAEC,MAAM,EAAE;EAAEC;AAAS,CAAC,KAAM;EACvC,MAAM;IAAEC;EAAS,CAAC,GAAGF,MAAM,CAAEG,kBAAiB,CAAC;EAE/C,MAAMC,KAAK,GAAGF,QAAQ,CAAED,QAAS,CAAC;EAClC,MAAM7E,IAAI,GAAGgF,KAAK,EAAEhF,IAAI,CAACiF,SAAS,CAAE,EAAG,CAAC;EAExC,OAAO;IACNjF;EACD,CAAC;AACF,CAAE,CAAC,CACF,CAAC,CAAEL,cAAe,CAAC;AAAAuF,OAAA,CAAAC,OAAA,GAAAV,QAAA"}
1
+ {"version":3,"names":["_reactNative","require","_blockEditor","_element","_components","_compose","_i18n","_icons","_data","_socialList","_editor","_interopRequireDefault","DEFAULT_ACTIVE_ICON_STYLES","backgroundColor","color","ANIMATION_DELAY","ANIMATION_DURATION","linkSettingsOptions","url","label","__","placeholder","autoFocus","linkLabel","footer","SocialLinkEdit","attributes","setAttributes","isSelected","onFocus","name","service","isLinkSheetVisible","setIsLinkSheetVisible","useState","hasUrl","setHasUrl","activeIcon","styles","animatedValue","useRef","Animated","Value","current","IconComponent","getIconBySite","socialLinkName","getNameBySite","useEffect","setValue","animateColors","interpolationColors","opacity","interpolate","inputRange","outputRange","sequence","delay","timing","toValue","duration","easing","Easing","circle","useNativeDriver","start","onCloseSettingsSheet","useCallback","onOpenSettingsSheet","onEmptyURL","onIconPress","accessibilityHint","sprintf","_react","createElement","View","style","container","Fragment","BlockControls","ToolbarGroup","ToolbarButton","title","icon","link","onClick","isActive","LinkSettingsNavigation","isVisible","rel","onClose","options","withBottomSheet","TouchableWithoutFeedback","onPress","accessibilityRole","accessibilityLabel","iconContainer","Icon","animated","_default","compose","withSelect","select","clientId","getBlock","blockEditorStore","block","substring","exports","default"],"sources":["@wordpress/block-library/src/social-link/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Animated, Easing, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect, useState, useRef, useCallback } from '@wordpress/element';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n} from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { link, Icon } from '@wordpress/icons';\nimport { withSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\nimport styles from './editor.scss';\n\nconst DEFAULT_ACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#f0f0f0',\n\tcolor: '#444',\n};\nconst ANIMATION_DELAY = 300;\nconst ANIMATION_DURATION = 400;\n\nconst linkSettingsOptions = {\n\turl: {\n\t\tlabel: __( 'URL' ),\n\t\tplaceholder: __( 'Add URL' ),\n\t\tautoFocus: true,\n\t},\n\tlinkLabel: {\n\t\tlabel: __( 'Link label' ),\n\t\tplaceholder: __( 'None' ),\n\t},\n\tfooter: {\n\t\tlabel: __( 'Briefly describe the link to help screen reader user' ),\n\t},\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tonFocus,\n\tname,\n} ) => {\n\tconst { url, service = name } = attributes;\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ hasUrl, setHasUrl ] = useState( !! url );\n\tconst activeIcon =\n\t\tstyles[ `wp-social-link-${ service }` ] ||\n\t\tstyles[ `wp-social-link` ] ||\n\t\tDEFAULT_ACTIVE_ICON_STYLES;\n\tconst animatedValue = useRef( new Animated.Value( 0 ) ).current;\n\n\tconst IconComponent = getIconBySite( service )();\n\tconst socialLinkName = getNameBySite( service );\n\n\t// When new social icon is added link sheet is opened automatically.\n\tuseEffect( () => {\n\t\tif ( isSelected && ! url ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! url ) {\n\t\t\tsetHasUrl( false );\n\t\t\tanimatedValue.setValue( 0 );\n\t\t} else if ( url ) {\n\t\t\tanimateColors();\n\t\t}\n\t}, [ url ] );\n\n\tconst interpolationColors = {\n\t\topacity: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [ 0.3, 1 ],\n\t\t} ),\n\t};\n\n\tconst { opacity } = hasUrl ? activeIcon : interpolationColors;\n\n\tfunction animateColors() {\n\t\tAnimated.sequence( [\n\t\t\tAnimated.delay( ANIMATION_DELAY ),\n\t\t\tAnimated.timing( animatedValue, {\n\t\t\t\ttoValue: 1,\n\t\t\t\tduration: ANIMATION_DURATION,\n\t\t\t\teasing: Easing.circle,\n\t\t\t\tuseNativeDriver: false,\n\t\t\t} ),\n\t\t] ).start( () => setHasUrl( true ) );\n\t}\n\n\tconst onCloseSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( false );\n\t}, [] );\n\n\tconst onOpenSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( true );\n\t}, [] );\n\n\tconst onEmptyURL = useCallback( () => {\n\t\tanimatedValue.setValue( 0 );\n\t\tsetHasUrl( false );\n\t}, [ animatedValue ] );\n\n\tfunction onIconPress() {\n\t\tif ( isSelected ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t} else {\n\t\t\tonFocus();\n\t\t}\n\t}\n\n\tconst accessibilityHint = url\n\t\t? sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has URL set' ),\n\t\t\t\tsocialLinkName\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has no URL set' ),\n\t\t\t\tsocialLinkName\n\t\t );\n\n\treturn (\n\t\t<View style={ styles.container }>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t\t\t\t\t__( 'Add link to %s' ),\n\t\t\t\t\t\t\t\t\tsocialLinkName\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onOpenSettingsSheet }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<LinkSettingsNavigation\n\t\t\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\t\t\turl={ attributes.url }\n\t\t\t\t\t\tlabel={ attributes.label }\n\t\t\t\t\t\trel={ attributes.rel }\n\t\t\t\t\t\tonEmptyURL={ onEmptyURL }\n\t\t\t\t\t\tonClose={ onCloseSettingsSheet }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\t\t\twithBottomSheet\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ onIconPress }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityLabel={ sprintf(\n\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t__( '%s social icon' ),\n\t\t\t\t\tsocialLinkName\n\t\t\t\t) }\n\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t>\n\t\t\t\t<Animated.View\n\t\t\t\t\tstyle={ [\n\t\t\t\t\t\tstyles.iconContainer,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tbackgroundColor: activeIcon.backgroundColor,\n\t\t\t\t\t\t\topacity,\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tanimated\n\t\t\t\t\t\ticon={ IconComponent }\n\t\t\t\t\t\tstyle={ { color: activeIcon.color } }\n\t\t\t\t\t/>\n\t\t\t\t</Animated.View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\n\t\tconst block = getBlock( clientId );\n\t\tconst name = block?.name.substring( 17 );\n\n\t\treturn {\n\t\t\tname,\n\t\t};\n\t} ),\n] )( SocialLinkEdit );\n"],"mappings":"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"}
@@ -26,13 +26,13 @@ function DimensionInput({
26
26
  value = ''
27
27
  }) {
28
28
  const inputId = (0, _compose.useInstanceId)(_components.__experimentalUnitControl, 'block-spacer-height-input');
29
- const spacingSizes = (0, _blockEditor.useSetting)('spacing.spacingSizes');
29
+ const [spacingSizes, spacingUnits] = (0, _blockEditor.useSettings)('spacing.spacingSizes', 'spacing.units');
30
30
  // In most contexts the spacer size cannot meaningfully be set to a
31
31
  // percentage, since this is relative to the parent container. This
32
32
  // unit is disabled from the UI.
33
- const availableUnitSettings = ((0, _blockEditor.useSetting)('spacing.units') || undefined)?.filter(availableUnit => availableUnit !== '%');
33
+ const availableUnits = spacingUnits ? spacingUnits.filter(unit => unit !== '%') : ['px', 'em', 'rem', 'vw', 'vh'];
34
34
  const units = (0, _components.__experimentalUseCustomUnits)({
35
- availableUnits: availableUnitSettings || ['px', 'em', 'rem', 'vw', 'vh'],
35
+ availableUnits,
36
36
  defaultValues: {
37
37
  px: 100,
38
38
  em: 10,
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_blockEditor","_components","_compose","_primitives","_constants","DimensionInput","label","onChange","isResizing","value","inputId","useInstanceId","UnitControl","spacingSizes","useSetting","availableUnitSettings","undefined","filter","availableUnit","units","useCustomUnits","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","all","parsedQuantity","parsedUnit","parseQuantityAndUnitFromRawValue","computedValue","isValueSpacingPreset","join","_react","createElement","Fragment","length","BaseControl","id","__experimentalUnitControl","isResetValueOnUnitChange","min","MIN_SPACER_SIZE","style","maxWidth","View","className","__experimentalSpacingSizesControl","values","sides","allowReset","splitOnAxis","showSideInLabel","SpacerControls","setAttributes","orientation","height","width","InspectorControls","PanelBody","title","__","nextWidth","nextHeight"],"sources":["@wordpress/block-library/src/spacer/controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseSetting,\n\t__experimentalSpacingSizesControl as SpacingSizesControl,\n\tisValueSpacingPreset,\n} from '@wordpress/block-editor';\nimport {\n\tBaseControl,\n\tPanelBody,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { View } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SPACER_SIZE } from './constants';\n\nfunction DimensionInput( { label, onChange, isResizing, value = '' } ) {\n\tconst inputId = useInstanceId( UnitControl, 'block-spacer-height-input' );\n\tconst spacingSizes = useSetting( 'spacing.spacingSizes' );\n\t// In most contexts the spacer size cannot meaningfully be set to a\n\t// percentage, since this is relative to the parent container. This\n\t// unit is disabled from the UI.\n\tconst availableUnitSettings = (\n\t\tuseSetting( 'spacing.units' ) || undefined\n\t)?.filter( ( availableUnit ) => availableUnit !== '%' );\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnitSettings || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 100, em: 10, rem: 10, vw: 10, vh: 25 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tonChange( unprocessedValue.all );\n\t};\n\n\t// Force the unit to update to `px` when the Spacer is being resized.\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\tconst computedValue = isValueSpacingPreset( value )\n\t\t? value\n\t\t: [ parsedQuantity, isResizing ? 'px' : parsedUnit ].join( '' );\n\n\treturn (\n\t\t<>\n\t\t\t{ ( ! spacingSizes || spacingSizes?.length === 0 ) && (\n\t\t\t\t<BaseControl label={ label } id={ inputId }>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tid={ inputId }\n\t\t\t\t\t\tisResetValueOnUnitChange\n\t\t\t\t\t\tmin={ MIN_SPACER_SIZE }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\t\t\tvalue={ computedValue }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t/>\n\t\t\t\t</BaseControl>\n\t\t\t) }\n\n\t\t\t{ spacingSizes?.length > 0 && (\n\t\t\t\t<View className=\"tools-panel-item-spacing\">\n\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\tvalues={ { all: computedValue } }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tsides={ [ 'all' ] }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ false }\n\t\t\t\t\t\tshowSideInLabel={ false }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default function SpacerControls( {\n\tsetAttributes,\n\torientation,\n\theight,\n\twidth,\n\tisResizing,\n} ) {\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t{ orientation === 'horizontal' && (\n\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tvalue={ width }\n\t\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: nextWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ orientation !== 'horizontal' && (\n\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\t\tvalue={ height }\n\t\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { height: nextHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_i18n","require","_blockEditor","_components","_compose","_primitives","_constants","DimensionInput","label","onChange","isResizing","value","inputId","useInstanceId","UnitControl","spacingSizes","spacingUnits","useSettings","availableUnits","filter","unit","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","all","parsedQuantity","parsedUnit","parseQuantityAndUnitFromRawValue","computedValue","isValueSpacingPreset","join","_react","createElement","Fragment","length","BaseControl","id","__experimentalUnitControl","isResetValueOnUnitChange","min","MIN_SPACER_SIZE","style","maxWidth","View","className","__experimentalSpacingSizesControl","values","sides","allowReset","splitOnAxis","showSideInLabel","SpacerControls","setAttributes","orientation","height","width","InspectorControls","PanelBody","title","__","nextWidth","nextHeight"],"sources":["@wordpress/block-library/src/spacer/controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\t__experimentalSpacingSizesControl as SpacingSizesControl,\n\tisValueSpacingPreset,\n} from '@wordpress/block-editor';\nimport {\n\tBaseControl,\n\tPanelBody,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { View } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SPACER_SIZE } from './constants';\n\nfunction DimensionInput( { label, onChange, isResizing, value = '' } ) {\n\tconst inputId = useInstanceId( UnitControl, 'block-spacer-height-input' );\n\tconst [ spacingSizes, spacingUnits ] = useSettings(\n\t\t'spacing.spacingSizes',\n\t\t'spacing.units'\n\t);\n\t// In most contexts the spacer size cannot meaningfully be set to a\n\t// percentage, since this is relative to the parent container. This\n\t// unit is disabled from the UI.\n\tconst availableUnits = spacingUnits\n\t\t? spacingUnits.filter( ( unit ) => unit !== '%' )\n\t\t: [ 'px', 'em', 'rem', 'vw', 'vh' ];\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits,\n\t\tdefaultValues: { px: 100, em: 10, rem: 10, vw: 10, vh: 25 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tonChange( unprocessedValue.all );\n\t};\n\n\t// Force the unit to update to `px` when the Spacer is being resized.\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\tconst computedValue = isValueSpacingPreset( value )\n\t\t? value\n\t\t: [ parsedQuantity, isResizing ? 'px' : parsedUnit ].join( '' );\n\n\treturn (\n\t\t<>\n\t\t\t{ ( ! spacingSizes || spacingSizes?.length === 0 ) && (\n\t\t\t\t<BaseControl label={ label } id={ inputId }>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\tid={ inputId }\n\t\t\t\t\t\tisResetValueOnUnitChange\n\t\t\t\t\t\tmin={ MIN_SPACER_SIZE }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\t\t\tvalue={ computedValue }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t/>\n\t\t\t\t</BaseControl>\n\t\t\t) }\n\n\t\t\t{ spacingSizes?.length > 0 && (\n\t\t\t\t<View className=\"tools-panel-item-spacing\">\n\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\tvalues={ { all: computedValue } }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tsides={ [ 'all' ] }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ false }\n\t\t\t\t\t\tshowSideInLabel={ false }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default function SpacerControls( {\n\tsetAttributes,\n\torientation,\n\theight,\n\twidth,\n\tisResizing,\n} ) {\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t{ orientation === 'horizontal' && (\n\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tvalue={ width }\n\t\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: nextWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ orientation !== 'horizontal' && (\n\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\t\tvalue={ height }\n\t\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { height: nextHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n}\n"],"mappings":"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"}
@@ -65,8 +65,9 @@ function Controls({
65
65
  const handleUnitChange = (0, _element.useCallback)(nextUnit => {
66
66
  setNewDimensions(value, nextUnit);
67
67
  }, [height, width]);
68
+ const [availableUnits] = (0, _blockEditor.useSettings)('spacing.units');
68
69
  const units = (0, _components.__experimentalUseCustomUnits)({
69
- availableUnits: (0, _blockEditor.useSetting)('spacing.units') || ['px', 'em', 'rem', 'vw', 'vh'],
70
+ availableUnits: availableUnits || ['px', 'em', 'rem', 'vw', 'vh'],
70
71
  defaultValues: DEFAULT_VALUES
71
72
  });
72
73
  return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_components.PanelBody, {
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_blockEditor","_i18n","_constants","_style","_interopRequireDefault","DEFAULT_VALUES","px","em","rem","vw","vh","exports","Controls","attributes","context","setAttributes","presetWidth","presetHeight","orientation","label","__","width","height","valueToConvert","valueUnit","unit","getValueAndUnit","value","Number","currentUnit","setNewDimensions","nextValue","nextUnit","valueWithUnit","handleChange","useCallback","handleUnitChange","units","useCustomUnits","availableUnits","useSetting","defaultValues","_react","createElement","Fragment","PanelBody","title","UnitControl","min","MIN_SPACER_SIZE","onChange","onUnitChange","style","styles","rangeCellContainer","_default","default"],"sources":["@wordpress/block-library/src/spacer/controls.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tUnitControl,\n\tgetValueAndUnit,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { useSetting } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SPACER_SIZE } from './constants';\nimport styles from './style.scss';\n\nexport const DEFAULT_VALUES = { px: 100, em: 10, rem: 10, vw: 10, vh: 25 };\n\nfunction Controls( {\n\tattributes,\n\tcontext,\n\tsetAttributes,\n\tpresetWidth,\n\tpresetHeight,\n} ) {\n\tconst { orientation } = context;\n\tconst label = orientation !== 'horizontal' ? __( 'Height' ) : __( 'Width' );\n\n\tconst width = presetWidth || attributes.width;\n\tconst height = presetHeight || attributes.height;\n\tconst { valueToConvert, valueUnit: unit } =\n\t\tgetValueAndUnit( orientation !== 'horizontal' ? height : width ) || {};\n\tconst value = Number( valueToConvert );\n\tconst currentUnit = unit || 'px';\n\n\tconst setNewDimensions = ( nextValue, nextUnit ) => {\n\t\tconst valueWithUnit = `${ nextValue }${ nextUnit }`;\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tsetAttributes( { width: valueWithUnit } );\n\t\t} else {\n\t\t\tsetAttributes( { height: valueWithUnit } );\n\t\t}\n\t};\n\n\tconst handleChange = useCallback(\n\t\t( nextValue ) => {\n\t\t\tsetNewDimensions( nextValue, currentUnit );\n\t\t},\n\t\t[ height, width ]\n\t);\n\n\tconst handleUnitChange = useCallback(\n\t\t( nextUnit ) => {\n\t\t\tsetNewDimensions( value, nextUnit );\n\t\t},\n\t\t[ height, width ]\n\t);\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: DEFAULT_VALUES,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<PanelBody title={ __( 'Dimensions' ) }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tmin={ MIN_SPACER_SIZE }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ handleChange }\n\t\t\t\t\tonUnitChange={ handleUnitChange }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tunit={ currentUnit }\n\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</>\n\t);\n}\n\nexport default Controls;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_element","_blockEditor","_i18n","_constants","_style","_interopRequireDefault","DEFAULT_VALUES","px","em","rem","vw","vh","exports","Controls","attributes","context","setAttributes","presetWidth","presetHeight","orientation","label","__","width","height","valueToConvert","valueUnit","unit","getValueAndUnit","value","Number","currentUnit","setNewDimensions","nextValue","nextUnit","valueWithUnit","handleChange","useCallback","handleUnitChange","availableUnits","useSettings","units","useCustomUnits","defaultValues","_react","createElement","Fragment","PanelBody","title","UnitControl","min","MIN_SPACER_SIZE","onChange","onUnitChange","style","styles","rangeCellContainer","_default","default"],"sources":["@wordpress/block-library/src/spacer/controls.native.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tUnitControl,\n\tgetValueAndUnit,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { useSettings } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SPACER_SIZE } from './constants';\nimport styles from './style.scss';\n\nexport const DEFAULT_VALUES = { px: 100, em: 10, rem: 10, vw: 10, vh: 25 };\n\nfunction Controls( {\n\tattributes,\n\tcontext,\n\tsetAttributes,\n\tpresetWidth,\n\tpresetHeight,\n} ) {\n\tconst { orientation } = context;\n\tconst label = orientation !== 'horizontal' ? __( 'Height' ) : __( 'Width' );\n\n\tconst width = presetWidth || attributes.width;\n\tconst height = presetHeight || attributes.height;\n\tconst { valueToConvert, valueUnit: unit } =\n\t\tgetValueAndUnit( orientation !== 'horizontal' ? height : width ) || {};\n\tconst value = Number( valueToConvert );\n\tconst currentUnit = unit || 'px';\n\n\tconst setNewDimensions = ( nextValue, nextUnit ) => {\n\t\tconst valueWithUnit = `${ nextValue }${ nextUnit }`;\n\t\tif ( orientation === 'horizontal' ) {\n\t\t\tsetAttributes( { width: valueWithUnit } );\n\t\t} else {\n\t\t\tsetAttributes( { height: valueWithUnit } );\n\t\t}\n\t};\n\n\tconst handleChange = useCallback(\n\t\t( nextValue ) => {\n\t\t\tsetNewDimensions( nextValue, currentUnit );\n\t\t},\n\t\t[ height, width ]\n\t);\n\n\tconst handleUnitChange = useCallback(\n\t\t( nextUnit ) => {\n\t\t\tsetNewDimensions( value, nextUnit );\n\t\t},\n\t\t[ height, width ]\n\t);\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', 'em', 'rem', 'vw', 'vh' ],\n\t\tdefaultValues: DEFAULT_VALUES,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<PanelBody title={ __( 'Dimensions' ) }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tmin={ MIN_SPACER_SIZE }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ handleChange }\n\t\t\t\t\tonUnitChange={ handleUnitChange }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tunit={ currentUnit }\n\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</>\n\t);\n}\n\nexport default Controls;\n"],"mappings":"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"}
@@ -111,7 +111,7 @@ const SpacerEdit = ({
111
111
  selfStretch,
112
112
  flexSize
113
113
  } = layout;
114
- const spacingSizes = (0, _blockEditor.useSetting)('spacing.spacingSizes');
114
+ const [spacingSizes] = (0, _blockEditor.useSettings)('spacing.spacingSizes');
115
115
  const [isResizing, setIsResizing] = (0, _element.useState)(false);
116
116
  const [temporaryHeight, setTemporaryHeight] = (0, _element.useState)(null);
117
117
  const [temporaryWidth, setTemporaryWidth] = (0, _element.useState)(null);
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_components","_element","_primitives","_data","_controls","_constants","ResizableSpacer","orientation","onResizeStart","onResize","onResizeStop","isSelected","isResizing","setIsResizing","props","getCurrentSize","elt","clientWidth","clientHeight","getNextVal","_react","createElement","ResizableBox","className","classnames","_event","_direction","nextVal","__experimentalShowTooltip","__experimentalTooltipProps","axis","position","isVisible","showHandle","SpacerEdit","attributes","setAttributes","toggleSelection","context","__unstableParentLayout","parentLayout","disableCustomSpacingSizes","useSelect","select","editorSettings","blockEditorStore","getSettings","parentOrientation","type","isFlexLayout","inheritedOrientation","height","width","style","blockStyle","layout","selfStretch","flexSize","spacingSizes","useSetting","useState","temporaryHeight","setTemporaryHeight","temporaryWidth","setTemporaryWidth","handleOnVerticalResizeStop","newHeight","handleOnHorizontalResizeStop","newWidth","getHeightForVerticalBlocks","undefined","getSpacingPresetCssVar","getWidthForHorizontalBlocks","sizeConditionalOnOrientation","minWidth","flexBasis","flexGrow","resizableBoxWithOrientation","blockOrientation","MIN_SPACER_SIZE","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","Fragment","minHeight","useEffect","newSize","getCustomValueFromPreset","View","useBlockProps","default","_default","exports"],"sources":["@wordpress/block-library/src/spacer/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseSetting,\n\tgetCustomValueFromPreset,\n\tgetSpacingPresetCssVar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ResizableBox } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport SpacerControls from './controls';\nimport { MIN_SPACER_SIZE } from './constants';\n\nconst ResizableSpacer = ( {\n\torientation,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\tisSelected,\n\tisResizing,\n\tsetIsResizing,\n\t...props\n} ) => {\n\tconst getCurrentSize = ( elt ) => {\n\t\treturn orientation === 'horizontal'\n\t\t\t? elt.clientWidth\n\t\t\t: elt.clientHeight;\n\t};\n\n\tconst getNextVal = ( elt ) => {\n\t\treturn `${ getCurrentSize( elt ) }px`;\n\t};\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( 'block-library-spacer__resize-container', {\n\t\t\t\t'resize-horizontal': orientation === 'horizontal',\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t} ) }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getNextVal( elt );\n\t\t\t\tonResizeStart( nextVal );\n\t\t\t\tonResize( nextVal );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( getNextVal( elt ) );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getCurrentSize( elt );\n\t\t\t\tonResizeStop( `${ nextVal }px` );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t__experimentalShowTooltip={ true }\n\t\t\t__experimentalTooltipProps={ {\n\t\t\t\taxis: orientation === 'horizontal' ? 'x' : 'y',\n\t\t\t\tposition: 'corner',\n\t\t\t\tisVisible: isResizing,\n\t\t\t} }\n\t\t\tshowHandle={ isSelected }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\n\nconst SpacerEdit = ( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\ttoggleSelection,\n\tcontext,\n\t__unstableParentLayout: parentLayout,\n\tclassName,\n} ) => {\n\tconst disableCustomSpacingSizes = useSelect( ( select ) => {\n\t\tconst editorSettings = select( blockEditorStore ).getSettings();\n\t\treturn editorSettings?.disableCustomSpacingSizes;\n\t} );\n\tconst { orientation } = context;\n\tconst { orientation: parentOrientation, type } = parentLayout || {};\n\t// Check if the spacer is inside a flex container.\n\tconst isFlexLayout = type === 'flex';\n\t// If the spacer is inside a flex container, it should either inherit the orientation\n\t// of the parent or use the flex default orientation.\n\tconst inheritedOrientation =\n\t\t! parentOrientation && isFlexLayout\n\t\t\t? 'horizontal'\n\t\t\t: parentOrientation || orientation;\n\tconst { height, width, style: blockStyle = {} } = attributes;\n\n\tconst { layout = {} } = blockStyle;\n\tconst { selfStretch, flexSize } = layout;\n\n\tconst spacingSizes = useSetting( 'spacing.spacingSizes' );\n\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ temporaryHeight, setTemporaryHeight ] = useState( null );\n\tconst [ temporaryWidth, setTemporaryWidth ] = useState( null );\n\n\tconst onResizeStart = () => toggleSelection( false );\n\tconst onResizeStop = () => toggleSelection( true );\n\n\tconst handleOnVerticalResizeStop = ( newHeight ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newHeight,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { height: newHeight } );\n\t\tsetTemporaryHeight( null );\n\t};\n\n\tconst handleOnHorizontalResizeStop = ( newWidth ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newWidth,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { width: newWidth } );\n\t\tsetTemporaryWidth( null );\n\t};\n\n\tconst getHeightForVerticalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryHeight || getSpacingPresetCssVar( height ) || undefined;\n\t};\n\n\tconst getWidthForHorizontalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryWidth || getSpacingPresetCssVar( width ) || undefined;\n\t};\n\n\tconst sizeConditionalOnOrientation =\n\t\tinheritedOrientation === 'horizontal'\n\t\t\t? temporaryWidth || flexSize\n\t\t\t: temporaryHeight || flexSize;\n\n\tconst style = {\n\t\theight:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? 24\n\t\t\t\t: getHeightForVerticalBlocks(),\n\t\twidth:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? getWidthForHorizontalBlocks()\n\t\t\t\t: undefined,\n\t\t// In vertical flex containers, the spacer shrinks to nothing without a minimum width.\n\t\tminWidth:\n\t\t\tinheritedOrientation === 'vertical' && isFlexLayout\n\t\t\t\t? 48\n\t\t\t\t: undefined,\n\t\t// Add flex-basis so temporary sizes are respected.\n\t\tflexBasis: isFlexLayout ? sizeConditionalOnOrientation : undefined,\n\t\t// Remove flex-grow when resizing.\n\t\tflexGrow: isFlexLayout && isResizing ? 0 : undefined,\n\t};\n\n\tconst resizableBoxWithOrientation = ( blockOrientation ) => {\n\t\tif ( blockOrientation === 'horizontal' ) {\n\t\t\treturn (\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminWidth={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: true,\n\t\t\t\t\t\tbottom: false,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryWidth }\n\t\t\t\t\tonResizeStop={ handleOnHorizontalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminHeight={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: false,\n\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryHeight }\n\t\t\t\t\tonResizeStop={ handleOnVerticalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisFlexLayout &&\n\t\t\tselfStretch !== 'fill' &&\n\t\t\tselfStretch !== 'fit' &&\n\t\t\t! flexSize\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\t// If spacer is moving from a vertical container to a horizontal container,\n\t\t\t\t// it might not have width but have height instead.\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if (\n\t\t\tisFlexLayout &&\n\t\t\t( selfStretch === 'fill' || selfStretch === 'fit' )\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if ( ! isFlexLayout && ( selfStretch || flexSize ) ) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: flexSize,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: flexSize,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: undefined,\n\t\t\t\t\t\tselfStretch: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [\n\t\tblockStyle,\n\t\tflexSize,\n\t\theight,\n\t\tinheritedOrientation,\n\t\tisFlexLayout,\n\t\tlayout,\n\t\tselfStretch,\n\t\tsetAttributes,\n\t\tspacingSizes,\n\t\twidth,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<View\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tstyle,\n\t\t\t\t\tclassName: classnames( className, {\n\t\t\t\t\t\t'custom-sizes-disabled': disableCustomSpacingSizes,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ resizableBoxWithOrientation( inheritedOrientation ) }\n\t\t\t</View>\n\t\t\t{ ! isFlexLayout && (\n\t\t\t\t<SpacerControls\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\theight={ temporaryHeight || height }\n\t\t\t\t\twidth={ temporaryWidth || width }\n\t\t\t\t\torientation={ inheritedOrientation }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default SpacerEdit;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAOA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AAKA,IAAAM,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AAxBA;AACA;AACA;;AAGA;AACA;AACA;;AAaA;AACA;AACA;;AAIA,MAAMQ,eAAe,GAAGA,CAAE;EACzBC,WAAW;EACXC,aAAa;EACbC,QAAQ;EACRC,YAAY;EACZC,UAAU;EACVC,UAAU;EACVC,aAAa;EACb,GAAGC;AACJ,CAAC,KAAM;EACN,MAAMC,cAAc,GAAKC,GAAG,IAAM;IACjC,OAAOT,WAAW,KAAK,YAAY,GAChCS,GAAG,CAACC,WAAW,GACfD,GAAG,CAACE,YAAY;EACpB,CAAC;EAED,MAAMC,UAAU,GAAKH,GAAG,IAAM;IAC7B,OAAQ,GAAGD,cAAc,CAAEC,GAAI,CAAG,IAAG;EACtC,CAAC;EAED,OACC,IAAAI,MAAA,CAAAC,aAAA,EAACrB,WAAA,CAAAsB,YAAY;IACZC,SAAS,EAAG,IAAAC,mBAAU,EAAE,wCAAwC,EAAE;MACjE,mBAAmB,EAAEjB,WAAW,KAAK,YAAY;MACjD,aAAa,EAAEK,UAAU;MACzB,aAAa,EAAED;IAChB,CAAE,CAAG;IACLH,aAAa,EAAGA,CAAEiB,MAAM,EAAEC,UAAU,EAAEV,GAAG,KAAM;MAC9C,MAAMW,OAAO,GAAGR,UAAU,CAAEH,GAAI,CAAC;MACjCR,aAAa,CAAEmB,OAAQ,CAAC;MACxBlB,QAAQ,CAAEkB,OAAQ,CAAC;IACpB,CAAG;IACHlB,QAAQ,EAAGA,CAAEgB,MAAM,EAAEC,UAAU,EAAEV,GAAG,KAAM;MACzCP,QAAQ,CAAEU,UAAU,CAAEH,GAAI,CAAE,CAAC;MAC7B,IAAK,CAAEJ,UAAU,EAAG;QACnBC,aAAa,CAAE,IAAK,CAAC;MACtB;IACD,CAAG;IACHH,YAAY,EAAGA,CAAEe,MAAM,EAAEC,UAAU,EAAEV,GAAG,KAAM;MAC7C,MAAMW,OAAO,GAAGZ,cAAc,CAAEC,GAAI,CAAC;MACrCN,YAAY,CAAG,GAAGiB,OAAS,IAAI,CAAC;MAChCd,aAAa,CAAE,KAAM,CAAC;IACvB,CAAG;IACHe,yBAAyB,EAAG,IAAM;IAClCC,0BAA0B,EAAG;MAC5BC,IAAI,EAAEvB,WAAW,KAAK,YAAY,GAAG,GAAG,GAAG,GAAG;MAC9CwB,QAAQ,EAAE,QAAQ;MAClBC,SAAS,EAAEpB;IACZ,CAAG;IACHqB,UAAU,EAAGtB,UAAY;IAAA,GACpBG;EAAK,CACV,CAAC;AAEJ,CAAC;AAED,MAAMoB,UAAU,GAAGA,CAAE;EACpBC,UAAU;EACVxB,UAAU;EACVyB,aAAa;EACbC,eAAe;EACfC,OAAO;EACPC,sBAAsB,EAAEC,YAAY;EACpCjB;AACD,CAAC,KAAM;EACN,MAAMkB,yBAAyB,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC1D,MAAMC,cAAc,GAAGD,MAAM,CAAEE,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC;IAC/D,OAAOF,cAAc,EAAEH,yBAAyB;EACjD,CAAE,CAAC;EACH,MAAM;IAAElC;EAAY,CAAC,GAAG+B,OAAO;EAC/B,MAAM;IAAE/B,WAAW,EAAEwC,iBAAiB;IAAEC;EAAK,CAAC,GAAGR,YAAY,IAAI,CAAC,CAAC;EACnE;EACA,MAAMS,YAAY,GAAGD,IAAI,KAAK,MAAM;EACpC;EACA;EACA,MAAME,oBAAoB,GACzB,CAAEH,iBAAiB,IAAIE,YAAY,GAChC,YAAY,GACZF,iBAAiB,IAAIxC,WAAW;EACpC,MAAM;IAAE4C,MAAM;IAAEC,KAAK;IAAEC,KAAK,EAAEC,UAAU,GAAG,CAAC;EAAE,CAAC,GAAGnB,UAAU;EAE5D,MAAM;IAAEoB,MAAM,GAAG,CAAC;EAAE,CAAC,GAAGD,UAAU;EAClC,MAAM;IAAEE,WAAW;IAAEC;EAAS,CAAC,GAAGF,MAAM;EAExC,MAAMG,YAAY,GAAG,IAAAC,uBAAU,EAAE,sBAAuB,CAAC;EAEzD,MAAM,CAAE/C,UAAU,EAAEC,aAAa,CAAE,GAAG,IAAA+C,iBAAQ,EAAE,KAAM,CAAC;EACvD,MAAM,CAAEC,eAAe,EAAEC,kBAAkB,CAAE,GAAG,IAAAF,iBAAQ,EAAE,IAAK,CAAC;EAChE,MAAM,CAAEG,cAAc,EAAEC,iBAAiB,CAAE,GAAG,IAAAJ,iBAAQ,EAAE,IAAK,CAAC;EAE9D,MAAMpD,aAAa,GAAGA,CAAA,KAAM6B,eAAe,CAAE,KAAM,CAAC;EACpD,MAAM3B,YAAY,GAAGA,CAAA,KAAM2B,eAAe,CAAE,IAAK,CAAC;EAElD,MAAM4B,0BAA0B,GAAKC,SAAS,IAAM;IACnDxD,YAAY,CAAC,CAAC;IAEd,IAAKuC,YAAY,EAAG;MACnBb,aAAa,CAAE;QACdiB,KAAK,EAAE;UACN,GAAGC,UAAU;UACbC,MAAM,EAAE;YACP,GAAGA,MAAM;YACTE,QAAQ,EAAES,SAAS;YACnBV,WAAW,EAAE;UACd;QACD;MACD,CAAE,CAAC;IACJ;IAEApB,aAAa,CAAE;MAAEe,MAAM,EAAEe;IAAU,CAAE,CAAC;IACtCJ,kBAAkB,CAAE,IAAK,CAAC;EAC3B,CAAC;EAED,MAAMK,4BAA4B,GAAKC,QAAQ,IAAM;IACpD1D,YAAY,CAAC,CAAC;IAEd,IAAKuC,YAAY,EAAG;MACnBb,aAAa,CAAE;QACdiB,KAAK,EAAE;UACN,GAAGC,UAAU;UACbC,MAAM,EAAE;YACP,GAAGA,MAAM;YACTE,QAAQ,EAAEW,QAAQ;YAClBZ,WAAW,EAAE;UACd;QACD;MACD,CAAE,CAAC;IACJ;IAEApB,aAAa,CAAE;MAAEgB,KAAK,EAAEgB;IAAS,CAAE,CAAC;IACpCJ,iBAAiB,CAAE,IAAK,CAAC;EAC1B,CAAC;EAED,MAAMK,0BAA0B,GAAGA,CAAA,KAAM;IACxC,IAAKpB,YAAY,EAAG;MACnB,OAAOqB,SAAS;IACjB;IACA,OAAOT,eAAe,IAAI,IAAAU,mCAAsB,EAAEpB,MAAO,CAAC,IAAImB,SAAS;EACxE,CAAC;EAED,MAAME,2BAA2B,GAAGA,CAAA,KAAM;IACzC,IAAKvB,YAAY,EAAG;MACnB,OAAOqB,SAAS;IACjB;IACA,OAAOP,cAAc,IAAI,IAAAQ,mCAAsB,EAAEnB,KAAM,CAAC,IAAIkB,SAAS;EACtE,CAAC;EAED,MAAMG,4BAA4B,GACjCvB,oBAAoB,KAAK,YAAY,GAClCa,cAAc,IAAIN,QAAQ,GAC1BI,eAAe,IAAIJ,QAAQ;EAE/B,MAAMJ,KAAK,GAAG;IACbF,MAAM,EACLD,oBAAoB,KAAK,YAAY,GAClC,EAAE,GACFmB,0BAA0B,CAAC,CAAC;IAChCjB,KAAK,EACJF,oBAAoB,KAAK,YAAY,GAClCsB,2BAA2B,CAAC,CAAC,GAC7BF,SAAS;IACb;IACAI,QAAQ,EACPxB,oBAAoB,KAAK,UAAU,IAAID,YAAY,GAChD,EAAE,GACFqB,SAAS;IACb;IACAK,SAAS,EAAE1B,YAAY,GAAGwB,4BAA4B,GAAGH,SAAS;IAClE;IACAM,QAAQ,EAAE3B,YAAY,IAAIrC,UAAU,GAAG,CAAC,GAAG0D;EAC5C,CAAC;EAED,MAAMO,2BAA2B,GAAKC,gBAAgB,IAAM;IAC3D,IAAKA,gBAAgB,KAAK,YAAY,EAAG;MACxC,OACC,IAAA1D,MAAA,CAAAC,aAAA,EAACf,eAAe;QACfoE,QAAQ,EAAGK,0BAAiB;QAC5BC,MAAM,EAAG;UACRC,GAAG,EAAE,KAAK;UACVC,KAAK,EAAE,IAAI;UACXC,MAAM,EAAE,KAAK;UACbC,IAAI,EAAE,KAAK;UACXC,QAAQ,EAAE,KAAK;UACfC,WAAW,EAAE,KAAK;UAClBC,UAAU,EAAE,KAAK;UACjBC,OAAO,EAAE;QACV,CAAG;QACHjF,WAAW,EAAGuE,gBAAkB;QAChCtE,aAAa,EAAGA,aAAe;QAC/BC,QAAQ,EAAGuD,iBAAmB;QAC9BtD,YAAY,EAAGyD,4BAA8B;QAC7CxD,UAAU,EAAGA,UAAY;QACzBC,UAAU,EAAGA,UAAY;QACzBC,aAAa,EAAGA;MAAe,CAC/B,CAAC;IAEJ;IAEA,OACC,IAAAO,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAqE,QAAA,QACC,IAAArE,MAAA,CAAAC,aAAA,EAACf,eAAe;MACfoF,SAAS,EAAGX,0BAAiB;MAC7BC,MAAM,EAAG;QACRC,GAAG,EAAE,KAAK;QACVC,KAAK,EAAE,KAAK;QACZC,MAAM,EAAE,IAAI;QACZC,IAAI,EAAE,KAAK;QACXC,QAAQ,EAAE,KAAK;QACfC,WAAW,EAAE,KAAK;QAClBC,UAAU,EAAE,KAAK;QACjBC,OAAO,EAAE;MACV,CAAG;MACHjF,WAAW,EAAGuE,gBAAkB;MAChCtE,aAAa,EAAGA,aAAe;MAC/BC,QAAQ,EAAGqD,kBAAoB;MAC/BpD,YAAY,EAAGuD,0BAA4B;MAC3CtD,UAAU,EAAGA,UAAY;MACzBC,UAAU,EAAGA,UAAY;MACzBC,aAAa,EAAGA;IAAe,CAC/B,CACA,CAAC;EAEL,CAAC;EAED,IAAA8E,kBAAS,EAAE,MAAM;IAChB,IACC1C,YAAY,IACZO,WAAW,KAAK,MAAM,IACtBA,WAAW,KAAK,KAAK,IACrB,CAAEC,QAAQ,EACT;MACD,IAAKP,oBAAoB,KAAK,YAAY,EAAG;QAC5C;QACA;QACA,MAAM0C,OAAO,GACZ,IAAAC,qCAAwB,EAAEzC,KAAK,EAAEM,YAAa,CAAC,IAC/C,IAAAmC,qCAAwB,EAAE1C,MAAM,EAAEO,YAAa,CAAC,IAChD,OAAO;QACRtB,aAAa,CAAE;UACdgB,KAAK,EAAE,KAAK;UACZC,KAAK,EAAE;YACN,GAAGC,UAAU;YACbC,MAAM,EAAE;cACP,GAAGA,MAAM;cACTE,QAAQ,EAAEmC,OAAO;cACjBpC,WAAW,EAAE;YACd;UACD;QACD,CAAE,CAAC;MACJ,CAAC,MAAM;QACN,MAAMoC,OAAO,GACZ,IAAAC,qCAAwB,EAAE1C,MAAM,EAAEO,YAAa,CAAC,IAChD,IAAAmC,qCAAwB,EAAEzC,KAAK,EAAEM,YAAa,CAAC,IAC/C,OAAO;QACRtB,aAAa,CAAE;UACde,MAAM,EAAE,KAAK;UACbE,KAAK,EAAE;YACN,GAAGC,UAAU;YACbC,MAAM,EAAE;cACP,GAAGA,MAAM;cACTE,QAAQ,EAAEmC,OAAO;cACjBpC,WAAW,EAAE;YACd;UACD;QACD,CAAE,CAAC;MACJ;IACD,CAAC,MAAM,IACNP,YAAY,KACVO,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,KAAK,CAAE,EAClD;MACD,IAAKN,oBAAoB,KAAK,YAAY,EAAG;QAC5Cd,aAAa,CAAE;UACdgB,KAAK,EAAEkB;QACR,CAAE,CAAC;MACJ,CAAC,MAAM;QACNlC,aAAa,CAAE;UACde,MAAM,EAAEmB;QACT,CAAE,CAAC;MACJ;IACD,CAAC,MAAM,IAAK,CAAErB,YAAY,KAAMO,WAAW,IAAIC,QAAQ,CAAE,EAAG;MAC3D,IAAKP,oBAAoB,KAAK,YAAY,EAAG;QAC5Cd,aAAa,CAAE;UACdgB,KAAK,EAAEK;QACR,CAAE,CAAC;MACJ,CAAC,MAAM;QACNrB,aAAa,CAAE;UACde,MAAM,EAAEM;QACT,CAAE,CAAC;MACJ;MACArB,aAAa,CAAE;QACdiB,KAAK,EAAE;UACN,GAAGC,UAAU;UACbC,MAAM,EAAE;YACP,GAAGA,MAAM;YACTE,QAAQ,EAAEa,SAAS;YACnBd,WAAW,EAAEc;UACd;QACD;MACD,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CACFhB,UAAU,EACVG,QAAQ,EACRN,MAAM,EACND,oBAAoB,EACpBD,YAAY,EACZM,MAAM,EACNC,WAAW,EACXpB,aAAa,EACbsB,YAAY,EACZN,KAAK,CACJ,CAAC;EAEH,OACC,IAAAhC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAqE,QAAA,QACC,IAAArE,MAAA,CAAAC,aAAA,EAACnB,WAAA,CAAA4F,IAAI;IAAA,GACC,IAAAC,0BAAa,EAAE;MACnB1C,KAAK;MACL9B,SAAS,EAAE,IAAAC,mBAAU,EAAED,SAAS,EAAE;QACjC,uBAAuB,EAAEkB;MAC1B,CAAE;IACH,CAAE;EAAC,GAEDoC,2BAA2B,CAAE3B,oBAAqB,CAC/C,CAAC,EACL,CAAED,YAAY,IACf,IAAA7B,MAAA,CAAAC,aAAA,EAACjB,SAAA,CAAA4F,OAAc;IACd5D,aAAa,EAAGA,aAAe;IAC/Be,MAAM,EAAGU,eAAe,IAAIV,MAAQ;IACpCC,KAAK,EAAGW,cAAc,IAAIX,KAAO;IACjC7C,WAAW,EAAG2C,oBAAsB;IACpCtC,UAAU,EAAGA;EAAY,CACzB,CAED,CAAC;AAEL,CAAC;AAAC,IAAAqF,QAAA,GAEa/D,UAAU;AAAAgE,OAAA,CAAAF,OAAA,GAAAC,QAAA"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_blockEditor","_components","_element","_primitives","_data","_controls","_constants","ResizableSpacer","orientation","onResizeStart","onResize","onResizeStop","isSelected","isResizing","setIsResizing","props","getCurrentSize","elt","clientWidth","clientHeight","getNextVal","_react","createElement","ResizableBox","className","classnames","_event","_direction","nextVal","__experimentalShowTooltip","__experimentalTooltipProps","axis","position","isVisible","showHandle","SpacerEdit","attributes","setAttributes","toggleSelection","context","__unstableParentLayout","parentLayout","disableCustomSpacingSizes","useSelect","select","editorSettings","blockEditorStore","getSettings","parentOrientation","type","isFlexLayout","inheritedOrientation","height","width","style","blockStyle","layout","selfStretch","flexSize","spacingSizes","useSettings","useState","temporaryHeight","setTemporaryHeight","temporaryWidth","setTemporaryWidth","handleOnVerticalResizeStop","newHeight","handleOnHorizontalResizeStop","newWidth","getHeightForVerticalBlocks","undefined","getSpacingPresetCssVar","getWidthForHorizontalBlocks","sizeConditionalOnOrientation","minWidth","flexBasis","flexGrow","resizableBoxWithOrientation","blockOrientation","MIN_SPACER_SIZE","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","Fragment","minHeight","useEffect","newSize","getCustomValueFromPreset","View","useBlockProps","default","_default","exports"],"sources":["@wordpress/block-library/src/spacer/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseSettings,\n\tgetCustomValueFromPreset,\n\tgetSpacingPresetCssVar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ResizableBox } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport { View } from '@wordpress/primitives';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport SpacerControls from './controls';\nimport { MIN_SPACER_SIZE } from './constants';\n\nconst ResizableSpacer = ( {\n\torientation,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\tisSelected,\n\tisResizing,\n\tsetIsResizing,\n\t...props\n} ) => {\n\tconst getCurrentSize = ( elt ) => {\n\t\treturn orientation === 'horizontal'\n\t\t\t? elt.clientWidth\n\t\t\t: elt.clientHeight;\n\t};\n\n\tconst getNextVal = ( elt ) => {\n\t\treturn `${ getCurrentSize( elt ) }px`;\n\t};\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( 'block-library-spacer__resize-container', {\n\t\t\t\t'resize-horizontal': orientation === 'horizontal',\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t\t'is-selected': isSelected,\n\t\t\t} ) }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getNextVal( elt );\n\t\t\t\tonResizeStart( nextVal );\n\t\t\t\tonResize( nextVal );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( getNextVal( elt ) );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tconst nextVal = getCurrentSize( elt );\n\t\t\t\tonResizeStop( `${ nextVal }px` );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t__experimentalShowTooltip={ true }\n\t\t\t__experimentalTooltipProps={ {\n\t\t\t\taxis: orientation === 'horizontal' ? 'x' : 'y',\n\t\t\t\tposition: 'corner',\n\t\t\t\tisVisible: isResizing,\n\t\t\t} }\n\t\t\tshowHandle={ isSelected }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n};\n\nconst SpacerEdit = ( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\ttoggleSelection,\n\tcontext,\n\t__unstableParentLayout: parentLayout,\n\tclassName,\n} ) => {\n\tconst disableCustomSpacingSizes = useSelect( ( select ) => {\n\t\tconst editorSettings = select( blockEditorStore ).getSettings();\n\t\treturn editorSettings?.disableCustomSpacingSizes;\n\t} );\n\tconst { orientation } = context;\n\tconst { orientation: parentOrientation, type } = parentLayout || {};\n\t// Check if the spacer is inside a flex container.\n\tconst isFlexLayout = type === 'flex';\n\t// If the spacer is inside a flex container, it should either inherit the orientation\n\t// of the parent or use the flex default orientation.\n\tconst inheritedOrientation =\n\t\t! parentOrientation && isFlexLayout\n\t\t\t? 'horizontal'\n\t\t\t: parentOrientation || orientation;\n\tconst { height, width, style: blockStyle = {} } = attributes;\n\n\tconst { layout = {} } = blockStyle;\n\tconst { selfStretch, flexSize } = layout;\n\n\tconst [ spacingSizes ] = useSettings( 'spacing.spacingSizes' );\n\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ temporaryHeight, setTemporaryHeight ] = useState( null );\n\tconst [ temporaryWidth, setTemporaryWidth ] = useState( null );\n\n\tconst onResizeStart = () => toggleSelection( false );\n\tconst onResizeStop = () => toggleSelection( true );\n\n\tconst handleOnVerticalResizeStop = ( newHeight ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newHeight,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { height: newHeight } );\n\t\tsetTemporaryHeight( null );\n\t};\n\n\tconst handleOnHorizontalResizeStop = ( newWidth ) => {\n\t\tonResizeStop();\n\n\t\tif ( isFlexLayout ) {\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: newWidth,\n\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\n\t\tsetAttributes( { width: newWidth } );\n\t\tsetTemporaryWidth( null );\n\t};\n\n\tconst getHeightForVerticalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryHeight || getSpacingPresetCssVar( height ) || undefined;\n\t};\n\n\tconst getWidthForHorizontalBlocks = () => {\n\t\tif ( isFlexLayout ) {\n\t\t\treturn undefined;\n\t\t}\n\t\treturn temporaryWidth || getSpacingPresetCssVar( width ) || undefined;\n\t};\n\n\tconst sizeConditionalOnOrientation =\n\t\tinheritedOrientation === 'horizontal'\n\t\t\t? temporaryWidth || flexSize\n\t\t\t: temporaryHeight || flexSize;\n\n\tconst style = {\n\t\theight:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? 24\n\t\t\t\t: getHeightForVerticalBlocks(),\n\t\twidth:\n\t\t\tinheritedOrientation === 'horizontal'\n\t\t\t\t? getWidthForHorizontalBlocks()\n\t\t\t\t: undefined,\n\t\t// In vertical flex containers, the spacer shrinks to nothing without a minimum width.\n\t\tminWidth:\n\t\t\tinheritedOrientation === 'vertical' && isFlexLayout\n\t\t\t\t? 48\n\t\t\t\t: undefined,\n\t\t// Add flex-basis so temporary sizes are respected.\n\t\tflexBasis: isFlexLayout ? sizeConditionalOnOrientation : undefined,\n\t\t// Remove flex-grow when resizing.\n\t\tflexGrow: isFlexLayout && isResizing ? 0 : undefined,\n\t};\n\n\tconst resizableBoxWithOrientation = ( blockOrientation ) => {\n\t\tif ( blockOrientation === 'horizontal' ) {\n\t\t\treturn (\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminWidth={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: true,\n\t\t\t\t\t\tbottom: false,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryWidth }\n\t\t\t\t\tonResizeStop={ handleOnHorizontalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<ResizableSpacer\n\t\t\t\t\tminHeight={ MIN_SPACER_SIZE }\n\t\t\t\t\tenable={ {\n\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\tright: false,\n\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t} }\n\t\t\t\t\torientation={ blockOrientation }\n\t\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\t\tonResize={ setTemporaryHeight }\n\t\t\t\t\tonResizeStop={ handleOnVerticalResizeStop }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\tsetIsResizing={ setIsResizing }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisFlexLayout &&\n\t\t\tselfStretch !== 'fill' &&\n\t\t\tselfStretch !== 'fit' &&\n\t\t\t! flexSize\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\t// If spacer is moving from a vertical container to a horizontal container,\n\t\t\t\t// it might not have width but have height instead.\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tconst newSize =\n\t\t\t\t\tgetCustomValueFromPreset( height, spacingSizes ) ||\n\t\t\t\t\tgetCustomValueFromPreset( width, spacingSizes ) ||\n\t\t\t\t\t'100px';\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: '0px',\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...blockStyle,\n\t\t\t\t\t\tlayout: {\n\t\t\t\t\t\t\t...layout,\n\t\t\t\t\t\t\tflexSize: newSize,\n\t\t\t\t\t\t\tselfStretch: 'fixed',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if (\n\t\t\tisFlexLayout &&\n\t\t\t( selfStretch === 'fill' || selfStretch === 'fit' )\n\t\t) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t} else if ( ! isFlexLayout && ( selfStretch || flexSize ) ) {\n\t\t\tif ( inheritedOrientation === 'horizontal' ) {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\twidth: flexSize,\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\theight: flexSize,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tstyle: {\n\t\t\t\t\t...blockStyle,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...layout,\n\t\t\t\t\t\tflexSize: undefined,\n\t\t\t\t\t\tselfStretch: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [\n\t\tblockStyle,\n\t\tflexSize,\n\t\theight,\n\t\tinheritedOrientation,\n\t\tisFlexLayout,\n\t\tlayout,\n\t\tselfStretch,\n\t\tsetAttributes,\n\t\tspacingSizes,\n\t\twidth,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<View\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tstyle,\n\t\t\t\t\tclassName: classnames( className, {\n\t\t\t\t\t\t'custom-sizes-disabled': disableCustomSpacingSizes,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ resizableBoxWithOrientation( inheritedOrientation ) }\n\t\t\t</View>\n\t\t\t{ ! isFlexLayout && (\n\t\t\t\t<SpacerControls\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\theight={ temporaryHeight || height }\n\t\t\t\t\twidth={ temporaryWidth || width }\n\t\t\t\t\torientation={ inheritedOrientation }\n\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default SpacerEdit;\n"],"mappings":"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"}
@@ -52,7 +52,11 @@ const Spacer = ({
52
52
  name: 0,
53
53
  slug: '0',
54
54
  size: 0
55
- }, ...((0, _blockEditor.useSetting)('spacing.spacingSizes') || [])];
55
+ }];
56
+ const [settingsSizes] = (0, _blockEditor.useSettings)('spacing.spacingSizes');
57
+ if (settingsSizes) {
58
+ spacingSizes.push(...settingsSizes);
59
+ }
56
60
  const {
57
61
  orientation
58
62
  } = context;
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_components","_compose","_blockEditor","_element","_controls","_interopRequireWildcard","_editorNative","_interopRequireDefault","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_FONT_SIZE","Spacer","attributes","context","setAttributes","isSelected","getStylesFromColorScheme","height","screenHeight","width","screenWidth","useWindowDimensions","cssUnitOptions","fontSize","spacingSizes","name","slug","size","useSetting","orientation","defaultStyle","styles","staticSpacer","staticDarkSpacer","useEffect","convertedHeight","useConvertUnitToMobile","convertedWidth","presetValues","isValueSpacingPreset","heightValue","getCustomValueFromPreset","parsedPresetHeightValue","parseFloat","getPxFromCssUnit","DEFAULT_VALUES","px","presetHeight","widthValue","parsedPresetWidthValue","presetWidth","_react","createElement","View","style","selectedSpacer","InspectorControls","_default","withPreferredColorScheme","exports"],"sources":["@wordpress/block-library/src/spacer/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, useWindowDimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useConvertUnitToMobile } from '@wordpress/components';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tisValueSpacingPreset,\n\tuseSetting,\n\tgetCustomValueFromPreset,\n\tgetPxFromCssUnit,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Controls, { DEFAULT_VALUES } from './controls';\nimport styles from './editor.native.scss';\n\nconst DEFAULT_FONT_SIZE = 16;\n\nconst Spacer = ( {\n\tattributes,\n\tcontext,\n\tsetAttributes,\n\tisSelected,\n\tgetStylesFromColorScheme,\n} ) => {\n\tconst { height: screenHeight, width: screenWidth } = useWindowDimensions();\n\tconst cssUnitOptions = {\n\t\theight: screenHeight,\n\t\twidth: screenWidth,\n\t\tfontSize: DEFAULT_FONT_SIZE,\n\t};\n\tconst { height, width } = attributes;\n\tconst spacingSizes = [\n\t\t{ name: 0, slug: '0', size: 0 },\n\t\t...( useSetting( 'spacing.spacingSizes' ) || [] ),\n\t];\n\tconst { orientation } = context;\n\tconst defaultStyle = getStylesFromColorScheme(\n\t\tstyles.staticSpacer,\n\t\tstyles.staticDarkSpacer\n\t);\n\n\tuseEffect( () => {\n\t\tif ( orientation === 'horizontal' && ! width ) {\n\t\t\tsetAttributes( {\n\t\t\t\theight: '0px',\n\t\t\t\twidth: '72px',\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\tlet convertedHeight = useConvertUnitToMobile( height );\n\tlet convertedWidth = useConvertUnitToMobile( width );\n\tconst presetValues = {};\n\n\tif ( isValueSpacingPreset( height ) ) {\n\t\tconst heightValue = getCustomValueFromPreset( height, spacingSizes );\n\t\tconst parsedPresetHeightValue = parseFloat(\n\t\t\tgetPxFromCssUnit( heightValue, cssUnitOptions )\n\t\t);\n\n\t\tconvertedHeight = parsedPresetHeightValue || DEFAULT_VALUES.px;\n\t\tpresetValues.presetHeight = convertedHeight;\n\t}\n\n\tif ( isValueSpacingPreset( width ) ) {\n\t\tconst widthValue = getCustomValueFromPreset( width, spacingSizes );\n\t\tconst parsedPresetWidthValue = parseFloat(\n\t\t\tgetPxFromCssUnit( widthValue, cssUnitOptions )\n\t\t);\n\n\t\tconvertedWidth = parsedPresetWidthValue || DEFAULT_VALUES.px;\n\t\tpresetValues.presetWidth = convertedWidth;\n\t}\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tdefaultStyle,\n\t\t\t\tisSelected && styles.selectedSpacer,\n\t\t\t\t{ height: convertedHeight, width: convertedWidth },\n\t\t\t] }\n\t\t>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tcontext={ context }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t{ ...presetValues }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default withPreferredColorScheme( Spacer );\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_components","_compose","_blockEditor","_element","_controls","_interopRequireWildcard","_editorNative","_interopRequireDefault","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_FONT_SIZE","Spacer","attributes","context","setAttributes","isSelected","getStylesFromColorScheme","height","screenHeight","width","screenWidth","useWindowDimensions","cssUnitOptions","fontSize","spacingSizes","name","slug","size","settingsSizes","useSettings","push","orientation","defaultStyle","styles","staticSpacer","staticDarkSpacer","useEffect","convertedHeight","useConvertUnitToMobile","convertedWidth","presetValues","isValueSpacingPreset","heightValue","getCustomValueFromPreset","parsedPresetHeightValue","parseFloat","getPxFromCssUnit","DEFAULT_VALUES","px","presetHeight","widthValue","parsedPresetWidthValue","presetWidth","_react","createElement","View","style","selectedSpacer","InspectorControls","_default","withPreferredColorScheme","exports"],"sources":["@wordpress/block-library/src/spacer/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, useWindowDimensions } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useConvertUnitToMobile } from '@wordpress/components';\nimport { withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tisValueSpacingPreset,\n\tuseSettings,\n\tgetCustomValueFromPreset,\n\tgetPxFromCssUnit,\n} from '@wordpress/block-editor';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport Controls, { DEFAULT_VALUES } from './controls';\nimport styles from './editor.native.scss';\n\nconst DEFAULT_FONT_SIZE = 16;\n\nconst Spacer = ( {\n\tattributes,\n\tcontext,\n\tsetAttributes,\n\tisSelected,\n\tgetStylesFromColorScheme,\n} ) => {\n\tconst { height: screenHeight, width: screenWidth } = useWindowDimensions();\n\tconst cssUnitOptions = {\n\t\theight: screenHeight,\n\t\twidth: screenWidth,\n\t\tfontSize: DEFAULT_FONT_SIZE,\n\t};\n\tconst { height, width } = attributes;\n\tconst spacingSizes = [ { name: 0, slug: '0', size: 0 } ];\n\tconst [ settingsSizes ] = useSettings( 'spacing.spacingSizes' );\n\tif ( settingsSizes ) {\n\t\tspacingSizes.push( ...settingsSizes );\n\t}\n\tconst { orientation } = context;\n\tconst defaultStyle = getStylesFromColorScheme(\n\t\tstyles.staticSpacer,\n\t\tstyles.staticDarkSpacer\n\t);\n\n\tuseEffect( () => {\n\t\tif ( orientation === 'horizontal' && ! width ) {\n\t\t\tsetAttributes( {\n\t\t\t\theight: '0px',\n\t\t\t\twidth: '72px',\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\tlet convertedHeight = useConvertUnitToMobile( height );\n\tlet convertedWidth = useConvertUnitToMobile( width );\n\tconst presetValues = {};\n\n\tif ( isValueSpacingPreset( height ) ) {\n\t\tconst heightValue = getCustomValueFromPreset( height, spacingSizes );\n\t\tconst parsedPresetHeightValue = parseFloat(\n\t\t\tgetPxFromCssUnit( heightValue, cssUnitOptions )\n\t\t);\n\n\t\tconvertedHeight = parsedPresetHeightValue || DEFAULT_VALUES.px;\n\t\tpresetValues.presetHeight = convertedHeight;\n\t}\n\n\tif ( isValueSpacingPreset( width ) ) {\n\t\tconst widthValue = getCustomValueFromPreset( width, spacingSizes );\n\t\tconst parsedPresetWidthValue = parseFloat(\n\t\t\tgetPxFromCssUnit( widthValue, cssUnitOptions )\n\t\t);\n\n\t\tconvertedWidth = parsedPresetWidthValue || DEFAULT_VALUES.px;\n\t\tpresetValues.presetWidth = convertedWidth;\n\t}\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tdefaultStyle,\n\t\t\t\tisSelected && styles.selectedSpacer,\n\t\t\t\t{ height: convertedHeight, width: convertedWidth },\n\t\t\t] }\n\t\t>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tcontext={ context }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t{ ...presetValues }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default withPreferredColorScheme( Spacer );\n"],"mappings":"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"}
@@ -43,8 +43,9 @@ function TagCloudEdit({
43
43
  smallestFontSize,
44
44
  largestFontSize
45
45
  } = attributes;
46
+ const [availableUnits] = (0, _blockEditor.useSettings)('spacing.units');
46
47
  const units = (0, _components.__experimentalUseCustomUnits)({
47
- availableUnits: (0, _blockEditor.useSetting)('spacing.units') || ['%', 'px', 'em', 'rem']
48
+ availableUnits: availableUnits || ['%', 'px', 'em', 'rem']
48
49
  });
49
50
  const getTaxonomyOptions = () => {
50
51
  const selectOption = {