@wordpress/components 19.15.0 → 20.0.1-next.d6164808d3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +154 -0
- package/build/alignment-matrix-control/index.js +1 -1
- package/build/alignment-matrix-control/index.js.map +1 -1
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build/angle-picker-control/index.js +5 -2
- package/build/angle-picker-control/index.js.map +1 -1
- package/build/angle-picker-control/styles/angle-picker-control-styles.js +14 -4
- package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build/autocomplete/index.js +9 -11
- package/build/autocomplete/index.js.map +1 -1
- package/build/base-control/index.js +6 -3
- package/build/base-control/index.js.map +1 -1
- package/build/base-control/styles/base-control-styles.js +8 -8
- package/build/base-control/styles/base-control-styles.js.map +1 -1
- package/build/base-field/styles.js +5 -5
- package/build/base-field/styles.js.map +1 -1
- package/build/border-control/border-control/component.js +38 -25
- package/build/border-control/border-control/component.js.map +1 -1
- package/build/border-control/border-control/hook.js +4 -7
- package/build/border-control/border-control/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +13 -7
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/border-control-dropdown/hook.js +0 -4
- package/build/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build/border-control/styles.js +29 -60
- package/build/border-control/styles.js.map +1 -1
- package/build/box-control/all-input-control.js +2 -27
- package/build/box-control/all-input-control.js.map +1 -1
- package/build/box-control/axial-input-controls.js +1 -1
- package/build/box-control/axial-input-controls.js.map +1 -1
- package/build/box-control/index.js +10 -5
- package/build/box-control/index.js.map +1 -1
- package/build/box-control/styles/box-control-styles.js +17 -9
- package/build/box-control/styles/box-control-styles.js.map +1 -1
- package/build/box-control/styles/box-control-visualizer-styles.js +8 -8
- package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
- package/build/box-control/utils.js +37 -8
- package/build/box-control/utils.js.map +1 -1
- package/build/color-list-picker/index.js +16 -5
- package/build/color-list-picker/index.js.map +1 -1
- package/build/color-palette/index.js +36 -14
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/index.native.js +3 -3
- package/build/color-palette/index.native.js.map +1 -1
- package/build/color-picker/hex-input.js +2 -1
- package/build/color-picker/hex-input.js.map +1 -1
- package/build/color-picker/input-with-slider.js +3 -2
- package/build/color-picker/input-with-slider.js.map +1 -1
- package/build/color-picker/styles.js +10 -15
- package/build/color-picker/styles.js.map +1 -1
- package/build/combobox-control/index.js +26 -17
- package/build/combobox-control/index.js.map +1 -1
- package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
- package/build/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
- package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
- package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
- package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
- package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -0
- package/build/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
- package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
- package/build/custom-gradient-picker/index.js +19 -4
- package/build/custom-gradient-picker/index.js.map +1 -1
- package/build/custom-select-control/index.js +43 -13
- package/build/custom-select-control/index.js.map +1 -1
- package/build/custom-select-control/styles.js +34 -0
- package/build/custom-select-control/styles.js.map +1 -0
- package/build/date-time/constants.js +9 -0
- package/build/date-time/constants.js.map +1 -0
- package/build/date-time/date/index.js +175 -186
- package/build/date-time/date/index.js.map +1 -1
- package/build/date-time/date/styles.js +59 -40
- package/build/date-time/date/styles.js.map +1 -1
- package/build/date-time/date-time/index.js +5 -2
- package/build/date-time/date-time/index.js.map +1 -1
- package/build/date-time/time/index.js +28 -19
- package/build/date-time/time/index.js.map +1 -1
- package/build/date-time/time/styles.js +17 -24
- package/build/date-time/time/styles.js.map +1 -1
- package/build/date-time/utils.js +27 -0
- package/build/date-time/utils.js.map +1 -0
- package/build/dimension-control/index.js +2 -6
- package/build/dimension-control/index.js.map +1 -1
- package/build/disabled/index.js +28 -11
- package/build/disabled/index.js.map +1 -1
- package/build/disabled/styles/disabled-styles.js +3 -3
- package/build/disabled/styles/disabled-styles.js.map +1 -1
- package/build/disabled/types.js +6 -0
- package/build/disabled/types.js.map +1 -0
- package/build/divider/component.js +0 -1
- package/build/divider/component.js.map +1 -1
- package/build/divider/index.js.map +1 -1
- package/build/divider/styles.js +5 -5
- package/build/divider/styles.js.map +1 -1
- package/build/dropdown/dropdown-content-wrapper.js +60 -0
- package/build/dropdown/dropdown-content-wrapper.js.map +1 -0
- package/build/dropdown/index.js +5 -6
- package/build/dropdown/index.js.map +1 -1
- package/build/dropdown/styles.js +42 -0
- package/build/dropdown/styles.js.map +1 -0
- package/build/dropdown/types.js +6 -0
- package/build/dropdown/types.js.map +1 -0
- package/build/duotone-picker/custom-duotone-bar.js +2 -2
- package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +9 -1
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/duotone-picker/duotone-swatch.js +13 -3
- package/build/duotone-picker/duotone-swatch.js.map +1 -1
- package/build/elevation/component.js +15 -15
- package/build/elevation/component.js.map +1 -1
- package/build/elevation/hook.js +5 -17
- package/build/elevation/hook.js.map +1 -1
- package/build/elevation/index.js.map +1 -1
- package/build/elevation/styles.js +1 -1
- package/build/elevation/styles.js.map +1 -1
- package/build/external-link/index.js +6 -0
- package/build/external-link/index.js.map +1 -1
- package/build/flex/flex/component.js +20 -26
- package/build/flex/flex/component.js.map +1 -1
- package/build/flex/flex/hook.js +6 -16
- package/build/flex/flex/hook.js.map +1 -1
- package/build/flex/flex/index.js.map +1 -1
- package/build/flex/flex-block/component.js +18 -12
- package/build/flex/flex-block/component.js.map +1 -1
- package/build/flex/flex-block/hook.js +0 -4
- package/build/flex/flex-block/hook.js.map +1 -1
- package/build/flex/flex-block/index.js.map +1 -1
- package/build/flex/flex-item/component.js +18 -12
- package/build/flex/flex-item/component.js.map +1 -1
- package/build/flex/flex-item/hook.js +1 -5
- package/build/flex/flex-item/hook.js.map +1 -1
- package/build/flex/flex-item/index.js.map +1 -1
- package/build/flex/index.js.map +1 -1
- package/build/flex/styles.js +5 -5
- package/build/flex/styles.js.map +1 -1
- package/build/focal-point-picker/index.js +4 -6
- package/build/focal-point-picker/index.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-picker-style.js +22 -22
- package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-style.js +5 -5
- package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build/font-size-picker/index.js +56 -18
- package/build/font-size-picker/index.js.map +1 -1
- package/build/font-size-picker/utils.js +32 -22
- package/build/font-size-picker/utils.js.map +1 -1
- package/build/form-token-field/index.js +17 -7
- package/build/form-token-field/index.js.map +1 -1
- package/build/form-token-field/suggestions-list.js +19 -6
- package/build/form-token-field/suggestions-list.js.map +1 -1
- package/build/gradient-picker/index.js +15 -3
- package/build/gradient-picker/index.js.map +1 -1
- package/build/guide/index.js +5 -3
- package/build/guide/index.js.map +1 -1
- package/build/guide/page-control.js +3 -7
- package/build/guide/page-control.js.map +1 -1
- package/build/index.js +31 -1
- package/build/index.js.map +1 -1
- package/build/input-control/index.js +7 -0
- package/build/input-control/index.js.map +1 -1
- package/build/input-control/input-base.js +24 -3
- package/build/input-control/input-base.js.map +1 -1
- package/build/input-control/input-prefix-wrapper.js +54 -0
- package/build/input-control/input-prefix-wrapper.js.map +1 -0
- package/build/input-control/input-suffix-wrapper.js +54 -0
- package/build/input-control/input-suffix-wrapper.js.map +1 -0
- package/build/input-control/reducer/actions.js +3 -1
- package/build/input-control/reducer/actions.js.map +1 -1
- package/build/input-control/reducer/reducer.js +28 -11
- package/build/input-control/reducer/reducer.js.map +1 -1
- package/build/input-control/reducer/state.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js +61 -42
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/item-group/styles.js +10 -10
- package/build/item-group/styles.js.map +1 -1
- package/build/mobile/bottom-sheet/index.native.js +3 -6
- package/build/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build/mobile/global-styles-context/utils.native.js +26 -4
- package/build/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build/mobile/image/index.native.js +9 -5
- package/build/mobile/image/index.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-screen.native.js +10 -4
- package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build/mobile/media-edit/index.native.js +1 -7
- package/build/mobile/media-edit/index.native.js.map +1 -1
- package/build/mobile/picker/index.android.js +3 -3
- package/build/mobile/picker/index.android.js.map +1 -1
- package/build/mobile/picker/index.ios.js +16 -3
- package/build/mobile/picker/index.ios.js.map +1 -1
- package/build/modal/index.js +1 -3
- package/build/modal/index.js.map +1 -1
- package/build/navigable-container/container.js +9 -8
- package/build/navigable-container/container.js.map +1 -1
- package/build/navigator/navigator-back-button/hook.js +0 -4
- package/build/navigator/navigator-back-button/hook.js.map +1 -1
- package/build/navigator/navigator-button/hook.js +0 -4
- package/build/navigator/navigator-button/hook.js.map +1 -1
- package/build/notice/list.js +10 -6
- package/build/notice/list.js.map +1 -1
- package/build/palette-edit/index.js +1 -0
- package/build/palette-edit/index.js.map +1 -1
- package/build/palette-edit/styles.js +10 -10
- package/build/palette-edit/styles.js.map +1 -1
- package/build/placeholder/index.js +11 -14
- package/build/placeholder/index.js.map +1 -1
- package/build/placeholder/types.js +6 -0
- package/build/placeholder/types.js.map +1 -0
- package/build/popover/index.js +202 -145
- package/build/popover/index.js.map +1 -1
- package/build/popover/utils.js +178 -0
- package/build/popover/utils.js.map +1 -0
- package/build/radio-control/index.js +1 -3
- package/build/radio-control/index.js.map +1 -1
- package/build/range-control/index.js +3 -0
- package/build/range-control/index.js.map +1 -1
- package/build/range-control/styles/range-control-styles.js +51 -45
- package/build/range-control/styles/range-control-styles.js.map +1 -1
- package/build/range-control/utils.js +1 -1
- package/build/range-control/utils.js.map +1 -1
- package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
- package/build/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
- package/build/sandbox/index.native.js +13 -2
- package/build/sandbox/index.native.js.map +1 -1
- package/build/scroll-lock/index.js +35 -6
- package/build/scroll-lock/index.js.map +1 -1
- package/build/select-control/chevron-down.js +30 -0
- package/build/select-control/chevron-down.js.map +1 -0
- package/build/select-control/index.js +8 -10
- package/build/select-control/index.js.map +1 -1
- package/build/select-control/styles/select-control-styles.js +54 -19
- package/build/select-control/styles/select-control-styles.js.map +1 -1
- package/build/shortcut/index.js +4 -13
- package/build/shortcut/index.js.map +1 -1
- package/build/shortcut/types.js +6 -0
- package/build/shortcut/types.js.map +1 -0
- package/build/snackbar/list.js +5 -3
- package/build/snackbar/list.js.map +1 -1
- package/build/spacer/component.js +3 -1
- package/build/spacer/component.js.map +1 -1
- package/build/spinner/index.js +2 -0
- package/build/spinner/index.js.map +1 -1
- package/build/style-provider/index.js +10 -7
- package/build/style-provider/index.js.map +1 -1
- package/build/style-provider/types.js +6 -0
- package/build/style-provider/types.js.map +1 -0
- package/build/text/hook.js +5 -8
- package/build/text/hook.js.map +1 -1
- package/build/text/styles.js +7 -7
- package/build/text/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/component.js +19 -8
- package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +22 -4
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option/component.js +15 -5
- package/build/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js +20 -9
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-icon/component.js +26 -7
- package/build/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
- package/build/tools-panel/styles.js +13 -10
- package/build/tools-panel/styles.js.map +1 -1
- package/build/tools-panel/tools-panel/hook.js +1 -1
- package/build/tools-panel/tools-panel/hook.js.map +1 -1
- package/build/tooltip/index.js +51 -14
- package/build/tooltip/index.js.map +1 -1
- package/build/tree-select/index.js +2 -2
- package/build/tree-select/index.js.map +1 -1
- package/build/ui/context/context-connect.js +1 -3
- package/build/ui/context/context-connect.js.map +1 -1
- package/build/ui/context/use-context-system.js +7 -2
- package/build/ui/context/use-context-system.js.map +1 -1
- package/build/ui/tooltip/styles.js +4 -4
- package/build/ui/tooltip/styles.js.map +1 -1
- package/build/ui/utils/space.js +7 -1
- package/build/ui/utils/space.js.map +1 -1
- package/build/unit-control/index.js +2 -3
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/styles/unit-control-styles.js +38 -29
- package/build/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build/utils/base-label.js +24 -0
- package/build/utils/base-label.js.map +1 -0
- package/build/utils/box-sizing.js +22 -0
- package/build/utils/box-sizing.js.map +1 -0
- package/build/utils/colors-values.js +52 -142
- package/build/utils/colors-values.js.map +1 -1
- package/build/utils/config-values.js +1 -1
- package/build/utils/config-values.js.map +1 -1
- package/build/utils/input/input-control.js +1 -1
- package/build/utils/input/input-control.js.map +1 -1
- package/build/utils/rtl.js +6 -5
- package/build/utils/rtl.js.map +1 -1
- package/build/utils/strings.js +50 -0
- package/build/utils/strings.js.map +1 -0
- package/build/utils/style-mixins.js +16 -0
- package/build/utils/style-mixins.js.map +1 -1
- package/build-module/alignment-matrix-control/index.js +1 -1
- package/build-module/alignment-matrix-control/index.js.map +1 -1
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +9 -9
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build-module/angle-picker-control/index.js +5 -2
- package/build-module/angle-picker-control/index.js.map +1 -1
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +13 -4
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build-module/autocomplete/index.js +9 -10
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/base-control/index.js +7 -5
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/base-control/styles/base-control-styles.js +9 -9
- package/build-module/base-control/styles/base-control-styles.js.map +1 -1
- package/build-module/base-field/styles.js +5 -5
- package/build-module/base-field/styles.js.map +1 -1
- package/build-module/border-control/border-control/component.js +37 -25
- package/build-module/border-control/border-control/component.js.map +1 -1
- package/build-module/border-control/border-control/hook.js +4 -7
- package/build-module/border-control/border-control/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +12 -7
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/hook.js +0 -4
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build-module/border-control/styles.js +30 -54
- package/build-module/border-control/styles.js.map +1 -1
- package/build-module/box-control/all-input-control.js +3 -28
- package/build-module/box-control/all-input-control.js.map +1 -1
- package/build-module/box-control/axial-input-controls.js +1 -1
- package/build-module/box-control/axial-input-controls.js.map +1 -1
- package/build-module/box-control/index.js +4 -4
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/box-control/styles/box-control-styles.js +18 -10
- package/build-module/box-control/styles/box-control-styles.js.map +1 -1
- package/build-module/box-control/styles/box-control-visualizer-styles.js +8 -8
- package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
- package/build-module/box-control/utils.js +35 -7
- package/build-module/box-control/utils.js.map +1 -1
- package/build-module/color-list-picker/index.js +13 -5
- package/build-module/color-list-picker/index.js.map +1 -1
- package/build-module/color-palette/index.js +32 -12
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/index.native.js +4 -4
- package/build-module/color-palette/index.native.js.map +1 -1
- package/build-module/color-picker/hex-input.js +2 -1
- package/build-module/color-picker/hex-input.js.map +1 -1
- package/build-module/color-picker/input-with-slider.js +3 -2
- package/build-module/color-picker/input-with-slider.js.map +1 -1
- package/build-module/color-picker/styles.js +10 -16
- package/build-module/color-picker/styles.js.map +1 -1
- package/build-module/combobox-control/index.js +24 -15
- package/build-module/combobox-control/index.js.map +1 -1
- package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
- package/build-module/custom-gradient-picker/gradient-bar/constants.js.map +1 -0
- package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +34 -41
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -0
- package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -0
- package/build-module/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
- package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -0
- package/build-module/custom-gradient-picker/index.js +16 -3
- package/build-module/custom-gradient-picker/index.js.map +1 -1
- package/build-module/custom-select-control/index.js +41 -16
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/custom-select-control/styles.js +22 -0
- package/build-module/custom-select-control/styles.js.map +1 -0
- package/build-module/date-time/constants.js +2 -0
- package/build-module/date-time/constants.js.map +1 -0
- package/build-module/date-time/date/index.js +178 -184
- package/build-module/date-time/date/index.js.map +1 -1
- package/build-module/date-time/date/styles.js +47 -38
- package/build-module/date-time/date/styles.js.map +1 -1
- package/build-module/date-time/date-time/index.js +4 -2
- package/build-module/date-time/date-time/index.js.map +1 -1
- package/build-module/date-time/time/index.js +26 -19
- package/build-module/date-time/time/index.js.map +1 -1
- package/build-module/date-time/time/styles.js +15 -21
- package/build-module/date-time/time/styles.js.map +1 -1
- package/build-module/date-time/utils.js +19 -0
- package/build-module/date-time/utils.js.map +1 -0
- package/build-module/dimension-control/index.js +1 -5
- package/build-module/dimension-control/index.js.map +1 -1
- package/build-module/disabled/index.js +28 -11
- package/build-module/disabled/index.js.map +1 -1
- package/build-module/disabled/styles/disabled-styles.js +3 -3
- package/build-module/disabled/styles/disabled-styles.js.map +1 -1
- package/build-module/disabled/types.js +2 -0
- package/build-module/disabled/types.js.map +1 -0
- package/build-module/divider/component.js +0 -1
- package/build-module/divider/component.js.map +1 -1
- package/build-module/divider/index.js.map +1 -1
- package/build-module/divider/styles.js +5 -5
- package/build-module/divider/styles.js.map +1 -1
- package/build-module/dropdown/dropdown-content-wrapper.js +47 -0
- package/build-module/dropdown/dropdown-content-wrapper.js.map +1 -0
- package/build-module/dropdown/index.js +5 -6
- package/build-module/dropdown/index.js.map +1 -1
- package/build-module/dropdown/styles.js +31 -0
- package/build-module/dropdown/styles.js.map +1 -0
- package/build-module/dropdown/types.js +2 -0
- package/build-module/dropdown/types.js.map +1 -0
- package/build-module/duotone-picker/custom-duotone-bar.js +1 -1
- package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +7 -1
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/duotone-picker/duotone-swatch.js +11 -3
- package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
- package/build-module/elevation/component.js +15 -15
- package/build-module/elevation/component.js.map +1 -1
- package/build-module/elevation/hook.js +5 -17
- package/build-module/elevation/hook.js.map +1 -1
- package/build-module/elevation/index.js.map +1 -1
- package/build-module/elevation/styles.js +1 -1
- package/build-module/elevation/styles.js.map +1 -1
- package/build-module/external-link/index.js +6 -0
- package/build-module/external-link/index.js.map +1 -1
- package/build-module/flex/flex/component.js +20 -26
- package/build-module/flex/flex/component.js.map +1 -1
- package/build-module/flex/flex/hook.js +6 -15
- package/build-module/flex/flex/hook.js.map +1 -1
- package/build-module/flex/flex/index.js.map +1 -1
- package/build-module/flex/flex-block/component.js +18 -12
- package/build-module/flex/flex-block/component.js.map +1 -1
- package/build-module/flex/flex-block/hook.js +0 -4
- package/build-module/flex/flex-block/hook.js.map +1 -1
- package/build-module/flex/flex-block/index.js.map +1 -1
- package/build-module/flex/flex-item/component.js +18 -12
- package/build-module/flex/flex-item/component.js.map +1 -1
- package/build-module/flex/flex-item/hook.js +1 -5
- package/build-module/flex/flex-item/hook.js.map +1 -1
- package/build-module/flex/flex-item/index.js.map +1 -1
- package/build-module/flex/index.js.map +1 -1
- package/build-module/flex/styles.js +5 -5
- package/build-module/flex/styles.js.map +1 -1
- package/build-module/focal-point-picker/index.js +4 -5
- package/build-module/focal-point-picker/index.js.map +1 -1
- package/build-module/focal-point-picker/styles/focal-point-picker-style.js +22 -22
- package/build-module/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
- package/build-module/focal-point-picker/styles/focal-point-style.js +5 -5
- package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build-module/font-size-picker/index.js +51 -18
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/utils.js +31 -23
- package/build-module/font-size-picker/utils.js.map +1 -1
- package/build-module/form-token-field/index.js +17 -8
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/form-token-field/suggestions-list.js +19 -6
- package/build-module/form-token-field/suggestions-list.js.map +1 -1
- package/build-module/gradient-picker/index.js +14 -3
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/guide/index.js +5 -3
- package/build-module/guide/index.js.map +1 -1
- package/build-module/guide/page-control.js +3 -6
- package/build-module/guide/page-control.js.map +1 -1
- package/build-module/index.js +4 -1
- package/build-module/index.js.map +1 -1
- package/build-module/input-control/index.js +6 -0
- package/build-module/input-control/index.js.map +1 -1
- package/build-module/input-control/input-base.js +25 -5
- package/build-module/input-control/input-base.js.map +1 -1
- package/build-module/input-control/input-prefix-wrapper.js +41 -0
- package/build-module/input-control/input-prefix-wrapper.js.map +1 -0
- package/build-module/input-control/input-suffix-wrapper.js +41 -0
- package/build-module/input-control/input-suffix-wrapper.js.map +1 -0
- package/build-module/input-control/reducer/actions.js +1 -0
- package/build-module/input-control/reducer/actions.js.map +1 -1
- package/build-module/input-control/reducer/reducer.js +28 -11
- package/build-module/input-control/reducer/reducer.js.map +1 -1
- package/build-module/input-control/reducer/state.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js +58 -42
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/item-group/styles.js +10 -10
- package/build-module/item-group/styles.js.map +1 -1
- package/build-module/mobile/bottom-sheet/index.native.js +3 -5
- package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/utils.native.js +24 -4
- package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build-module/mobile/image/index.native.js +12 -8
- package/build-module/mobile/image/index.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-screen.native.js +11 -4
- package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build-module/mobile/media-edit/index.native.js +1 -6
- package/build-module/mobile/media-edit/index.native.js.map +1 -1
- package/build-module/mobile/picker/index.android.js +3 -3
- package/build-module/mobile/picker/index.android.js.map +1 -1
- package/build-module/mobile/picker/index.ios.js +14 -3
- package/build-module/mobile/picker/index.ios.js.map +1 -1
- package/build-module/modal/index.js +1 -2
- package/build-module/modal/index.js.map +1 -1
- package/build-module/navigable-container/container.js +9 -7
- package/build-module/navigable-container/container.js.map +1 -1
- package/build-module/navigator/navigator-back-button/hook.js +0 -4
- package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
- package/build-module/navigator/navigator-button/hook.js +0 -4
- package/build-module/navigator/navigator-button/hook.js.map +1 -1
- package/build-module/notice/list.js +10 -5
- package/build-module/notice/list.js.map +1 -1
- package/build-module/palette-edit/index.js +1 -0
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/palette-edit/styles.js +10 -10
- package/build-module/palette-edit/styles.js.map +1 -1
- package/build-module/placeholder/index.js +10 -15
- package/build-module/placeholder/index.js.map +1 -1
- package/build-module/placeholder/types.js +2 -0
- package/build-module/placeholder/types.js.map +1 -0
- package/build-module/popover/index.js +202 -147
- package/build-module/popover/index.js.map +1 -1
- package/build-module/popover/utils.js +164 -0
- package/build-module/popover/utils.js.map +1 -0
- package/build-module/radio-control/index.js +1 -2
- package/build-module/radio-control/index.js.map +1 -1
- package/build-module/range-control/index.js +3 -0
- package/build-module/range-control/index.js.map +1 -1
- package/build-module/range-control/styles/range-control-styles.js +51 -45
- package/build-module/range-control/styles/range-control-styles.js.map +1 -1
- package/build-module/range-control/utils.js +1 -1
- package/build-module/range-control/utils.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +4 -4
- package/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js.map +1 -1
- package/build-module/sandbox/index.native.js +13 -3
- package/build-module/sandbox/index.native.js.map +1 -1
- package/build-module/scroll-lock/index.js +32 -6
- package/build-module/scroll-lock/index.js.map +1 -1
- package/build-module/select-control/chevron-down.js +21 -0
- package/build-module/select-control/chevron-down.js.map +1 -0
- package/build-module/select-control/index.js +8 -9
- package/build-module/select-control/index.js.map +1 -1
- package/build-module/select-control/styles/select-control-styles.js +48 -17
- package/build-module/select-control/styles/select-control-styles.js.map +1 -1
- package/build-module/shortcut/index.js +4 -13
- package/build-module/shortcut/index.js.map +1 -1
- package/build-module/shortcut/types.js +2 -0
- package/build-module/shortcut/types.js.map +1 -0
- package/build-module/snackbar/list.js +5 -2
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/spacer/component.js +3 -1
- package/build-module/spacer/component.js.map +1 -1
- package/build-module/spinner/index.js +2 -0
- package/build-module/spinner/index.js.map +1 -1
- package/build-module/style-provider/index.js +10 -5
- package/build-module/style-provider/index.js.map +1 -1
- package/build-module/style-provider/types.js +2 -0
- package/build-module/style-provider/types.js.map +1 -0
- package/build-module/text/hook.js +5 -7
- package/build-module/text/hook.js.map +1 -1
- package/build-module/text/styles.js +7 -7
- package/build-module/text/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/component.js +17 -7
- package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/styles.js +16 -3
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option/component.js +17 -3
- package/build-module/toggle-group-control/toggle-group-control-option/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +5 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +16 -7
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js +27 -5
- package/build-module/toggle-group-control/toggle-group-control-option-icon/component.js.map +1 -1
- package/build-module/tools-panel/styles.js +12 -11
- package/build-module/tools-panel/styles.js.map +1 -1
- package/build-module/tools-panel/tools-panel/hook.js +1 -1
- package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
- package/build-module/tooltip/index.js +53 -16
- package/build-module/tooltip/index.js.map +1 -1
- package/build-module/tree-select/index.js +3 -3
- package/build-module/tree-select/index.js.map +1 -1
- package/build-module/ui/context/context-connect.js +1 -2
- package/build-module/ui/context/context-connect.js.map +1 -1
- package/build-module/ui/context/use-context-system.js +7 -2
- package/build-module/ui/context/use-context-system.js.map +1 -1
- package/build-module/ui/tooltip/styles.js +4 -4
- package/build-module/ui/tooltip/styles.js.map +1 -1
- package/build-module/ui/utils/space.js +7 -1
- package/build-module/ui/utils/space.js.map +1 -1
- package/build-module/unit-control/index.js +2 -2
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/styles/unit-control-styles.js +39 -30
- package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build-module/utils/base-label.js +18 -0
- package/build-module/utils/base-label.js.map +1 -0
- package/build-module/utils/box-sizing.js +16 -0
- package/build-module/utils/box-sizing.js.map +1 -0
- package/build-module/utils/colors-values.js +52 -141
- package/build-module/utils/colors-values.js.map +1 -1
- package/build-module/utils/config-values.js +1 -1
- package/build-module/utils/config-values.js.map +1 -1
- package/build-module/utils/input/input-control.js +1 -1
- package/build-module/utils/input/input-control.js.map +1 -1
- package/build-module/utils/rtl.js +6 -4
- package/build-module/utils/rtl.js.map +1 -1
- package/build-module/utils/strings.js +37 -0
- package/build-module/utils/strings.js.map +1 -0
- package/build-module/utils/style-mixins.js +2 -0
- package/build-module/utils/style-mixins.js.map +1 -1
- package/build-style/style-rtl.css +236 -1281
- package/build-style/style.css +237 -1281
- package/build-types/base-control/index.d.ts +4 -3
- package/build-types/base-control/index.d.ts.map +1 -1
- package/build-types/base-control/stories/index.d.ts +1 -1
- package/build-types/base-control/stories/index.d.ts.map +1 -1
- package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
- package/build-types/base-control/types.d.ts +0 -1
- package/build-types/base-control/types.d.ts.map +1 -1
- package/build-types/border-control/border-control/component.d.ts.map +1 -1
- package/build-types/border-control/border-control/hook.d.ts +1 -1
- package/build-types/border-control/border-control/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
- package/build-types/border-control/stories/index.d.ts.map +1 -1
- package/build-types/border-control/styles.d.ts +1 -4
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/card/card-divider/hook.d.ts +1 -1
- package/build-types/color-palette/index.d.ts +3 -1
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-picker/hex-input.d.ts.map +1 -1
- package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts +2 -2
- package/build-types/color-picker/styles.d.ts.map +1 -1
- package/build-types/date-time/constants.d.ts +2 -0
- package/build-types/date-time/constants.d.ts.map +1 -0
- package/build-types/date-time/date/index.d.ts +3 -1
- package/build-types/date-time/date/index.d.ts.map +1 -1
- package/build-types/date-time/date/styles.d.ts +22 -8
- package/build-types/date-time/date/styles.d.ts.map +1 -1
- package/build-types/date-time/date/test/index.d.ts +1 -1
- package/build-types/date-time/date/test/index.d.ts.map +1 -1
- package/build-types/date-time/date-time/index.d.ts.map +1 -1
- package/build-types/date-time/time/index.d.ts.map +1 -1
- package/build-types/date-time/time/styles.d.ts +0 -4
- package/build-types/date-time/time/styles.d.ts.map +1 -1
- package/build-types/date-time/utils.d.ts +8 -0
- package/build-types/date-time/utils.d.ts.map +1 -0
- package/build-types/disabled/index.d.ts +35 -28
- package/build-types/disabled/index.d.ts.map +1 -1
- package/build-types/disabled/stories/index.d.ts +13 -0
- package/build-types/disabled/stories/index.d.ts.map +1 -0
- package/build-types/disabled/styles/disabled-styles.d.ts +2 -1
- package/build-types/disabled/styles/disabled-styles.d.ts.map +1 -1
- package/build-types/disabled/test/index.d.ts +2 -0
- package/build-types/disabled/test/index.d.ts.map +1 -0
- package/build-types/disabled/types.d.ts +14 -0
- package/build-types/disabled/types.d.ts.map +1 -0
- package/build-types/divider/component.d.ts +2 -3
- package/build-types/divider/component.d.ts.map +1 -1
- package/build-types/divider/index.d.ts +1 -1
- package/build-types/divider/index.d.ts.map +1 -1
- package/build-types/divider/styles.d.ts +6 -2
- package/build-types/divider/styles.d.ts.map +1 -1
- package/build-types/divider/test/index.d.ts +2 -0
- package/build-types/divider/test/index.d.ts.map +1 -0
- package/build-types/divider/types.d.ts +18 -10
- package/build-types/divider/types.d.ts.map +1 -1
- package/build-types/dropdown/dropdown-content-wrapper.d.ts +23 -0
- package/build-types/dropdown/dropdown-content-wrapper.d.ts.map +1 -0
- package/build-types/dropdown/index.d.ts.map +1 -1
- package/build-types/dropdown/styles.d.ts +7 -0
- package/build-types/dropdown/styles.d.ts.map +1 -0
- package/build-types/dropdown/types.d.ts +9 -0
- package/build-types/dropdown/types.d.ts.map +1 -0
- package/build-types/elevation/component.d.ts +11 -10
- package/build-types/elevation/component.d.ts.map +1 -1
- package/build-types/elevation/hook.d.ts +6 -7
- package/build-types/elevation/hook.d.ts.map +1 -1
- package/build-types/elevation/index.d.ts +2 -2
- package/build-types/elevation/index.d.ts.map +1 -1
- package/build-types/elevation/stories/index.d.ts +22 -0
- package/build-types/elevation/stories/index.d.ts.map +1 -0
- package/build-types/elevation/styles.d.ts +1 -1
- package/build-types/elevation/styles.d.ts.map +1 -1
- package/build-types/elevation/test/index.d.ts +2 -0
- package/build-types/elevation/test/index.d.ts.map +1 -0
- package/build-types/elevation/types.d.ts +12 -19
- package/build-types/elevation/types.d.ts.map +1 -1
- package/build-types/external-link/index.d.ts.map +1 -1
- package/build-types/flex/flex/component.d.ts +16 -21
- package/build-types/flex/flex/component.d.ts.map +1 -1
- package/build-types/flex/flex/hook.d.ts +5 -2
- package/build-types/flex/flex/hook.d.ts.map +1 -1
- package/build-types/flex/flex/index.d.ts +2 -2
- package/build-types/flex/flex/index.d.ts.map +1 -1
- package/build-types/flex/flex-block/component.d.ts +14 -7
- package/build-types/flex/flex-block/component.d.ts.map +1 -1
- package/build-types/flex/flex-block/hook.d.ts +6 -3
- package/build-types/flex/flex-block/hook.d.ts.map +1 -1
- package/build-types/flex/flex-block/index.d.ts +2 -2
- package/build-types/flex/flex-block/index.d.ts.map +1 -1
- package/build-types/flex/flex-item/component.d.ts +14 -7
- package/build-types/flex/flex-item/component.d.ts.map +1 -1
- package/build-types/flex/flex-item/hook.d.ts +6 -3
- package/build-types/flex/flex-item/hook.d.ts.map +1 -1
- package/build-types/flex/flex-item/index.d.ts +2 -2
- package/build-types/flex/flex-item/index.d.ts.map +1 -1
- package/build-types/flex/index.d.ts +3 -3
- package/build-types/flex/index.d.ts.map +1 -1
- package/build-types/flex/stories/index.d.ts +13 -0
- package/build-types/flex/stories/index.d.ts.map +1 -0
- package/build-types/flex/styles.d.ts +5 -5
- package/build-types/flex/styles.d.ts.map +1 -1
- package/build-types/flex/test/index.d.ts +2 -0
- package/build-types/flex/test/index.d.ts.map +1 -0
- package/build-types/flex/types.d.ts +17 -10
- package/build-types/flex/types.d.ts.map +1 -1
- package/build-types/form-token-field/index.d.ts.map +1 -1
- package/build-types/form-token-field/stories/index.d.ts +7 -0
- package/build-types/form-token-field/stories/index.d.ts.map +1 -1
- package/build-types/form-token-field/suggestions-list.d.ts +1 -1
- package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
- package/build-types/form-token-field/types.d.ts +22 -3
- package/build-types/form-token-field/types.d.ts.map +1 -1
- package/build-types/input-control/index.d.ts +1 -1
- package/build-types/input-control/index.d.ts.map +1 -1
- package/build-types/input-control/input-base.d.ts +1 -1
- package/build-types/input-control/input-base.d.ts.map +1 -1
- package/build-types/input-control/input-prefix-wrapper.d.ts +19 -0
- package/build-types/input-control/input-prefix-wrapper.d.ts.map +1 -0
- package/build-types/input-control/input-suffix-wrapper.d.ts +19 -0
- package/build-types/input-control/input-suffix-wrapper.d.ts.map +1 -0
- package/build-types/input-control/reducer/actions.d.ts +3 -1
- package/build-types/input-control/reducer/actions.d.ts.map +1 -1
- package/build-types/input-control/reducer/reducer.d.ts +2 -2
- package/build-types/input-control/reducer/reducer.d.ts.map +1 -1
- package/build-types/input-control/reducer/state.d.ts +2 -2
- package/build-types/input-control/reducer/state.d.ts.map +1 -1
- package/build-types/input-control/stories/index.d.ts +10 -0
- package/build-types/input-control/stories/index.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts +21 -0
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/input-control/types.d.ts +45 -3
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/navigator/navigator-back-button/hook.d.ts +0 -3
- package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
- package/build-types/navigator/navigator-button/hook.d.ts +0 -3
- package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
- package/build-types/placeholder/index.d.ts +16 -0
- package/build-types/placeholder/index.d.ts.map +1 -0
- package/build-types/placeholder/stories/index.d.ts +12 -0
- package/build-types/placeholder/stories/index.d.ts.map +1 -0
- package/build-types/placeholder/test/index.d.ts +2 -0
- package/build-types/placeholder/test/index.d.ts.map +1 -0
- package/build-types/placeholder/types.d.ts +47 -0
- package/build-types/placeholder/types.d.ts.map +1 -0
- package/build-types/popover/index.d.ts +2 -2
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/popover/utils.d.ts +27 -0
- package/build-types/popover/utils.d.ts.map +1 -0
- package/build-types/radio-control/index.d.ts.map +1 -1
- package/build-types/range-control/index.d.ts +2 -2
- package/build-types/range-control/index.d.ts.map +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +5 -2
- package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
- package/build-types/range-control/types.d.ts +6 -4
- package/build-types/range-control/types.d.ts.map +1 -1
- package/build-types/range-control/utils.d.ts.map +1 -1
- package/build-types/scroll-lock/index.d.ts +32 -3
- package/build-types/scroll-lock/index.d.ts.map +1 -1
- package/build-types/scroll-lock/stories/index.d.ts +9 -0
- package/build-types/scroll-lock/stories/index.d.ts.map +1 -0
- package/build-types/scroll-lock/test/index.d.ts +2 -0
- package/build-types/scroll-lock/test/index.d.ts.map +1 -0
- package/build-types/select-control/chevron-down.d.ts +4 -0
- package/build-types/select-control/chevron-down.d.ts.map +1 -0
- package/build-types/select-control/index.d.ts.map +1 -1
- package/build-types/select-control/styles/select-control-styles.d.ts +9 -1
- package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
- package/build-types/select-control/types.d.ts +1 -1
- package/build-types/select-control/types.d.ts.map +1 -1
- package/build-types/shortcut/index.d.ts +5 -24
- package/build-types/shortcut/index.d.ts.map +1 -1
- package/build-types/shortcut/test/index.d.ts +2 -0
- package/build-types/shortcut/test/index.d.ts.map +1 -0
- package/build-types/shortcut/types.d.ts +14 -0
- package/build-types/shortcut/types.d.ts.map +1 -0
- package/build-types/spacer/component.d.ts +3 -1
- package/build-types/spacer/component.d.ts.map +1 -1
- package/build-types/spinner/index.d.ts.map +1 -1
- package/build-types/style-provider/index.d.ts +7 -4
- package/build-types/style-provider/index.d.ts.map +1 -1
- package/build-types/style-provider/types.d.ts +15 -0
- package/build-types/style-provider/types.d.ts.map +1 -0
- package/build-types/text/hook.d.ts.map +1 -1
- package/build-types/toggle-group-control/stories/index.d.ts +25 -0
- package/build-types/toggle-group-control/stories/index.d.ts.map +1 -0
- package/build-types/toggle-group-control/test/index.d.ts +2 -0
- package/build-types/toggle-group-control/test/index.d.ts.map +1 -0
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts +6 -3
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +6 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +6 -7
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +4 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +11 -9
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/types.d.ts +27 -8
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/tools-panel/styles.d.ts +1 -1
- package/build-types/tools-panel/styles.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
- package/build-types/tooltip/index.d.ts.map +1 -1
- package/build-types/tree-select/index.d.ts.map +1 -1
- package/build-types/tree-select/types.d.ts +1 -0
- package/build-types/tree-select/types.d.ts.map +1 -1
- package/build-types/ui/context/context-connect.d.ts +3 -0
- package/build-types/ui/context/context-connect.d.ts.map +1 -1
- package/build-types/ui/context/use-context-system.d.ts.map +1 -1
- package/build-types/ui/form-group/use-form-group.d.ts +2 -2
- package/build-types/ui/tooltip/styles.d.ts.map +1 -1
- package/build-types/ui/utils/space.d.ts +7 -1
- package/build-types/ui/utils/space.d.ts.map +1 -1
- package/build-types/unit-control/index.d.ts +4 -3
- package/build-types/unit-control/index.d.ts.map +1 -1
- package/build-types/unit-control/stories/index.d.ts.map +1 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts +0 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
- package/build-types/unit-control/types.d.ts +7 -9
- package/build-types/unit-control/types.d.ts.map +1 -1
- package/build-types/utils/base-label.d.ts +2 -0
- package/build-types/utils/base-label.d.ts.map +1 -0
- package/build-types/utils/box-sizing.d.ts +2 -0
- package/build-types/utils/box-sizing.d.ts.map +1 -0
- package/build-types/utils/colors-values.d.ts +18 -97
- package/build-types/utils/colors-values.d.ts.map +1 -1
- package/build-types/utils/rtl.d.ts.map +1 -1
- package/build-types/utils/strings.d.ts +2 -0
- package/build-types/utils/strings.d.ts.map +1 -0
- package/build-types/utils/style-mixins.d.ts +2 -0
- package/package.json +22 -21
- package/src/alignment-matrix-control/index.js +1 -1
- package/src/alignment-matrix-control/stories/index.js +49 -24
- package/src/alignment-matrix-control/styles/alignment-matrix-control-styles.js +1 -3
- package/src/angle-picker-control/index.js +7 -2
- package/src/angle-picker-control/stories/index.js +8 -5
- package/src/angle-picker-control/styles/angle-picker-control-styles.js +12 -3
- package/src/autocomplete/index.js +9 -18
- package/src/base-control/index.tsx +5 -3
- package/src/base-control/stories/index.tsx +1 -0
- package/src/base-control/styles/base-control-styles.ts +11 -2
- package/src/base-control/types.ts +0 -1
- package/src/base-field/styles.js +1 -1
- package/src/base-field/test/__snapshots__/index.js.snap +2 -2
- package/src/border-control/border-control/component.tsx +41 -32
- package/src/border-control/border-control/hook.ts +4 -9
- package/src/border-control/border-control-dropdown/component.tsx +50 -45
- package/src/border-control/border-control-dropdown/hook.ts +0 -5
- package/src/border-control/stories/index.tsx +3 -0
- package/src/border-control/styles.ts +25 -70
- package/src/border-control/test/index.js +19 -8
- package/src/box-control/all-input-control.js +3 -27
- package/src/box-control/axial-input-controls.js +1 -1
- package/src/box-control/index.js +5 -6
- package/src/box-control/styles/box-control-styles.js +1 -2
- package/src/box-control/styles/box-control-visualizer-styles.js +0 -1
- package/src/box-control/test/index.js +8 -8
- package/src/box-control/utils.js +38 -13
- package/src/button/test/index.js +188 -146
- package/src/card/test/__snapshots__/index.js.snap +8 -8
- package/src/color-list-picker/index.js +15 -3
- package/src/color-list-picker/style.scss +11 -0
- package/src/color-palette/index.js +51 -24
- package/src/color-palette/index.native.js +10 -6
- package/src/color-palette/stories/index.js +1 -1
- package/src/color-palette/style.scss +5 -0
- package/src/color-palette/test/__snapshots__/index.js.snap +17 -3
- package/src/color-palette/test/utils.ts +19 -1
- package/src/color-picker/hex-input.tsx +2 -1
- package/src/color-picker/input-with-slider.tsx +2 -1
- package/src/color-picker/styles.ts +3 -11
- package/src/combobox-control/README.md +7 -0
- package/src/combobox-control/index.js +25 -15
- package/src/combobox-control/stories/index.js +57 -7
- package/src/combobox-control/style.scss +0 -1
- package/src/confirm-dialog/README.md +1 -1
- package/src/confirm-dialog/test/index.js +85 -62
- package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/constants.js +0 -0
- package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/control-points.js +54 -50
- package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/index.js +0 -3
- package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/test/utils.js +0 -0
- package/src/{custom-gradient-bar → custom-gradient-picker/gradient-bar}/utils.js +0 -0
- package/src/custom-gradient-picker/index.js +18 -3
- package/src/custom-gradient-picker/stories/index.js +4 -3
- package/src/custom-gradient-picker/style.scss +30 -39
- package/src/custom-select-control/README.md +10 -0
- package/src/custom-select-control/index.js +54 -29
- package/src/custom-select-control/stories/index.js +7 -2
- package/src/custom-select-control/style.scss +2 -43
- package/src/custom-select-control/styles.ts +28 -0
- package/src/custom-select-control/test/index.js +4 -1
- package/src/date-time/constants.ts +1 -0
- package/src/date-time/date/index.tsx +289 -184
- package/src/date-time/date/styles.ts +86 -27
- package/src/date-time/date/test/index.tsx +18 -28
- package/src/date-time/date-time/index.tsx +3 -2
- package/src/date-time/time/index.tsx +30 -24
- package/src/date-time/time/styles.ts +3 -6
- package/src/date-time/utils.ts +17 -0
- package/src/dimension-control/index.js +1 -5
- package/src/disabled/index.tsx +80 -0
- package/src/disabled/stories/index.tsx +87 -0
- package/src/disabled/styles/{disabled-styles.js → disabled-styles.tsx} +0 -0
- package/src/disabled/test/index.tsx +174 -0
- package/src/disabled/types.ts +13 -0
- package/src/divider/README.md +12 -5
- package/src/divider/component.tsx +2 -3
- package/src/divider/index.ts +1 -1
- package/src/divider/stories/index.tsx +4 -4
- package/src/divider/styles.ts +7 -7
- package/src/divider/test/__snapshots__/{index.js.snap → index.tsx.snap} +7 -7
- package/src/divider/test/index.tsx +40 -0
- package/src/divider/types.ts +21 -15
- package/src/draggable/README.md +1 -1
- package/src/dropdown/dropdown-content-wrapper.tsx +59 -0
- package/src/dropdown/index.js +3 -5
- package/src/dropdown/stories/index.js +60 -69
- package/src/dropdown/styles.ts +38 -0
- package/src/dropdown/types.ts +8 -0
- package/src/dropdown-menu/stories/index.js +13 -2
- package/src/duotone-picker/custom-duotone-bar.js +1 -1
- package/src/duotone-picker/duotone-picker.js +34 -26
- package/src/duotone-picker/duotone-swatch.js +12 -5
- package/src/duotone-picker/stories/duotone-picker.js +66 -0
- package/src/duotone-picker/stories/duotone-swatch.js +32 -0
- package/src/elevation/README.md +16 -14
- package/src/elevation/component.tsx +48 -0
- package/src/elevation/{hook.js → hook.ts} +20 -17
- package/src/elevation/{index.js → index.ts} +0 -0
- package/src/elevation/stories/index.tsx +85 -0
- package/src/elevation/{styles.js → styles.ts} +0 -0
- package/src/elevation/test/__snapshots__/{index.js.snap → index.tsx.snap} +19 -13
- package/src/elevation/test/index.tsx +64 -0
- package/src/elevation/types.ts +12 -19
- package/src/external-link/index.tsx +10 -0
- package/src/flex/flex/README.md +20 -18
- package/src/flex/flex/component.tsx +59 -0
- package/src/flex/flex/{hook.js → hook.ts} +14 -13
- package/src/flex/flex/{index.js → index.ts} +0 -0
- package/src/flex/flex-block/README.md +3 -7
- package/src/flex/flex-block/component.tsx +41 -0
- package/src/flex/flex-block/{hook.js → hook.ts} +5 -5
- package/src/flex/flex-block/{index.js → index.ts} +0 -0
- package/src/flex/flex-item/README.md +6 -9
- package/src/flex/flex-item/component.tsx +41 -0
- package/src/flex/flex-item/{hook.js → hook.ts} +10 -7
- package/src/flex/flex-item/{index.js → index.ts} +0 -0
- package/src/flex/{index.js → index.ts} +0 -0
- package/src/flex/stories/index.tsx +81 -0
- package/src/flex/{styles.js → styles.ts} +0 -0
- package/src/flex/test/__snapshots__/{index.js.snap → index.tsx.snap} +49 -9
- package/src/flex/test/index.tsx +84 -0
- package/src/flex/types.ts +17 -10
- package/src/focal-point-picker/index.js +10 -5
- package/src/focal-point-picker/styles/focal-point-picker-style.js +0 -5
- package/src/focal-point-picker/styles/focal-point-style.js +0 -2
- package/src/focal-point-picker/test/index.js +78 -45
- package/src/font-size-picker/index.js +160 -132
- package/src/font-size-picker/stories/index.js +7 -0
- package/src/font-size-picker/style.scss +8 -5
- package/src/font-size-picker/test/index.js +13 -6
- package/src/font-size-picker/test/{util.js → utils.js} +77 -1
- package/src/font-size-picker/utils.js +38 -23
- package/src/form-token-field/README.md +3 -1
- package/src/form-token-field/index.tsx +29 -12
- package/src/form-token-field/stories/index.tsx +22 -0
- package/src/form-token-field/style.scss +0 -5
- package/src/form-token-field/suggestions-list.tsx +21 -12
- package/src/form-token-field/test/index.js +32 -1
- package/src/form-token-field/types.ts +23 -2
- package/src/gradient-picker/index.js +22 -7
- package/src/gradient-picker/stories/index.js +56 -81
- package/src/guide/index.js +3 -1
- package/src/guide/page-control.js +1 -6
- package/src/guide/stories/index.js +12 -11
- package/src/guide/test/index.js +54 -37
- package/src/guide/test/page-control.js +14 -17
- package/src/higher-order/with-notices/test/index.js +4 -2
- package/src/higher-order/with-spoken-messages/test/index.js +1 -1
- package/src/index.js +7 -1
- package/src/input-control/index.tsx +6 -0
- package/src/input-control/input-base.tsx +28 -13
- package/src/input-control/input-prefix-wrapper.tsx +48 -0
- package/src/input-control/input-suffix-wrapper.tsx +48 -0
- package/src/input-control/reducer/actions.ts +3 -1
- package/src/input-control/reducer/reducer.ts +27 -10
- package/src/input-control/reducer/state.ts +7 -2
- package/src/input-control/stories/index.tsx +15 -2
- package/src/input-control/styles/input-control-styles.tsx +28 -12
- package/src/input-control/test/index.js +20 -4
- package/src/input-control/types.ts +52 -3
- package/src/item-group/styles.ts +3 -3
- package/src/menu-group/test/index.js +18 -7
- package/src/mobile/bottom-sheet/index.native.js +2 -4
- package/src/mobile/global-styles-context/utils.native.js +22 -4
- package/src/mobile/image/index.native.js +17 -8
- package/src/mobile/link-picker/link-picker-screen.native.js +12 -4
- package/src/mobile/media-edit/index.native.js +2 -7
- package/src/mobile/picker/index.android.js +10 -4
- package/src/mobile/picker/index.ios.js +16 -0
- package/src/mobile/picker/styles.native.scss +12 -4
- package/src/modal/index.js +1 -2
- package/src/modal/style.scss +5 -1
- package/src/modal/test/index.js +11 -9
- package/src/navigable-container/container.js +12 -18
- package/src/navigable-container/test/menu.js +14 -11
- package/src/navigator/navigator-back-button/hook.ts +0 -3
- package/src/navigator/navigator-button/hook.ts +0 -3
- package/src/notice/list.js +12 -10
- package/src/palette-edit/index.js +1 -0
- package/src/palette-edit/styles.js +6 -5
- package/src/panel/style.scss +4 -1
- package/src/placeholder/README.md +49 -9
- package/src/placeholder/{index.js → index.tsx} +27 -23
- package/src/placeholder/stories/index.tsx +64 -0
- package/src/placeholder/style.scss +65 -24
- package/src/placeholder/test/index.tsx +174 -0
- package/src/placeholder/types.ts +48 -0
- package/src/popover/README.md +7 -0
- package/src/popover/index.js +256 -157
- package/src/popover/stories/index.js +213 -96
- package/src/popover/style.scss +61 -7
- package/src/popover/test/__snapshots__/index.js.snap +6 -6
- package/src/popover/test/index.js +138 -23
- package/src/popover/utils.js +107 -0
- package/src/radio-control/index.tsx +1 -2
- package/src/range-control/README.md +1 -1
- package/src/range-control/index.tsx +3 -0
- package/src/range-control/styles/range-control-styles.ts +9 -16
- package/src/range-control/test/index.tsx +30 -0
- package/src/range-control/types.ts +9 -4
- package/src/range-control/utils.ts +4 -1
- package/src/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js +1 -1
- package/src/sandbox/index.native.js +14 -1
- package/src/scroll-lock/README.md +1 -1
- package/src/scroll-lock/{index.js → index.tsx} +34 -7
- package/src/scroll-lock/stories/index.tsx +96 -0
- package/src/scroll-lock/test/index.tsx +26 -0
- package/src/select-control/chevron-down.tsx +25 -0
- package/src/select-control/index.tsx +7 -11
- package/src/select-control/styles/select-control-styles.ts +54 -22
- package/src/select-control/types.ts +1 -0
- package/src/shortcut/{index.js → index.tsx} +5 -9
- package/src/shortcut/test/__snapshots__/index.tsx.snap +15 -0
- package/src/shortcut/test/index.tsx +41 -0
- package/src/shortcut/types.ts +10 -0
- package/src/slot-fill/test/slot.js +5 -5
- package/src/snackbar/list.js +3 -2
- package/src/spacer/component.tsx +3 -1
- package/src/spinner/index.tsx +2 -0
- package/src/style-provider/index.tsx +41 -0
- package/src/style-provider/types.ts +15 -0
- package/src/style.scss +0 -2
- package/src/text/hook.js +5 -3
- package/src/text/styles.js +1 -1
- package/src/text/test/index.tsx +1 -1
- package/src/toggle-group-control/stories/index.tsx +127 -0
- package/src/toggle-group-control/test/__snapshots__/{index.js.snap → index.tsx.snap} +56 -26
- package/src/toggle-group-control/test/{index.js → index.tsx} +2 -4
- package/src/toggle-group-control/toggle-group-control/README.md +2 -0
- package/src/toggle-group-control/toggle-group-control/component.tsx +20 -11
- package/src/toggle-group-control/toggle-group-control/styles.ts +30 -7
- package/src/toggle-group-control/toggle-group-control-option/component.tsx +19 -3
- package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +3 -0
- package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +17 -3
- package/src/toggle-group-control/toggle-group-control-option-icon/README.md +6 -8
- package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +30 -7
- package/src/toggle-group-control/types.ts +74 -53
- package/src/toolbar/test/index.js +4 -4
- package/src/toolbar-group/test/index.js +9 -15
- package/src/tools-panel/styles.ts +9 -18
- package/src/tools-panel/test/index.js +3 -2
- package/src/tools-panel/tools-panel/README.md +94 -21
- package/src/tools-panel/tools-panel/hook.ts +6 -1
- package/src/tooltip/index.js +56 -10
- package/src/tooltip/stories/index.js +28 -13
- package/src/tooltip/style.scss +1 -1
- package/src/tooltip/test/index.js +188 -172
- package/src/tree-select/index.tsx +5 -4
- package/src/tree-select/types.ts +4 -0
- package/src/ui/context/context-connect.ts +3 -2
- package/src/ui/context/test/context-system-provider.js +101 -1
- package/src/ui/context/use-context-system.js +7 -2
- package/src/ui/tooltip/styles.js +1 -0
- package/src/ui/tooltip/test/__snapshots__/index.js.snap +1 -0
- package/src/ui/utils/space.ts +7 -1
- package/src/unit-control/index.tsx +2 -2
- package/src/unit-control/stories/index.tsx +16 -23
- package/src/unit-control/styles/unit-control-styles.ts +100 -46
- package/src/unit-control/test/__snapshots__/index.tsx.snap +4 -4
- package/src/unit-control/types.ts +12 -9
- package/src/utils/base-label.ts +13 -0
- package/src/utils/box-sizing.ts +14 -0
- package/src/utils/colors-values.js +42 -137
- package/src/utils/config-values.js +1 -1
- package/src/utils/input/input-control.js +6 -6
- package/src/utils/rtl.js +6 -2
- package/src/utils/strings.ts +72 -0
- package/src/utils/style-mixins.js +2 -0
- package/src/utils/test/strings.js +15 -0
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/custom-gradient-bar/constants.js.map +0 -1
- package/build/custom-gradient-bar/control-points.js.map +0 -1
- package/build/custom-gradient-bar/index.js.map +0 -1
- package/build/custom-gradient-bar/utils.js.map +0 -1
- package/build/date-time/date/utils.js +0 -34
- package/build/date-time/date/utils.js.map +0 -1
- package/build/swatch/index.js +0 -39
- package/build/swatch/index.js.map +0 -1
- package/build-module/custom-gradient-bar/constants.js.map +0 -1
- package/build-module/custom-gradient-bar/control-points.js.map +0 -1
- package/build-module/custom-gradient-bar/index.js.map +0 -1
- package/build-module/custom-gradient-bar/utils.js.map +0 -1
- package/build-module/date-time/date/utils.js +0 -22
- package/build-module/date-time/date/utils.js.map +0 -1
- package/build-module/swatch/index.js +0 -28
- package/build-module/swatch/index.js.map +0 -1
- package/build-types/date-time/date/test/utils.d.ts +0 -2
- package/build-types/date-time/date/test/utils.d.ts.map +0 -1
- package/build-types/date-time/date/utils.d.ts +0 -15
- package/build-types/date-time/date/utils.d.ts.map +0 -1
- package/src/date-time/date/datepicker.scss +0 -863
- package/src/date-time/date/style.scss +0 -85
- package/src/date-time/date/test/utils.ts +0 -32
- package/src/date-time/date/utils.ts +0 -20
- package/src/date-time/style.scss +0 -1
- package/src/disabled/index.js +0 -55
- package/src/disabled/stories/index.js +0 -61
- package/src/disabled/test/index.js +0 -240
- package/src/divider/test/index.js +0 -41
- package/src/elevation/component.js +0 -43
- package/src/elevation/stories/index.js +0 -148
- package/src/elevation/test/index.js +0 -51
- package/src/flex/flex/component.js +0 -60
- package/src/flex/flex-block/component.js +0 -30
- package/src/flex/flex-item/component.js +0 -30
- package/src/flex/stories/index.js +0 -29
- package/src/flex/test/index.js +0 -77
- package/src/menu-group/test/__snapshots__/index.js.snap +0 -23
- package/src/placeholder/stories/index.js +0 -44
- package/src/placeholder/test/index.js +0 -163
- package/src/popover/stories/_utils.js +0 -64
- package/src/scroll-lock/stories/index.js +0 -71
- package/src/scroll-lock/test/index.js +0 -53
- package/src/shortcut/test/index.js +0 -37
- package/src/style-provider/index.js +0 -31
- package/src/swatch/index.js +0 -19
- package/src/swatch/style.scss +0 -21
- package/src/toggle-group-control/stories/index.js +0 -187
- package/src/tools-panel/test/__snapshots__/index.js.snap +0 -219
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/popover/index.js"],"names":["classnames","useFloating","flip","shift","autoUpdate","arrow","offset","offsetMiddleware","limitShift","size","useRef","useLayoutEffect","forwardRef","createContext","useContext","useMemo","useViewportMatch","useMergeRefs","__experimentalUseDialog","useDialog","close","deprecated","Button","ScrollLock","Slot","Fill","useSlot","getAnimateClassName","SLOT_NAME","slotNameContext","positionToPlacement","position","x","y","z","split","includes","suffix","placementToAnimationOrigin","placement","a","b","Popover","ref","range","animate","headerTitle","onClose","children","className","noArrow","isAlternate","focusOnMount","anchorRef","anchorRect","getAnchorRect","expandOnMobile","onFocusOutside","__unstableSlotName","__unstableObserveElement","__unstableForcePosition","__unstableShift","contentProps","since","version","arrowRef","anchorRefFallback","isMobileViewport","isExpanded","hasArrow","usedPlacement","ownerDocument","top","startContainer","current","document","frameOffset","defaultView","frameElement","undefined","iframeRect","getBoundingClientRect","name","fn","left","middlewares","apply","sizeProps","height","refs","floating","Object","assign","firstChild","style","maxHeight","overflow","crossAxis","limiter","padding","element","filter","m","slotName","slot","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","reference","strategy","update","placementData","middlewareData","arrowData","middleware","staticSide","right","bottom","mergedRefs","usedRef","topRect","bottomRect","window","DOMRect","width","rect","observer","MutationObserver","observe","attributes","disconnect","addEventListener","removeEventListener","animateClassName","origin","content","Number","isNaN","PopoverContainer","PopoverSlot","__unstableSlotNameProvider","Provider"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport {\n\tuseFloating,\n\tflip,\n\tshift,\n\tautoUpdate,\n\tarrow,\n\toffset as offsetMiddleware,\n\tlimitShift,\n\tsize,\n} from '@floating-ui/react-dom';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\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\nconst positionToPlacement = ( position ) => {\n\tconst [ x, y, z ] = position.split( ' ' );\n\n\tif ( [ 'top', 'bottom' ].includes( x ) ) {\n\t\tlet suffix = '';\n\t\tif ( ( !! z && z === 'left' ) || y === 'right' ) {\n\t\t\tsuffix = '-start';\n\t\t} else if ( ( !! z && z === 'right' ) || y === 'left' ) {\n\t\t\tsuffix = '-end';\n\t\t}\n\t\treturn x + suffix;\n\t}\n\n\treturn y;\n};\n\nconst placementToAnimationOrigin = ( placement ) => {\n\tconst [ a, b ] = placement.split( '-' );\n\n\tlet x, y;\n\tif ( a === 'top' || a === 'bottom' ) {\n\t\tx = a === 'top' ? 'bottom' : 'top';\n\t\ty = 'middle';\n\t\tif ( b === 'start' ) {\n\t\t\ty = 'left';\n\t\t} else if ( b === 'end' ) {\n\t\t\ty = 'right';\n\t\t}\n\t}\n\n\tif ( a === 'left' || a === 'right' ) {\n\t\tx = 'center';\n\t\ty = a === 'left' ? 'right' : 'left';\n\t\tif ( b === 'start' ) {\n\t\t\tx = 'top';\n\t\t} else if ( b === 'end' ) {\n\t\t\tx = 'bottom';\n\t\t}\n\t}\n\n\treturn x + ' ' + y;\n};\n\nconst Popover = (\n\t{\n\t\trange,\n\t\tanimate = true,\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\tposition,\n\t\tplacement = 'bottom-start',\n\t\toffset,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tonFocusOutside,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableObserveElement,\n\t\t__unstableForcePosition,\n\t\t__unstableShift = false,\n\t\t...contentProps\n\t},\n\tref\n) => {\n\tif ( range ) {\n\t\tdeprecated( 'range prop in Popover component', {\n\t\t\tsince: '6.1',\n\t\t\tversion: '6.3',\n\t\t} );\n\t}\n\n\tconst arrowRef = useRef( null );\n\tconst anchorRefFallback = useRef( null );\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst hasArrow = ! isExpanded && ! noArrow;\n\tconst usedPlacement = position\n\t\t? positionToPlacement( position )\n\t\t: placement;\n\n\tconst ownerDocument = useMemo( () => {\n\t\tif ( anchorRef?.top ) {\n\t\t\treturn anchorRef?.top.ownerDocument;\n\t\t} else if ( anchorRef?.startContainer ) {\n\t\t\treturn anchorRef.startContainer.ownerDocument;\n\t\t} else if ( anchorRef?.current ) {\n\t\t\treturn anchorRef.current.ownerDocument;\n\t\t} else if ( anchorRef ) {\n\t\t\t// This one should be deprecated.\n\t\t\treturn anchorRef.ownerDocument;\n\t\t} else if ( anchorRect && anchorRect?.ownerDocument ) {\n\t\t\treturn anchorRect.ownerDocument;\n\t\t} else if ( getAnchorRect ) {\n\t\t\treturn (\n\t\t\t\tgetAnchorRect( anchorRefFallback.current )?.ownerDocument ??\n\t\t\t\tdocument\n\t\t\t);\n\t\t}\n\n\t\treturn document;\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t/**\n\t * Offsets the position of the popover when the anchor is inside an iframe.\n\t */\n\tconst frameOffset = useMemo( () => {\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst { frameElement } = defaultView;\n\n\t\tif ( ! frameElement || ownerDocument === document ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst iframeRect = frameElement.getBoundingClientRect();\n\t\treturn {\n\t\t\tname: 'iframeOffset',\n\t\t\tfn( { x, y } ) {\n\t\t\t\treturn {\n\t\t\t\t\tx: x + iframeRect.left,\n\t\t\t\t\ty: y + iframeRect.top,\n\t\t\t\t};\n\t\t\t},\n\t\t};\n\t}, [ ownerDocument ] );\n\n\tconst middlewares = [\n\t\tframeOffset,\n\t\toffset ? offsetMiddleware( offset ) : undefined,\n\t\t__unstableForcePosition ? undefined : flip(),\n\t\t__unstableForcePosition\n\t\t\t? undefined\n\t\t\t: size( {\n\t\t\t\t\tapply( sizeProps ) {\n\t\t\t\t\t\tconst { height } = sizeProps;\n\t\t\t\t\t\tif ( ! refs.floating.current ) return;\n\t\t\t\t\t\t// Reduce the height of the popover to the available space.\n\t\t\t\t\t\tObject.assign( refs.floating.current.firstChild.style, {\n\t\t\t\t\t\t\tmaxHeight: `${ height }px`,\n\t\t\t\t\t\t\toverflow: 'auto',\n\t\t\t\t\t\t} );\n\t\t\t\t\t},\n\t\t\t } ),\n\t\t__unstableShift\n\t\t\t? shift( {\n\t\t\t\t\tcrossAxis: true,\n\t\t\t\t\tlimiter: limitShift(),\n\t\t\t\t\tpadding: 1, // Necessary to avoid flickering at the edge of the viewport.\n\t\t\t } )\n\t\t\t: undefined,\n\t\thasArrow ? arrow( { element: arrowRef } ) : undefined,\n\t].filter( ( m ) => !! m );\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\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 {\n\t\tx,\n\t\ty,\n\t\treference,\n\t\tfloating,\n\t\tstrategy,\n\t\trefs,\n\t\tupdate,\n\t\tplacement: placementData,\n\t\tmiddlewareData: { arrow: arrowData = {} },\n\t} = useFloating( {\n\t\tplacement: usedPlacement,\n\t\tmiddleware: middlewares,\n\t} );\n\tconst staticSide = {\n\t\ttop: 'bottom',\n\t\tright: 'left',\n\t\tbottom: 'top',\n\t\tleft: 'right',\n\t}[ placementData.split( '-' )[ 0 ] ];\n\tconst mergedRefs = useMergeRefs( [ floating, dialogRef, ref ] );\n\n\t// Updates references\n\tuseLayoutEffect( () => {\n\t\t// No ref or position have been passed\n\t\tlet usedRef;\n\t\tif ( anchorRef?.top ) {\n\t\t\tusedRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst topRect = anchorRef.top.getBoundingClientRect();\n\t\t\t\t\tconst bottomRect = anchorRef.bottom.getBoundingClientRect();\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\ttopRect.x,\n\t\t\t\t\t\ttopRect.y,\n\t\t\t\t\t\ttopRect.width,\n\t\t\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRef?.current ) {\n\t\t\tusedRef = anchorRef.current;\n\t\t} else if ( anchorRef ) {\n\t\t\tusedRef = anchorRef;\n\t\t} else if ( anchorRect ) {\n\t\t\tusedRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\treturn anchorRect;\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( getAnchorRect ) {\n\t\t\tusedRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\trect.x ?? rect.left,\n\t\t\t\t\t\trect.y ?? rect.top,\n\t\t\t\t\t\trect.width ?? rect.right - rect.left,\n\t\t\t\t\t\trect.height ?? rect.bottom - rect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRefFallback.current ) {\n\t\t\tusedRef = anchorRefFallback.current;\n\t\t}\n\n\t\tif ( ! usedRef ) {\n\t\t\treturn;\n\t\t}\n\n\t\treference( usedRef );\n\n\t\tif ( ! refs.floating.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn autoUpdate( usedRef, refs.floating.current, update );\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t// This is only needed for a smoth transition when moving blocks.\n\tuseLayoutEffect( () => {\n\t\tif ( ! __unstableObserveElement ) {\n\t\t\treturn;\n\t\t}\n\t\tconst observer = new window.MutationObserver( update );\n\t\tobserver.observe( __unstableObserveElement, { attributes: true } );\n\n\t\treturn () => {\n\t\t\tobserver.disconnect();\n\t\t};\n\t}, [ __unstableObserveElement ] );\n\n\t// If we're using getAnchorRect, we need to update the position as we scroll the iframe.\n\tuseLayoutEffect( () => {\n\t\tif ( ownerDocument === document ) {\n\t\t\treturn;\n\t\t}\n\n\t\townerDocument.addEventListener( 'scroll', update );\n\t\treturn () => ownerDocument.removeEventListener( 'scroll', update );\n\t}, [ ownerDocument ] );\n\n\t/** @type {false | string} */\n\tconst animateClassName =\n\t\t!! animate &&\n\t\tgetAnimateClassName( {\n\t\t\ttype: 'appear',\n\t\t\torigin: placementToAnimationOrigin( placementData ),\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-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\tstyle={\n\t\t\t\tisExpanded\n\t\t\t\t\t? undefined\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tposition: strategy,\n\t\t\t\t\t\t\tleft: Number.isNaN( x ) ? 0 : x,\n\t\t\t\t\t\t\ttop: Number.isNaN( y ) ? 0 : y,\n\t\t\t\t\t }\n\t\t\t}\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 className=\"components-popover__content\">{ children }</div>\n\t\t\t{ hasArrow && (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"components-popover__arrow\"\n\t\t\t\t\tref={ arrowRef }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tleft:\n\t\t\t\t\t\t\t! arrowData?.x || Number.isNaN( arrowData?.x )\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: arrowData.x,\n\t\t\t\t\t\ttop:\n\t\t\t\t\t\t\t! arrowData?.y || Number.isNaN( arrowData?.y )\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: arrowData.y,\n\t\t\t\t\t\tright: undefined,\n\t\t\t\t\t\tbottom: undefined,\n\t\t\t\t\t\t[ staticSide ]: '-4px',\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\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","useFloating","flip","shift","autoUpdate","arrow","offset","offsetMiddleware","limitShift","size","motion","useReducedMotion","useRef","useLayoutEffect","forwardRef","createContext","useContext","useMemo","useEffect","useViewportMatch","useMergeRefs","__experimentalUseDialog","useDialog","close","deprecated","Path","SVG","Button","ScrollLock","Slot","Fill","useSlot","getFrameOffset","positionToPlacement","placementToMotionAnimationProps","SLOT_NAME","ArrowTriangle","props","MaybeAnimatedWrapper","forwardedRef","style","receivedInlineStyles","placement","shouldAnimate","shouldReduceMotion","motionInlineStyles","otherMotionProps","slotNameContext","Popover","range","animate","headerTitle","onClose","children","className","noArrow","isAlternate","position","placementProp","offsetProp","focusOnMount","anchorRef","anchorRect","getAnchorRect","expandOnMobile","onFocusOutside","__unstableSlotName","__unstableObserveElement","__unstableForcePosition","__unstableShift","contentProps","since","version","arrowRef","anchorRefFallback","isMobileViewport","isExpanded","hasArrow","normalizedPlacementFromProps","referenceOwnerDocument","documentToReturn","top","ownerDocument","startContainer","current","document","frameOffsetRef","offsetRef","middleware","currentPlacement","isTopBottomPlacement","includes","mainAxis","crossAxis","hasBeforePlacement","mainAxisModifier","undefined","apply","sizeProps","availableHeight","refs","floating","Object","assign","firstChild","maxHeight","overflow","limiter","padding","element","filter","m","slotName","slot","onDialogClose","type","event","dialogRef","dialogProps","__unstableOnClose","x","y","reference","strategy","update","computedPlacement","middlewareData","arrowData","resultingReferenceRef","getBoundingClientRect","topRect","bottomRect","bottom","window","DOMRect","width","rect","left","right","height","parentNode","observer","MutationObserver","observe","attributes","disconnect","defaultView","addEventListener","updateFrameOffset","hasFrameElement","frameElement","removeEventListener","mergedFloatingRef","content","Number","isNaN","split","join","isFinite","ref","PopoverContainer","PopoverSlot","name","__unstableSlotNameProvider","Provider"],"mappings":"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","sourcesContent":["// @ts-nocheck\n/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport {\n\tuseFloating,\n\tflip,\n\tshift,\n\tautoUpdate,\n\tarrow,\n\toffset as offsetMiddleware,\n\tlimitShift,\n\tsize,\n} from '@floating-ui/react-dom';\n// eslint-disable-next-line no-restricted-imports\nimport { motion, useReducedMotion } from 'framer-motion';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseRef,\n\tuseLayoutEffect,\n\tforwardRef,\n\tcreateContext,\n\tuseContext,\n\tuseMemo,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tuseViewportMatch,\n\tuseMergeRefs,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { close } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\nimport { Path, SVG } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport Button from '../button';\nimport ScrollLock from '../scroll-lock';\nimport { Slot, Fill, useSlot } from '../slot-fill';\nimport {\n\tgetFrameOffset,\n\tpositionToPlacement,\n\tplacementToMotionAnimationProps,\n} from './utils';\n\n/**\n * Name of slot in which popover should fill.\n *\n * @type {string}\n */\nconst SLOT_NAME = 'Popover';\n\n// An SVG displaying a triangle facing down, filled with a solid\n// color and bordered in such a way to create an arrow-like effect.\n// Keeping the SVG's viewbox squared simplify the arrow positioning\n// calculations.\nconst ArrowTriangle = ( props ) => (\n\t<SVG\n\t\t{ ...props }\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\tviewBox={ `0 0 100 100` }\n\t\tclassName=\"components-popover__triangle\"\n\t\trole=\"presentation\"\n\t>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-bg\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t/>\n\t\t<Path\n\t\t\tclassName=\"components-popover__triangle-border\"\n\t\t\td=\"M 0 0 L 50 50 L 100 0\"\n\t\t\tvectorEffect=\"non-scaling-stroke\"\n\t\t/>\n\t</SVG>\n);\n\nconst MaybeAnimatedWrapper = forwardRef(\n\t(\n\t\t{\n\t\t\tstyle: receivedInlineStyles,\n\t\t\tplacement,\n\t\t\tshouldAnimate = false,\n\t\t\t...props\n\t\t},\n\t\tforwardedRef\n\t) => {\n\t\tconst shouldReduceMotion = useReducedMotion();\n\n\t\tconst { style: motionInlineStyles, ...otherMotionProps } = useMemo(\n\t\t\t() => placementToMotionAnimationProps( placement ),\n\t\t\t[ placement ]\n\t\t);\n\n\t\tif ( shouldAnimate && ! shouldReduceMotion ) {\n\t\t\treturn (\n\t\t\t\t<motion.div\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...motionInlineStyles,\n\t\t\t\t\t\t...receivedInlineStyles,\n\t\t\t\t\t} }\n\t\t\t\t\t{ ...otherMotionProps }\n\t\t\t\t\t{ ...props }\n\t\t\t\t\tref={ forwardedRef }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={ receivedInlineStyles }\n\t\t\t\t{ ...props }\n\t\t\t\tref={ forwardedRef }\n\t\t\t/>\n\t\t);\n\t}\n);\n\nconst slotNameContext = createContext();\n\nconst Popover = (\n\t{\n\t\trange,\n\t\tanimate = true,\n\t\theaderTitle,\n\t\tonClose,\n\t\tchildren,\n\t\tclassName,\n\t\tnoArrow = true,\n\t\tisAlternate,\n\t\tposition,\n\t\tplacement: placementProp = 'bottom-start',\n\t\toffset: offsetProp = 0,\n\t\tfocusOnMount = 'firstElement',\n\t\tanchorRef,\n\t\tanchorRect,\n\t\tgetAnchorRect,\n\t\texpandOnMobile,\n\t\tonFocusOutside,\n\t\t__unstableSlotName = SLOT_NAME,\n\t\t__unstableObserveElement,\n\t\t__unstableForcePosition = false,\n\t\t__unstableShift = false,\n\t\t...contentProps\n\t},\n\tforwardedRef\n) => {\n\tif ( range ) {\n\t\tdeprecated( 'range prop in Popover component', {\n\t\t\tsince: '6.1',\n\t\t\tversion: '6.3',\n\t\t} );\n\t}\n\n\tconst arrowRef = useRef( null );\n\tconst anchorRefFallback = useRef( null );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst isExpanded = expandOnMobile && isMobileViewport;\n\tconst hasArrow = ! isExpanded && ! noArrow;\n\tconst normalizedPlacementFromProps = position\n\t\t? positionToPlacement( position )\n\t\t: placementProp;\n\n\tconst referenceOwnerDocument = useMemo( () => {\n\t\tlet documentToReturn;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\tdocumentToReturn = anchorRef?.top.ownerDocument;\n\t\t} else if ( anchorRef?.startContainer ) {\n\t\t\tdocumentToReturn = anchorRef.startContainer.ownerDocument;\n\t\t} else if ( anchorRef?.current ) {\n\t\t\tdocumentToReturn = anchorRef.current.ownerDocument;\n\t\t} else if ( anchorRef ) {\n\t\t\t// This one should be deprecated.\n\t\t\tdocumentToReturn = anchorRef.ownerDocument;\n\t\t} else if ( anchorRect && anchorRect?.ownerDocument ) {\n\t\t\tdocumentToReturn = anchorRect.ownerDocument;\n\t\t} else if ( getAnchorRect ) {\n\t\t\tdocumentToReturn = getAnchorRect(\n\t\t\t\tanchorRefFallback.current\n\t\t\t)?.ownerDocument;\n\t\t}\n\n\t\treturn documentToReturn ?? document;\n\t}, [ anchorRef, anchorRect, getAnchorRect ] );\n\n\t/**\n\t * Offsets the position of the popover when the anchor is inside an iframe.\n\t *\n\t * Store the offset in a ref, due to constraints with floating-ui:\n\t * https://floating-ui.com/docs/react-dom#variables-inside-middleware-functions.\n\t */\n\tconst frameOffsetRef = useRef( getFrameOffset( referenceOwnerDocument ) );\n\t/**\n\t * Store the offset prop in a ref, due to constraints with floating-ui:\n\t * https://floating-ui.com/docs/react-dom#variables-inside-middleware-functions.\n\t */\n\tconst offsetRef = useRef( offsetProp );\n\n\tconst middleware = [\n\t\toffsetMiddleware( ( { placement: currentPlacement } ) => {\n\t\t\tif ( ! frameOffsetRef.current ) {\n\t\t\t\treturn offsetRef.current;\n\t\t\t}\n\n\t\t\tconst isTopBottomPlacement =\n\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\tcurrentPlacement.includes( 'bottom' );\n\n\t\t\t// The main axis should represent the gap between the\n\t\t\t// floating element and the reference element. The cross\n\t\t\t// axis is always perpendicular to the main axis.\n\t\t\tconst mainAxis = isTopBottomPlacement ? 'y' : 'x';\n\t\t\tconst crossAxis = mainAxis === 'x' ? 'y' : 'x';\n\n\t\t\t// When the popover is before the reference, subtract the offset,\n\t\t\t// of the main axis else add it.\n\t\t\tconst hasBeforePlacement =\n\t\t\t\tcurrentPlacement.includes( 'top' ) ||\n\t\t\t\tcurrentPlacement.includes( 'left' );\n\t\t\tconst mainAxisModifier = hasBeforePlacement ? -1 : 1;\n\n\t\t\treturn {\n\t\t\t\tmainAxis:\n\t\t\t\t\toffsetRef.current +\n\t\t\t\t\tframeOffsetRef.current[ mainAxis ] * mainAxisModifier,\n\t\t\t\tcrossAxis: frameOffsetRef.current[ crossAxis ],\n\t\t\t};\n\t\t} ),\n\t\t__unstableForcePosition ? undefined : flip(),\n\t\t__unstableForcePosition\n\t\t\t? undefined\n\t\t\t: size( {\n\t\t\t\t\tapply( sizeProps ) {\n\t\t\t\t\t\tconst { availableHeight } = sizeProps;\n\t\t\t\t\t\tif ( ! refs.floating.current ) return;\n\t\t\t\t\t\t// Reduce the height of the popover to the available space.\n\t\t\t\t\t\tObject.assign( refs.floating.current.firstChild.style, {\n\t\t\t\t\t\t\tmaxHeight: `${ availableHeight }px`,\n\t\t\t\t\t\t\toverflow: 'auto',\n\t\t\t\t\t\t} );\n\t\t\t\t\t},\n\t\t\t } ),\n\t\t__unstableShift\n\t\t\t? shift( {\n\t\t\t\t\tcrossAxis: true,\n\t\t\t\t\tlimiter: limitShift(),\n\t\t\t\t\tpadding: 1, // Necessary to avoid flickering at the edge of the viewport.\n\t\t\t } )\n\t\t\t: undefined,\n\t\thasArrow ? arrow( { element: arrowRef } ) : undefined,\n\t].filter( ( m ) => !! m );\n\tconst slotName = useContext( slotNameContext ) || __unstableSlotName;\n\tconst slot = useSlot( slotName );\n\n\tlet onDialogClose;\n\n\tif ( onClose || onFocusOutside ) {\n\t\tonDialogClose = ( type, event ) => {\n\t\t\t// Ideally the popover should have just a single onClose prop and\n\t\t\t// not three props that potentially do the same thing.\n\t\t\tif ( type === 'focus-outside' && onFocusOutside ) {\n\t\t\t\tonFocusOutside( event );\n\t\t\t} else if ( onClose ) {\n\t\t\t\tonClose();\n\t\t\t}\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 {\n\t\t// Positioning coordinates\n\t\tx,\n\t\ty,\n\t\t// Callback refs (not regular refs). This allows the position to be updated.\n\t\t// when either elements change.\n\t\treference,\n\t\tfloating,\n\t\t// Object with \"regular\" refs to both \"reference\" and \"floating\"\n\t\trefs,\n\t\t// Type of CSS position property to use (absolute or fixed)\n\t\tstrategy,\n\t\tupdate,\n\t\tplacement: computedPlacement,\n\t\tmiddlewareData: { arrow: arrowData = {} },\n\t} = useFloating( { placement: normalizedPlacementFromProps, middleware } );\n\n\tuseEffect( () => {\n\t\toffsetRef.current = offsetProp;\n\t\tupdate();\n\t}, [ offsetProp, update ] );\n\n\t// Update the `reference`'s ref.\n\t//\n\t// In floating-ui's terms:\n\t// - \"reference\" refers to the popover's anchor element.\n\t// - \"floating\" refers the floating popover's element.\n\t// A floating element can also be positioned relative to a virtual element,\n\t// instead of a real one. A virtual element is represented by an object\n\t// with the `getBoundingClientRect()` function (like real elements).\n\t// See https://floating-ui.com/docs/virtual-elements for more info.\n\tuseLayoutEffect( () => {\n\t\tlet resultingReferenceRef;\n\n\t\tif ( anchorRef?.top ) {\n\t\t\t// Create a virtual element for the ref. The expectation is that\n\t\t\t// if anchorRef.top is defined, then anchorRef.bottom is defined too.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst topRect = anchorRef.top.getBoundingClientRect();\n\t\t\t\t\tconst bottomRect = anchorRef.bottom.getBoundingClientRect();\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\ttopRect.x,\n\t\t\t\t\t\ttopRect.y,\n\t\t\t\t\t\ttopRect.width,\n\t\t\t\t\t\tbottomRect.bottom - topRect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRef?.current ) {\n\t\t\t// Standard React ref.\n\t\t\tresultingReferenceRef = anchorRef.current;\n\t\t} else if ( anchorRef ) {\n\t\t\t// If `anchorRef` holds directly the element's value (no `current` key)\n\t\t\t// This is a weird scenario and should be deprecated.\n\t\t\tresultingReferenceRef = anchorRef;\n\t\t} else if ( anchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\treturn anchorRect;\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( getAnchorRect ) {\n\t\t\t// Create a virtual element for the ref.\n\t\t\tresultingReferenceRef = {\n\t\t\t\tgetBoundingClientRect() {\n\t\t\t\t\tconst rect = getAnchorRect( anchorRefFallback.current );\n\t\t\t\t\treturn new window.DOMRect(\n\t\t\t\t\t\trect.x ?? rect.left,\n\t\t\t\t\t\trect.y ?? rect.top,\n\t\t\t\t\t\trect.width ?? rect.right - rect.left,\n\t\t\t\t\t\trect.height ?? rect.bottom - rect.top\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t};\n\t\t} else if ( anchorRefFallback.current ) {\n\t\t\t// If no explicit ref is passed via props, fall back to\n\t\t\t// anchoring to the popover's parent node.\n\t\t\tresultingReferenceRef = anchorRefFallback.current.parentNode;\n\t\t}\n\n\t\tif ( ! resultingReferenceRef ) {\n\t\t\treturn;\n\t\t}\n\n\t\treference( resultingReferenceRef );\n\n\t\tif ( ! refs.floating.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn autoUpdate(\n\t\t\tresultingReferenceRef,\n\t\t\trefs.floating.current,\n\t\t\tupdate\n\t\t);\n\t\t// 'reference' and 'refs.floating' are refs and don't need to be listed\n\t\t// as dependencies (see https://github.com/WordPress/gutenberg/pull/41612)\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ anchorRef, anchorRect, getAnchorRect, update ] );\n\n\t// This is only needed for a smooth transition when moving blocks.\n\tuseLayoutEffect( () => {\n\t\tif ( ! __unstableObserveElement ) {\n\t\t\treturn;\n\t\t}\n\t\tconst observer = new window.MutationObserver( update );\n\t\tobserver.observe( __unstableObserveElement, { attributes: true } );\n\n\t\treturn () => {\n\t\t\tobserver.disconnect();\n\t\t};\n\t}, [ __unstableObserveElement, update ] );\n\n\t// If the reference element is in a different ownerDocument (e.g. iFrame),\n\t// we need to manually update the floating's position as the reference's owner\n\t// document scrolls. Also update the frame offset if the view resizes.\n\tuseLayoutEffect( () => {\n\t\tif ( referenceOwnerDocument === document ) {\n\t\t\tframeOffsetRef.current = undefined;\n\t\t\treturn;\n\t\t}\n\n\t\tconst { defaultView } = referenceOwnerDocument;\n\n\t\treferenceOwnerDocument.addEventListener( 'scroll', update );\n\n\t\tlet updateFrameOffset;\n\t\tconst hasFrameElement =\n\t\t\t!! referenceOwnerDocument?.defaultView?.frameElement;\n\t\tif ( hasFrameElement ) {\n\t\t\tupdateFrameOffset = () => {\n\t\t\t\tframeOffsetRef.current = getFrameOffset(\n\t\t\t\t\treferenceOwnerDocument\n\t\t\t\t);\n\t\t\t\tupdate();\n\t\t\t};\n\t\t\tupdateFrameOffset();\n\t\t\tdefaultView.addEventListener( 'resize', updateFrameOffset );\n\t\t}\n\n\t\treturn () => {\n\t\t\treferenceOwnerDocument.removeEventListener( 'scroll', update );\n\n\t\t\tif ( updateFrameOffset ) {\n\t\t\t\tdefaultView.removeEventListener( 'resize', updateFrameOffset );\n\t\t\t}\n\t\t};\n\t}, [ referenceOwnerDocument, update ] );\n\n\tconst mergedFloatingRef = useMergeRefs( [\n\t\tfloating,\n\t\tdialogRef,\n\t\tforwardedRef,\n\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<MaybeAnimatedWrapper\n\t\t\tshouldAnimate={ animate && ! isExpanded }\n\t\t\tplacement={ computedPlacement }\n\t\t\tclassName={ classnames( 'components-popover', className, {\n\t\t\t\t'is-expanded': isExpanded,\n\t\t\t\t'is-alternate': isAlternate,\n\t\t\t} ) }\n\t\t\t{ ...contentProps }\n\t\t\tref={ mergedFloatingRef }\n\t\t\t{ ...dialogProps }\n\t\t\ttabIndex=\"-1\"\n\t\t\tstyle={\n\t\t\t\tisExpanded\n\t\t\t\t\t? undefined\n\t\t\t\t\t: {\n\t\t\t\t\t\t\tposition: strategy,\n\t\t\t\t\t\t\tleft: Number.isNaN( x ) ? 0 : x,\n\t\t\t\t\t\t\ttop: Number.isNaN( y ) ? 0 : y,\n\t\t\t\t\t }\n\t\t\t}\n\t\t>\n\t\t\t{ /* Prevents scroll on the document */ }\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 className=\"components-popover__content\">{ children }</div>\n\t\t\t{ hasArrow && (\n\t\t\t\t<div\n\t\t\t\t\tref={ arrowRef }\n\t\t\t\t\tclassName={ [\n\t\t\t\t\t\t'components-popover__arrow',\n\t\t\t\t\t\t`is-${ computedPlacement.split( '-' )[ 0 ] }`,\n\t\t\t\t\t].join( ' ' ) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tleft: Number.isFinite( arrowData?.x )\n\t\t\t\t\t\t\t? `${ arrowData.x }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t\ttop: Number.isFinite( arrowData?.y )\n\t\t\t\t\t\t\t? `${ arrowData.y }px`\n\t\t\t\t\t\t\t: '',\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t<ArrowTriangle />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</MaybeAnimatedWrapper>\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"]}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {import('../animate').AppearOrigin} AppearOrigin
|
|
3
|
+
* @typedef {import('@floating-ui/react-dom').Placement} FloatingUIPlacement
|
|
4
|
+
* @typedef { 'top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom right' } LegacyPosition
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Converts the `Popover`'s legacy "position" prop to the new "placement" prop
|
|
9
|
+
* (used by `floating-ui`).
|
|
10
|
+
*
|
|
11
|
+
* @param {LegacyPosition} position The legacy position
|
|
12
|
+
* @return {FloatingUIPlacement} The corresponding placement
|
|
13
|
+
*/
|
|
14
|
+
export const positionToPlacement = position => {
|
|
15
|
+
const [x, y, z] = position.split(' ');
|
|
16
|
+
|
|
17
|
+
if (['top', 'bottom'].includes(x)) {
|
|
18
|
+
let suffix = '';
|
|
19
|
+
|
|
20
|
+
if (!!z && z === 'left' || y === 'right') {
|
|
21
|
+
suffix = '-start';
|
|
22
|
+
} else if (!!z && z === 'right' || y === 'left') {
|
|
23
|
+
suffix = '-end';
|
|
24
|
+
} // @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
return x + suffix;
|
|
28
|
+
} // @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
return y;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* @typedef AnimationOrigin
|
|
35
|
+
* @type {Object}
|
|
36
|
+
* @property {number} originX A number between 0 and 1 (in CSS logical properties jargon, 0 is "start", 0.5 is "center", and 1 is "end")
|
|
37
|
+
* @property {number} originY A number between 0 and 1 (0 is top, 0.5 is center, and 1 is bottom)
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
/** @type {Object.<FloatingUIPlacement, {originX: number, originY: number}>} */
|
|
41
|
+
|
|
42
|
+
const PLACEMENT_TO_ANIMATION_ORIGIN = {
|
|
43
|
+
top: {
|
|
44
|
+
originX: 0.5,
|
|
45
|
+
originY: 1
|
|
46
|
+
},
|
|
47
|
+
// open from bottom, center
|
|
48
|
+
'top-start': {
|
|
49
|
+
originX: 0,
|
|
50
|
+
originY: 1
|
|
51
|
+
},
|
|
52
|
+
// open from bottom, left
|
|
53
|
+
'top-end': {
|
|
54
|
+
originX: 1,
|
|
55
|
+
originY: 1
|
|
56
|
+
},
|
|
57
|
+
// open from bottom, right
|
|
58
|
+
right: {
|
|
59
|
+
originX: 0,
|
|
60
|
+
originY: 0.5
|
|
61
|
+
},
|
|
62
|
+
// open from middle, left
|
|
63
|
+
'right-start': {
|
|
64
|
+
originX: 0,
|
|
65
|
+
originY: 0
|
|
66
|
+
},
|
|
67
|
+
// open from top, left
|
|
68
|
+
'right-end': {
|
|
69
|
+
originX: 0,
|
|
70
|
+
originY: 1
|
|
71
|
+
},
|
|
72
|
+
// open from bottom, left
|
|
73
|
+
bottom: {
|
|
74
|
+
originX: 0.5,
|
|
75
|
+
originY: 0
|
|
76
|
+
},
|
|
77
|
+
// open from top, center
|
|
78
|
+
'bottom-start': {
|
|
79
|
+
originX: 0,
|
|
80
|
+
originY: 0
|
|
81
|
+
},
|
|
82
|
+
// open from top, left
|
|
83
|
+
'bottom-end': {
|
|
84
|
+
originX: 1,
|
|
85
|
+
originY: 0
|
|
86
|
+
},
|
|
87
|
+
// open from top, right
|
|
88
|
+
left: {
|
|
89
|
+
originX: 1,
|
|
90
|
+
originY: 0.5
|
|
91
|
+
},
|
|
92
|
+
// open from middle, right
|
|
93
|
+
'left-start': {
|
|
94
|
+
originX: 1,
|
|
95
|
+
originY: 0
|
|
96
|
+
},
|
|
97
|
+
// open from top, right
|
|
98
|
+
'left-end': {
|
|
99
|
+
originX: 1,
|
|
100
|
+
originY: 1
|
|
101
|
+
} // open from bottom, right
|
|
102
|
+
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Given the floating-ui `placement`, compute the framer-motion props for the
|
|
106
|
+
* popover's entry animation.
|
|
107
|
+
*
|
|
108
|
+
* @param {FloatingUIPlacement} placement A placement string from floating ui
|
|
109
|
+
* @return {import('framer-motion').MotionProps} The object containing the motion props
|
|
110
|
+
*/
|
|
111
|
+
|
|
112
|
+
export const placementToMotionAnimationProps = placement => {
|
|
113
|
+
const translateProp = placement.startsWith('top') || placement.startsWith('bottom') ? 'translateY' : 'translateX';
|
|
114
|
+
const translateDirection = placement.startsWith('top') || placement.startsWith('left') ? 1 : -1;
|
|
115
|
+
return {
|
|
116
|
+
style: PLACEMENT_TO_ANIMATION_ORIGIN[placement],
|
|
117
|
+
initial: {
|
|
118
|
+
opacity: 0,
|
|
119
|
+
scale: 0,
|
|
120
|
+
[translateProp]: `${2 * translateDirection}em`
|
|
121
|
+
},
|
|
122
|
+
animate: {
|
|
123
|
+
opacity: 1,
|
|
124
|
+
scale: 1,
|
|
125
|
+
[translateProp]: 0
|
|
126
|
+
},
|
|
127
|
+
transition: {
|
|
128
|
+
duration: 0.1,
|
|
129
|
+
ease: [0, 0, 0.2, 1]
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* @typedef FrameOffset
|
|
135
|
+
* @type {Object}
|
|
136
|
+
* @property {number} x A numerical value representing the horizontal offset of the frame.
|
|
137
|
+
* @property {number} y A numerical value representing the vertical offset of the frame.
|
|
138
|
+
*/
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Returns the offset of a document's frame element.
|
|
142
|
+
*
|
|
143
|
+
* @param {Document} document A document. This will usually be the document within an iframe.
|
|
144
|
+
*
|
|
145
|
+
* @return {FrameOffset|undefined} The offset of the document's frame element,
|
|
146
|
+
* or undefined if the document has no frame element.
|
|
147
|
+
*/
|
|
148
|
+
|
|
149
|
+
export const getFrameOffset = document => {
|
|
150
|
+
var _document$defaultView;
|
|
151
|
+
|
|
152
|
+
const frameElement = document === null || document === void 0 ? void 0 : (_document$defaultView = document.defaultView) === null || _document$defaultView === void 0 ? void 0 : _document$defaultView.frameElement;
|
|
153
|
+
|
|
154
|
+
if (!frameElement) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
const iframeRect = frameElement.getBoundingClientRect();
|
|
159
|
+
return {
|
|
160
|
+
x: iframeRect.left,
|
|
161
|
+
y: iframeRect.top
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/popover/utils.js"],"names":["positionToPlacement","position","x","y","z","split","includes","suffix","PLACEMENT_TO_ANIMATION_ORIGIN","top","originX","originY","right","bottom","left","placementToMotionAnimationProps","placement","translateProp","startsWith","translateDirection","style","initial","opacity","scale","animate","transition","duration","ease","getFrameOffset","document","frameElement","defaultView","iframeRect","getBoundingClientRect"],"mappings":"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","sourcesContent":["/**\n * @typedef {import('../animate').AppearOrigin} AppearOrigin\n * @typedef {import('@floating-ui/react-dom').Placement} FloatingUIPlacement\n * @typedef {\t'top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom right' } LegacyPosition\n */\n\n/**\n * Converts the `Popover`'s legacy \"position\" prop to the new \"placement\" prop\n * (used by `floating-ui`).\n *\n * @param {LegacyPosition} position The legacy position\n * @return {FloatingUIPlacement} The corresponding placement\n */\nexport const positionToPlacement = ( position ) => {\n\tconst [ x, y, z ] = position.split( ' ' );\n\n\tif ( [ 'top', 'bottom' ].includes( x ) ) {\n\t\tlet suffix = '';\n\t\tif ( ( !! z && z === 'left' ) || y === 'right' ) {\n\t\t\tsuffix = '-start';\n\t\t} else if ( ( !! z && z === 'right' ) || y === 'left' ) {\n\t\t\tsuffix = '-end';\n\t\t}\n\n\t\t// @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.\n\t\treturn x + suffix;\n\t}\n\n\t// @ts-expect-error More TypeScript effort would be required to reconcile `string` and `Placement` types.\n\treturn y;\n};\n\n/**\n * @typedef AnimationOrigin\n * @type {Object}\n * @property {number} originX A number between 0 and 1 (in CSS logical properties jargon, 0 is \"start\", 0.5 is \"center\", and 1 is \"end\")\n * @property {number} originY A number between 0 and 1 (0 is top, 0.5 is center, and 1 is bottom)\n */\n\n/** @type {Object.<FloatingUIPlacement, {originX: number, originY: number}>} */\nconst PLACEMENT_TO_ANIMATION_ORIGIN = {\n\ttop: { originX: 0.5, originY: 1 }, // open from bottom, center\n\t'top-start': { originX: 0, originY: 1 }, // open from bottom, left\n\t'top-end': { originX: 1, originY: 1 }, // open from bottom, right\n\tright: { originX: 0, originY: 0.5 }, // open from middle, left\n\t'right-start': { originX: 0, originY: 0 }, // open from top, left\n\t'right-end': { originX: 0, originY: 1 }, // open from bottom, left\n\tbottom: { originX: 0.5, originY: 0 }, // open from top, center\n\t'bottom-start': { originX: 0, originY: 0 }, // open from top, left\n\t'bottom-end': { originX: 1, originY: 0 }, // open from top, right\n\tleft: { originX: 1, originY: 0.5 }, // open from middle, right\n\t'left-start': { originX: 1, originY: 0 }, // open from top, right\n\t'left-end': { originX: 1, originY: 1 }, // open from bottom, right\n};\n\n/**\n * Given the floating-ui `placement`, compute the framer-motion props for the\n * popover's entry animation.\n *\n * @param {FloatingUIPlacement} placement A placement string from floating ui\n * @return {import('framer-motion').MotionProps} The object containing the motion props\n */\nexport const placementToMotionAnimationProps = ( placement ) => {\n\tconst translateProp =\n\t\tplacement.startsWith( 'top' ) || placement.startsWith( 'bottom' )\n\t\t\t? 'translateY'\n\t\t\t: 'translateX';\n\tconst translateDirection =\n\t\tplacement.startsWith( 'top' ) || placement.startsWith( 'left' )\n\t\t\t? 1\n\t\t\t: -1;\n\n\treturn {\n\t\tstyle: PLACEMENT_TO_ANIMATION_ORIGIN[ placement ],\n\t\tinitial: {\n\t\t\topacity: 0,\n\t\t\tscale: 0,\n\t\t\t[ translateProp ]: `${ 2 * translateDirection }em`,\n\t\t},\n\t\tanimate: { opacity: 1, scale: 1, [ translateProp ]: 0 },\n\t\ttransition: { duration: 0.1, ease: [ 0, 0, 0.2, 1 ] },\n\t};\n};\n\n/**\n * @typedef FrameOffset\n * @type {Object}\n * @property {number} x A numerical value representing the horizontal offset of the frame.\n * @property {number} y A numerical value representing the vertical offset of the frame.\n */\n\n/**\n * Returns the offset of a document's frame element.\n *\n * @param {Document} document A document. This will usually be the document within an iframe.\n *\n * @return {FrameOffset|undefined} The offset of the document's frame element,\n * or undefined if the document has no frame element.\n */\nexport const getFrameOffset = ( document ) => {\n\tconst frameElement = document?.defaultView?.frameElement;\n\tif ( ! frameElement ) {\n\t\treturn;\n\t}\n\tconst iframeRect = frameElement.getBoundingClientRect();\n\treturn { x: iframeRect.left, y: iframeRect.top };\n};\n"]}
|
|
@@ -4,7 +4,6 @@ import { createElement } from "@wordpress/element";
|
|
|
4
4
|
/**
|
|
5
5
|
* External dependencies
|
|
6
6
|
*/
|
|
7
|
-
import { isEmpty } from 'lodash';
|
|
8
7
|
import classnames from 'classnames';
|
|
9
8
|
|
|
10
9
|
/**
|
|
@@ -60,7 +59,7 @@ props) {
|
|
|
60
59
|
|
|
61
60
|
const onChangeValue = event => onChange(event.target.value);
|
|
62
61
|
|
|
63
|
-
if (
|
|
62
|
+
if (!(options !== null && options !== void 0 && options.length)) {
|
|
64
63
|
return null;
|
|
65
64
|
}
|
|
66
65
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/radio-control/index.tsx"],"names":["
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/radio-control/index.tsx"],"names":["classnames","useInstanceId","BaseControl","RadioControl","props","label","className","selected","help","onChange","hideLabelFromVision","options","additionalProps","instanceId","id","onChangeValue","event","target","value","length","map","option","index","undefined"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;;AAGA;AACA;AACA;AACA,SAASC,aAAT,QAA8B,oBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,WAAP,MAAwB,iBAAxB;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAT,EACN;AACA;AACAC,KAHM,EAOL;AACD,QAAM;AACLC,IAAAA,KADK;AAELC,IAAAA,SAFK;AAGLC,IAAAA,QAHK;AAILC,IAAAA,IAJK;AAKLC,IAAAA,QALK;AAMLC,IAAAA,mBANK;AAOLC,IAAAA,OAAO,GAAG,EAPL;AAQL,OAAGC;AARE,MASFR,KATJ;AAUA,QAAMS,UAAU,GAAGZ,aAAa,CAAEE,YAAF,CAAhC;AACA,QAAMW,EAAE,GAAI,2BAA2BD,UAAY,EAAnD;;AACA,QAAME,aAAa,GAAKC,KAAF,IACrBP,QAAQ,CAAEO,KAAK,CAACC,MAAN,CAAaC,KAAf,CADT;;AAGA,MAAK,EAAEP,OAAF,aAAEA,OAAF,eAAEA,OAAO,CAAEQ,MAAX,CAAL,EAAyB;AACxB,WAAO,IAAP;AACA;;AAED,SACC,cAAC,WAAD;AACC,IAAA,KAAK,EAAGd,KADT;AAEC,IAAA,EAAE,EAAGS,EAFN;AAGC,IAAA,mBAAmB,EAAGJ,mBAHvB;AAIC,IAAA,IAAI,EAAGF,IAJR;AAKC,IAAA,SAAS,EAAGR,UAAU,CAAEM,SAAF,EAAa,0BAAb;AALvB,KAOGK,OAAO,CAACS,GAAR,CAAa,CAAEC,MAAF,EAAUC,KAAV,KACd;AACC,IAAA,GAAG,EAAI,GAAGR,EAAI,IAAIQ,KAAO,EAD1B;AAEC,IAAA,SAAS,EAAC;AAFX,KAIC;AACC,IAAA,EAAE,EAAI,GAAGR,EAAI,IAAIQ,KAAO,EADzB;AAEC,IAAA,SAAS,EAAC,iCAFX;AAGC,IAAA,IAAI,EAAC,OAHN;AAIC,IAAA,IAAI,EAAGR,EAJR;AAKC,IAAA,KAAK,EAAGO,MAAM,CAACH,KALhB;AAMC,IAAA,QAAQ,EAAGH,aANZ;AAOC,IAAA,OAAO,EAAGM,MAAM,CAACH,KAAP,KAAiBX,QAP5B;AAQC,wBACC,CAAC,CAAEC,IAAH,GAAW,GAAGM,EAAI,QAAlB,GAA4BS;AAT9B,KAWMX,eAXN,EAJD,EAiBC;AAAO,IAAA,OAAO,EAAI,GAAGE,EAAI,IAAIQ,KAAO;AAApC,KACGD,MAAM,CAAChB,KADV,CAjBD,CADC,CAPH,CADD;AAiCA;AAED,eAAeF,YAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { ChangeEvent } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport type { WordPressComponentProps } from '../ui/context';\nimport type { RadioControlProps } from './types';\n\n/**\n * Render a user interface to select the user type using radio inputs.\n *\n * ```jsx\n * import { RadioControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyRadioControl = () => {\n * const [ option, setOption ] = useState( 'a' );\n *\n * return (\n * <RadioControl\n * label=\"User type\"\n * help=\"The type of the current user\"\n * selected={ option }\n * options={ [\n * { label: 'Author', value: 'a' },\n * { label: 'Editor', value: 'e' },\n * ] }\n * onChange={ ( value ) => setOption( value ) }\n * />\n * );\n * };\n * ```\n */\nexport function RadioControl(\n\t// ref is omitted until we have `WordPressComponentPropsWithoutRef` or add\n\t// ref forwarding to RadioControl.\n\tprops: Omit<\n\t\tWordPressComponentProps< RadioControlProps, 'input', false >,\n\t\t'ref'\n\t>\n) {\n\tconst {\n\t\tlabel,\n\t\tclassName,\n\t\tselected,\n\t\thelp,\n\t\tonChange,\n\t\thideLabelFromVision,\n\t\toptions = [],\n\t\t...additionalProps\n\t} = props;\n\tconst instanceId = useInstanceId( RadioControl );\n\tconst id = `inspector-radio-control-${ instanceId }`;\n\tconst onChangeValue = ( event: ChangeEvent< HTMLInputElement > ) =>\n\t\tonChange( event.target.value );\n\n\tif ( ! options?.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BaseControl\n\t\t\tlabel={ label }\n\t\t\tid={ id }\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\thelp={ help }\n\t\t\tclassName={ classnames( className, 'components-radio-control' ) }\n\t\t>\n\t\t\t{ options.map( ( option, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ `${ id }-${ index }` }\n\t\t\t\t\tclassName=\"components-radio-control__option\"\n\t\t\t\t>\n\t\t\t\t\t<input\n\t\t\t\t\t\tid={ `${ id }-${ index }` }\n\t\t\t\t\t\tclassName=\"components-radio-control__input\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tname={ id }\n\t\t\t\t\t\tvalue={ option.value }\n\t\t\t\t\t\tonChange={ onChangeValue }\n\t\t\t\t\t\tchecked={ option.value === selected }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t!! help ? `${ id }__help` : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...additionalProps }\n\t\t\t\t\t/>\n\t\t\t\t\t<label htmlFor={ `${ id }-${ index }` }>\n\t\t\t\t\t\t{ option.label }\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t</BaseControl>\n\t);\n}\n\nexport default RadioControl;\n"]}
|
|
@@ -33,6 +33,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
|
|
|
33
33
|
var _inputRef$current;
|
|
34
34
|
|
|
35
35
|
const {
|
|
36
|
+
__nextHasNoMarginBottom = false,
|
|
36
37
|
afterIcon,
|
|
37
38
|
allowReset = false,
|
|
38
39
|
beforeIcon,
|
|
@@ -178,6 +179,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
|
|
|
178
179
|
[isRTL() ? 'right' : 'left']: fillValueOffset
|
|
179
180
|
};
|
|
180
181
|
return createElement(BaseControl, {
|
|
182
|
+
__nextHasNoMarginBottom: __nextHasNoMarginBottom,
|
|
181
183
|
className: classes,
|
|
182
184
|
label: label,
|
|
183
185
|
hideLabelFromVision: hideLabelFromVision,
|
|
@@ -188,6 +190,7 @@ function UnforwardedRangeControl(props, forwardedRef) {
|
|
|
188
190
|
}, beforeIcon && createElement(BeforeIconWrapper, null, createElement(Icon, {
|
|
189
191
|
icon: beforeIcon
|
|
190
192
|
})), createElement(Wrapper, {
|
|
193
|
+
__nextHasNoMarginBottom: __nextHasNoMarginBottom,
|
|
191
194
|
className: wrapperClasses,
|
|
192
195
|
color: colorProp,
|
|
193
196
|
marks: !!marks
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/range-control/index.tsx"],"names":["classnames","__","isRTL","useRef","useState","forwardRef","useInstanceId","useMergeRefs","BaseControl","Button","Icon","COLORS","floatClamp","useControlledRangeValue","clamp","InputRange","RangeRail","SimpleTooltip","ActionRightWrapper","AfterIconWrapper","BeforeIconWrapper","InputNumber","Root","Track","ThumbWrapper","Thumb","Wrapper","noop","UnforwardedRangeControl","props","forwardedRef","afterIcon","allowReset","beforeIcon","className","color","colorProp","ui","theme","currentInput","disabled","help","hideLabelFromVision","initialPosition","isShiftStepEnabled","label","marks","max","min","onBlur","onChange","onFocus","onMouseLeave","onMouseMove","railColor","renderTooltipContent","v","resetFallbackValue","shiftStep","showTooltip","showTooltipProp","step","trackColor","value","valueProp","withInputField","otherProps","setValue","initial","isResetPendent","hasTooltip","hasInputField","setShowTooltip","isFocused","setIsFocused","inputRef","isCurrentlyFocused","current","matches","isThumbFocused","isValueReset","currentValue","undefined","inputSliderValue","rangeFillValue","fillValue","fillValueOffset","classes","wrapperClasses","id","describedBy","enableTooltip","Number","isFinite","handleOnRangeChange","event","nextValue","parseFloat","target","handleOnChange","next","isNaN","handleOnInputNumberBlur","handleOnReset","resetValue","onChangeResetValue","handleShowTooltip","handleHideTooltip","handleOnBlur","handleOnFocus","offsetStyle","width","RangeControl"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;;AAGA;AACA;AACA;AACA,SAASC,EAAT,EAAaC,KAAb,QAA0B,iBAA1B;AACA,SAASC,MAAT,EAAiBC,QAAjB,EAA2BC,UAA3B,QAA6C,oBAA7C;AACA,SAASC,aAAT,EAAwBC,YAAxB,QAA4C,oBAA5C;AAEA;AACA;AACA;;AACA,OAAOC,WAAP,MAAwB,iBAAxB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,IAAP,MAAiB,SAAjB;AACA,SAASC,MAAT,QAAuB,UAAvB;AACA,SAASC,UAAT,EAAqBC,uBAArB,QAAoD,SAApD;AACA,SAASC,KAAT,QAAsB,eAAtB;AACA,OAAOC,UAAP,MAAuB,eAAvB;AACA,OAAOC,SAAP,MAAsB,QAAtB;AACA,OAAOC,aAAP,MAA0B,WAA1B;AACA,SACCC,kBADD,EAECC,gBAFD,EAGCC,iBAHD,EAICC,WAJD,EAKCC,IALD,EAMCC,KAND,EAOCC,YAPD,EAQCC,KARD,EASCC,OATD,QAUO,+BAVP;;AAeA,MAAMC,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,SAASC,uBAAT,CACCC,KADD,EAMCC,YAND,EAOE;AAAA;;AACD,QAAM;AACLC,IAAAA,SADK;AAELC,IAAAA,UAAU,GAAG,KAFR;AAGLC,IAAAA,UAHK;AAILC,IAAAA,SAJK;AAKLC,IAAAA,KAAK,EAAEC,SAAS,GAAGzB,MAAM,CAAC0B,EAAP,CAAUC,KALxB;AAMLC,IAAAA,YANK;AAOLC,IAAAA,QAAQ,GAAG,KAPN;AAQLC,IAAAA,IARK;AASLC,IAAAA,mBAAmB,GAAG,KATjB;AAULC,IAAAA,eAVK;AAWLC,IAAAA,kBAAkB,GAAG,IAXhB;AAYLC,IAAAA,KAZK;AAaLC,IAAAA,KAAK,GAAG,KAbH;AAcLC,IAAAA,GAAG,GAAG,GAdD;AAeLC,IAAAA,GAAG,GAAG,CAfD;AAgBLC,IAAAA,MAAM,GAAGtB,IAhBJ;AAiBLuB,IAAAA,QAAQ,GAAGvB,IAjBN;AAkBLwB,IAAAA,OAAO,GAAGxB,IAlBL;AAmBLyB,IAAAA,YAAY,GAAGzB,IAnBV;AAoBL0B,IAAAA,WAAW,GAAG1B,IApBT;AAqBL2B,IAAAA,SArBK;AAsBLC,IAAAA,oBAAoB,GAAKC,CAAF,IAASA,CAtB3B;AAuBLC,IAAAA,kBAvBK;AAwBLC,IAAAA,SAAS,GAAG,EAxBP;AAyBLC,IAAAA,WAAW,EAAEC,eAzBR;AA0BLC,IAAAA,IAAI,GAAG,CA1BF;AA2BLC,IAAAA,UA3BK;AA4BLC,IAAAA,KAAK,EAAEC,SA5BF;AA6BLC,IAAAA,cAAc,GAAG,IA7BZ;AA8BL,OAAGC;AA9BE,MA+BFrC,KA/BJ;AAiCA,QAAM,CAAEkC,KAAF,EAASI,QAAT,IAAsBtD,uBAAuB,CAAE;AACpDmC,IAAAA,GADoD;AAEpDD,IAAAA,GAFoD;AAGpDgB,IAAAA,KAAK,EAAEC,SAAF,aAAEA,SAAF,cAAEA,SAAF,GAAe,IAHgC;AAIpDI,IAAAA,OAAO,EAAEzB;AAJ2C,GAAF,CAAnD;AAMA,QAAM0B,cAAc,GAAGlE,MAAM,CAAE,KAAF,CAA7B;AAEA,MAAImE,UAAU,GAAGV,eAAjB;AACA,MAAIW,aAAa,GAAGN,cAApB;;AAEA,MAAKJ,IAAI,KAAK,KAAd,EAAsB;AACrB;AACA;AACAS,IAAAA,UAAU,GAAG,KAAb;AACAC,IAAAA,aAAa,GAAG,KAAhB;AACA;;AAED,QAAM,CAAEZ,WAAF,EAAea,cAAf,IAAkCpE,QAAQ,CAAEkE,UAAF,CAAhD;AACA,QAAM,CAAEG,SAAF,EAAaC,YAAb,IAA8BtE,QAAQ,CAAE,KAAF,CAA5C;AAEA,QAAMuE,QAAQ,GAAGxE,MAAM,EAAvB;AACA,QAAMyE,kBAAkB,wBAAGD,QAAQ,CAACE,OAAZ,sDAAG,kBAAkBC,OAAlB,CAA2B,QAA3B,CAA3B;AACA,QAAMC,cAAc,GAAG,CAAEvC,QAAF,IAAciC,SAArC;AAEA,QAAMO,YAAY,GAAGjB,KAAK,KAAK,IAA/B;AACA,QAAMkB,YAAY,GAAGlB,KAAK,KAAKmB,SAAV,GAAsBnB,KAAtB,GAA8BxB,YAAnD;AAEA,QAAM4C,gBAAgB,GAAGH,YAAY,GAAG,EAAH,GAAQC,YAA7C;AACA,QAAMG,cAAc,GAAGJ,YAAY,GAAG,CAAEjC,GAAG,GAAGC,GAAR,IAAgB,CAAhB,GAAoBA,GAAvB,GAA6Be,KAAhE;AAEA,QAAMsB,SAAS,GAAGL,YAAY,GAC3B,EAD2B,GAEzB,CAAEjB,KAAK,GAAGf,GAAV,KAAoBD,GAAG,GAAGC,GAA1B,CAAF,GAAsC,GAFzC;AAGA,QAAMsC,eAAe,GAAI,GAAGxE,KAAK,CAAEuE,SAAF,EAAa,CAAb,EAAgB,GAAhB,CAAuB,GAAxD;AAEA,QAAME,OAAO,GAAGvF,UAAU,CAAE,0BAAF,EAA8BkC,SAA9B,CAA1B;AAEA,QAAMsD,cAAc,GAAGxF,UAAU,CAChC,mCADgC,EAEhC,CAAC,CAAE8C,KAAH,IAAY,WAFoB,CAAjC;AAKA,QAAM2C,EAAE,GAAGnF,aAAa,CACvBsB,uBADuB,EAEvB,yBAFuB,CAAxB;AAIA,QAAM8D,WAAW,GAAG,CAAC,CAAEjD,IAAH,GAAW,GAAGgD,EAAI,QAAlB,GAA4BP,SAAhD;AACA,QAAMS,aAAa,GAAGrB,UAAU,KAAK,KAAf,IAAwBsB,MAAM,CAACC,QAAP,CAAiB9B,KAAjB,CAA9C;;AAEA,QAAM+B,mBAAmB,GAAKC,KAAF,IAA8C;AACzE,UAAMC,SAAS,GAAGC,UAAU,CAAEF,KAAK,CAACG,MAAN,CAAanC,KAAf,CAA5B;AACAI,IAAAA,QAAQ,CAAE6B,SAAF,CAAR;AACA9C,IAAAA,QAAQ,CAAE8C,SAAF,CAAR;AACA,GAJD;;AAMA,QAAMG,cAAc,GAAKC,IAAF,IAAoB;AAC1C,QAAIJ,SAAS,GAAGC,UAAU,CAAEG,IAAF,CAA1B;AACAjC,IAAAA,QAAQ,CAAE6B,SAAF,CAAR;AAEA;AACF;AACA;AACA;;AACE,QAAK,CAAEK,KAAK,CAAEL,SAAF,CAAZ,EAA4B;AAC3B,UAAKA,SAAS,GAAGhD,GAAZ,IAAmBgD,SAAS,GAAGjD,GAApC,EAA0C;AACzCiD,QAAAA,SAAS,GAAGpF,UAAU,CAAEoF,SAAF,EAAahD,GAAb,EAAkBD,GAAlB,CAAtB;AACA;;AAEDG,MAAAA,QAAQ,CAAE8C,SAAF,CAAR;AACA3B,MAAAA,cAAc,CAACQ,OAAf,GAAyB,KAAzB;AACA,KAPD,MAOO,IAAK7C,UAAL,EAAkB;AACxBqC,MAAAA,cAAc,CAACQ,OAAf,GAAyB,IAAzB;AACA;AACD,GAlBD;;AAoBA,QAAMyB,uBAAuB,GAAG,MAAM;AACrC,QAAKjC,cAAc,CAACQ,OAApB,EAA8B;AAC7B0B,MAAAA,aAAa;AACblC,MAAAA,cAAc,CAACQ,OAAf,GAAyB,KAAzB;AACA;AACD,GALD;;AAOA,QAAM0B,aAAa,GAAG,MAAM;AAC3B,QAAIC,UAAyB,GAAGP,UAAU,CAAG,GAAGxC,kBAAoB,EAA1B,CAA1C;AACA,QAAIgD,kBAAsC,GAAGD,UAA7C;;AAEA,QAAKH,KAAK,CAAEG,UAAF,CAAV,EAA2B;AAC1BA,MAAAA,UAAU,GAAG,IAAb;AACAC,MAAAA,kBAAkB,GAAGvB,SAArB;AACA;;AAEDf,IAAAA,QAAQ,CAAEqC,UAAF,CAAR;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACEtD,IAAAA,QAAQ,CAAEuD,kBAAF,CAAR;AACA,GAzBD;;AA2BA,QAAMC,iBAAiB,GAAG,MAAMlC,cAAc,CAAE,IAAF,CAA9C;;AACA,QAAMmC,iBAAiB,GAAG,MAAMnC,cAAc,CAAE,KAAF,CAA9C;;AAEA,QAAMoC,YAAY,GAAKb,KAAF,IAA6C;AACjE9C,IAAAA,MAAM,CAAE8C,KAAF,CAAN;AACArB,IAAAA,YAAY,CAAE,KAAF,CAAZ;AACAiC,IAAAA,iBAAiB;AACjB,GAJD;;AAMA,QAAME,aAAa,GAAKd,KAAF,IAA6C;AAClE5C,IAAAA,OAAO,CAAE4C,KAAF,CAAP;AACArB,IAAAA,YAAY,CAAE,IAAF,CAAZ;AACAgC,IAAAA,iBAAiB;AACjB,GAJD;;AAMA,QAAMI,WAAW,GAAG;AACnB,KAAE5G,KAAK,KAAK,OAAL,GAAe,MAAtB,GAAgCoF;AADb,GAApB;AAIA,SACC,cAAC,WAAD;AACC,IAAA,SAAS,EAAGC,OADb;AAEC,IAAA,KAAK,EAAG1C,KAFT;AAGC,IAAA,mBAAmB,EAAGH,mBAHvB;AAIC,IAAA,EAAE,EAAI,GAAG+C,EAAI,EAJd;AAKC,IAAA,IAAI,EAAGhD;AALR,KAOC,cAAC,IAAD;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGR,UAAU,IACX,cAAC,iBAAD,QACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGA;AAAb,IADD,CAFF,EAMC,cAAC,OAAD;AACC,IAAA,SAAS,EAAGuD,cADb;AAEC,IAAA,KAAK,EAAGpD,SAFT;AAGC,IAAA,KAAK,EAAG,CAAC,CAAEU;AAHZ,KAKC,cAAC,UAAD,eACMoB,UADN;AAEC,IAAA,SAAS,EAAC,kCAFX;AAGC,IAAA,WAAW,EAAGwB,WAHf;AAIC,IAAA,QAAQ,EAAGlD,QAJZ;AAKC,IAAA,EAAE,EAAI,GAAGiD,EAAI,EALd;AAMC,IAAA,KAAK,EAAG5C,KANT;AAOC,IAAA,GAAG,EAAGE,GAPP;AAQC,IAAA,GAAG,EAAGC,GARP;AASC,IAAA,MAAM,EAAG4D,YATV;AAUC,IAAA,QAAQ,EAAGd,mBAVZ;AAWC,IAAA,OAAO,EAAGe,aAXX;AAYC,IAAA,WAAW,EAAGxD,WAZf;AAaC,IAAA,YAAY,EAAGD,YAbhB;AAcC,IAAA,GAAG,EAAG7C,YAAY,CAAE,CAAEoE,QAAF,EAAY7C,YAAZ,CAAF,CAdnB;AAeC,IAAA,IAAI,EAAG+B,IAfR;AAgBC,IAAA,KAAK,EAAGsB,gBAAH,aAAGA,gBAAH,cAAGA,gBAAH,GAAuBD;AAhB7B,KALD,EAuBC,cAAC,SAAD;AACC,mBAAc,IADf;AAEC,IAAA,QAAQ,EAAG1C,QAFZ;AAGC,IAAA,KAAK,EAAGM,KAHT;AAIC,IAAA,GAAG,EAAGC,GAJP;AAKC,IAAA,GAAG,EAAGC,GALP;AAMC,IAAA,SAAS,EAAGM,SANb;AAOC,IAAA,IAAI,EAAGO,IAPR;AAQC,IAAA,KAAK,EAAGuB;AART,IAvBD,EAiCC,cAAC,KAAD;AACC,mBAAc,IADf;AAEC,IAAA,SAAS,EAAC,iCAFX;AAGC,IAAA,QAAQ,EAAG5C,QAHZ;AAIC,IAAA,KAAK,EAAG;AAAEuE,MAAAA,KAAK,EAAEzB;AAAT,KAJT;AAKC,IAAA,UAAU,EAAGxB;AALd,IAjCD,EAwCC,cAAC,YAAD;AAAc,IAAA,KAAK,EAAGgD,WAAtB;AAAoC,IAAA,QAAQ,EAAGtE;AAA/C,KACC,cAAC,KAAD;AACC,mBAAc,IADf;AAEC,IAAA,SAAS,EAAGuC,cAFb;AAGC,IAAA,QAAQ,EAAGvC;AAHZ,IADD,CAxCD,EA+CGmD,aAAa,IACd,cAAC,aAAD;AACC,IAAA,SAAS,EAAC,mCADX;AAEC,IAAA,QAAQ,EAAGhB,QAFZ;AAGC,IAAA,eAAe,EAAC,QAHjB;AAIC,IAAA,oBAAoB,EAAGpB,oBAJxB;AAKC,IAAA,IAAI,EAAGqB,kBAAkB,IAAIjB,WAL9B;AAMC,IAAA,KAAK,EAAGmD,WANT;AAOC,IAAA,KAAK,EAAG/C;AAPT,IAhDF,CAND,EAiEGhC,SAAS,IACV,cAAC,gBAAD,QACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGA;AAAb,IADD,CAlEF,EAsEGwC,aAAa,IACd,cAAC,WAAD;AACC,kBAAa1B,KADd;AAEC,IAAA,SAAS,EAAC,kCAFX;AAGC,IAAA,QAAQ,EAAGL,QAHZ;AAIC,IAAA,SAAS,EAAC,SAJX;AAKC,IAAA,kBAAkB,EAAGI,kBALtB;AAMC,IAAA,GAAG,EAAGG,GANP;AAOC,IAAA,GAAG,EAAGC,GAPP;AAQC,IAAA,MAAM,EAAGsD,uBARV;AASC,IAAA,QAAQ,EAAGH,cATZ;AAUC,IAAA,SAAS,EAAGzC,SAVb;AAWC,IAAA,IAAI,EAAGG,IAXR;AAYC,IAAA,KAAK,EAAGsB;AAZT,IAvEF,EAsFGnD,UAAU,IACX,cAAC,kBAAD,QACC,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,iCADX;AAEC,IAAA,QAAQ,EAAGQ,QAAQ,IAAIuB,KAAK,KAAKmB,SAFlC;AAGC,IAAA,OAAO,EAAC,WAHT;AAIC,IAAA,OAAO,MAJR;AAKC,IAAA,OAAO,EAAGqB;AALX,KAOGtG,EAAE,CAAE,OAAF,CAPL,CADD,CAvFF,CAPD,CADD;AA8GA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAM+G,YAAY,GAAG3G,UAAU,CAAEuB,uBAAF,CAA/B;AAEP,eAAeoF,YAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { ChangeEvent, FocusEvent, ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useRef, useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Button from '../button';\nimport Icon from '../icon';\nimport { COLORS } from '../utils';\nimport { floatClamp, useControlledRangeValue } from './utils';\nimport { clamp } from '../utils/math';\nimport InputRange from './input-range';\nimport RangeRail from './rail';\nimport SimpleTooltip from './tooltip';\nimport {\n\tActionRightWrapper,\n\tAfterIconWrapper,\n\tBeforeIconWrapper,\n\tInputNumber,\n\tRoot,\n\tTrack,\n\tThumbWrapper,\n\tThumb,\n\tWrapper,\n} from './styles/range-control-styles';\n\nimport type { RangeControlProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst noop = () => {};\n\nfunction UnforwardedRangeControl< IconProps = unknown >(\n\tprops: WordPressComponentProps<\n\t\tRangeControlProps< IconProps >,\n\t\t'input',\n\t\tfalse\n\t>,\n\tforwardedRef: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\tafterIcon,\n\t\tallowReset = false,\n\t\tbeforeIcon,\n\t\tclassName,\n\t\tcolor: colorProp = COLORS.ui.theme,\n\t\tcurrentInput,\n\t\tdisabled = false,\n\t\thelp,\n\t\thideLabelFromVision = false,\n\t\tinitialPosition,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmarks = false,\n\t\tmax = 100,\n\t\tmin = 0,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonFocus = noop,\n\t\tonMouseLeave = noop,\n\t\tonMouseMove = noop,\n\t\trailColor,\n\t\trenderTooltipContent = ( v ) => v,\n\t\tresetFallbackValue,\n\t\tshiftStep = 10,\n\t\tshowTooltip: showTooltipProp,\n\t\tstep = 1,\n\t\ttrackColor,\n\t\tvalue: valueProp,\n\t\twithInputField = true,\n\t\t...otherProps\n\t} = props;\n\n\tconst [ value, setValue ] = useControlledRangeValue( {\n\t\tmin,\n\t\tmax,\n\t\tvalue: valueProp ?? null,\n\t\tinitial: initialPosition,\n\t} );\n\tconst isResetPendent = useRef( false );\n\n\tlet hasTooltip = showTooltipProp;\n\tlet hasInputField = withInputField;\n\n\tif ( step === 'any' ) {\n\t\t// The tooltip and number input field are hidden when the step is \"any\"\n\t\t// because the decimals get too lengthy to fit well.\n\t\thasTooltip = false;\n\t\thasInputField = false;\n\t}\n\n\tconst [ showTooltip, setShowTooltip ] = useState( hasTooltip );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tconst inputRef = useRef< HTMLInputElement >();\n\tconst isCurrentlyFocused = inputRef.current?.matches( ':focus' );\n\tconst isThumbFocused = ! disabled && isFocused;\n\n\tconst isValueReset = value === null;\n\tconst currentValue = value !== undefined ? value : currentInput;\n\n\tconst inputSliderValue = isValueReset ? '' : currentValue;\n\tconst rangeFillValue = isValueReset ? ( max - min ) / 2 + min : value;\n\n\tconst fillValue = isValueReset\n\t\t? 50\n\t\t: ( ( value - min ) / ( max - min ) ) * 100;\n\tconst fillValueOffset = `${ clamp( fillValue, 0, 100 ) }%`;\n\n\tconst classes = classnames( 'components-range-control', className );\n\n\tconst wrapperClasses = classnames(\n\t\t'components-range-control__wrapper',\n\t\t!! marks && 'is-marked'\n\t);\n\n\tconst id = useInstanceId(\n\t\tUnforwardedRangeControl,\n\t\t'inspector-range-control'\n\t);\n\tconst describedBy = !! help ? `${ id }__help` : undefined;\n\tconst enableTooltip = hasTooltip !== false && Number.isFinite( value );\n\n\tconst handleOnRangeChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = parseFloat( event.target.value );\n\t\tsetValue( nextValue );\n\t\tonChange( nextValue );\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tlet nextValue = parseFloat( next );\n\t\tsetValue( nextValue );\n\n\t\t/*\n\t\t * Calls onChange only when nextValue is numeric\n\t\t * otherwise may queue a reset for the blur event.\n\t\t */\n\t\tif ( ! isNaN( nextValue ) ) {\n\t\t\tif ( nextValue < min || nextValue > max ) {\n\t\t\t\tnextValue = floatClamp( nextValue, min, max ) as number;\n\t\t\t}\n\n\t\t\tonChange( nextValue );\n\t\t\tisResetPendent.current = false;\n\t\t} else if ( allowReset ) {\n\t\t\tisResetPendent.current = true;\n\t\t}\n\t};\n\n\tconst handleOnInputNumberBlur = () => {\n\t\tif ( isResetPendent.current ) {\n\t\t\thandleOnReset();\n\t\t\tisResetPendent.current = false;\n\t\t}\n\t};\n\n\tconst handleOnReset = () => {\n\t\tlet resetValue: number | null = parseFloat( `${ resetFallbackValue }` );\n\t\tlet onChangeResetValue: number | undefined = resetValue;\n\n\t\tif ( isNaN( resetValue ) ) {\n\t\t\tresetValue = null;\n\t\t\tonChangeResetValue = undefined;\n\t\t}\n\n\t\tsetValue( resetValue );\n\n\t\t/**\n\t\t * Previously, this callback would always receive undefined as\n\t\t * an argument. This behavior is unexpected, specifically\n\t\t * when resetFallbackValue is defined.\n\t\t *\n\t\t * The value of undefined is not ideal. Passing it through\n\t\t * to internal <input /> elements would change it from a\n\t\t * controlled component to an uncontrolled component.\n\t\t *\n\t\t * For now, to minimize unexpected regressions, we're going to\n\t\t * preserve the undefined callback argument, except when a\n\t\t * resetFallbackValue is defined.\n\t\t */\n\t\tonChange( onChangeResetValue );\n\t};\n\n\tconst handleShowTooltip = () => setShowTooltip( true );\n\tconst handleHideTooltip = () => setShowTooltip( false );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused( false );\n\t\thandleHideTooltip();\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused( true );\n\t\thandleShowTooltip();\n\t};\n\n\tconst offsetStyle = {\n\t\t[ isRTL() ? 'right' : 'left' ]: fillValueOffset,\n\t};\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName={ classes }\n\t\t\tlabel={ label }\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\tid={ `${ id }` }\n\t\t\thelp={ help }\n\t\t>\n\t\t\t<Root className=\"components-range-control__root\">\n\t\t\t\t{ beforeIcon && (\n\t\t\t\t\t<BeforeIconWrapper>\n\t\t\t\t\t\t<Icon icon={ beforeIcon } />\n\t\t\t\t\t</BeforeIconWrapper>\n\t\t\t\t) }\n\t\t\t\t<Wrapper\n\t\t\t\t\tclassName={ wrapperClasses }\n\t\t\t\t\tcolor={ colorProp }\n\t\t\t\t\tmarks={ !! marks }\n\t\t\t\t>\n\t\t\t\t\t<InputRange\n\t\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t\tclassName=\"components-range-control__slider\"\n\t\t\t\t\t\tdescribedBy={ describedBy }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tid={ `${ id }` }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\t\tonChange={ handleOnRangeChange }\n\t\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\t\tonMouseMove={ onMouseMove }\n\t\t\t\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\t\t\t\tref={ useMergeRefs( [ inputRef, forwardedRef ] ) }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue ?? undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeRail\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tmarks={ marks }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\trailColor={ railColor }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ rangeFillValue }\n\t\t\t\t\t/>\n\t\t\t\t\t<Track\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tclassName=\"components-range-control__track\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tstyle={ { width: fillValueOffset } }\n\t\t\t\t\t\ttrackColor={ trackColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ThumbWrapper style={ offsetStyle } disabled={ disabled }>\n\t\t\t\t\t\t<Thumb\n\t\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\t\tisFocused={ isThumbFocused }\n\t\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ThumbWrapper>\n\t\t\t\t\t{ enableTooltip && (\n\t\t\t\t\t\t<SimpleTooltip\n\t\t\t\t\t\t\tclassName=\"components-range-control__tooltip\"\n\t\t\t\t\t\t\tinputRef={ inputRef }\n\t\t\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\t\t\trenderTooltipContent={ renderTooltipContent }\n\t\t\t\t\t\t\tshow={ isCurrentlyFocused || showTooltip }\n\t\t\t\t\t\t\tstyle={ offsetStyle }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Wrapper>\n\t\t\t\t{ afterIcon && (\n\t\t\t\t\t<AfterIconWrapper>\n\t\t\t\t\t\t<Icon icon={ afterIcon } />\n\t\t\t\t\t</AfterIconWrapper>\n\t\t\t\t) }\n\t\t\t\t{ hasInputField && (\n\t\t\t\t\t<InputNumber\n\t\t\t\t\t\taria-label={ label }\n\t\t\t\t\t\tclassName=\"components-range-control__number\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tinputMode=\"decimal\"\n\t\t\t\t\t\tisShiftStepEnabled={ isShiftStepEnabled }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnInputNumberBlur }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tshiftStep={ shiftStep }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowReset && (\n\t\t\t\t\t<ActionRightWrapper>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-range-control__reset\"\n\t\t\t\t\t\t\tdisabled={ disabled || value === undefined }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tonClick={ handleOnReset }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</ActionRightWrapper>\n\t\t\t\t) }\n\t\t\t</Root>\n\t\t</BaseControl>\n\t);\n}\n\n/**\n * RangeControls are used to make selections from a range of incremental values.\n *\n * ```jsx\n * import { RangeControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyRangeControl = () => {\n * const [ isChecked, setChecked ] = useState( true );\n * return (\n * <RangeControl\n * help=\"Please select how transparent you would like this.\"\n * initialPosition={50}\n * label=\"Opacity\"\n * max={100}\n * min={0}\n * onChange={() => {}}\n * />\n * );\n * };\n * ```\n */\nexport const RangeControl = forwardRef( UnforwardedRangeControl );\n\nexport default RangeControl;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/range-control/index.tsx"],"names":["classnames","__","isRTL","useRef","useState","forwardRef","useInstanceId","useMergeRefs","BaseControl","Button","Icon","COLORS","floatClamp","useControlledRangeValue","clamp","InputRange","RangeRail","SimpleTooltip","ActionRightWrapper","AfterIconWrapper","BeforeIconWrapper","InputNumber","Root","Track","ThumbWrapper","Thumb","Wrapper","noop","UnforwardedRangeControl","props","forwardedRef","__nextHasNoMarginBottom","afterIcon","allowReset","beforeIcon","className","color","colorProp","ui","theme","currentInput","disabled","help","hideLabelFromVision","initialPosition","isShiftStepEnabled","label","marks","max","min","onBlur","onChange","onFocus","onMouseLeave","onMouseMove","railColor","renderTooltipContent","v","resetFallbackValue","shiftStep","showTooltip","showTooltipProp","step","trackColor","value","valueProp","withInputField","otherProps","setValue","initial","isResetPendent","hasTooltip","hasInputField","setShowTooltip","isFocused","setIsFocused","inputRef","isCurrentlyFocused","current","matches","isThumbFocused","isValueReset","currentValue","undefined","inputSliderValue","rangeFillValue","fillValue","fillValueOffset","classes","wrapperClasses","id","describedBy","enableTooltip","Number","isFinite","handleOnRangeChange","event","nextValue","parseFloat","target","handleOnChange","next","isNaN","handleOnInputNumberBlur","handleOnReset","resetValue","onChangeResetValue","handleShowTooltip","handleHideTooltip","handleOnBlur","handleOnFocus","offsetStyle","width","RangeControl"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type { ChangeEvent, FocusEvent, ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport { useRef, useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BaseControl from '../base-control';\nimport Button from '../button';\nimport Icon from '../icon';\nimport { COLORS } from '../utils';\nimport { floatClamp, useControlledRangeValue } from './utils';\nimport { clamp } from '../utils/math';\nimport InputRange from './input-range';\nimport RangeRail from './rail';\nimport SimpleTooltip from './tooltip';\nimport {\n\tActionRightWrapper,\n\tAfterIconWrapper,\n\tBeforeIconWrapper,\n\tInputNumber,\n\tRoot,\n\tTrack,\n\tThumbWrapper,\n\tThumb,\n\tWrapper,\n} from './styles/range-control-styles';\n\nimport type { RangeControlProps } from './types';\nimport type { WordPressComponentProps } from '../ui/context';\n\nconst noop = () => {};\n\nfunction UnforwardedRangeControl< IconProps = unknown >(\n\tprops: WordPressComponentProps<\n\t\tRangeControlProps< IconProps >,\n\t\t'input',\n\t\tfalse\n\t>,\n\tforwardedRef: ForwardedRef< HTMLInputElement >\n) {\n\tconst {\n\t\t__nextHasNoMarginBottom = false,\n\t\tafterIcon,\n\t\tallowReset = false,\n\t\tbeforeIcon,\n\t\tclassName,\n\t\tcolor: colorProp = COLORS.ui.theme,\n\t\tcurrentInput,\n\t\tdisabled = false,\n\t\thelp,\n\t\thideLabelFromVision = false,\n\t\tinitialPosition,\n\t\tisShiftStepEnabled = true,\n\t\tlabel,\n\t\tmarks = false,\n\t\tmax = 100,\n\t\tmin = 0,\n\t\tonBlur = noop,\n\t\tonChange = noop,\n\t\tonFocus = noop,\n\t\tonMouseLeave = noop,\n\t\tonMouseMove = noop,\n\t\trailColor,\n\t\trenderTooltipContent = ( v ) => v,\n\t\tresetFallbackValue,\n\t\tshiftStep = 10,\n\t\tshowTooltip: showTooltipProp,\n\t\tstep = 1,\n\t\ttrackColor,\n\t\tvalue: valueProp,\n\t\twithInputField = true,\n\t\t...otherProps\n\t} = props;\n\n\tconst [ value, setValue ] = useControlledRangeValue( {\n\t\tmin,\n\t\tmax,\n\t\tvalue: valueProp ?? null,\n\t\tinitial: initialPosition,\n\t} );\n\tconst isResetPendent = useRef( false );\n\n\tlet hasTooltip = showTooltipProp;\n\tlet hasInputField = withInputField;\n\n\tif ( step === 'any' ) {\n\t\t// The tooltip and number input field are hidden when the step is \"any\"\n\t\t// because the decimals get too lengthy to fit well.\n\t\thasTooltip = false;\n\t\thasInputField = false;\n\t}\n\n\tconst [ showTooltip, setShowTooltip ] = useState( hasTooltip );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tconst inputRef = useRef< HTMLInputElement >();\n\tconst isCurrentlyFocused = inputRef.current?.matches( ':focus' );\n\tconst isThumbFocused = ! disabled && isFocused;\n\n\tconst isValueReset = value === null;\n\tconst currentValue = value !== undefined ? value : currentInput;\n\n\tconst inputSliderValue = isValueReset ? '' : currentValue;\n\tconst rangeFillValue = isValueReset ? ( max - min ) / 2 + min : value;\n\n\tconst fillValue = isValueReset\n\t\t? 50\n\t\t: ( ( value - min ) / ( max - min ) ) * 100;\n\tconst fillValueOffset = `${ clamp( fillValue, 0, 100 ) }%`;\n\n\tconst classes = classnames( 'components-range-control', className );\n\n\tconst wrapperClasses = classnames(\n\t\t'components-range-control__wrapper',\n\t\t!! marks && 'is-marked'\n\t);\n\n\tconst id = useInstanceId(\n\t\tUnforwardedRangeControl,\n\t\t'inspector-range-control'\n\t);\n\tconst describedBy = !! help ? `${ id }__help` : undefined;\n\tconst enableTooltip = hasTooltip !== false && Number.isFinite( value );\n\n\tconst handleOnRangeChange = ( event: ChangeEvent< HTMLInputElement > ) => {\n\t\tconst nextValue = parseFloat( event.target.value );\n\t\tsetValue( nextValue );\n\t\tonChange( nextValue );\n\t};\n\n\tconst handleOnChange = ( next: string ) => {\n\t\tlet nextValue = parseFloat( next );\n\t\tsetValue( nextValue );\n\n\t\t/*\n\t\t * Calls onChange only when nextValue is numeric\n\t\t * otherwise may queue a reset for the blur event.\n\t\t */\n\t\tif ( ! isNaN( nextValue ) ) {\n\t\t\tif ( nextValue < min || nextValue > max ) {\n\t\t\t\tnextValue = floatClamp( nextValue, min, max ) as number;\n\t\t\t}\n\n\t\t\tonChange( nextValue );\n\t\t\tisResetPendent.current = false;\n\t\t} else if ( allowReset ) {\n\t\t\tisResetPendent.current = true;\n\t\t}\n\t};\n\n\tconst handleOnInputNumberBlur = () => {\n\t\tif ( isResetPendent.current ) {\n\t\t\thandleOnReset();\n\t\t\tisResetPendent.current = false;\n\t\t}\n\t};\n\n\tconst handleOnReset = () => {\n\t\tlet resetValue: number | null = parseFloat( `${ resetFallbackValue }` );\n\t\tlet onChangeResetValue: number | undefined = resetValue;\n\n\t\tif ( isNaN( resetValue ) ) {\n\t\t\tresetValue = null;\n\t\t\tonChangeResetValue = undefined;\n\t\t}\n\n\t\tsetValue( resetValue );\n\n\t\t/**\n\t\t * Previously, this callback would always receive undefined as\n\t\t * an argument. This behavior is unexpected, specifically\n\t\t * when resetFallbackValue is defined.\n\t\t *\n\t\t * The value of undefined is not ideal. Passing it through\n\t\t * to internal <input /> elements would change it from a\n\t\t * controlled component to an uncontrolled component.\n\t\t *\n\t\t * For now, to minimize unexpected regressions, we're going to\n\t\t * preserve the undefined callback argument, except when a\n\t\t * resetFallbackValue is defined.\n\t\t */\n\t\tonChange( onChangeResetValue );\n\t};\n\n\tconst handleShowTooltip = () => setShowTooltip( true );\n\tconst handleHideTooltip = () => setShowTooltip( false );\n\n\tconst handleOnBlur = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonBlur( event );\n\t\tsetIsFocused( false );\n\t\thandleHideTooltip();\n\t};\n\n\tconst handleOnFocus = ( event: FocusEvent< HTMLInputElement > ) => {\n\t\tonFocus( event );\n\t\tsetIsFocused( true );\n\t\thandleShowTooltip();\n\t};\n\n\tconst offsetStyle = {\n\t\t[ isRTL() ? 'right' : 'left' ]: fillValueOffset,\n\t};\n\n\treturn (\n\t\t<BaseControl\n\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\tclassName={ classes }\n\t\t\tlabel={ label }\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\tid={ `${ id }` }\n\t\t\thelp={ help }\n\t\t>\n\t\t\t<Root className=\"components-range-control__root\">\n\t\t\t\t{ beforeIcon && (\n\t\t\t\t\t<BeforeIconWrapper>\n\t\t\t\t\t\t<Icon icon={ beforeIcon } />\n\t\t\t\t\t</BeforeIconWrapper>\n\t\t\t\t) }\n\t\t\t\t<Wrapper\n\t\t\t\t\t__nextHasNoMarginBottom={ __nextHasNoMarginBottom }\n\t\t\t\t\tclassName={ wrapperClasses }\n\t\t\t\t\tcolor={ colorProp }\n\t\t\t\t\tmarks={ !! marks }\n\t\t\t\t>\n\t\t\t\t\t<InputRange\n\t\t\t\t\t\t{ ...otherProps }\n\t\t\t\t\t\tclassName=\"components-range-control__slider\"\n\t\t\t\t\t\tdescribedBy={ describedBy }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tid={ `${ id }` }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\t\t\tonChange={ handleOnRangeChange }\n\t\t\t\t\t\tonFocus={ handleOnFocus }\n\t\t\t\t\t\tonMouseMove={ onMouseMove }\n\t\t\t\t\t\tonMouseLeave={ onMouseLeave }\n\t\t\t\t\t\tref={ useMergeRefs( [ inputRef, forwardedRef ] ) }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue ?? undefined }\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeRail\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tmarks={ marks }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\trailColor={ railColor }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ rangeFillValue }\n\t\t\t\t\t/>\n\t\t\t\t\t<Track\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\tclassName=\"components-range-control__track\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tstyle={ { width: fillValueOffset } }\n\t\t\t\t\t\ttrackColor={ trackColor }\n\t\t\t\t\t/>\n\t\t\t\t\t<ThumbWrapper style={ offsetStyle } disabled={ disabled }>\n\t\t\t\t\t\t<Thumb\n\t\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t\t\tisFocused={ isThumbFocused }\n\t\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ThumbWrapper>\n\t\t\t\t\t{ enableTooltip && (\n\t\t\t\t\t\t<SimpleTooltip\n\t\t\t\t\t\t\tclassName=\"components-range-control__tooltip\"\n\t\t\t\t\t\t\tinputRef={ inputRef }\n\t\t\t\t\t\t\ttooltipPosition=\"bottom\"\n\t\t\t\t\t\t\trenderTooltipContent={ renderTooltipContent }\n\t\t\t\t\t\t\tshow={ isCurrentlyFocused || showTooltip }\n\t\t\t\t\t\t\tstyle={ offsetStyle }\n\t\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</Wrapper>\n\t\t\t\t{ afterIcon && (\n\t\t\t\t\t<AfterIconWrapper>\n\t\t\t\t\t\t<Icon icon={ afterIcon } />\n\t\t\t\t\t</AfterIconWrapper>\n\t\t\t\t) }\n\t\t\t\t{ hasInputField && (\n\t\t\t\t\t<InputNumber\n\t\t\t\t\t\taria-label={ label }\n\t\t\t\t\t\tclassName=\"components-range-control__number\"\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tinputMode=\"decimal\"\n\t\t\t\t\t\tisShiftStepEnabled={ isShiftStepEnabled }\n\t\t\t\t\t\tmax={ max }\n\t\t\t\t\t\tmin={ min }\n\t\t\t\t\t\tonBlur={ handleOnInputNumberBlur }\n\t\t\t\t\t\tonChange={ handleOnChange }\n\t\t\t\t\t\tshiftStep={ shiftStep }\n\t\t\t\t\t\tstep={ step }\n\t\t\t\t\t\tvalue={ inputSliderValue }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowReset && (\n\t\t\t\t\t<ActionRightWrapper>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"components-range-control__reset\"\n\t\t\t\t\t\t\tdisabled={ disabled || value === undefined }\n\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tonClick={ handleOnReset }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</ActionRightWrapper>\n\t\t\t\t) }\n\t\t\t</Root>\n\t\t</BaseControl>\n\t);\n}\n\n/**\n * RangeControls are used to make selections from a range of incremental values.\n *\n * ```jsx\n * import { RangeControl } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyRangeControl = () => {\n * const [ isChecked, setChecked ] = useState( true );\n * return (\n * <RangeControl\n * help=\"Please select how transparent you would like this.\"\n * initialPosition={50}\n * label=\"Opacity\"\n * max={100}\n * min={0}\n * onChange={() => {}}\n * />\n * );\n * };\n * ```\n */\nexport const RangeControl = forwardRef( UnforwardedRangeControl );\n\nexport default RangeControl;\n"]}
|