@wordpress/components 19.0.4 → 19.1.2
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.
- package/CHANGELOG.md +17 -0
- package/build/card/styles.js +21 -17
- package/build/card/styles.js.map +1 -1
- package/build/circular-option-picker/index.js +2 -2
- package/build/circular-option-picker/index.js.map +1 -1
- package/build/color-palette/index.js +7 -1
- package/build/color-palette/index.js.map +1 -1
- package/build/color-picker/component.js +15 -5
- package/build/color-picker/component.js.map +1 -1
- package/build/date-time/time.js +17 -3
- package/build/date-time/time.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +2 -1
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/font-size-picker/index.js +2 -1
- package/build/font-size-picker/index.js.map +1 -1
- package/build/gradient-picker/index.js +2 -2
- package/build/gradient-picker/index.js.map +1 -1
- package/build/index.js +7 -7
- package/build/index.js.map +1 -1
- package/build/mobile/global-styles-context/utils.native.js +2 -2
- package/build/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build/navigation/item/index.js +9 -4
- package/build/navigation/item/index.js.map +1 -1
- package/build/navigation/styles/navigation-styles.js +37 -30
- package/build/navigation/styles/navigation-styles.js.map +1 -1
- package/build/palette-edit/index.js +307 -0
- package/build/palette-edit/index.js.map +1 -0
- package/build/palette-edit/styles.js +112 -0
- package/build/palette-edit/styles.js.map +1 -0
- package/build/popover/index.js +1 -1
- package/build/popover/index.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option/component.js +30 -4
- package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build/tooltip/index.js +4 -4
- package/build/tooltip/index.js.map +1 -1
- package/build-module/card/styles.js +21 -17
- package/build-module/card/styles.js.map +1 -1
- package/build-module/circular-option-picker/index.js +2 -2
- package/build-module/circular-option-picker/index.js.map +1 -1
- package/build-module/color-palette/index.js +6 -1
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-picker/component.js +13 -5
- package/build-module/color-picker/component.js.map +1 -1
- package/build-module/date-time/time.js +17 -3
- package/build-module/date-time/time.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +2 -1
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/font-size-picker/index.js +2 -1
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/gradient-picker/index.js +2 -2
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/mobile/global-styles-context/utils.native.js +2 -2
- package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build-module/navigation/item/index.js +10 -5
- package/build-module/navigation/item/index.js.map +1 -1
- package/build-module/navigation/styles/navigation-styles.js +34 -28
- package/build-module/navigation/styles/navigation-styles.js.map +1 -1
- package/build-module/palette-edit/index.js +280 -0
- package/build-module/palette-edit/index.js.map +1 -0
- package/build-module/palette-edit/styles.js +90 -0
- package/build-module/palette-edit/styles.js.map +1 -0
- package/build-module/popover/index.js +1 -1
- package/build-module/popover/index.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option/component.js +26 -5
- package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build-module/tooltip/index.js +4 -4
- package/build-module/tooltip/index.js.map +1 -1
- package/build-style/style-rtl.css +33 -1
- package/build-style/style.css +33 -1
- package/build-types/card/card/hook.d.ts +1 -1
- package/build-types/card/card-header/component.d.ts +1 -1
- package/build-types/card/styles.d.ts +7 -4
- package/build-types/card/styles.d.ts.map +1 -1
- package/build-types/card/types.d.ts +2 -1
- package/build-types/card/types.d.ts.map +1 -1
- package/build-types/confirm-dialog/component.d.ts +34 -0
- package/build-types/confirm-dialog/component.d.ts.map +1 -0
- package/build-types/confirm-dialog/index.d.ts +6 -0
- package/build-types/confirm-dialog/index.d.ts.map +1 -0
- package/build-types/confirm-dialog/types.d.ts +20 -0
- package/build-types/confirm-dialog/types.d.ts.map +1 -0
- package/build-types/flyout/styles.d.ts +1 -1
- package/build-types/higher-order/with-focus-outside/index.d.ts +3 -0
- package/build-types/higher-order/with-focus-outside/index.d.ts.map +1 -0
- package/build-types/modal/aria-helper.d.ts +27 -0
- package/build-types/modal/aria-helper.d.ts.map +1 -0
- package/build-types/modal/index.d.ts +3 -0
- package/build-types/modal/index.d.ts.map +1 -0
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/style-provider/index.d.ts +5 -0
- package/build-types/style-provider/index.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/types.d.ts +23 -0
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/tooltip/index.d.ts +1 -7
- package/build-types/tooltip/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/card/styles.js +8 -3
- package/src/card/test/__snapshots__/index.js.snap +6 -1
- package/src/card/test/index.js +20 -0
- package/src/card/types.ts +2 -1
- package/src/circular-option-picker/index.js +7 -5
- package/src/circular-option-picker/style.scss +1 -0
- package/src/color-palette/index.js +8 -0
- package/src/color-palette/style.scss +21 -0
- package/src/color-palette/test/__snapshots__/index.js.snap +2 -0
- package/src/color-picker/README.md +13 -11
- package/src/color-picker/component.tsx +15 -5
- package/src/color-picker/test/index.js +15 -0
- package/src/date-time/test/time.js +32 -2
- package/src/date-time/time.js +14 -6
- package/src/duotone-picker/duotone-picker.js +8 -5
- package/src/font-size-picker/index.js +1 -0
- package/src/gradient-picker/index.js +7 -4
- package/src/gradient-picker/stories/index.js +23 -0
- package/src/index.js +1 -1
- package/src/mobile/global-styles-context/utils.native.js +2 -2
- package/src/navigation/item/index.js +20 -5
- package/src/navigation/stories/more-examples.js +2 -1
- package/src/navigation/styles/navigation-styles.js +5 -0
- package/src/palette-edit/index.js +398 -0
- package/src/palette-edit/style.scss +19 -0
- package/src/{color-edit → palette-edit}/styles.js +15 -18
- package/src/popover/index.js +5 -1
- package/src/style.scss +1 -1
- package/src/toggle-group-control/stories/index.js +15 -0
- package/src/toggle-group-control/test/index.js +57 -0
- package/src/toggle-group-control/toggle-group-control-option/README.md +8 -1
- package/src/toggle-group-control/toggle-group-control-option/component.tsx +40 -17
- package/src/toggle-group-control/types.ts +24 -0
- package/src/tooltip/index.js +2 -7
- package/tsconfig.tsbuildinfo +1 -1
- package/build/color-edit/index.js +0 -251
- package/build/color-edit/index.js.map +0 -1
- package/build/color-edit/styles.js +0 -112
- package/build/color-edit/styles.js.map +0 -1
- package/build-module/color-edit/index.js +0 -227
- package/build-module/color-edit/index.js.map +0 -1
- package/build-module/color-edit/styles.js +0 -90
- package/build-module/color-edit/styles.js.map +0 -1
- package/src/color-edit/index.js +0 -300
- package/src/color-edit/style.scss +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/popover/index.js"],"names":["classnames","useRef","useState","useLayoutEffect","forwardRef","createContext","useContext","getRectangleFromRange","useViewportMatch","useResizeObserver","useMergeRefs","__experimentalUseDialog","useDialog","close","computePopoverPosition","offsetIframe","Button","ScrollLock","Slot","Fill","useSlot","getAnimateClassName","SLOT_NAME","slotNameContext","computeAnchorRect","anchorRefFallback","anchorRect","getAnchorRect","anchorRef","shouldAnchorIncludePadding","container","current","rect","ownerDocument","window","Range","Element","DOMRect","cloneRange","endContainer","getBoundingClientRect","withoutPadding","top","bottom","topRect","bottomRect","left","width","parentNode","getComputedStyle","node","defaultView","element","paddingTop","paddingBottom","paddingLeft","paddingRight","parseInt","right","x","y","height","setAttribute","name","value","hasAttribute","removeAttribute","getAttribute","setStyle","property","style","setClass","toggle","classList","contains","add","remove","getAnchorDocument","anchor","Popover","ref","headerTitle","onClose","children","className","noArrow","isAlternate","position","range","focusOnMount","expandOnMobile","animate","onFocusOutside","__unstableStickyBoundaryElement","__unstableSlotName","__unstableObserveElement","__unstableBoundaryParent","__unstableForcePosition","__unstableForceXAlignment","__unstableEditorCanvasWrapper","contentProps","contentRef","containerRef","isMobileViewport","animateOrigin","setAnimateOrigin","slotName","slot","isExpanded","containerResizeListener","contentSize","refresh","offsetParent","relativeOffsetTop","body","offsetParentRect","boundaryElement","parentElement","usedContentSize","popoverTop","popoverLeft","xAxis","yAxis","contentHeight","contentWidth","yAxisMapping","xAxisMapping","animateYAxis","animateXAxis","intervalHandle","setInterval","rafId","refreshOnAnimationFrame","cancelAnimationFrame","requestAnimationFrame","addEventListener","anchorDocument","observer","MutationObserver","observe","attributes","clearInterval","removeEventListener","disconnect","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","mergedRefs","animateClassName","Boolean","origin","content","PopoverContainer","PopoverSlot","__unstableSlotNameProvider","Provider"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseState,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n} from '@wordpress/element';\nimport { getRectangleFromRange } from '@wordpress/dom';\nimport {\n\tuseViewportMatch,\n\tuseResizeObserver,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { computePopoverPosition, offsetIframe } from './utils';\nimport Button from '../button';\nimport ScrollLock from '../scroll-lock';\nimport { Slot, Fill, useSlot } from '../slot-fill';\nimport { getAnimateClassName } from '../animate';\n\n/**\n * Name of slot in which popover should fill.\n *\n * @type {string}\n */\nconst SLOT_NAME = 'Popover';\n\nconst slotNameContext = createContext();\n\nfunction computeAnchorRect(\n\tanchorRefFallback,\n\tanchorRect,\n\tgetAnchorRect,\n\tanchorRef = false,\n\tshouldAnchorIncludePadding,\n\tcontainer\n) {\n\tif ( anchorRect ) {\n\t\treturn anchorRect;\n\t}\n\n\tif ( getAnchorRect ) {\n\t\tif ( ! anchorRefFallback.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\treturn offsetIframe(\n\t\t\trect,\n\t\t\trect.ownerDocument || anchorRefFallback.current.ownerDocument,\n\t\t\tcontainer\n\t\t);\n\t}\n\n\tif ( anchorRef !== false ) {\n\t\tif (\n\t\t\t! anchorRef ||\n\t\t\t! window.Range ||\n\t\t\t! window.Element ||\n\t\t\t! window.DOMRect\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Duck-type to check if `anchorRef` is an instance of Range\n\t\t// `anchorRef instanceof window.Range` checks will break across document boundaries\n\t\t// such as in an iframe\n\t\tif ( typeof anchorRef?.cloneRange === 'function' ) {\n\t\t\treturn offsetIframe(\n\t\t\t\tgetRectangleFromRange( anchorRef ),\n\t\t\t\tanchorRef.endContainer.ownerDocument,\n\t\t\t\tcontainer\n\t\t\t);\n\t\t}\n\n\t\t// Duck-type to check if `anchorRef` is an instance of Element\n\t\t// `anchorRef instanceof window.Element` checks will break across document boundaries\n\t\t// such as in an iframe\n\t\tif ( typeof anchorRef?.getBoundingClientRect === 'function' ) {\n\t\t\tconst rect = offsetIframe(\n\t\t\t\tanchorRef.getBoundingClientRect(),\n\t\t\t\tanchorRef.ownerDocument,\n\t\t\t\tcontainer\n\t\t\t);\n\n\t\t\tif ( shouldAnchorIncludePadding ) {\n\t\t\t\treturn rect;\n\t\t\t}\n\n\t\t\treturn withoutPadding( rect, anchorRef );\n\t\t}\n\n\t\tconst { top, bottom } = anchorRef;\n\t\tconst topRect = top.getBoundingClientRect();\n\t\tconst bottomRect = bottom.getBoundingClientRect();\n\t\tconst rect = offsetIframe(\n\t\t\tnew window.DOMRect(\n\t\t\t\ttopRect.left,\n\t\t\t\ttopRect.top,\n\t\t\t\ttopRect.width,\n\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t),\n\t\t\ttop.ownerDocument,\n\t\t\tcontainer\n\t\t);\n\n\t\tif ( shouldAnchorIncludePadding ) {\n\t\t\treturn rect;\n\t\t}\n\n\t\treturn withoutPadding( rect, anchorRef );\n\t}\n\n\tif ( ! anchorRefFallback.current ) {\n\t\treturn;\n\t}\n\n\tconst { parentNode } = anchorRefFallback.current;\n\tconst rect = parentNode.getBoundingClientRect();\n\n\tif ( shouldAnchorIncludePadding ) {\n\t\treturn rect;\n\t}\n\n\treturn withoutPadding( rect, parentNode );\n}\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction withoutPadding( rect, element ) {\n\tconst {\n\t\tpaddingTop,\n\t\tpaddingBottom,\n\t\tpaddingLeft,\n\t\tpaddingRight,\n\t} = getComputedStyle( element );\n\tconst top = paddingTop ? parseInt( paddingTop, 10 ) : 0;\n\tconst bottom = paddingBottom ? parseInt( paddingBottom, 10 ) : 0;\n\tconst left = paddingLeft ? parseInt( paddingLeft, 10 ) : 0;\n\tconst right = paddingRight ? parseInt( paddingRight, 10 ) : 0;\n\n\treturn {\n\t\tx: rect.left + left,\n\t\ty: rect.top + top,\n\t\twidth: rect.width - left - right,\n\t\theight: rect.height - top - bottom,\n\t\tleft: rect.left + left,\n\t\tright: rect.right - right,\n\t\ttop: rect.top + top,\n\t\tbottom: rect.bottom - bottom,\n\t};\n}\n\n/**\n * Sets or removes an element attribute.\n *\n * @param {Element} element The element to modify.\n * @param {string} name The attribute name to set or remove.\n * @param {?string} value The value to set. A falsy value will remove the\n * attribute.\n */\nfunction setAttribute( element, name, value ) {\n\tif ( ! value ) {\n\t\tif ( element.hasAttribute( name ) ) {\n\t\t\telement.removeAttribute( name );\n\t\t}\n\t} else if ( element.getAttribute( name ) !== value ) {\n\t\telement.setAttribute( name, value );\n\t}\n}\n\n/**\n * Sets or removes an element style property.\n *\n * @param {Element} element The element to modify.\n * @param {string} property The property to set or remove.\n * @param {?string} value The value to set. A falsy value will remove the\n * property.\n */\nfunction setStyle( element, property, value = '' ) {\n\tif ( element.style[ property ] !== value ) {\n\t\telement.style[ property ] = value;\n\t}\n}\n\n/**\n * Sets or removes an element class.\n *\n * @param {Element} element The element to modify.\n * @param {string} name The class to set or remove.\n * @param {boolean} toggle True to set the class, false to remove.\n */\nfunction setClass( element, name, toggle ) {\n\tif ( toggle ) {\n\t\tif ( ! element.classList.contains( name ) ) {\n\t\t\telement.classList.add( name );\n\t\t}\n\t} else if ( element.classList.contains( name ) ) {\n\t\telement.classList.remove( name );\n\t}\n}\n\nfunction getAnchorDocument( anchor ) {\n\tif ( ! anchor ) {\n\t\treturn;\n\t}\n\n\tif ( anchor.endContainer ) {\n\t\treturn anchor.endContainer.ownerDocument;\n\t}\n\n\tif ( anchor.top ) {\n\t\treturn anchor.top.ownerDocument;\n\t}\n\n\treturn anchor.ownerDocument;\n}\n\nconst Popover = (\n\t{\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\t// Disable reason: We generate the `...contentProps` rest as remainder\n\t\t// of props which aren't explicitly handled by this component.\n\t\t/* eslint-disable no-unused-vars */\n\t\tposition = 'bottom right',\n\t\trange,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tshouldAnchorIncludePadding,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tanimate = true,\n\t\tonFocusOutside,\n\t\t__unstableStickyBoundaryElement,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableObserveElement,\n\t\t__unstableBoundaryParent,\n\t\t__unstableForcePosition,\n\t\t__unstableForceXAlignment,\n\t\t__unstableEditorCanvasWrapper,\n\t\t/* eslint-enable no-unused-vars */\n\t\t...contentProps\n\t},\n\tref\n) => {\n\tconst anchorRefFallback = useRef( null );\n\tconst contentRef = useRef( null );\n\tconst containerRef = useRef();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ animateOrigin, setAnimateOrigin ] = useState();\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst [ containerResizeListener, contentSize ] = useResizeObserver();\n\tnoArrow = isExpanded || noArrow;\n\n\tuseLayoutEffect( () => {\n\t\tif ( isExpanded ) {\n\t\t\tsetClass( containerRef.current, 'is-without-arrow', noArrow );\n\t\t\tsetClass( containerRef.current, 'is-alternate', isAlternate );\n\t\t\tsetAttribute( containerRef.current, 'data-x-axis' );\n\t\t\tsetAttribute( containerRef.current, 'data-y-axis' );\n\t\t\tsetStyle( containerRef.current, 'top' );\n\t\t\tsetStyle( containerRef.current, 'left' );\n\t\t\tsetStyle( contentRef.current, 'maxHeight' );\n\t\t\tsetStyle( contentRef.current, 'maxWidth' );\n\t\t\treturn;\n\t\t}\n\n\t\tconst refresh = () => {\n\t\t\tif ( ! containerRef.current || ! contentRef.current ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet anchor = computeAnchorRect(\n\t\t\t\tanchorRefFallback,\n\t\t\t\tanchorRect,\n\t\t\t\tgetAnchorRect,\n\t\t\t\tanchorRef,\n\t\t\t\tshouldAnchorIncludePadding,\n\t\t\t\tcontainerRef.current\n\t\t\t);\n\n\t\t\tif ( ! anchor ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { offsetParent, ownerDocument } = containerRef.current;\n\n\t\t\tlet relativeOffsetTop = 0;\n\n\t\t\t// If there is a positioned ancestor element that is not the body,\n\t\t\t// subtract the position from the anchor rect. If the position of\n\t\t\t// the popover is fixed, the offset parent is null or the body\n\t\t\t// element, in which case the position is relative to the viewport.\n\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent\n\t\t\tif ( offsetParent && offsetParent !== ownerDocument.body ) {\n\t\t\t\tconst offsetParentRect = offsetParent.getBoundingClientRect();\n\n\t\t\t\trelativeOffsetTop = offsetParentRect.top;\n\t\t\t\tanchor = new window.DOMRect(\n\t\t\t\t\tanchor.left - offsetParentRect.left,\n\t\t\t\t\tanchor.top - offsetParentRect.top,\n\t\t\t\t\tanchor.width,\n\t\t\t\t\tanchor.height\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tlet boundaryElement;\n\t\t\tif ( __unstableBoundaryParent ) {\n\t\t\t\tboundaryElement = containerRef.current.parentElement;\n\t\t\t}\n\n\t\t\tconst usedContentSize = ! contentSize.height\n\t\t\t\t? contentRef.current.getBoundingClientRect()\n\t\t\t\t: contentSize;\n\n\t\t\tconst {\n\t\t\t\tpopoverTop,\n\t\t\t\tpopoverLeft,\n\t\t\t\txAxis,\n\t\t\t\tyAxis,\n\t\t\t\tcontentHeight,\n\t\t\t\tcontentWidth,\n\t\t\t} = computePopoverPosition(\n\t\t\t\tanchor,\n\t\t\t\tusedContentSize,\n\t\t\t\tposition,\n\t\t\t\t__unstableStickyBoundaryElement,\n\t\t\t\tcontainerRef.current,\n\t\t\t\trelativeOffsetTop,\n\t\t\t\tboundaryElement,\n\t\t\t\t__unstableForcePosition,\n\t\t\t\t__unstableForceXAlignment,\n\t\t\t\t__unstableEditorCanvasWrapper\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\ttypeof popoverTop === 'number' &&\n\t\t\t\ttypeof popoverLeft === 'number'\n\t\t\t) {\n\t\t\t\tsetStyle( containerRef.current, 'top', popoverTop + 'px' );\n\t\t\t\tsetStyle( containerRef.current, 'left', popoverLeft + 'px' );\n\t\t\t}\n\n\t\t\tsetClass(\n\t\t\t\tcontainerRef.current,\n\t\t\t\t'is-without-arrow',\n\t\t\t\tnoArrow || ( xAxis === 'center' && yAxis === 'middle' )\n\t\t\t);\n\t\t\tsetClass( containerRef.current, 'is-alternate', isAlternate );\n\t\t\tsetAttribute( containerRef.current, 'data-x-axis', xAxis );\n\t\t\tsetAttribute( containerRef.current, 'data-y-axis', yAxis );\n\t\t\tsetStyle(\n\t\t\t\tcontentRef.current,\n\t\t\t\t'maxHeight',\n\t\t\t\ttypeof contentHeight === 'number' ? contentHeight + 'px' : ''\n\t\t\t);\n\t\t\tsetStyle(\n\t\t\t\tcontentRef.current,\n\t\t\t\t'maxWidth',\n\t\t\t\ttypeof contentWidth === 'number' ? contentWidth + 'px' : ''\n\t\t\t);\n\n\t\t\t// Compute the animation position\n\t\t\tconst yAxisMapping = {\n\t\t\t\ttop: 'bottom',\n\t\t\t\tbottom: 'top',\n\t\t\t};\n\t\t\tconst xAxisMapping = {\n\t\t\t\tleft: 'right',\n\t\t\t\tright: 'left',\n\t\t\t};\n\t\t\tconst animateYAxis = yAxisMapping[ yAxis ] || 'middle';\n\t\t\tconst animateXAxis = xAxisMapping[ xAxis ] || 'center';\n\n\t\t\tsetAnimateOrigin( animateXAxis + ' ' + animateYAxis );\n\t\t};\n\n\t\trefresh();\n\n\t\tconst { ownerDocument } = containerRef.current;\n\t\tconst { defaultView } = ownerDocument;\n\n\t\t/*\n\t\t * There are sometimes we need to reposition or resize the popover that\n\t\t * are not handled by the resize/scroll window events (i.e. CSS changes\n\t\t * in the layout that changes the position of the anchor).\n\t\t *\n\t\t * For these situations, we refresh the popover every 0.5s\n\t\t */\n\t\tconst intervalHandle = defaultView.setInterval( refresh, 500 );\n\n\t\tlet rafId;\n\n\t\tconst refreshOnAnimationFrame = () => {\n\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\t\t\trafId = defaultView.requestAnimationFrame( refresh );\n\t\t};\n\n\t\t// Sometimes a click trigger a layout change that affects the popover\n\t\t// position. This is an opportunity to immediately refresh rather than\n\t\t// at the interval.\n\t\tdefaultView.addEventListener( 'click', refreshOnAnimationFrame );\n\t\tdefaultView.addEventListener( 'resize', refresh );\n\t\tdefaultView.addEventListener( 'scroll', refresh, true );\n\n\t\tconst anchorDocument = getAnchorDocument( anchorRef );\n\n\t\t// If the anchor is within an iframe, the popover position also needs\n\t\t// to refrest when the iframe content is scrolled or resized.\n\t\tif ( anchorDocument && anchorDocument !== ownerDocument ) {\n\t\t\tanchorDocument.defaultView.addEventListener( 'resize', refresh );\n\t\t\tanchorDocument.defaultView.addEventListener(\n\t\t\t\t'scroll',\n\t\t\t\trefresh,\n\t\t\t\ttrue\n\t\t\t);\n\t\t}\n\n\t\tlet observer;\n\n\t\tif ( __unstableObserveElement ) {\n\t\t\tobserver = new defaultView.MutationObserver( refresh );\n\t\t\tobserver.observe( __unstableObserveElement, { attributes: true } );\n\t\t}\n\n\t\treturn () => {\n\t\t\tdefaultView.clearInterval( intervalHandle );\n\t\t\tdefaultView.removeEventListener( 'resize', refresh );\n\t\t\tdefaultView.removeEventListener( 'scroll', refresh, true );\n\t\t\tdefaultView.removeEventListener( 'click', refreshOnAnimationFrame );\n\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\n\t\t\tif ( anchorDocument && anchorDocument !== ownerDocument ) {\n\t\t\t\tanchorDocument.defaultView?.removeEventListener(\n\t\t\t\t\t'resize',\n\t\t\t\t\trefresh\n\t\t\t\t);\n\t\t\t\tanchorDocument.defaultView?.removeEventListener(\n\t\t\t\t\t'scroll',\n\t\t\t\t\trefresh,\n\t\t\t\t\ttrue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif ( observer ) {\n\t\t\t\tobserver.disconnect();\n\t\t\t}\n\t\t};\n\t}, [\n\t\tisExpanded,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\tanchorRef,\n\t\tshouldAnchorIncludePadding,\n\t\tposition,\n\t\tcontentSize,\n\t\t__unstableStickyBoundaryElement,\n\t\t__unstableObserveElement,\n\t\t__unstableBoundaryParent,\n\t] );\n\n\tconst onDialogClose = ( type, event ) => {\n\t\t// Ideally the popover should have just a single onClose prop and\n\t\t// not three props that potentially do the same thing.\n\t\tif ( type === 'focus-outside' && onFocusOutside ) {\n\t\t\tonFocusOutside( event );\n\t\t} else if ( onClose ) {\n\t\t\tonClose();\n\t\t}\n\t};\n\n\tconst [ dialogRef, dialogProps ] = useDialog( {\n\t\tfocusOnMount,\n\t\t__unstableOnClose: onDialogClose,\n\t\tonClose: onDialogClose,\n\t} );\n\n\tconst mergedRefs = useMergeRefs( [ containerRef, dialogRef, ref ] );\n\n\t/** @type {false | string} */\n\tconst animateClassName =\n\t\tBoolean( animate && animateOrigin ) &&\n\t\tgetAnimateClassName( {\n\t\t\ttype: 'appear',\n\t\t\torigin: animateOrigin,\n\t\t} );\n\n\t// Disable reason: We care to capture the _bubbled_ events from inputs\n\t// within popover as inferring close intent.\n\n\tlet content = (\n\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-popover',\n\t\t\t\tclassName,\n\t\t\t\tanimateClassName,\n\t\t\t\t{\n\t\t\t\t\t'is-expanded': isExpanded,\n\t\t\t\t\t'is-without-arrow': noArrow,\n\t\t\t\t\t'is-alternate': isAlternate,\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ ...contentProps }\n\t\t\tref={ mergedRefs }\n\t\t\t{ ...dialogProps }\n\t\t\ttabIndex=\"-1\"\n\t\t>\n\t\t\t{ isExpanded && <ScrollLock /> }\n\t\t\t{ isExpanded && (\n\t\t\t\t<div className=\"components-popover__header\">\n\t\t\t\t\t<span className=\"components-popover__header-title\">\n\t\t\t\t\t\t{ headerTitle }\n\t\t\t\t\t</span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"components-popover__close\"\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div ref={ contentRef } className=\"components-popover__content\">\n\t\t\t\t<div style={ { position: 'relative' } }>\n\t\t\t\t\t{ containerResizeListener }\n\t\t\t\t\t{ children }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n\n\tif ( slot.ref ) {\n\t\tcontent = <Fill name={ slotName }>{ content }</Fill>;\n\t}\n\n\tif ( anchorRef || anchorRect ) {\n\t\treturn content;\n\t}\n\n\treturn <span ref={ anchorRefFallback }>{ content }</span>;\n};\n\nconst PopoverContainer = forwardRef( Popover );\n\nfunction PopoverSlot( { name = SLOT_NAME }, ref ) {\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tname={ name }\n\t\t\tclassName=\"popover-slot\"\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nPopoverContainer.Slot = forwardRef( PopoverSlot );\nPopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;\n\nexport default PopoverContainer;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/popover/index.js"],"names":["classnames","useRef","useState","useLayoutEffect","forwardRef","createContext","useContext","getRectangleFromRange","useViewportMatch","useResizeObserver","useMergeRefs","__experimentalUseDialog","useDialog","close","computePopoverPosition","offsetIframe","Button","ScrollLock","Slot","Fill","useSlot","getAnimateClassName","SLOT_NAME","slotNameContext","computeAnchorRect","anchorRefFallback","anchorRect","getAnchorRect","anchorRef","shouldAnchorIncludePadding","container","current","rect","ownerDocument","window","Range","Element","DOMRect","cloneRange","endContainer","getBoundingClientRect","withoutPadding","top","bottom","topRect","bottomRect","left","width","parentNode","getComputedStyle","node","defaultView","element","paddingTop","paddingBottom","paddingLeft","paddingRight","parseInt","right","x","y","height","setAttribute","name","value","hasAttribute","removeAttribute","getAttribute","setStyle","property","style","setClass","toggle","classList","contains","add","remove","getAnchorDocument","anchor","Popover","ref","headerTitle","onClose","children","className","noArrow","isAlternate","position","range","focusOnMount","expandOnMobile","animate","onFocusOutside","__unstableStickyBoundaryElement","__unstableSlotName","__unstableObserveElement","__unstableBoundaryParent","__unstableForcePosition","__unstableForceXAlignment","__unstableEditorCanvasWrapper","contentProps","contentRef","containerRef","isMobileViewport","animateOrigin","setAnimateOrigin","slotName","slot","isExpanded","containerResizeListener","contentSize","refresh","offsetParent","relativeOffsetTop","body","offsetParentRect","boundaryElement","parentElement","usedContentSize","popoverTop","popoverLeft","xAxis","yAxis","contentHeight","contentWidth","yAxisMapping","xAxisMapping","animateYAxis","animateXAxis","intervalHandle","setInterval","rafId","refreshOnAnimationFrame","cancelAnimationFrame","requestAnimationFrame","addEventListener","anchorDocument","observer","MutationObserver","observe","attributes","clearInterval","removeEventListener","disconnect","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","mergedRefs","animateClassName","Boolean","origin","content","PopoverContainer","PopoverSlot","__unstableSlotNameProvider","Provider"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseState,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n} from '@wordpress/element';\nimport { getRectangleFromRange } from '@wordpress/dom';\nimport {\n\tuseViewportMatch,\n\tuseResizeObserver,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { computePopoverPosition, offsetIframe } from './utils';\nimport Button from '../button';\nimport ScrollLock from '../scroll-lock';\nimport { Slot, Fill, useSlot } from '../slot-fill';\nimport { getAnimateClassName } from '../animate';\n\n/**\n * Name of slot in which popover should fill.\n *\n * @type {string}\n */\nconst SLOT_NAME = 'Popover';\n\nconst slotNameContext = createContext();\n\nfunction computeAnchorRect(\n\tanchorRefFallback,\n\tanchorRect,\n\tgetAnchorRect,\n\tanchorRef = false,\n\tshouldAnchorIncludePadding,\n\tcontainer\n) {\n\tif ( anchorRect ) {\n\t\treturn anchorRect;\n\t}\n\n\tif ( getAnchorRect ) {\n\t\tif ( ! anchorRefFallback.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\treturn offsetIframe(\n\t\t\trect,\n\t\t\trect.ownerDocument || anchorRefFallback.current.ownerDocument,\n\t\t\tcontainer\n\t\t);\n\t}\n\n\tif ( anchorRef !== false ) {\n\t\tif (\n\t\t\t! anchorRef ||\n\t\t\t! window.Range ||\n\t\t\t! window.Element ||\n\t\t\t! window.DOMRect\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Duck-type to check if `anchorRef` is an instance of Range\n\t\t// `anchorRef instanceof window.Range` checks will break across document boundaries\n\t\t// such as in an iframe\n\t\tif ( typeof anchorRef?.cloneRange === 'function' ) {\n\t\t\treturn offsetIframe(\n\t\t\t\tgetRectangleFromRange( anchorRef ),\n\t\t\t\tanchorRef.endContainer.ownerDocument,\n\t\t\t\tcontainer\n\t\t\t);\n\t\t}\n\n\t\t// Duck-type to check if `anchorRef` is an instance of Element\n\t\t// `anchorRef instanceof window.Element` checks will break across document boundaries\n\t\t// such as in an iframe\n\t\tif ( typeof anchorRef?.getBoundingClientRect === 'function' ) {\n\t\t\tconst rect = offsetIframe(\n\t\t\t\tanchorRef.getBoundingClientRect(),\n\t\t\t\tanchorRef.ownerDocument,\n\t\t\t\tcontainer\n\t\t\t);\n\n\t\t\tif ( shouldAnchorIncludePadding ) {\n\t\t\t\treturn rect;\n\t\t\t}\n\n\t\t\treturn withoutPadding( rect, anchorRef );\n\t\t}\n\n\t\tconst { top, bottom } = anchorRef;\n\t\tconst topRect = top.getBoundingClientRect();\n\t\tconst bottomRect = bottom.getBoundingClientRect();\n\t\tconst rect = offsetIframe(\n\t\t\tnew window.DOMRect(\n\t\t\t\ttopRect.left,\n\t\t\t\ttopRect.top,\n\t\t\t\ttopRect.width,\n\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t),\n\t\t\ttop.ownerDocument,\n\t\t\tcontainer\n\t\t);\n\n\t\tif ( shouldAnchorIncludePadding ) {\n\t\t\treturn rect;\n\t\t}\n\n\t\treturn withoutPadding( rect, anchorRef );\n\t}\n\n\tif ( ! anchorRefFallback.current ) {\n\t\treturn;\n\t}\n\n\tconst { parentNode } = anchorRefFallback.current;\n\tconst rect = offsetIframe(\n\t\tparentNode.getBoundingClientRect(),\n\t\tparentNode.ownerDocument,\n\t\tcontainer\n\t);\n\n\tif ( shouldAnchorIncludePadding ) {\n\t\treturn rect;\n\t}\n\n\treturn withoutPadding( rect, parentNode );\n}\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction withoutPadding( rect, element ) {\n\tconst {\n\t\tpaddingTop,\n\t\tpaddingBottom,\n\t\tpaddingLeft,\n\t\tpaddingRight,\n\t} = getComputedStyle( element );\n\tconst top = paddingTop ? parseInt( paddingTop, 10 ) : 0;\n\tconst bottom = paddingBottom ? parseInt( paddingBottom, 10 ) : 0;\n\tconst left = paddingLeft ? parseInt( paddingLeft, 10 ) : 0;\n\tconst right = paddingRight ? parseInt( paddingRight, 10 ) : 0;\n\n\treturn {\n\t\tx: rect.left + left,\n\t\ty: rect.top + top,\n\t\twidth: rect.width - left - right,\n\t\theight: rect.height - top - bottom,\n\t\tleft: rect.left + left,\n\t\tright: rect.right - right,\n\t\ttop: rect.top + top,\n\t\tbottom: rect.bottom - bottom,\n\t};\n}\n\n/**\n * Sets or removes an element attribute.\n *\n * @param {Element} element The element to modify.\n * @param {string} name The attribute name to set or remove.\n * @param {?string} value The value to set. A falsy value will remove the\n * attribute.\n */\nfunction setAttribute( element, name, value ) {\n\tif ( ! value ) {\n\t\tif ( element.hasAttribute( name ) ) {\n\t\t\telement.removeAttribute( name );\n\t\t}\n\t} else if ( element.getAttribute( name ) !== value ) {\n\t\telement.setAttribute( name, value );\n\t}\n}\n\n/**\n * Sets or removes an element style property.\n *\n * @param {Element} element The element to modify.\n * @param {string} property The property to set or remove.\n * @param {?string} value The value to set. A falsy value will remove the\n * property.\n */\nfunction setStyle( element, property, value = '' ) {\n\tif ( element.style[ property ] !== value ) {\n\t\telement.style[ property ] = value;\n\t}\n}\n\n/**\n * Sets or removes an element class.\n *\n * @param {Element} element The element to modify.\n * @param {string} name The class to set or remove.\n * @param {boolean} toggle True to set the class, false to remove.\n */\nfunction setClass( element, name, toggle ) {\n\tif ( toggle ) {\n\t\tif ( ! element.classList.contains( name ) ) {\n\t\t\telement.classList.add( name );\n\t\t}\n\t} else if ( element.classList.contains( name ) ) {\n\t\telement.classList.remove( name );\n\t}\n}\n\nfunction getAnchorDocument( anchor ) {\n\tif ( ! anchor ) {\n\t\treturn;\n\t}\n\n\tif ( anchor.endContainer ) {\n\t\treturn anchor.endContainer.ownerDocument;\n\t}\n\n\tif ( anchor.top ) {\n\t\treturn anchor.top.ownerDocument;\n\t}\n\n\treturn anchor.ownerDocument;\n}\n\nconst Popover = (\n\t{\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\t// Disable reason: We generate the `...contentProps` rest as remainder\n\t\t// of props which aren't explicitly handled by this component.\n\t\t/* eslint-disable no-unused-vars */\n\t\tposition = 'bottom right',\n\t\trange,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tshouldAnchorIncludePadding,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tanimate = true,\n\t\tonFocusOutside,\n\t\t__unstableStickyBoundaryElement,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableObserveElement,\n\t\t__unstableBoundaryParent,\n\t\t__unstableForcePosition,\n\t\t__unstableForceXAlignment,\n\t\t__unstableEditorCanvasWrapper,\n\t\t/* eslint-enable no-unused-vars */\n\t\t...contentProps\n\t},\n\tref\n) => {\n\tconst anchorRefFallback = useRef( null );\n\tconst contentRef = useRef( null );\n\tconst containerRef = useRef();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst [ animateOrigin, setAnimateOrigin ] = useState();\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst [ containerResizeListener, contentSize ] = useResizeObserver();\n\tnoArrow = isExpanded || noArrow;\n\n\tuseLayoutEffect( () => {\n\t\tif ( isExpanded ) {\n\t\t\tsetClass( containerRef.current, 'is-without-arrow', noArrow );\n\t\t\tsetClass( containerRef.current, 'is-alternate', isAlternate );\n\t\t\tsetAttribute( containerRef.current, 'data-x-axis' );\n\t\t\tsetAttribute( containerRef.current, 'data-y-axis' );\n\t\t\tsetStyle( containerRef.current, 'top' );\n\t\t\tsetStyle( containerRef.current, 'left' );\n\t\t\tsetStyle( contentRef.current, 'maxHeight' );\n\t\t\tsetStyle( contentRef.current, 'maxWidth' );\n\t\t\treturn;\n\t\t}\n\n\t\tconst refresh = () => {\n\t\t\tif ( ! containerRef.current || ! contentRef.current ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet anchor = computeAnchorRect(\n\t\t\t\tanchorRefFallback,\n\t\t\t\tanchorRect,\n\t\t\t\tgetAnchorRect,\n\t\t\t\tanchorRef,\n\t\t\t\tshouldAnchorIncludePadding,\n\t\t\t\tcontainerRef.current\n\t\t\t);\n\n\t\t\tif ( ! anchor ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { offsetParent, ownerDocument } = containerRef.current;\n\n\t\t\tlet relativeOffsetTop = 0;\n\n\t\t\t// If there is a positioned ancestor element that is not the body,\n\t\t\t// subtract the position from the anchor rect. If the position of\n\t\t\t// the popover is fixed, the offset parent is null or the body\n\t\t\t// element, in which case the position is relative to the viewport.\n\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent\n\t\t\tif ( offsetParent && offsetParent !== ownerDocument.body ) {\n\t\t\t\tconst offsetParentRect = offsetParent.getBoundingClientRect();\n\n\t\t\t\trelativeOffsetTop = offsetParentRect.top;\n\t\t\t\tanchor = new window.DOMRect(\n\t\t\t\t\tanchor.left - offsetParentRect.left,\n\t\t\t\t\tanchor.top - offsetParentRect.top,\n\t\t\t\t\tanchor.width,\n\t\t\t\t\tanchor.height\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tlet boundaryElement;\n\t\t\tif ( __unstableBoundaryParent ) {\n\t\t\t\tboundaryElement = containerRef.current.parentElement;\n\t\t\t}\n\n\t\t\tconst usedContentSize = ! contentSize.height\n\t\t\t\t? contentRef.current.getBoundingClientRect()\n\t\t\t\t: contentSize;\n\n\t\t\tconst {\n\t\t\t\tpopoverTop,\n\t\t\t\tpopoverLeft,\n\t\t\t\txAxis,\n\t\t\t\tyAxis,\n\t\t\t\tcontentHeight,\n\t\t\t\tcontentWidth,\n\t\t\t} = computePopoverPosition(\n\t\t\t\tanchor,\n\t\t\t\tusedContentSize,\n\t\t\t\tposition,\n\t\t\t\t__unstableStickyBoundaryElement,\n\t\t\t\tcontainerRef.current,\n\t\t\t\trelativeOffsetTop,\n\t\t\t\tboundaryElement,\n\t\t\t\t__unstableForcePosition,\n\t\t\t\t__unstableForceXAlignment,\n\t\t\t\t__unstableEditorCanvasWrapper\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\ttypeof popoverTop === 'number' &&\n\t\t\t\ttypeof popoverLeft === 'number'\n\t\t\t) {\n\t\t\t\tsetStyle( containerRef.current, 'top', popoverTop + 'px' );\n\t\t\t\tsetStyle( containerRef.current, 'left', popoverLeft + 'px' );\n\t\t\t}\n\n\t\t\tsetClass(\n\t\t\t\tcontainerRef.current,\n\t\t\t\t'is-without-arrow',\n\t\t\t\tnoArrow || ( xAxis === 'center' && yAxis === 'middle' )\n\t\t\t);\n\t\t\tsetClass( containerRef.current, 'is-alternate', isAlternate );\n\t\t\tsetAttribute( containerRef.current, 'data-x-axis', xAxis );\n\t\t\tsetAttribute( containerRef.current, 'data-y-axis', yAxis );\n\t\t\tsetStyle(\n\t\t\t\tcontentRef.current,\n\t\t\t\t'maxHeight',\n\t\t\t\ttypeof contentHeight === 'number' ? contentHeight + 'px' : ''\n\t\t\t);\n\t\t\tsetStyle(\n\t\t\t\tcontentRef.current,\n\t\t\t\t'maxWidth',\n\t\t\t\ttypeof contentWidth === 'number' ? contentWidth + 'px' : ''\n\t\t\t);\n\n\t\t\t// Compute the animation position\n\t\t\tconst yAxisMapping = {\n\t\t\t\ttop: 'bottom',\n\t\t\t\tbottom: 'top',\n\t\t\t};\n\t\t\tconst xAxisMapping = {\n\t\t\t\tleft: 'right',\n\t\t\t\tright: 'left',\n\t\t\t};\n\t\t\tconst animateYAxis = yAxisMapping[ yAxis ] || 'middle';\n\t\t\tconst animateXAxis = xAxisMapping[ xAxis ] || 'center';\n\n\t\t\tsetAnimateOrigin( animateXAxis + ' ' + animateYAxis );\n\t\t};\n\n\t\trefresh();\n\n\t\tconst { ownerDocument } = containerRef.current;\n\t\tconst { defaultView } = ownerDocument;\n\n\t\t/*\n\t\t * There are sometimes we need to reposition or resize the popover that\n\t\t * are not handled by the resize/scroll window events (i.e. CSS changes\n\t\t * in the layout that changes the position of the anchor).\n\t\t *\n\t\t * For these situations, we refresh the popover every 0.5s\n\t\t */\n\t\tconst intervalHandle = defaultView.setInterval( refresh, 500 );\n\n\t\tlet rafId;\n\n\t\tconst refreshOnAnimationFrame = () => {\n\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\t\t\trafId = defaultView.requestAnimationFrame( refresh );\n\t\t};\n\n\t\t// Sometimes a click trigger a layout change that affects the popover\n\t\t// position. This is an opportunity to immediately refresh rather than\n\t\t// at the interval.\n\t\tdefaultView.addEventListener( 'click', refreshOnAnimationFrame );\n\t\tdefaultView.addEventListener( 'resize', refresh );\n\t\tdefaultView.addEventListener( 'scroll', refresh, true );\n\n\t\tconst anchorDocument = getAnchorDocument( anchorRef );\n\n\t\t// If the anchor is within an iframe, the popover position also needs\n\t\t// to refrest when the iframe content is scrolled or resized.\n\t\tif ( anchorDocument && anchorDocument !== ownerDocument ) {\n\t\t\tanchorDocument.defaultView.addEventListener( 'resize', refresh );\n\t\t\tanchorDocument.defaultView.addEventListener(\n\t\t\t\t'scroll',\n\t\t\t\trefresh,\n\t\t\t\ttrue\n\t\t\t);\n\t\t}\n\n\t\tlet observer;\n\n\t\tif ( __unstableObserveElement ) {\n\t\t\tobserver = new defaultView.MutationObserver( refresh );\n\t\t\tobserver.observe( __unstableObserveElement, { attributes: true } );\n\t\t}\n\n\t\treturn () => {\n\t\t\tdefaultView.clearInterval( intervalHandle );\n\t\t\tdefaultView.removeEventListener( 'resize', refresh );\n\t\t\tdefaultView.removeEventListener( 'scroll', refresh, true );\n\t\t\tdefaultView.removeEventListener( 'click', refreshOnAnimationFrame );\n\t\t\tdefaultView.cancelAnimationFrame( rafId );\n\n\t\t\tif ( anchorDocument && anchorDocument !== ownerDocument ) {\n\t\t\t\tanchorDocument.defaultView?.removeEventListener(\n\t\t\t\t\t'resize',\n\t\t\t\t\trefresh\n\t\t\t\t);\n\t\t\t\tanchorDocument.defaultView?.removeEventListener(\n\t\t\t\t\t'scroll',\n\t\t\t\t\trefresh,\n\t\t\t\t\ttrue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif ( observer ) {\n\t\t\t\tobserver.disconnect();\n\t\t\t}\n\t\t};\n\t}, [\n\t\tisExpanded,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\tanchorRef,\n\t\tshouldAnchorIncludePadding,\n\t\tposition,\n\t\tcontentSize,\n\t\t__unstableStickyBoundaryElement,\n\t\t__unstableObserveElement,\n\t\t__unstableBoundaryParent,\n\t] );\n\n\tconst onDialogClose = ( type, event ) => {\n\t\t// Ideally the popover should have just a single onClose prop and\n\t\t// not three props that potentially do the same thing.\n\t\tif ( type === 'focus-outside' && onFocusOutside ) {\n\t\t\tonFocusOutside( event );\n\t\t} else if ( onClose ) {\n\t\t\tonClose();\n\t\t}\n\t};\n\n\tconst [ dialogRef, dialogProps ] = useDialog( {\n\t\tfocusOnMount,\n\t\t__unstableOnClose: onDialogClose,\n\t\tonClose: onDialogClose,\n\t} );\n\n\tconst mergedRefs = useMergeRefs( [ containerRef, dialogRef, ref ] );\n\n\t/** @type {false | string} */\n\tconst animateClassName =\n\t\tBoolean( animate && animateOrigin ) &&\n\t\tgetAnimateClassName( {\n\t\t\ttype: 'appear',\n\t\t\torigin: animateOrigin,\n\t\t} );\n\n\t// Disable reason: We care to capture the _bubbled_ events from inputs\n\t// within popover as inferring close intent.\n\n\tlet content = (\n\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-popover',\n\t\t\t\tclassName,\n\t\t\t\tanimateClassName,\n\t\t\t\t{\n\t\t\t\t\t'is-expanded': isExpanded,\n\t\t\t\t\t'is-without-arrow': noArrow,\n\t\t\t\t\t'is-alternate': isAlternate,\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ ...contentProps }\n\t\t\tref={ mergedRefs }\n\t\t\t{ ...dialogProps }\n\t\t\ttabIndex=\"-1\"\n\t\t>\n\t\t\t{ isExpanded && <ScrollLock /> }\n\t\t\t{ isExpanded && (\n\t\t\t\t<div className=\"components-popover__header\">\n\t\t\t\t\t<span className=\"components-popover__header-title\">\n\t\t\t\t\t\t{ headerTitle }\n\t\t\t\t\t</span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"components-popover__close\"\n\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<div ref={ contentRef } className=\"components-popover__content\">\n\t\t\t\t<div style={ { position: 'relative' } }>\n\t\t\t\t\t{ containerResizeListener }\n\t\t\t\t\t{ children }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n\n\tif ( slot.ref ) {\n\t\tcontent = <Fill name={ slotName }>{ content }</Fill>;\n\t}\n\n\tif ( anchorRef || anchorRect ) {\n\t\treturn content;\n\t}\n\n\treturn <span ref={ anchorRefFallback }>{ content }</span>;\n};\n\nconst PopoverContainer = forwardRef( Popover );\n\nfunction PopoverSlot( { name = SLOT_NAME }, ref ) {\n\treturn (\n\t\t<Slot\n\t\t\tbubblesVirtually\n\t\t\tname={ name }\n\t\t\tclassName=\"popover-slot\"\n\t\t\tref={ ref }\n\t\t/>\n\t);\n}\n\nPopoverContainer.Slot = forwardRef( PopoverSlot );\nPopoverContainer.__unstableSlotNameProvider = slotNameContext.Provider;\n\nexport default PopoverContainer;\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import { createElement } from "@wordpress/element";
|
|
2
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* External dependencies
|
|
@@ -20,15 +20,31 @@ import { contextConnect, useContextSystem } from '../../ui/context';
|
|
|
20
20
|
import { useToggleGroupControlContext } from '../context';
|
|
21
21
|
import * as styles from './styles';
|
|
22
22
|
import { useCx } from '../../utils/hooks';
|
|
23
|
+
import Tooltip from '../../tooltip';
|
|
23
24
|
const {
|
|
24
25
|
ButtonContentView,
|
|
25
26
|
LabelPlaceholderView,
|
|
26
27
|
LabelView
|
|
27
28
|
} = styles;
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
const WithToolTip = _ref => {
|
|
31
|
+
let {
|
|
32
|
+
showTooltip,
|
|
33
|
+
text,
|
|
34
|
+
children
|
|
35
|
+
} = _ref;
|
|
36
|
+
|
|
37
|
+
if (showTooltip && text) {
|
|
38
|
+
return createElement(Tooltip, {
|
|
39
|
+
text: text,
|
|
40
|
+
position: "top center"
|
|
41
|
+
}, children);
|
|
42
|
+
}
|
|
31
43
|
|
|
44
|
+
return createElement(Fragment, null, children);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
function ToggleGroupControlOption(props, forwardedRef) {
|
|
32
48
|
const toggleGroupControlContext = useToggleGroupControlContext();
|
|
33
49
|
const id = useInstanceId(ToggleGroupControlOption, toggleGroupControlContext.baseId || 'toggle-group-control-option');
|
|
34
50
|
const buttonProps = useContextSystem({ ...props,
|
|
@@ -39,6 +55,7 @@ function ToggleGroupControlOption(props, forwardedRef) {
|
|
|
39
55
|
isBlock = false,
|
|
40
56
|
label,
|
|
41
57
|
value,
|
|
58
|
+
showTooltip = false,
|
|
42
59
|
...radioProps
|
|
43
60
|
} = { ...toggleGroupControlContext,
|
|
44
61
|
...buttonProps
|
|
@@ -47,19 +64,23 @@ function ToggleGroupControlOption(props, forwardedRef) {
|
|
|
47
64
|
const cx = useCx();
|
|
48
65
|
const labelViewClasses = cx(isBlock && styles.labelBlock);
|
|
49
66
|
const classes = cx(styles.buttonView, className, isActive && styles.buttonActive);
|
|
67
|
+
const optionLabel = !!radioProps['aria-label'] ? radioProps['aria-label'] : label;
|
|
50
68
|
return createElement(LabelView, {
|
|
51
69
|
className: labelViewClasses,
|
|
52
70
|
"data-active": isActive
|
|
71
|
+
}, createElement(WithToolTip, {
|
|
72
|
+
showTooltip: showTooltip,
|
|
73
|
+
text: optionLabel
|
|
53
74
|
}, createElement(Radio, _extends({}, radioProps, {
|
|
54
75
|
as: "button",
|
|
55
|
-
"aria-label":
|
|
76
|
+
"aria-label": optionLabel,
|
|
56
77
|
className: classes,
|
|
57
78
|
"data-value": value,
|
|
58
79
|
ref: forwardedRef,
|
|
59
80
|
value: value
|
|
60
81
|
}), createElement(ButtonContentView, null, label), createElement(LabelPlaceholderView, {
|
|
61
82
|
"aria-hidden": true
|
|
62
|
-
}, label)));
|
|
83
|
+
}, label))));
|
|
63
84
|
}
|
|
64
85
|
/**
|
|
65
86
|
* `ToggleGroupControlOption` is a form component and is meant to be used as a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/toggle-group-control/toggle-group-control-option/component.tsx"],"names":["Radio","useInstanceId","contextConnect","useContextSystem","useToggleGroupControlContext","styles","useCx","ButtonContentView","LabelPlaceholderView","LabelView","ToggleGroupControlOption","props","forwardedRef","toggleGroupControlContext","id","baseId","buttonProps","className","isBlock","label","value","radioProps","isActive","state","cx","labelViewClasses","labelBlock","classes","buttonView","buttonActive","ConnectedToggleGroupControlOption"],"mappings":";;;AAAA;AACA;AACA;AACA;AAEA;AACA,SAASA,KAAT,QAAsB,QAAtB;AAEA;AACA;AACA;;
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/toggle-group-control/toggle-group-control-option/component.tsx"],"names":["Radio","useInstanceId","contextConnect","useContextSystem","useToggleGroupControlContext","styles","useCx","Tooltip","ButtonContentView","LabelPlaceholderView","LabelView","WithToolTip","showTooltip","text","children","ToggleGroupControlOption","props","forwardedRef","toggleGroupControlContext","id","baseId","buttonProps","className","isBlock","label","value","radioProps","isActive","state","cx","labelViewClasses","labelBlock","classes","buttonView","buttonActive","optionLabel","ConnectedToggleGroupControlOption"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport type { Ref } from 'react';\n// eslint-disable-next-line no-restricted-imports\nimport { Radio } from 'reakit';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport {\n\tcontextConnect,\n\tuseContextSystem,\n\tWordPressComponentProps,\n} from '../../ui/context';\nimport type { ToggleGroupControlOptionProps, WithToolTipProps } from '../types';\nimport { useToggleGroupControlContext } from '../context';\nimport * as styles from './styles';\nimport { useCx } from '../../utils/hooks';\nimport Tooltip from '../../tooltip';\n\nconst { ButtonContentView, LabelPlaceholderView, LabelView } = styles;\n\nconst WithToolTip = ( { showTooltip, text, children }: WithToolTipProps ) => {\n\tif ( showTooltip && text ) {\n\t\treturn (\n\t\t\t<Tooltip text={ text } position=\"top center\">\n\t\t\t\t{ children }\n\t\t\t</Tooltip>\n\t\t);\n\t}\n\treturn <>{ children }</>;\n};\n\nfunction ToggleGroupControlOption(\n\tprops: WordPressComponentProps< ToggleGroupControlOptionProps, 'button' >,\n\tforwardedRef: Ref< any >\n) {\n\tconst toggleGroupControlContext = useToggleGroupControlContext();\n\tconst id = useInstanceId(\n\t\tToggleGroupControlOption,\n\t\ttoggleGroupControlContext.baseId || 'toggle-group-control-option'\n\t) as string;\n\tconst buttonProps = useContextSystem(\n\t\t{ ...props, id },\n\t\t'ToggleGroupControlOption'\n\t);\n\n\tconst {\n\t\tclassName,\n\t\tisBlock = false,\n\t\tlabel,\n\t\tvalue,\n\t\tshowTooltip = false,\n\t\t...radioProps\n\t} = {\n\t\t...toggleGroupControlContext,\n\t\t...buttonProps,\n\t};\n\n\tconst isActive = radioProps.state === value;\n\tconst cx = useCx();\n\tconst labelViewClasses = cx( isBlock && styles.labelBlock );\n\tconst classes = cx(\n\t\tstyles.buttonView,\n\t\tclassName,\n\t\tisActive && styles.buttonActive\n\t);\n\tconst optionLabel = !! radioProps[ 'aria-label' ]\n\t\t? radioProps[ 'aria-label' ]\n\t\t: label;\n\n\treturn (\n\t\t<LabelView className={ labelViewClasses } data-active={ isActive }>\n\t\t\t<WithToolTip showTooltip={ showTooltip } text={ optionLabel }>\n\t\t\t\t<Radio\n\t\t\t\t\t{ ...radioProps }\n\t\t\t\t\tas=\"button\"\n\t\t\t\t\taria-label={ optionLabel }\n\t\t\t\t\tclassName={ classes }\n\t\t\t\t\tdata-value={ value }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t>\n\t\t\t\t\t<ButtonContentView>{ label }</ButtonContentView>\n\t\t\t\t\t<LabelPlaceholderView aria-hidden>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</LabelPlaceholderView>\n\t\t\t\t</Radio>\n\t\t\t</WithToolTip>\n\t\t</LabelView>\n\t);\n}\n\n/**\n * `ToggleGroupControlOption` is a form component and is meant to be used as a\n * child of `ToggleGroupControl`.\n *\n * @example\n * ```jsx\n * import {\n * __experimentalToggleGroupControl as ToggleGroupControl,\n * __experimentalToggleGroupControlOption as ToggleGroupControlOption,\n * } from '@wordpress/components';\n *\n * function Example() {\n * return (\n * <ToggleGroupControl label=\"my label\" value=\"vertical\" isBlock>\n * <ToggleGroupControlOption value=\"horizontal\" label=\"Horizontal\" />\n * <ToggleGroupControlOption value=\"vertical\" label=\"Vertical\" />\n * </ToggleGroupControl>\n * );\n * }\n * ```\n */\nconst ConnectedToggleGroupControlOption = contextConnect(\n\tToggleGroupControlOption,\n\t'ToggleGroupControlOption'\n);\n\nexport default ConnectedToggleGroupControlOption;\n"]}
|
|
@@ -89,21 +89,21 @@ const emitToChild = (children, eventName, event) => {
|
|
|
89
89
|
}
|
|
90
90
|
};
|
|
91
91
|
|
|
92
|
-
function Tooltip(
|
|
93
|
-
|
|
92
|
+
function Tooltip(props) {
|
|
93
|
+
const {
|
|
94
94
|
children,
|
|
95
95
|
position,
|
|
96
96
|
text,
|
|
97
97
|
shortcut,
|
|
98
98
|
delay = TOOLTIP_DELAY
|
|
99
|
-
} =
|
|
100
|
-
|
|
99
|
+
} = props;
|
|
101
100
|
/**
|
|
102
101
|
* Whether a mouse is currently pressed, used in determining whether
|
|
103
102
|
* to handle a focus event as displaying the tooltip immediately.
|
|
104
103
|
*
|
|
105
104
|
* @type {boolean}
|
|
106
105
|
*/
|
|
106
|
+
|
|
107
107
|
const [isMouseDown, setIsMouseDown] = useState(false);
|
|
108
108
|
const [isOver, setIsOver] = useState(false);
|
|
109
109
|
const delayedSetIsOver = useDebounce(setIsOver, delay);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["includes","Children","cloneElement","concatChildren","useEffect","useState","useDebounce","Popover","Shortcut","TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","children","getRegularElement","addPopoverToGrandchildren","grandchildren","isOver","position","text","shortcut","emitToChild","eventName","event","count","only","props","disabled","Tooltip","delay","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","createMouseDown","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( { eventHandlers, child, childrenWithPopover } ) =>\n\tcloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t} ) }\n\t\t</span>,\n\t\teventHandlers\n\t);\n\nconst getRegularElement = ( { child, eventHandlers, childrenWithPopover } ) =>\n\tcloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t} );\n\nconst addPopoverToGrandchildren = ( {\n\tgrandchildren,\n\tisOver,\n\tposition,\n\ttext,\n\tshortcut,\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName=\"components-tooltip\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\tnoArrow={ true }\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( {\n\tchildren,\n\tposition,\n\ttext,\n\tshortcut,\n\tdelay = TOOLTIP_DELAY,\n} ) {\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// Preserve original child callback behavior\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = includes( [ 'focus', 'mouseenter' ], event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tisOver,\n\t\tposition,\n\t\ttext,\n\t\tshortcut,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t} );\n}\n\nexport default Tooltip;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["includes","Children","cloneElement","concatChildren","useEffect","useState","useDebounce","Popover","Shortcut","TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","children","getRegularElement","addPopoverToGrandchildren","grandchildren","isOver","position","text","shortcut","emitToChild","eventName","event","count","only","props","disabled","Tooltip","delay","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","createMouseDown","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":";AAAA;;AACA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,QAAzB;AAEA;AACA;AACA;;AACA,SACCC,QADD,EAECC,YAFD,EAGCC,cAHD,EAICC,SAJD,EAKCC,QALD,QAMO,oBANP;AAOA,SAASC,WAAT,QAA4B,oBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,OAAOC,QAAP,MAAqB,aAArB;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,aAAa,GAAG,GAAtB;AAEP,MAAMC,YAAY,GAAG;AAAK,EAAA,SAAS,EAAC;AAAf,EAArB;;AAEA,MAAMC,kBAAkB,GAAG;AAAA,MAAE;AAAEC,IAAAA,aAAF;AAAiBC,IAAAA,KAAjB;AAAwBC,IAAAA;AAAxB,GAAF;AAAA,SAC1BZ,YAAY,CACX;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGA,YAAY,CAAEQ,YAAF,EAAgBE,aAAhB,CADf,EAEGV,YAAY,CAAEW,KAAF,EAAS;AACtBE,IAAAA,QAAQ,EAAED;AADY,GAAT,CAFf,CADW,EAOXF,aAPW,CADc;AAAA,CAA3B;;AAWA,MAAMI,iBAAiB,GAAG;AAAA,MAAE;AAAEH,IAAAA,KAAF;AAASD,IAAAA,aAAT;AAAwBE,IAAAA;AAAxB,GAAF;AAAA,SACzBZ,YAAY,CAAEW,KAAF,EAAS,EACpB,GAAGD,aADiB;AAEpBG,IAAAA,QAAQ,EAAED;AAFU,GAAT,CADa;AAAA,CAA1B;;AAMA,MAAMG,yBAAyB,GAAG;AAAA,MAAE;AACnCC,IAAAA,aADmC;AAEnCC,IAAAA,MAFmC;AAGnCC,IAAAA,QAHmC;AAInCC,IAAAA,IAJmC;AAKnCC,IAAAA;AALmC,GAAF;AAAA,SAOjCnB,cAAc,CACbe,aADa,EAEbC,MAAM,IACL,cAAC,OAAD;AACC,IAAA,YAAY,EAAG,KADhB;AAEC,IAAA,QAAQ,EAAGC,QAFZ;AAGC,IAAA,SAAS,EAAC,oBAHX;AAIC,mBAAY,MAJb;AAKC,IAAA,OAAO,EAAG,KALX;AAMC,IAAA,OAAO,EAAG;AANX,KAQGC,IARH,EASC,cAAC,QAAD;AACC,IAAA,SAAS,EAAC,8BADX;AAEC,IAAA,QAAQ,EAAGC;AAFZ,IATD,CAHY,CAPmB;AAAA,CAAlC;;AA2BA,MAAMC,WAAW,GAAG,CAAER,QAAF,EAAYS,SAAZ,EAAuBC,KAAvB,KAAkC;AACrD,MAAKxB,QAAQ,CAACyB,KAAT,CAAgBX,QAAhB,MAA+B,CAApC,EAAwC;AACvC;AACA;;AAED,QAAMF,KAAK,GAAGZ,QAAQ,CAAC0B,IAAT,CAAeZ,QAAf,CAAd,CALqD,CAOrD;;AACA,MAAKF,KAAK,CAACe,KAAN,CAAYC,QAAjB,EAA4B;AAC3B;AACA;;AAED,MAAK,OAAOhB,KAAK,CAACe,KAAN,CAAaJ,SAAb,CAAP,KAAoC,UAAzC,EAAsD;AACrDX,IAAAA,KAAK,CAACe,KAAN,CAAaJ,SAAb,EAA0BC,KAA1B;AACA;AACD,CAfD;;AAiBA,SAASK,OAAT,CAAkBF,KAAlB,EAA0B;AACzB,QAAM;AAAEb,IAAAA,QAAF;AAAYK,IAAAA,QAAZ;AAAsBC,IAAAA,IAAtB;AAA4BC,IAAAA,QAA5B;AAAsCS,IAAAA,KAAK,GAAGtB;AAA9C,MAAgEmB,KAAtE;AACA;AACD;AACA;AACA;AACA;AACA;;AACC,QAAM,CAAEI,WAAF,EAAeC,cAAf,IAAkC5B,QAAQ,CAAE,KAAF,CAAhD;AACA,QAAM,CAAEc,MAAF,EAAUe,SAAV,IAAwB7B,QAAQ,CAAE,KAAF,CAAtC;AACA,QAAM8B,gBAAgB,GAAG7B,WAAW,CAAE4B,SAAF,EAAaH,KAAb,CAApC;;AAEA,QAAMK,eAAe,GAAKX,KAAF,IAAa;AACpC;AACAF,IAAAA,WAAW,CAAER,QAAF,EAAY,aAAZ,EAA2BU,KAA3B,CAAX,CAFoC,CAIpC;AACA;AACA;AACA;;AACAY,IAAAA,QAAQ,CAACC,gBAAT,CAA2B,SAA3B,EAAsCC,iBAAtC;AACAN,IAAAA,cAAc,CAAE,IAAF,CAAd;AACA,GAVD;;AAYA,QAAMO,aAAa,GAAKf,KAAF,IAAa;AAClCF,IAAAA,WAAW,CAAER,QAAF,EAAY,WAAZ,EAAyBU,KAAzB,CAAX;AACAY,IAAAA,QAAQ,CAACI,mBAAT,CAA8B,SAA9B,EAAyCF,iBAAzC;AACAN,IAAAA,cAAc,CAAE,KAAF,CAAd;AACA,GAJD;;AAMA,QAAMS,gBAAgB,GAAKC,IAAF,IAAY;AACpC,QAAKA,IAAI,KAAK,SAAd,EAA0B,OAAOH,aAAP;AAC1B,QAAKG,IAAI,KAAK,WAAd,EAA4B,OAAOP,eAAP;AAC5B,GAHD;AAKA;AACD;AACA;AACA;AACA;AACA;;;AACC,QAAMG,iBAAiB,GAAGG,gBAAgB,CAAE,SAAF,CAA1C;;AAEA,QAAME,kBAAkB,GAAG,CAAEpB,SAAF,EAAaqB,SAAb,KAA4B;AACtD,WAASpB,KAAF,IAAa;AACnB;AACAF,MAAAA,WAAW,CAAER,QAAF,EAAYS,SAAZ,EAAuBC,KAAvB,CAAX,CAFmB,CAInB;AACA;AACA;AACA;AACA;AACA;;AACA,UAAKA,KAAK,CAACqB,aAAN,CAAoBjB,QAAzB,EAAoC;AACnC;AACA,OAZkB,CAcnB;AACA;AACA;;;AACA,UAAK,YAAYJ,KAAK,CAACkB,IAAlB,IAA0BX,WAA/B,EAA6C;AAC5C;AACA,OAnBkB,CAqBnB;AACA;;;AACAG,MAAAA,gBAAgB,CAACY,MAAjB;;AAEA,YAAMC,OAAO,GAAGhD,QAAQ,CAAE,CAAE,OAAF,EAAW,YAAX,CAAF,EAA6ByB,KAAK,CAACkB,IAAnC,CAAxB;;AACA,UAAKK,OAAO,KAAK7B,MAAjB,EAA0B;AACzB;AACA;;AAED,UAAK0B,SAAL,EAAiB;AAChBV,QAAAA,gBAAgB,CAAEa,OAAF,CAAhB;AACA,OAFD,MAEO;AACNd,QAAAA,SAAS,CAAEc,OAAF,CAAT;AACA;AACD,KAnCD;AAoCA,GArCD;;AAsCA,QAAMC,cAAc,GAAG,MAAM;AAC5Bd,IAAAA,gBAAgB,CAACY,MAAjB;AACAV,IAAAA,QAAQ,CAACI,mBAAT,CAA8B,SAA9B,EAAyCF,iBAAzC;AACA,GAHD;;AAKAnC,EAAAA,SAAS,CAAE,MAAM6C,cAAR,EAAwB,EAAxB,CAAT;;AAEA,MAAKhD,QAAQ,CAACyB,KAAT,CAAgBX,QAAhB,MAA+B,CAApC,EAAwC;AACvC,QAAK,kBAAkBmC,OAAO,CAACC,GAAR,CAAYC,QAAnC,EAA8C;AAC7C;AACAC,MAAAA,OAAO,CAACC,KAAR,CACC,4DADD;AAGA;;AAED,WAAOvC,QAAP;AACA;;AAED,QAAMH,aAAa,GAAG;AACrB2C,IAAAA,YAAY,EAAEX,kBAAkB,CAAE,cAAF,EAAkB,IAAlB,CADX;AAErBY,IAAAA,YAAY,EAAEZ,kBAAkB,CAAE,cAAF,CAFX;AAGrBa,IAAAA,OAAO,EAAEb,kBAAkB,CAAE,SAAF,CAHN;AAIrBc,IAAAA,OAAO,EAAEd,kBAAkB,CAAE,SAAF,CAJN;AAKrBe,IAAAA,MAAM,EAAEf,kBAAkB,CAAE,QAAF,CALL;AAMrBgB,IAAAA,WAAW,EAAElB,gBAAgB,CAAE,WAAF;AANR,GAAtB;AASA,QAAM7B,KAAK,GAAGZ,QAAQ,CAAC0B,IAAT,CAAeZ,QAAf,CAAd;AACA,QAAM;AAAEA,IAAAA,QAAQ,EAAEG,aAAZ;AAA2BW,IAAAA;AAA3B,MAAwChB,KAAK,CAACe,KAApD;AACA,QAAMiC,qBAAqB,GAAGhC,QAAQ,GACnClB,kBADmC,GAEnCK,iBAFH;AAIA,QAAM8C,WAAW,GAAG;AACnB3C,IAAAA,MADmB;AAEnBC,IAAAA,QAFmB;AAGnBC,IAAAA,IAHmB;AAInBC,IAAAA;AAJmB,GAApB;AAMA,QAAMR,mBAAmB,GAAGG,yBAAyB,CAAE;AACtDC,IAAAA,aADsD;AAEtD,OAAG4C;AAFmD,GAAF,CAArD;AAKA,SAAOD,qBAAqB,CAAE;AAC7BhD,IAAAA,KAD6B;AAE7BD,IAAAA,aAF6B;AAG7BE,IAAAA;AAH6B,GAAF,CAA5B;AAKA;;AAED,eAAegB,OAAf","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport { includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( { eventHandlers, child, childrenWithPopover } ) =>\n\tcloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t} ) }\n\t\t</span>,\n\t\teventHandlers\n\t);\n\nconst getRegularElement = ( { child, eventHandlers, childrenWithPopover } ) =>\n\tcloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t} );\n\nconst addPopoverToGrandchildren = ( {\n\tgrandchildren,\n\tisOver,\n\tposition,\n\ttext,\n\tshortcut,\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName=\"components-tooltip\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\tnoArrow={ true }\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( props ) {\n\tconst { children, position, text, shortcut, delay = TOOLTIP_DELAY } = props;\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// Preserve original child callback behavior\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = includes( [ 'focus', 'mouseenter' ], event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tisOver,\n\t\tposition,\n\t\ttext,\n\t\tshortcut,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t} );\n}\n\nexport default Tooltip;\n"]}
|
|
@@ -636,6 +636,7 @@ svg.components-checkbox-control__checked {
|
|
|
636
636
|
.components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper {
|
|
637
637
|
display: flex;
|
|
638
638
|
justify-content: flex-end;
|
|
639
|
+
margin-top: 12px;
|
|
639
640
|
}
|
|
640
641
|
.components-circular-option-picker .components-circular-option-picker__swatches {
|
|
641
642
|
display: flex;
|
|
@@ -754,11 +755,22 @@ svg.components-checkbox-control__checked {
|
|
|
754
755
|
}
|
|
755
756
|
|
|
756
757
|
@media (min-width: 782px) {
|
|
757
|
-
.components-
|
|
758
|
+
.components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content {
|
|
758
759
|
margin-left: 156px;
|
|
759
760
|
margin-top: -49px;
|
|
760
761
|
}
|
|
761
762
|
}
|
|
763
|
+
.components-palette-edit__popover .components-custom-gradient-picker__gradient-bar {
|
|
764
|
+
margin-top: 0;
|
|
765
|
+
}
|
|
766
|
+
.components-palette-edit__popover .components-custom-gradient-picker__ui-line {
|
|
767
|
+
margin-bottom: 0;
|
|
768
|
+
}
|
|
769
|
+
.components-palette-edit__popover .components-custom-gradient-picker {
|
|
770
|
+
width: 280px;
|
|
771
|
+
padding: 8px;
|
|
772
|
+
}
|
|
773
|
+
|
|
762
774
|
.component-color-indicator {
|
|
763
775
|
width: 25px;
|
|
764
776
|
height: 16px;
|
|
@@ -879,6 +891,26 @@ input.components-combobox-control__input[type=text]:focus {
|
|
|
879
891
|
cursor: pointer;
|
|
880
892
|
}
|
|
881
893
|
|
|
894
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content {
|
|
895
|
+
overflow: visible;
|
|
896
|
+
box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05);
|
|
897
|
+
border: none;
|
|
898
|
+
border-radius: 2px;
|
|
899
|
+
}
|
|
900
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content > div {
|
|
901
|
+
padding: 0;
|
|
902
|
+
}
|
|
903
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation {
|
|
904
|
+
border-top-left-radius: 2px;
|
|
905
|
+
border-top-right-radius: 2px;
|
|
906
|
+
}
|
|
907
|
+
|
|
908
|
+
@media (min-width: 782px) {
|
|
909
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content {
|
|
910
|
+
margin-left: 156px;
|
|
911
|
+
margin-top: -60px;
|
|
912
|
+
}
|
|
913
|
+
}
|
|
882
914
|
.components-custom-gradient-picker__gradient-bar:not(.has-gradient) {
|
|
883
915
|
opacity: 0.4;
|
|
884
916
|
}
|
package/build-style/style.css
CHANGED
|
@@ -636,6 +636,7 @@ svg.components-checkbox-control__checked {
|
|
|
636
636
|
.components-circular-option-picker .components-circular-option-picker__custom-clear-wrapper {
|
|
637
637
|
display: flex;
|
|
638
638
|
justify-content: flex-end;
|
|
639
|
+
margin-top: 12px;
|
|
639
640
|
}
|
|
640
641
|
.components-circular-option-picker .components-circular-option-picker__swatches {
|
|
641
642
|
display: flex;
|
|
@@ -754,11 +755,22 @@ svg.components-checkbox-control__checked {
|
|
|
754
755
|
}
|
|
755
756
|
|
|
756
757
|
@media (min-width: 782px) {
|
|
757
|
-
.components-
|
|
758
|
+
.components-palette-edit__popover.components-popover .components-popover__content.components-popover__content.components-popover__content {
|
|
758
759
|
margin-right: 156px;
|
|
759
760
|
margin-top: -49px;
|
|
760
761
|
}
|
|
761
762
|
}
|
|
763
|
+
.components-palette-edit__popover .components-custom-gradient-picker__gradient-bar {
|
|
764
|
+
margin-top: 0;
|
|
765
|
+
}
|
|
766
|
+
.components-palette-edit__popover .components-custom-gradient-picker__ui-line {
|
|
767
|
+
margin-bottom: 0;
|
|
768
|
+
}
|
|
769
|
+
.components-palette-edit__popover .components-custom-gradient-picker {
|
|
770
|
+
width: 280px;
|
|
771
|
+
padding: 8px;
|
|
772
|
+
}
|
|
773
|
+
|
|
762
774
|
.component-color-indicator {
|
|
763
775
|
width: 25px;
|
|
764
776
|
height: 16px;
|
|
@@ -879,6 +891,26 @@ input.components-combobox-control__input[type=text]:focus {
|
|
|
879
891
|
cursor: pointer;
|
|
880
892
|
}
|
|
881
893
|
|
|
894
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content {
|
|
895
|
+
overflow: visible;
|
|
896
|
+
box-shadow: 0 4px 4px rgba(0, 0, 0, 0.05);
|
|
897
|
+
border: none;
|
|
898
|
+
border-radius: 2px;
|
|
899
|
+
}
|
|
900
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content > div {
|
|
901
|
+
padding: 0;
|
|
902
|
+
}
|
|
903
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content .components-popover__content .react-colorful__saturation {
|
|
904
|
+
border-top-right-radius: 2px;
|
|
905
|
+
border-top-left-radius: 2px;
|
|
906
|
+
}
|
|
907
|
+
|
|
908
|
+
@media (min-width: 782px) {
|
|
909
|
+
.components-dropdown__content.components-color-palette__custom-color-dropdown-content.is-rendered-in-sidebar.is-from-top .components-popover__content {
|
|
910
|
+
margin-right: 156px;
|
|
911
|
+
margin-top: -60px;
|
|
912
|
+
}
|
|
913
|
+
}
|
|
882
914
|
.components-custom-gradient-picker__gradient-bar:not(.has-gradient) {
|
|
883
915
|
opacity: 0.4;
|
|
884
916
|
}
|
|
@@ -5,7 +5,7 @@ export function useCard(props: import('../../ui/context').WordPressComponentProp
|
|
|
5
5
|
elevation: number;
|
|
6
6
|
isBorderless: boolean;
|
|
7
7
|
isRounded: boolean;
|
|
8
|
-
size: import("../types").SizeOptions;
|
|
8
|
+
size: import("../types").SizeOptions | "extraSmall";
|
|
9
9
|
className: string;
|
|
10
10
|
children: import("react").ReactNode;
|
|
11
11
|
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
@@ -13,7 +13,7 @@ export default ConnectedCardHeader;
|
|
|
13
13
|
* ```
|
|
14
14
|
*/
|
|
15
15
|
declare const ConnectedCardHeader: import("../../ui/context").WordPressComponent<"div", {
|
|
16
|
-
size?: import("../types").SizeOptions | undefined;
|
|
16
|
+
size?: import("../types").SizeOptions | "extraSmall" | undefined;
|
|
17
17
|
} & {
|
|
18
18
|
children: import("react").ReactNode;
|
|
19
19
|
isShady?: boolean | undefined;
|
|
@@ -11,10 +11,13 @@ export const boxShadowless: import("@emotion/utils").SerializedStyles;
|
|
|
11
11
|
export const borderless: import("@emotion/utils").SerializedStyles;
|
|
12
12
|
export const rounded: import("@emotion/utils").SerializedStyles;
|
|
13
13
|
export namespace cardPaddings {
|
|
14
|
-
const large: import("@emotion/utils").SerializedStyles;
|
|
15
|
-
const medium: import("@emotion/utils").SerializedStyles;
|
|
16
|
-
const small: import("@emotion/utils").SerializedStyles;
|
|
17
|
-
|
|
14
|
+
export const large: import("@emotion/utils").SerializedStyles;
|
|
15
|
+
export const medium: import("@emotion/utils").SerializedStyles;
|
|
16
|
+
export const small: import("@emotion/utils").SerializedStyles;
|
|
17
|
+
export { xSmallCardPadding as xSmall };
|
|
18
|
+
export { xSmallCardPadding as extraSmall };
|
|
18
19
|
}
|
|
19
20
|
export const shady: import("@emotion/utils").SerializedStyles;
|
|
21
|
+
declare const xSmallCardPadding: import("@emotion/utils").SerializedStyles;
|
|
22
|
+
export {};
|
|
20
23
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/card/styles.js"],"names":[],"mappings":"AAUA,6DAGE;AAEF,+DAOE;AAEF,+DAOE;AAEF,gEAEE;AAEF,6DAIE;AAEF,8DAWE;AAEF,gEAIE;AAEF,qEAUE;AAEF,oEAEE;AAEF,sEAEE;AAEF,mEAEE;AAEF,gEAEE
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/card/styles.js"],"names":[],"mappings":"AAUA,6DAGE;AAEF,+DAOE;AAEF,+DAOE;AAEF,gEAEE;AAEF,6DAIE;AAEF,8DAWE;AAEF,gEAIE;AAEF,qEAUE;AAEF,oEAEE;AAEF,sEAEE;AAEF,mEAEE;AAEF,gEAEE;;;;;;;;AAsBF,8DAEE;AAtBF,2EAEE"}
|
|
@@ -6,6 +6,7 @@ import type { CSSProperties } from 'react';
|
|
|
6
6
|
* Internal dependencies
|
|
7
7
|
*/
|
|
8
8
|
import type { Props as SurfaceProps } from '../surface/types';
|
|
9
|
+
declare type DeprecatedSizeOptions = 'extraSmall';
|
|
9
10
|
export declare type SizeOptions = 'xSmall' | 'small' | 'medium' | 'large';
|
|
10
11
|
declare type SizeableProps = {
|
|
11
12
|
/**
|
|
@@ -13,7 +14,7 @@ declare type SizeableProps = {
|
|
|
13
14
|
*
|
|
14
15
|
* @default 'medium'
|
|
15
16
|
*/
|
|
16
|
-
size?: SizeOptions;
|
|
17
|
+
size?: SizeOptions | DeprecatedSizeOptions;
|
|
17
18
|
};
|
|
18
19
|
export declare type Props = SurfaceProps & SizeableProps & {
|
|
19
20
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/card/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE9D,oBAAY,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAElE,aAAK,aAAa,GAAG;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/card/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE9D,aAAK,qBAAqB,GAAG,YAAY,CAAC;AAC1C,oBAAY,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAElE,aAAK,aAAa,GAAG;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,GAAG,qBAAqB,CAAC;CAC3C,CAAC;AAEF,oBAAY,KAAK,GAAG,YAAY,GAC/B,aAAa,GAAG;IACf;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEH,aAAK,qBAAqB,GAAG,aAAa,GAAG;IAC5C;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,SAAS,GAAG,qBAAqB,GAAG;IAC/C;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,aAAK,yBAAyB,GAAG,qBAAqB,GAAG;IACxD;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,oBAAY,WAAW,GAAG,yBAAyB,CAAC;AAEpD,oBAAY,WAAW,GAAG,yBAAyB,GAAG;IACrD,OAAO,EAAE,aAAa,CAAE,gBAAgB,CAAE,CAAC;CAC3C,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import type { DialogInputEvent } from './types';
|
|
6
|
+
declare const _default: import("../ui/context").WordPressComponent<React.ElementType<any>, {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
onConfirm: (event: DialogInputEvent) => void;
|
|
9
|
+
} & {
|
|
10
|
+
onCancel: (event: DialogInputEvent) => void;
|
|
11
|
+
isOpen: boolean;
|
|
12
|
+
} & Omit<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
13
|
+
ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
|
|
14
|
+
}, "as" | keyof {
|
|
15
|
+
children: React.ReactNode;
|
|
16
|
+
onConfirm: (event: DialogInputEvent) => void;
|
|
17
|
+
} | "onCancel" | "isOpen"> & {
|
|
18
|
+
as?: undefined;
|
|
19
|
+
}, boolean> | import("../ui/context").WordPressComponent<React.ElementType<any>, {
|
|
20
|
+
children: React.ReactNode;
|
|
21
|
+
onConfirm: (event: DialogInputEvent) => void;
|
|
22
|
+
} & {
|
|
23
|
+
onCancel?: ((event: DialogInputEvent) => void) | undefined;
|
|
24
|
+
isOpen?: undefined;
|
|
25
|
+
} & Omit<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & {
|
|
26
|
+
ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
|
|
27
|
+
}, "as" | keyof {
|
|
28
|
+
children: React.ReactNode;
|
|
29
|
+
onConfirm: (event: DialogInputEvent) => void;
|
|
30
|
+
} | "onCancel" | "isOpen"> & {
|
|
31
|
+
as?: undefined;
|
|
32
|
+
}, boolean>;
|
|
33
|
+
export default _default;
|
|
34
|
+
//# sourceMappingURL=component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/confirm-dialog/component.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAcnD,OAAO,KAAK,EAAY,gBAAgB,EAAE,MAAM,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+F1D,wBAAgE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/confirm-dialog/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,aAAa,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import type { MouseEvent, KeyboardEvent, ReactNode } from 'react';
|
|
5
|
+
export declare type DialogInputEvent = KeyboardEvent<HTMLDivElement> | MouseEvent<HTMLButtonElement>;
|
|
6
|
+
declare type BaseProps = {
|
|
7
|
+
children: ReactNode;
|
|
8
|
+
onConfirm: (event: DialogInputEvent) => void;
|
|
9
|
+
};
|
|
10
|
+
declare type ControlledProps = BaseProps & {
|
|
11
|
+
onCancel: (event: DialogInputEvent) => void;
|
|
12
|
+
isOpen: boolean;
|
|
13
|
+
};
|
|
14
|
+
declare type UncontrolledProps = BaseProps & {
|
|
15
|
+
onCancel?: (event: DialogInputEvent) => void;
|
|
16
|
+
isOpen?: never;
|
|
17
|
+
};
|
|
18
|
+
export declare type OwnProps = ControlledProps | UncontrolledProps;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/confirm-dialog/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,oBAAY,gBAAgB,GACzB,aAAa,CAAE,cAAc,CAAE,GAC/B,UAAU,CAAE,iBAAiB,CAAE,CAAC;AAEnC,aAAK,SAAS,GAAG;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,CAAE,KAAK,EAAE,gBAAgB,KAAM,IAAI,CAAC;CAC/C,CAAC;AAEF,aAAK,eAAe,GAAG,SAAS,GAAG;IAClC,QAAQ,EAAE,CAAE,KAAK,EAAE,gBAAgB,KAAM,IAAI,CAAC;IAC9C,MAAM,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,aAAK,iBAAiB,GAAG,SAAS,GAAG;IACpC,QAAQ,CAAC,EAAE,CAAE,KAAK,EAAE,gBAAgB,KAAM,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,oBAAY,QAAQ,GAAG,eAAe,GAAG,iBAAiB,CAAC"}
|