@wordpress/components 24.0.0 → 25.1.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 +49 -0
- package/CONTRIBUTING.md +10 -0
- package/build/alignment-matrix-control/cell.js +5 -6
- package/build/alignment-matrix-control/cell.js.map +1 -1
- package/build/alignment-matrix-control/icon.js +8 -9
- package/build/alignment-matrix-control/icon.js.map +1 -1
- package/build/alignment-matrix-control/index.js +10 -11
- package/build/alignment-matrix-control/index.js.map +1 -1
- package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +6 -8
- package/build/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js +6 -8
- package/build/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build/alignment-matrix-control/utils.js +1 -2
- package/build/alignment-matrix-control/utils.js.map +1 -1
- package/build/angle-picker-control/angle-circle.js +6 -9
- package/build/angle-picker-control/angle-circle.js.map +1 -1
- package/build/angle-picker-control/styles/angle-picker-control-styles.js +3 -4
- package/build/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build/animate/index.js +5 -6
- package/build/animate/index.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.js +29 -33
- package/build/autocomplete/autocompleter-ui.js.map +1 -1
- package/build/autocomplete/autocompleter-ui.native.js +15 -22
- package/build/autocomplete/autocompleter-ui.native.js.map +1 -1
- package/build/autocomplete/background-view.android.js +3 -4
- package/build/autocomplete/background-view.android.js.map +1 -1
- package/build/autocomplete/background-view.ios.js +3 -4
- package/build/autocomplete/background-view.ios.js.map +1 -1
- package/build/autocomplete/get-default-use-items.js +1 -3
- package/build/autocomplete/get-default-use-items.js.map +1 -1
- package/build/autocomplete/index.js +18 -23
- package/build/autocomplete/index.js.map +1 -1
- package/build/base-control/index.js +14 -16
- package/build/base-control/index.js.map +1 -1
- package/build/base-control/index.native.js +5 -6
- package/build/base-control/index.native.js.map +1 -1
- package/build/base-control/styles/base-control-styles.js +6 -8
- package/build/base-control/styles/base-control-styles.js.map +1 -1
- package/build/border-box-control/border-box-control/hook.js +5 -5
- package/build/border-box-control/border-box-control/hook.js.map +1 -1
- package/build/border-box-control/border-box-control-split-controls/component.js +4 -4
- package/build/border-box-control/border-box-control-split-controls/component.js.map +1 -1
- package/build/border-box-control/styles.js +3 -3
- package/build/border-box-control/styles.js.map +1 -1
- package/build/border-box-control/utils.js +5 -8
- package/build/border-box-control/utils.js.map +1 -1
- package/build/border-control/border-control/component.js +1 -1
- package/build/border-control/border-control/component.js.map +1 -1
- package/build/border-control/border-control/hook.js +5 -5
- package/build/border-control/border-control/hook.js.map +1 -1
- package/build/border-control/border-control-dropdown/component.js +70 -67
- package/build/border-control/border-control-dropdown/component.js.map +1 -1
- package/build/border-control/border-control-dropdown/hook.js +4 -4
- package/build/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build/box-control/all-input-control.js +11 -12
- package/build/box-control/all-input-control.js.map +1 -1
- package/build/box-control/axial-input-controls.js +12 -14
- package/build/box-control/axial-input-controls.js.map +1 -1
- package/build/box-control/icon.js +7 -9
- package/build/box-control/icon.js.map +1 -1
- package/build/box-control/index.js +22 -24
- package/build/box-control/index.js.map +1 -1
- package/build/box-control/input-controls.js +15 -18
- package/build/box-control/input-controls.js.map +1 -1
- package/build/box-control/linked-button.js +4 -5
- package/build/box-control/linked-button.js.map +1 -1
- package/build/box-control/styles/box-control-icon-styles.js +3 -4
- package/build/box-control/styles/box-control-icon-styles.js.map +1 -1
- package/build/box-control/styles/box-control-styles.js +9 -12
- package/build/box-control/styles/box-control-styles.js.map +1 -1
- package/build/box-control/styles/box-control-visualizer-styles.js +7 -11
- package/build/box-control/styles/box-control-visualizer-styles.js.map +1 -1
- package/build/box-control/unit-control.js +18 -22
- package/build/box-control/unit-control.js.map +1 -1
- package/build/box-control/utils.js +4 -10
- package/build/box-control/utils.js.map +1 -1
- package/build/button/deprecated.js +7 -8
- package/build/button/deprecated.js.map +1 -1
- package/build/button/index.js +15 -16
- package/build/button/index.js.map +1 -1
- package/build/button/index.native.js +5 -7
- package/build/button/index.native.js.map +1 -1
- package/build/card/card/hook.js +5 -6
- package/build/card/card/hook.js.map +1 -1
- package/build/circular-option-picker/index.js +27 -33
- package/build/circular-option-picker/index.js.map +1 -1
- package/build/clipboard-button/index.js +8 -9
- package/build/clipboard-button/index.js.map +1 -1
- package/build/color-control/index.native.js +7 -8
- package/build/color-control/index.native.js.map +1 -1
- package/build/color-indicator/index.native.js +10 -12
- package/build/color-indicator/index.native.js.map +1 -1
- package/build/color-palette/index.js +63 -72
- package/build/color-palette/index.js.map +1 -1
- package/build/color-palette/index.native.js +33 -47
- package/build/color-palette/index.native.js.map +1 -1
- package/build/color-palette/utils.js +2 -5
- package/build/color-palette/utils.js.map +1 -1
- package/build/color-picker/color-input.js +6 -7
- package/build/color-picker/color-input.js.map +1 -1
- package/build/color-picker/hex-input.js +8 -12
- package/build/color-picker/hex-input.js.map +1 -1
- package/build/color-picker/hsl-input.js +5 -6
- package/build/color-picker/hsl-input.js.map +1 -1
- package/build/color-picker/index.native.js +23 -30
- package/build/color-picker/index.native.js.map +1 -1
- package/build/color-picker/input-with-slider.js +8 -10
- package/build/color-picker/input-with-slider.js.map +1 -1
- package/build/color-picker/picker.js +5 -6
- package/build/color-picker/picker.js.map +1 -1
- package/build/color-picker/rgb-input.js +5 -6
- package/build/color-picker/rgb-input.js.map +1 -1
- package/build/color-picker/styles.js +8 -8
- package/build/color-picker/styles.js.map +1 -1
- package/build/color-picker/use-deprecated-props.js +1 -3
- package/build/color-picker/use-deprecated-props.js.map +1 -1
- package/build/combobox-control/index.js +3 -6
- package/build/combobox-control/index.js.map +1 -1
- package/build/combobox-control/styles.js +3 -6
- package/build/combobox-control/styles.js.map +1 -1
- package/build/confirm-dialog/component.js +1 -1
- package/build/confirm-dialog/component.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/control-points.js +116 -131
- package/build/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/index.js +12 -14
- package/build/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build/custom-gradient-picker/gradient-bar/utils.js +4 -6
- package/build/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build/custom-gradient-picker/index.js +19 -22
- package/build/custom-gradient-picker/index.js.map +1 -1
- package/build/custom-gradient-picker/index.native.js +7 -8
- package/build/custom-gradient-picker/index.native.js.map +1 -1
- package/build/custom-gradient-picker/serializer.js +15 -21
- package/build/custom-gradient-picker/serializer.js.map +1 -1
- package/build/custom-gradient-picker/utils.js +6 -9
- package/build/custom-gradient-picker/utils.js.map +1 -1
- package/build/custom-select-control/index.js +14 -21
- package/build/custom-select-control/index.js.map +1 -1
- package/build/dashicon/index.js +7 -8
- package/build/dashicon/index.js.map +1 -1
- package/build/dashicon/index.native.js +4 -5
- package/build/dashicon/index.native.js.map +1 -1
- package/build/date-time/date/index.js +24 -26
- package/build/date-time/date/index.js.map +1 -1
- package/build/date-time/date-time/index.js +11 -93
- package/build/date-time/date-time/index.js.map +1 -1
- package/build/date-time/date-time/styles.js +4 -19
- package/build/date-time/date-time/styles.js.map +1 -1
- package/build/date-time/time/index.js +11 -14
- package/build/date-time/time/index.js.map +1 -1
- package/build/dimension-control/index.js +8 -11
- package/build/dimension-control/index.js.map +1 -1
- package/build/disabled/index.js +6 -7
- package/build/disabled/index.js.map +1 -1
- package/build/disabled/index.native.js +3 -4
- package/build/disabled/index.native.js.map +1 -1
- package/build/divider/styles.js +21 -29
- package/build/divider/styles.js.map +1 -1
- package/build/draggable/index.js +14 -19
- package/build/draggable/index.js.map +1 -1
- package/build/draggable/index.native.js +17 -19
- package/build/draggable/index.native.js.map +1 -1
- package/build/drop-zone/index.js +11 -16
- package/build/drop-zone/index.js.map +1 -1
- package/build/drop-zone/provider.js +3 -4
- package/build/drop-zone/provider.js.map +1 -1
- package/build/dropdown/index.js +19 -23
- package/build/dropdown/index.js.map +1 -1
- package/build/dropdown/styles.js +3 -4
- package/build/dropdown/styles.js.map +1 -1
- package/build/dropdown-menu/index.js +96 -26
- package/build/dropdown-menu/index.js.map +1 -1
- package/build/dropdown-menu/index.native.js +22 -30
- package/build/dropdown-menu/index.native.js.map +1 -1
- package/build/dropdown-menu/types.js +6 -0
- package/build/dropdown-menu/types.js.map +1 -0
- package/build/dropdown-menu-v2/index.js +230 -0
- package/build/dropdown-menu-v2/index.js.map +1 -0
- package/build/dropdown-menu-v2/styles.js +184 -0
- package/build/dropdown-menu-v2/styles.js.map +1 -0
- package/build/dropdown-menu-v2/types.js +6 -0
- package/build/dropdown-menu-v2/types.js.map +1 -0
- package/build/duotone-picker/color-list-picker/index.js +16 -18
- package/build/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build/duotone-picker/custom-duotone-bar.js +4 -5
- package/build/duotone-picker/custom-duotone-bar.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +15 -17
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/duotone-picker/duotone-swatch.js +3 -4
- package/build/duotone-picker/duotone-swatch.js.map +1 -1
- package/build/duotone-picker/utils.js +14 -27
- package/build/duotone-picker/utils.js.map +1 -1
- package/build/external-link/index.js +1 -1
- package/build/external-link/index.js.map +1 -1
- package/build/external-link/index.native.js +4 -5
- package/build/external-link/index.native.js.map +1 -1
- package/build/focal-point-picker/controls.js +11 -10
- package/build/focal-point-picker/controls.js.map +1 -1
- package/build/focal-point-picker/focal-point.js +5 -6
- package/build/focal-point-picker/focal-point.js.map +1 -1
- package/build/focal-point-picker/focal-point.native.js +5 -6
- package/build/focal-point-picker/focal-point.native.js.map +1 -1
- package/build/focal-point-picker/grid.js +4 -5
- package/build/focal-point-picker/grid.js.map +1 -1
- package/build/focal-point-picker/index.js +33 -37
- package/build/focal-point-picker/index.js.map +1 -1
- package/build/focal-point-picker/index.native.js +10 -12
- package/build/focal-point-picker/index.native.js.map +1 -1
- package/build/focal-point-picker/media.js +11 -13
- package/build/focal-point-picker/media.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-picker-style.js +9 -14
- package/build/focal-point-picker/styles/focal-point-picker-style.js.map +1 -1
- package/build/focal-point-picker/styles/focal-point-style.js +3 -6
- package/build/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build/focal-point-picker/tooltip/index.native.js +16 -21
- package/build/focal-point-picker/tooltip/index.native.js.map +1 -1
- package/build/focal-point-picker/utils.js +2 -4
- package/build/focal-point-picker/utils.js.map +1 -1
- package/build/focusable-iframe/index.js +4 -5
- package/build/focusable-iframe/index.js.map +1 -1
- package/build/font-size-picker/font-size-picker-select.js +3 -5
- package/build/font-size-picker/font-size-picker-select.js.map +1 -1
- package/build/font-size-picker/index.js +13 -19
- package/build/font-size-picker/index.js.map +1 -1
- package/build/font-size-picker/index.native.js +6 -7
- package/build/font-size-picker/index.native.js.map +1 -1
- package/build/font-size-picker/styles.js +24 -8
- package/build/font-size-picker/styles.js.map +1 -1
- package/build/footer-message-control/index.native.js +2 -3
- package/build/footer-message-control/index.native.js.map +1 -1
- package/build/form-file-upload/index.js +10 -13
- package/build/form-file-upload/index.js.map +1 -1
- package/build/form-token-field/index.js +4 -19
- package/build/form-token-field/index.js.map +1 -1
- package/build/form-token-field/styles.js +4 -7
- package/build/form-token-field/styles.js.map +1 -1
- package/build/form-token-field/suggestions-list.js +14 -15
- package/build/form-token-field/suggestions-list.js.map +1 -1
- package/build/form-token-field/token-input.js +2 -2
- package/build/form-token-field/token-input.js.map +1 -1
- package/build/form-token-field/token.js +14 -15
- package/build/form-token-field/token.js.map +1 -1
- package/build/gradient-picker/index.js +51 -58
- package/build/gradient-picker/index.js.map +1 -1
- package/build/guide/icons.js +13 -16
- package/build/guide/icons.js.map +1 -1
- package/build/guide/index.js +9 -12
- package/build/guide/index.js.map +1 -1
- package/build/guide/page-control.js +5 -6
- package/build/guide/page-control.js.map +1 -1
- package/build/h-stack/utils.js +1 -3
- package/build/h-stack/utils.js.map +1 -1
- package/build/higher-order/navigate-regions/index.js +16 -22
- package/build/higher-order/navigate-regions/index.js.map +1 -1
- package/build/higher-order/with-focus-outside/index.js +1 -1
- package/build/higher-order/with-focus-outside/index.js.map +1 -1
- package/build/higher-order/with-focus-outside/index.native.js +1 -1
- package/build/higher-order/with-focus-outside/index.native.js.map +1 -1
- package/build/higher-order/with-focus-return/index.js +13 -17
- package/build/higher-order/with-focus-return/index.js.map +1 -1
- package/build/icon/index.js +5 -7
- package/build/icon/index.js.map +1 -1
- package/build/index.native.js +0 -9
- package/build/index.native.js.map +1 -1
- package/build/input-control/backdrop.js +4 -5
- package/build/input-control/backdrop.js.map +1 -1
- package/build/input-control/index.js +22 -23
- package/build/input-control/index.js.map +1 -1
- package/build/input-control/input-base.js +16 -17
- package/build/input-control/input-base.js.map +1 -1
- package/build/input-control/input-field.js +26 -29
- package/build/input-control/input-field.js.map +1 -1
- package/build/input-control/label.js +6 -7
- package/build/input-control/label.js.map +1 -1
- package/build/input-control/reducer/reducer.js +2 -6
- package/build/input-control/reducer/reducer.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js +62 -64
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/input-control/utils.js +1 -3
- package/build/input-control/utils.js.map +1 -1
- package/build/keyboard-shortcuts/index.js +21 -26
- package/build/keyboard-shortcuts/index.js.map +1 -1
- package/build/menu-items-choice/index.js +6 -7
- package/build/menu-items-choice/index.js.map +1 -1
- package/build/mobile/audio-player/index.native.js +7 -8
- package/build/mobile/audio-player/index.native.js.map +1 -1
- package/build/mobile/badge/index.native.js +5 -6
- package/build/mobile/badge/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +10 -12
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +10 -13
- package/build/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build/mobile/bottom-sheet/button.native.js +18 -21
- package/build/mobile/bottom-sheet/button.native.js.map +1 -1
- package/build/mobile/bottom-sheet/cell.native.js +23 -11
- package/build/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/color-cell.native.js +3 -1
- package/build/mobile/bottom-sheet/color-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/footer-message-cell.native.js +4 -5
- package/build/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +4 -5
- package/build/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
- package/build/mobile/bottom-sheet/index.native.js +19 -30
- package/build/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/link-cell.native.js +6 -7
- package/build/mobile/bottom-sheet/link-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -6
- package/build/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/lock-icon/index.native.js +33 -0
- package/build/mobile/bottom-sheet/lock-icon/index.native.js.map +1 -0
- package/build/mobile/bottom-sheet/nav-bar/action-button.native.js +6 -7
- package/build/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
- package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js +3 -4
- package/build/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
- package/build/mobile/bottom-sheet/nav-bar/back-button.native.js +12 -15
- package/build/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
- package/build/mobile/bottom-sheet/nav-bar/heading.native.js +3 -4
- package/build/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
- package/build/mobile/bottom-sheet/nav-bar/index.native.js +3 -4
- package/build/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/radio-cell.native.js +4 -3
- package/build/mobile/bottom-sheet/radio-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/range-cell.native.js +7 -3
- package/build/mobile/bottom-sheet/range-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet/range-text-input.native.js +5 -6
- package/build/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
- package/build/mobile/bottom-sheet/ripple.native.js +10 -11
- package/build/mobile/bottom-sheet/ripple.native.js.map +1 -1
- package/build/mobile/bottom-sheet/stepper-cell/index.native.js +5 -4
- package/build/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js +11 -12
- package/build/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
- package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js +11 -12
- package/build/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
- package/build/mobile/bottom-sheet/sub-sheet/index.native.js +6 -7
- package/build/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet/switch-cell.native.js +8 -2
- package/build/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build/mobile/bottom-sheet-select-control/index.native.js +11 -10
- package/build/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
- package/build/mobile/bottom-sheet-text-control/index.native.js +13 -12
- package/build/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
- package/build/mobile/color-settings/index.native.js +12 -13
- package/build/mobile/color-settings/index.native.js.map +1 -1
- package/build/mobile/color-settings/utils.native.js +2 -2
- package/build/mobile/color-settings/utils.native.js.map +1 -1
- package/build/mobile/cycle-select-control/index.native.js +11 -12
- package/build/mobile/cycle-select-control/index.native.js.map +1 -1
- package/build/mobile/focal-point-settings-panel/index.native.js +6 -7
- package/build/mobile/focal-point-settings-panel/index.native.js.map +1 -1
- package/build/mobile/global-styles-context/index.native.js +6 -14
- package/build/mobile/global-styles-context/index.native.js.map +1 -1
- package/build/mobile/global-styles-context/utils.native.js +69 -112
- package/build/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build/mobile/gradient/index.native.js +26 -33
- package/build/mobile/gradient/index.native.js.map +1 -1
- package/build/mobile/html-text-input/index.native.js +3 -3
- package/build/mobile/html-text-input/index.native.js.map +1 -1
- package/build/mobile/image/image-editing-button.native.js +22 -26
- package/build/mobile/image/image-editing-button.native.js.map +1 -1
- package/build/mobile/image/index.native.js +31 -34
- package/build/mobile/image/index.native.js.map +1 -1
- package/build/mobile/keyboard-avoiding-view/index.ios.js +22 -29
- package/build/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/index.android.js +5 -6
- package/build/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/index.ios.js +9 -10
- package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js +9 -14
- package/build/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js.map +1 -1
- package/build/mobile/layout-animation/index.native.js +1 -3
- package/build/mobile/layout-animation/index.native.js.map +1 -1
- package/build/mobile/link-picker/index.native.js +12 -16
- package/build/mobile/link-picker/index.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-results.native.js +34 -48
- package/build/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build/mobile/link-picker/link-picker-screen.native.js +7 -10
- package/build/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build/mobile/link-settings/image-link-destinations-screen.native.js +8 -9
- package/build/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -1
- package/build/mobile/link-settings/index.native.js +57 -58
- package/build/mobile/link-settings/index.native.js.map +1 -1
- package/build/mobile/media-edit/index.native.js +2 -2
- package/build/mobile/media-edit/index.native.js.map +1 -1
- package/build/mobile/picker/index.ios.js +3 -6
- package/build/mobile/picker/index.ios.js.map +1 -1
- package/build/mobile/segmented-control/index.native.js +16 -20
- package/build/mobile/segmented-control/index.native.js.map +1 -1
- package/build/mobile/utils/alignments.native.js +2 -6
- package/build/mobile/utils/alignments.native.js.map +1 -1
- package/build/mobile/utils/index.native.js +1 -2
- package/build/mobile/utils/index.native.js.map +1 -1
- package/build/mobile/utils/use-unit-converter-to-mobile.native.js +4 -7
- package/build/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build/modal/index.js +3 -4
- package/build/modal/index.js.map +1 -1
- package/build/navigable-container/container.js +2 -6
- package/build/navigable-container/container.js.map +1 -1
- package/build/navigable-container/menu.js +5 -7
- package/build/navigable-container/menu.js.map +1 -1
- package/build/navigable-container/tabbable.js +4 -6
- package/build/navigable-container/tabbable.js.map +1 -1
- package/build/navigation/back-button/index.js +8 -11
- package/build/navigation/back-button/index.js.map +1 -1
- package/build/navigation/group/index.js +5 -6
- package/build/navigation/group/index.js.map +1 -1
- package/build/navigation/index.js +8 -11
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/item/base.js +1 -3
- package/build/navigation/item/base.js.map +1 -1
- package/build/navigation/menu/menu-title-search.js +11 -14
- package/build/navigation/menu/menu-title-search.js.map +1 -1
- package/build/navigation/menu/menu-title.js +8 -11
- package/build/navigation/menu/menu-title.js.map +1 -1
- package/build/navigation/menu/search-no-results-found.js +3 -4
- package/build/navigation/menu/search-no-results-found.js.map +1 -1
- package/build/navigator/navigator-back-button/hook.js +1 -1
- package/build/navigator/navigator-back-button/hook.js.map +1 -1
- package/build/navigator/navigator-button/hook.js +1 -1
- package/build/navigator/navigator-button/hook.js.map +1 -1
- package/build/navigator/navigator-provider/component.js +2 -6
- package/build/navigator/navigator-provider/component.js.map +1 -1
- package/build/navigator/navigator-screen/component.js +1 -1
- package/build/navigator/navigator-screen/component.js.map +1 -1
- package/build/notice/index.js +25 -29
- package/build/notice/index.js.map +1 -1
- package/build/notice/index.native.js +13 -18
- package/build/notice/index.native.js.map +1 -1
- package/build/notice/list.js +6 -8
- package/build/notice/list.js.map +1 -1
- package/build/number-control/index.js +24 -26
- package/build/number-control/index.js.map +1 -1
- package/build/number-control/styles/number-control-styles.js +6 -10
- package/build/number-control/styles/number-control-styles.js.map +1 -1
- package/build/palette-edit/index.js +83 -94
- package/build/palette-edit/index.js.map +1 -1
- package/build/panel/actions.native.js +8 -10
- package/build/panel/actions.native.js.map +1 -1
- package/build/panel/body.js +7 -10
- package/build/panel/body.js.map +1 -1
- package/build/panel/body.native.js +6 -7
- package/build/panel/body.native.js.map +1 -1
- package/build/panel/bottom-separator-cover.native.js +3 -4
- package/build/panel/bottom-separator-cover.native.js.map +1 -1
- package/build/panel/header.js +4 -5
- package/build/panel/header.js.map +1 -1
- package/build/panel/index.js +5 -6
- package/build/panel/index.js.map +1 -1
- package/build/panel/row.js +4 -5
- package/build/panel/row.js.map +1 -1
- package/build/popover/index.js +27 -31
- package/build/popover/index.js.map +1 -1
- package/build/popover/limit-shift.js +70 -75
- package/build/popover/limit-shift.js.map +1 -1
- package/build/popover/overlay-middlewares.js +7 -9
- package/build/popover/overlay-middlewares.js.map +1 -1
- package/build/popover/utils.js +26 -34
- package/build/popover/utils.js.map +1 -1
- package/build/private-apis.js +16 -1
- package/build/private-apis.js.map +1 -1
- package/build/query-controls/author-select.js +7 -8
- package/build/query-controls/author-select.js.map +1 -1
- package/build/query-controls/category-select.js +8 -9
- package/build/query-controls/category-select.js.map +1 -1
- package/build/query-controls/index.js +16 -17
- package/build/query-controls/index.js.map +1 -1
- package/build/query-controls/index.native.js +13 -14
- package/build/query-controls/index.native.js.map +1 -1
- package/build/radio-control/index.js +1 -1
- package/build/radio-control/index.js.map +1 -1
- package/build/radio-control/index.native.js +6 -7
- package/build/radio-control/index.native.js.map +1 -1
- package/build/radio-group/index.js +8 -9
- package/build/radio-group/index.js.map +1 -1
- package/build/radio-group/radio/index.js +5 -6
- package/build/radio-group/radio/index.js.map +1 -1
- package/build/range-control/index.js +1 -3
- package/build/range-control/index.js.map +1 -1
- package/build/range-control/index.native.js +23 -22
- package/build/range-control/index.native.js.map +1 -1
- package/build/range-control/rail.js +7 -9
- package/build/range-control/rail.js.map +1 -1
- package/build/range-control/styles/range-control-styles.js +37 -52
- package/build/range-control/styles/range-control-styles.js.map +1 -1
- package/build/range-control/tooltip.js +4 -5
- package/build/range-control/tooltip.js.map +1 -1
- package/build/resizable-box/index.js +8 -9
- package/build/resizable-box/index.js.map +1 -1
- package/build/resizable-box/resize-tooltip/index.js +12 -13
- package/build/resizable-box/resize-tooltip/index.js.map +1 -1
- package/build/resizable-box/resize-tooltip/label.js +6 -7
- package/build/resizable-box/resize-tooltip/label.js.map +1 -1
- package/build/resizable-box/resize-tooltip/utils.js +16 -19
- package/build/resizable-box/resize-tooltip/utils.js.map +1 -1
- package/build/responsive-wrapper/index.js +6 -8
- package/build/responsive-wrapper/index.js.map +1 -1
- package/build/sandbox/index.js +16 -23
- package/build/sandbox/index.js.map +1 -1
- package/build/sandbox/index.native.js +20 -26
- package/build/sandbox/index.native.js.map +1 -1
- package/build/search-control/index.js +14 -17
- package/build/search-control/index.js.map +1 -1
- package/build/search-control/index.native.js +7 -8
- package/build/search-control/index.native.js.map +1 -1
- package/build/select-control/index.js +9 -19
- package/build/select-control/index.js.map +1 -1
- package/build/select-control/index.native.js +11 -12
- package/build/select-control/index.native.js.map +1 -1
- package/build/select-control/styles/select-control-styles.js +19 -25
- package/build/select-control/styles/select-control-styles.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/fill.js +4 -5
- package/build/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -7
- package/build/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
- package/build/slot-fill/bubbles-virtually/slot.js +6 -7
- package/build/slot-fill/bubbles-virtually/slot.js.map +1 -1
- package/build/slot-fill/fill.js +4 -5
- package/build/slot-fill/fill.js.map +1 -1
- package/build/slot-fill/index.js +8 -11
- package/build/slot-fill/index.js.map +1 -1
- package/build/slot-fill/index.native.js +4 -5
- package/build/slot-fill/index.native.js.map +1 -1
- package/build/slot-fill/provider.js +2 -2
- package/build/slot-fill/provider.js.map +1 -1
- package/build/slot-fill/slot.js +9 -12
- package/build/slot-fill/slot.js.map +1 -1
- package/build/snackbar/index.js +26 -31
- package/build/snackbar/index.js.map +1 -1
- package/build/snackbar/list.js +7 -8
- package/build/snackbar/list.js.map +1 -1
- package/build/spinner/index.js +4 -5
- package/build/spinner/index.js.map +1 -1
- package/build/style-provider/index.native.js +3 -4
- package/build/style-provider/index.native.js.map +1 -1
- package/build/surface/styles.js +6 -7
- package/build/surface/styles.js.map +1 -1
- package/build/tab-panel/index.js +35 -40
- package/build/tab-panel/index.js.map +1 -1
- package/build/text/styles/text-mixins.native.js +1 -3
- package/build/text/styles/text-mixins.native.js.map +1 -1
- package/build/text/utils.js +16 -17
- package/build/text/utils.js.map +1 -1
- package/build/text-control/index.native.js +12 -13
- package/build/text-control/index.native.js.map +1 -1
- package/build/textarea-control/index.native.js +7 -8
- package/build/textarea-control/index.native.js.map +1 -1
- package/build/theme/color-algorithms.js +1 -2
- package/build/theme/color-algorithms.js.map +1 -1
- package/build/theme/index.js +6 -7
- package/build/theme/index.js.map +1 -1
- package/build/theme/styles.js +4 -8
- package/build/theme/styles.js.map +1 -1
- package/build/toggle-control/index.js +9 -11
- package/build/toggle-control/index.js.map +1 -1
- package/build/toggle-control/index.native.js +9 -10
- package/build/toggle-control/index.native.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/as-button-group.js +9 -10
- package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js +9 -10
- package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +11 -14
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -8
- package/build/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/component.js +5 -7
- 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 +11 -15
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build/toolbar/toolbar/index.js +23 -9
- package/build/toolbar/toolbar/index.js.map +1 -1
- package/build/toolbar/toolbar/toolbar-container.js +4 -5
- package/build/toolbar/toolbar/toolbar-container.js.map +1 -1
- package/build/toolbar/toolbar/toolbar-container.native.js +3 -6
- package/build/toolbar/toolbar/toolbar-container.native.js.map +1 -1
- package/build/toolbar/toolbar-button/index.js +10 -11
- package/build/toolbar/toolbar-button/index.js.map +1 -1
- package/build/toolbar/toolbar-button/toolbar-button-container.js +6 -9
- package/build/toolbar/toolbar-button/toolbar-button-container.js.map +1 -1
- package/build/toolbar/toolbar-group/index.js +9 -12
- package/build/toolbar/toolbar-group/index.js.map +1 -1
- package/build/toolbar/toolbar-group/toolbar-group-collapsed.js +5 -6
- package/build/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -1
- package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js +6 -7
- package/build/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
- package/build/toolbar/toolbar-group/toolbar-group-container.js +7 -10
- package/build/toolbar/toolbar-group/toolbar-group-container.js.map +1 -1
- package/build/toolbar/toolbar-group/toolbar-group-container.native.js +7 -10
- package/build/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -1
- package/build/toolbar/toolbar-item/index.js +5 -6
- package/build/toolbar/toolbar-item/index.js.map +1 -1
- package/build/toolbar/toolbar-item/index.native.js +4 -6
- package/build/toolbar/toolbar-item/index.native.js.map +1 -1
- package/build/tools-panel/tools-panel/hook.js +17 -25
- package/build/tools-panel/tools-panel/hook.js.map +1 -1
- package/build/tools-panel/tools-panel-header/component.js +14 -24
- package/build/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build/tools-panel/tools-panel-item/hook.js +5 -7
- package/build/tools-panel/tools-panel-item/hook.js.map +1 -1
- package/build/tooltip/index.js +36 -43
- package/build/tooltip/index.js.map +1 -1
- package/build/tooltip/index.native.js +14 -19
- package/build/tooltip/index.native.js.map +1 -1
- package/build/tree-grid/cell.js +5 -6
- package/build/tree-grid/cell.js.map +1 -1
- package/build/tree-grid/index.js +12 -15
- package/build/tree-grid/index.js.map +1 -1
- package/build/tree-grid/item.js +4 -5
- package/build/tree-grid/item.js.map +1 -1
- package/build/tree-grid/roving-tab-index-item.js +6 -7
- package/build/tree-grid/roving-tab-index-item.js.map +1 -1
- package/build/tree-grid/roving-tab-index.js +3 -4
- package/build/tree-grid/roving-tab-index.js.map +1 -1
- package/build/tree-grid/row.js +8 -9
- package/build/tree-grid/row.js.map +1 -1
- package/build/tree-select/index.js +9 -11
- package/build/tree-select/index.js.map +1 -1
- package/build/truncate/utils.js +1 -3
- package/build/truncate/utils.js.map +1 -1
- package/build/ui/context/context-connect.js +1 -1
- package/build/ui/context/context-connect.js.map +1 -1
- package/build/ui/context/context-system-provider.js +7 -9
- package/build/ui/context/context-system-provider.js.map +1 -1
- package/build/ui/context/index.js +7 -0
- package/build/ui/context/index.js.map +1 -1
- package/build/ui/context/use-context-system.js +1 -1
- package/build/ui/context/use-context-system.js.map +1 -1
- package/build/ui/control-group/hook.js +1 -1
- package/build/ui/control-group/hook.js.map +1 -1
- package/build/ui/form-group/form-group-content.js +12 -13
- package/build/ui/form-group/form-group-content.js.map +1 -1
- package/build/ui/form-group/form-group-help.js +3 -4
- package/build/ui/form-group/form-group-help.js.map +1 -1
- package/build/ui/form-group/form-group-label.js +7 -8
- package/build/ui/form-group/form-group-label.js.map +1 -1
- package/build/ui/tooltip/component.js +1 -1
- package/build/ui/tooltip/component.js.map +1 -1
- package/build/ui/utils/colors.js +1 -3
- package/build/ui/utils/colors.js.map +1 -1
- package/build/ui/utils/font-size.js +2 -6
- package/build/ui/utils/font-size.js.map +1 -1
- package/build/ui/utils/get-high-dpi.js +1 -5
- package/build/ui/utils/get-high-dpi.js.map +1 -1
- package/build/ui/utils/space.js +1 -3
- package/build/ui/utils/space.js.map +1 -1
- package/build/ui/utils/use-responsive-value.js +2 -4
- package/build/ui/utils/use-responsive-value.js.map +1 -1
- package/build/unit-control/index.js +8 -8
- package/build/unit-control/index.js.map +1 -1
- package/build/unit-control/index.native.js +22 -23
- package/build/unit-control/index.native.js.map +1 -1
- package/build/unit-control/styles/unit-control-styles.js +6 -8
- package/build/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build/unit-control/unit-select-control.js +11 -13
- package/build/unit-control/unit-select-control.js.map +1 -1
- package/build/unit-control/utils.js +12 -19
- package/build/unit-control/utils.js.map +1 -1
- package/build/utils/browsers.js +2 -10
- package/build/utils/browsers.js.map +1 -1
- package/build/utils/colors.js +1 -3
- package/build/utils/colors.js.map +1 -1
- package/build/utils/config-values.js +1 -0
- package/build/utils/config-values.js.map +1 -1
- package/build/utils/hooks/use-controlled-state.js +1 -2
- package/build/utils/hooks/use-controlled-state.js.map +1 -1
- package/build/utils/hooks/use-controlled-value.js +5 -6
- package/build/utils/hooks/use-controlled-value.js.map +1 -1
- package/build/utils/hooks/use-cx.js +1 -5
- package/build/utils/hooks/use-cx.js.map +1 -1
- package/build/utils/math.js +5 -17
- package/build/utils/math.js.map +1 -1
- package/build/utils/reduce-motion.js +1 -2
- package/build/utils/reduce-motion.js.map +1 -1
- package/build/utils/rtl.js +3 -9
- package/build/utils/rtl.js.map +1 -1
- package/build/utils/values.js +2 -6
- package/build/utils/values.js.map +1 -1
- package/build/z-stack/styles.js +14 -23
- package/build/z-stack/styles.js.map +1 -1
- package/build-module/alignment-matrix-control/cell.js +5 -6
- package/build-module/alignment-matrix-control/cell.js.map +1 -1
- package/build-module/alignment-matrix-control/icon.js +8 -9
- package/build-module/alignment-matrix-control/icon.js.map +1 -1
- package/build-module/alignment-matrix-control/index.js +10 -11
- package/build-module/alignment-matrix-control/index.js.map +1 -1
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js +6 -8
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js.map +1 -1
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js +6 -8
- package/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js.map +1 -1
- package/build-module/alignment-matrix-control/utils.js +1 -2
- package/build-module/alignment-matrix-control/utils.js.map +1 -1
- package/build-module/angle-picker-control/angle-circle.js +6 -9
- package/build-module/angle-picker-control/angle-circle.js.map +1 -1
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js +3 -4
- package/build-module/angle-picker-control/styles/angle-picker-control-styles.js.map +1 -1
- package/build-module/animate/index.js +5 -6
- package/build-module/animate/index.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.js +29 -33
- package/build-module/autocomplete/autocompleter-ui.js.map +1 -1
- package/build-module/autocomplete/autocompleter-ui.native.js +15 -22
- package/build-module/autocomplete/autocompleter-ui.native.js.map +1 -1
- package/build-module/autocomplete/background-view.android.js +3 -4
- package/build-module/autocomplete/background-view.android.js.map +1 -1
- package/build-module/autocomplete/background-view.ios.js +3 -4
- package/build-module/autocomplete/background-view.ios.js.map +1 -1
- package/build-module/autocomplete/get-default-use-items.js +1 -3
- package/build-module/autocomplete/get-default-use-items.js.map +1 -1
- package/build-module/autocomplete/index.js +18 -23
- package/build-module/autocomplete/index.js.map +1 -1
- package/build-module/base-control/index.js +14 -16
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/base-control/index.native.js +5 -6
- package/build-module/base-control/index.native.js.map +1 -1
- package/build-module/base-control/styles/base-control-styles.js +6 -8
- package/build-module/base-control/styles/base-control-styles.js.map +1 -1
- package/build-module/border-box-control/border-box-control/hook.js +5 -5
- package/build-module/border-box-control/border-box-control/hook.js.map +1 -1
- package/build-module/border-box-control/border-box-control-split-controls/component.js +4 -4
- package/build-module/border-box-control/border-box-control-split-controls/component.js.map +1 -1
- package/build-module/border-box-control/styles.js +3 -3
- package/build-module/border-box-control/styles.js.map +1 -1
- package/build-module/border-box-control/utils.js +5 -8
- package/build-module/border-box-control/utils.js.map +1 -1
- package/build-module/border-control/border-control/component.js +1 -1
- package/build-module/border-control/border-control/component.js.map +1 -1
- package/build-module/border-control/border-control/hook.js +5 -5
- package/build-module/border-control/border-control/hook.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/component.js +70 -67
- package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
- package/build-module/border-control/border-control-dropdown/hook.js +4 -4
- package/build-module/border-control/border-control-dropdown/hook.js.map +1 -1
- package/build-module/box-control/all-input-control.js +11 -12
- package/build-module/box-control/all-input-control.js.map +1 -1
- package/build-module/box-control/axial-input-controls.js +12 -14
- package/build-module/box-control/axial-input-controls.js.map +1 -1
- package/build-module/box-control/icon.js +7 -9
- package/build-module/box-control/icon.js.map +1 -1
- package/build-module/box-control/index.js +22 -24
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/box-control/input-controls.js +15 -18
- package/build-module/box-control/input-controls.js.map +1 -1
- package/build-module/box-control/linked-button.js +4 -5
- package/build-module/box-control/linked-button.js.map +1 -1
- package/build-module/box-control/styles/box-control-icon-styles.js +3 -4
- package/build-module/box-control/styles/box-control-icon-styles.js.map +1 -1
- package/build-module/box-control/styles/box-control-styles.js +9 -12
- package/build-module/box-control/styles/box-control-styles.js.map +1 -1
- package/build-module/box-control/styles/box-control-visualizer-styles.js +7 -11
- package/build-module/box-control/styles/box-control-visualizer-styles.js.map +1 -1
- package/build-module/box-control/unit-control.js +18 -22
- package/build-module/box-control/unit-control.js.map +1 -1
- package/build-module/box-control/utils.js +4 -10
- package/build-module/box-control/utils.js.map +1 -1
- package/build-module/button/deprecated.js +7 -8
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/index.js +15 -16
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/index.native.js +5 -7
- package/build-module/button/index.native.js.map +1 -1
- package/build-module/card/card/hook.js +5 -6
- package/build-module/card/card/hook.js.map +1 -1
- package/build-module/circular-option-picker/index.js +27 -33
- package/build-module/circular-option-picker/index.js.map +1 -1
- package/build-module/clipboard-button/index.js +8 -9
- package/build-module/clipboard-button/index.js.map +1 -1
- package/build-module/color-control/index.native.js +7 -8
- package/build-module/color-control/index.native.js.map +1 -1
- package/build-module/color-indicator/index.native.js +10 -12
- package/build-module/color-indicator/index.native.js.map +1 -1
- package/build-module/color-palette/index.js +63 -72
- package/build-module/color-palette/index.js.map +1 -1
- package/build-module/color-palette/index.native.js +33 -47
- package/build-module/color-palette/index.native.js.map +1 -1
- package/build-module/color-palette/utils.js +2 -5
- package/build-module/color-palette/utils.js.map +1 -1
- package/build-module/color-picker/color-input.js +6 -7
- package/build-module/color-picker/color-input.js.map +1 -1
- package/build-module/color-picker/hex-input.js +8 -12
- package/build-module/color-picker/hex-input.js.map +1 -1
- package/build-module/color-picker/hsl-input.js +5 -6
- package/build-module/color-picker/hsl-input.js.map +1 -1
- package/build-module/color-picker/index.native.js +23 -30
- package/build-module/color-picker/index.native.js.map +1 -1
- package/build-module/color-picker/input-with-slider.js +8 -10
- package/build-module/color-picker/input-with-slider.js.map +1 -1
- package/build-module/color-picker/picker.js +5 -6
- package/build-module/color-picker/picker.js.map +1 -1
- package/build-module/color-picker/rgb-input.js +5 -6
- package/build-module/color-picker/rgb-input.js.map +1 -1
- package/build-module/color-picker/styles.js +8 -8
- package/build-module/color-picker/styles.js.map +1 -1
- package/build-module/color-picker/use-deprecated-props.js +1 -3
- package/build-module/color-picker/use-deprecated-props.js.map +1 -1
- package/build-module/combobox-control/index.js +3 -6
- package/build-module/combobox-control/index.js.map +1 -1
- package/build-module/combobox-control/styles.js +3 -6
- package/build-module/combobox-control/styles.js.map +1 -1
- package/build-module/confirm-dialog/component.js +1 -1
- package/build-module/confirm-dialog/component.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js +114 -129
- package/build-module/custom-gradient-picker/gradient-bar/control-points.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/index.js +12 -14
- package/build-module/custom-gradient-picker/gradient-bar/index.js.map +1 -1
- package/build-module/custom-gradient-picker/gradient-bar/utils.js +4 -6
- package/build-module/custom-gradient-picker/gradient-bar/utils.js.map +1 -1
- package/build-module/custom-gradient-picker/index.js +19 -22
- package/build-module/custom-gradient-picker/index.js.map +1 -1
- package/build-module/custom-gradient-picker/index.native.js +7 -8
- package/build-module/custom-gradient-picker/index.native.js.map +1 -1
- package/build-module/custom-gradient-picker/serializer.js +15 -21
- package/build-module/custom-gradient-picker/serializer.js.map +1 -1
- package/build-module/custom-gradient-picker/utils.js +6 -9
- package/build-module/custom-gradient-picker/utils.js.map +1 -1
- package/build-module/custom-select-control/index.js +14 -21
- package/build-module/custom-select-control/index.js.map +1 -1
- package/build-module/dashicon/index.js +7 -8
- package/build-module/dashicon/index.js.map +1 -1
- package/build-module/dashicon/index.native.js +4 -5
- package/build-module/dashicon/index.native.js.map +1 -1
- package/build-module/date-time/date/index.js +24 -26
- package/build-module/date-time/date/index.js.map +1 -1
- package/build-module/date-time/date-time/index.js +14 -90
- package/build-module/date-time/date-time/index.js.map +1 -1
- package/build-module/date-time/date-time/styles.js +3 -17
- package/build-module/date-time/date-time/styles.js.map +1 -1
- package/build-module/date-time/time/index.js +11 -14
- package/build-module/date-time/time/index.js.map +1 -1
- package/build-module/dimension-control/index.js +8 -11
- package/build-module/dimension-control/index.js.map +1 -1
- package/build-module/disabled/index.js +6 -7
- package/build-module/disabled/index.js.map +1 -1
- package/build-module/disabled/index.native.js +3 -4
- package/build-module/disabled/index.native.js.map +1 -1
- package/build-module/divider/styles.js +21 -29
- package/build-module/divider/styles.js.map +1 -1
- package/build-module/draggable/index.js +14 -19
- package/build-module/draggable/index.js.map +1 -1
- package/build-module/draggable/index.native.js +17 -19
- package/build-module/draggable/index.native.js.map +1 -1
- package/build-module/drop-zone/index.js +11 -16
- package/build-module/drop-zone/index.js.map +1 -1
- package/build-module/drop-zone/provider.js +3 -4
- package/build-module/drop-zone/provider.js.map +1 -1
- package/build-module/dropdown/index.js +19 -23
- package/build-module/dropdown/index.js.map +1 -1
- package/build-module/dropdown/styles.js +3 -4
- package/build-module/dropdown/styles.js.map +1 -1
- package/build-module/dropdown-menu/index.js +96 -25
- package/build-module/dropdown-menu/index.js.map +1 -1
- package/build-module/dropdown-menu/index.native.js +22 -30
- package/build-module/dropdown-menu/index.native.js.map +1 -1
- package/build-module/dropdown-menu/types.js +2 -0
- package/build-module/dropdown-menu/types.js.map +1 -0
- package/build-module/dropdown-menu-v2/index.js +182 -0
- package/build-module/dropdown-menu-v2/index.js.map +1 -0
- package/build-module/dropdown-menu-v2/styles.js +161 -0
- package/build-module/dropdown-menu-v2/styles.js.map +1 -0
- package/build-module/dropdown-menu-v2/types.js +2 -0
- package/build-module/dropdown-menu-v2/types.js.map +1 -0
- package/build-module/duotone-picker/color-list-picker/index.js +16 -18
- package/build-module/duotone-picker/color-list-picker/index.js.map +1 -1
- package/build-module/duotone-picker/custom-duotone-bar.js +4 -5
- package/build-module/duotone-picker/custom-duotone-bar.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +15 -17
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/duotone-picker/duotone-swatch.js +3 -4
- package/build-module/duotone-picker/duotone-swatch.js.map +1 -1
- package/build-module/duotone-picker/utils.js +14 -27
- package/build-module/duotone-picker/utils.js.map +1 -1
- package/build-module/external-link/index.js +1 -1
- package/build-module/external-link/index.js.map +1 -1
- package/build-module/external-link/index.native.js +4 -5
- package/build-module/external-link/index.native.js.map +1 -1
- package/build-module/focal-point-picker/controls.js +11 -10
- package/build-module/focal-point-picker/controls.js.map +1 -1
- package/build-module/focal-point-picker/focal-point.js +5 -6
- package/build-module/focal-point-picker/focal-point.js.map +1 -1
- package/build-module/focal-point-picker/focal-point.native.js +5 -6
- package/build-module/focal-point-picker/focal-point.native.js.map +1 -1
- package/build-module/focal-point-picker/grid.js +4 -5
- package/build-module/focal-point-picker/grid.js.map +1 -1
- package/build-module/focal-point-picker/index.js +33 -37
- package/build-module/focal-point-picker/index.js.map +1 -1
- package/build-module/focal-point-picker/index.native.js +10 -12
- package/build-module/focal-point-picker/index.native.js.map +1 -1
- package/build-module/focal-point-picker/media.js +11 -13
- package/build-module/focal-point-picker/media.js.map +1 -1
- package/build-module/focal-point-picker/styles/focal-point-picker-style.js +9 -14
- 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 +3 -6
- package/build-module/focal-point-picker/styles/focal-point-style.js.map +1 -1
- package/build-module/focal-point-picker/tooltip/index.native.js +16 -21
- package/build-module/focal-point-picker/tooltip/index.native.js.map +1 -1
- package/build-module/focal-point-picker/utils.js +2 -4
- package/build-module/focal-point-picker/utils.js.map +1 -1
- package/build-module/focusable-iframe/index.js +4 -5
- package/build-module/focusable-iframe/index.js.map +1 -1
- package/build-module/font-size-picker/font-size-picker-select.js +3 -5
- package/build-module/font-size-picker/font-size-picker-select.js.map +1 -1
- package/build-module/font-size-picker/index.js +14 -18
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/index.native.js +6 -7
- package/build-module/font-size-picker/index.native.js.map +1 -1
- package/build-module/font-size-picker/styles.js +20 -7
- package/build-module/font-size-picker/styles.js.map +1 -1
- package/build-module/footer-message-control/index.native.js +2 -3
- package/build-module/footer-message-control/index.native.js.map +1 -1
- package/build-module/form-file-upload/index.js +10 -13
- package/build-module/form-file-upload/index.js.map +1 -1
- package/build-module/form-token-field/index.js +4 -19
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/form-token-field/styles.js +4 -7
- package/build-module/form-token-field/styles.js.map +1 -1
- package/build-module/form-token-field/suggestions-list.js +14 -15
- package/build-module/form-token-field/suggestions-list.js.map +1 -1
- package/build-module/form-token-field/token-input.js +2 -2
- package/build-module/form-token-field/token-input.js.map +1 -1
- package/build-module/form-token-field/token.js +14 -15
- package/build-module/form-token-field/token.js.map +1 -1
- package/build-module/gradient-picker/index.js +51 -58
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/guide/icons.js +13 -16
- package/build-module/guide/icons.js.map +1 -1
- package/build-module/guide/index.js +9 -12
- package/build-module/guide/index.js.map +1 -1
- package/build-module/guide/page-control.js +5 -6
- package/build-module/guide/page-control.js.map +1 -1
- package/build-module/h-stack/utils.js +1 -3
- package/build-module/h-stack/utils.js.map +1 -1
- package/build-module/higher-order/navigate-regions/index.js +16 -22
- package/build-module/higher-order/navigate-regions/index.js.map +1 -1
- package/build-module/higher-order/with-focus-outside/index.js +1 -1
- package/build-module/higher-order/with-focus-outside/index.js.map +1 -1
- package/build-module/higher-order/with-focus-outside/index.native.js +1 -1
- package/build-module/higher-order/with-focus-outside/index.native.js.map +1 -1
- package/build-module/higher-order/with-focus-return/index.js +13 -17
- package/build-module/higher-order/with-focus-return/index.js.map +1 -1
- package/build-module/icon/index.js +5 -7
- package/build-module/icon/index.js.map +1 -1
- package/build-module/index.native.js +0 -1
- package/build-module/index.native.js.map +1 -1
- package/build-module/input-control/backdrop.js +4 -5
- package/build-module/input-control/backdrop.js.map +1 -1
- package/build-module/input-control/index.js +22 -23
- package/build-module/input-control/index.js.map +1 -1
- package/build-module/input-control/input-base.js +16 -17
- package/build-module/input-control/input-base.js.map +1 -1
- package/build-module/input-control/input-field.js +26 -29
- package/build-module/input-control/input-field.js.map +1 -1
- package/build-module/input-control/label.js +6 -7
- package/build-module/input-control/label.js.map +1 -1
- package/build-module/input-control/reducer/reducer.js +2 -6
- package/build-module/input-control/reducer/reducer.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js +62 -64
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/input-control/utils.js +1 -3
- package/build-module/input-control/utils.js.map +1 -1
- package/build-module/keyboard-shortcuts/index.js +21 -26
- package/build-module/keyboard-shortcuts/index.js.map +1 -1
- package/build-module/menu-items-choice/index.js +6 -7
- package/build-module/menu-items-choice/index.js.map +1 -1
- package/build-module/mobile/audio-player/index.native.js +7 -8
- package/build-module/mobile/audio-player/index.native.js.map +1 -1
- package/build-module/mobile/badge/index.native.js +5 -6
- package/build-module/mobile/badge/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +10 -12
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +10 -13
- package/build-module/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/button.native.js +18 -21
- package/build-module/mobile/bottom-sheet/button.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/cell.native.js +22 -11
- package/build-module/mobile/bottom-sheet/cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/color-cell.native.js +3 -1
- package/build-module/mobile/bottom-sheet/color-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/footer-message-cell.native.js +4 -5
- package/build-module/mobile/bottom-sheet/footer-message-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +4 -5
- package/build-module/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/index.native.js +19 -30
- package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/link-cell.native.js +6 -7
- package/build-module/mobile/bottom-sheet/link-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js +5 -6
- package/build-module/mobile/bottom-sheet/link-suggestion-item-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/lock-icon/index.native.js +21 -0
- package/build-module/mobile/bottom-sheet/lock-icon/index.native.js.map +1 -0
- package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js +6 -7
- package/build-module/mobile/bottom-sheet/nav-bar/action-button.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js +3 -4
- package/build-module/mobile/bottom-sheet/nav-bar/apply-button.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js +12 -15
- package/build-module/mobile/bottom-sheet/nav-bar/back-button.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js +3 -4
- package/build-module/mobile/bottom-sheet/nav-bar/heading.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/nav-bar/index.native.js +3 -4
- package/build-module/mobile/bottom-sheet/nav-bar/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/radio-cell.native.js +3 -2
- package/build-module/mobile/bottom-sheet/radio-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/range-cell.native.js +6 -3
- package/build-module/mobile/bottom-sheet/range-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/range-text-input.native.js +5 -6
- package/build-module/mobile/bottom-sheet/range-text-input.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/ripple.native.js +10 -11
- package/build-module/mobile/bottom-sheet/ripple.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js +5 -4
- package/build-module/mobile/bottom-sheet/stepper-cell/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js +11 -12
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.android.js.map +1 -1
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js +11 -12
- package/build-module/mobile/bottom-sheet/stepper-cell/stepper.ios.js.map +1 -1
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js +6 -7
- package/build-module/mobile/bottom-sheet/sub-sheet/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet/switch-cell.native.js +7 -2
- package/build-module/mobile/bottom-sheet/switch-cell.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet-select-control/index.native.js +11 -10
- package/build-module/mobile/bottom-sheet-select-control/index.native.js.map +1 -1
- package/build-module/mobile/bottom-sheet-text-control/index.native.js +13 -12
- package/build-module/mobile/bottom-sheet-text-control/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/index.native.js +12 -13
- package/build-module/mobile/color-settings/index.native.js.map +1 -1
- package/build-module/mobile/color-settings/utils.native.js +2 -2
- package/build-module/mobile/color-settings/utils.native.js.map +1 -1
- package/build-module/mobile/cycle-select-control/index.native.js +11 -12
- package/build-module/mobile/cycle-select-control/index.native.js.map +1 -1
- package/build-module/mobile/focal-point-settings-panel/index.native.js +6 -7
- package/build-module/mobile/focal-point-settings-panel/index.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/index.native.js +6 -14
- package/build-module/mobile/global-styles-context/index.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/utils.native.js +69 -112
- package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build-module/mobile/gradient/index.native.js +26 -33
- package/build-module/mobile/gradient/index.native.js.map +1 -1
- package/build-module/mobile/html-text-input/index.native.js +3 -3
- package/build-module/mobile/html-text-input/index.native.js.map +1 -1
- package/build-module/mobile/image/image-editing-button.native.js +22 -26
- package/build-module/mobile/image/image-editing-button.native.js.map +1 -1
- package/build-module/mobile/image/index.native.js +31 -34
- package/build-module/mobile/image/index.native.js.map +1 -1
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js +22 -29
- package/build-module/mobile/keyboard-avoiding-view/index.ios.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/index.android.js +5 -6
- package/build-module/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +9 -10
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js +9 -14
- package/build-module/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js.map +1 -1
- package/build-module/mobile/layout-animation/index.native.js +1 -2
- package/build-module/mobile/layout-animation/index.native.js.map +1 -1
- package/build-module/mobile/link-picker/index.native.js +12 -16
- package/build-module/mobile/link-picker/index.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-results.native.js +34 -48
- package/build-module/mobile/link-picker/link-picker-results.native.js.map +1 -1
- package/build-module/mobile/link-picker/link-picker-screen.native.js +7 -9
- package/build-module/mobile/link-picker/link-picker-screen.native.js.map +1 -1
- package/build-module/mobile/link-settings/image-link-destinations-screen.native.js +8 -9
- package/build-module/mobile/link-settings/image-link-destinations-screen.native.js.map +1 -1
- package/build-module/mobile/link-settings/index.native.js +57 -58
- package/build-module/mobile/link-settings/index.native.js.map +1 -1
- package/build-module/mobile/media-edit/index.native.js +2 -2
- package/build-module/mobile/media-edit/index.native.js.map +1 -1
- package/build-module/mobile/picker/index.ios.js +3 -6
- package/build-module/mobile/picker/index.ios.js.map +1 -1
- package/build-module/mobile/segmented-control/index.native.js +16 -20
- package/build-module/mobile/segmented-control/index.native.js.map +1 -1
- package/build-module/mobile/utils/alignments.native.js +2 -6
- package/build-module/mobile/utils/alignments.native.js.map +1 -1
- package/build-module/mobile/utils/index.native.js +1 -2
- package/build-module/mobile/utils/index.native.js.map +1 -1
- package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js +4 -7
- package/build-module/mobile/utils/use-unit-converter-to-mobile.native.js.map +1 -1
- package/build-module/modal/index.js +3 -4
- package/build-module/modal/index.js.map +1 -1
- package/build-module/navigable-container/container.js +2 -6
- package/build-module/navigable-container/container.js.map +1 -1
- package/build-module/navigable-container/menu.js +5 -7
- package/build-module/navigable-container/menu.js.map +1 -1
- package/build-module/navigable-container/tabbable.js +4 -6
- package/build-module/navigable-container/tabbable.js.map +1 -1
- package/build-module/navigation/back-button/index.js +8 -11
- package/build-module/navigation/back-button/index.js.map +1 -1
- package/build-module/navigation/group/index.js +5 -6
- package/build-module/navigation/group/index.js.map +1 -1
- package/build-module/navigation/index.js +8 -11
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/item/base.js +1 -3
- package/build-module/navigation/item/base.js.map +1 -1
- package/build-module/navigation/menu/menu-title-search.js +11 -14
- package/build-module/navigation/menu/menu-title-search.js.map +1 -1
- package/build-module/navigation/menu/menu-title.js +8 -11
- package/build-module/navigation/menu/menu-title.js.map +1 -1
- package/build-module/navigation/menu/search-no-results-found.js +3 -4
- package/build-module/navigation/menu/search-no-results-found.js.map +1 -1
- package/build-module/navigator/navigator-back-button/hook.js +1 -1
- package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
- package/build-module/navigator/navigator-button/hook.js +1 -1
- package/build-module/navigator/navigator-button/hook.js.map +1 -1
- package/build-module/navigator/navigator-provider/component.js +2 -6
- package/build-module/navigator/navigator-provider/component.js.map +1 -1
- package/build-module/navigator/navigator-screen/component.js +1 -1
- package/build-module/navigator/navigator-screen/component.js.map +1 -1
- package/build-module/notice/index.js +25 -29
- package/build-module/notice/index.js.map +1 -1
- package/build-module/notice/index.native.js +13 -18
- package/build-module/notice/index.native.js.map +1 -1
- package/build-module/notice/list.js +6 -8
- package/build-module/notice/list.js.map +1 -1
- package/build-module/number-control/index.js +24 -26
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/number-control/styles/number-control-styles.js +6 -10
- package/build-module/number-control/styles/number-control-styles.js.map +1 -1
- package/build-module/palette-edit/index.js +83 -94
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/panel/actions.native.js +8 -10
- package/build-module/panel/actions.native.js.map +1 -1
- package/build-module/panel/body.js +7 -10
- package/build-module/panel/body.js.map +1 -1
- package/build-module/panel/body.native.js +6 -7
- package/build-module/panel/body.native.js.map +1 -1
- package/build-module/panel/bottom-separator-cover.native.js +3 -4
- package/build-module/panel/bottom-separator-cover.native.js.map +1 -1
- package/build-module/panel/header.js +4 -5
- package/build-module/panel/header.js.map +1 -1
- package/build-module/panel/index.js +5 -6
- package/build-module/panel/index.js.map +1 -1
- package/build-module/panel/row.js +4 -5
- package/build-module/panel/row.js.map +1 -1
- package/build-module/popover/index.js +25 -31
- package/build-module/popover/index.js.map +1 -1
- package/build-module/popover/limit-shift.js +66 -71
- package/build-module/popover/limit-shift.js.map +1 -1
- package/build-module/popover/overlay-middlewares.js +7 -9
- package/build-module/popover/overlay-middlewares.js.map +1 -1
- package/build-module/popover/utils.js +26 -34
- package/build-module/popover/utils.js.map +1 -1
- package/build-module/private-apis.js +14 -1
- package/build-module/private-apis.js.map +1 -1
- package/build-module/query-controls/author-select.js +7 -8
- package/build-module/query-controls/author-select.js.map +1 -1
- package/build-module/query-controls/category-select.js +8 -9
- package/build-module/query-controls/category-select.js.map +1 -1
- package/build-module/query-controls/index.js +16 -17
- package/build-module/query-controls/index.js.map +1 -1
- package/build-module/query-controls/index.native.js +13 -14
- package/build-module/query-controls/index.native.js.map +1 -1
- package/build-module/radio-control/index.js +1 -1
- package/build-module/radio-control/index.js.map +1 -1
- package/build-module/radio-control/index.native.js +6 -7
- package/build-module/radio-control/index.native.js.map +1 -1
- package/build-module/radio-group/index.js +8 -9
- package/build-module/radio-group/index.js.map +1 -1
- package/build-module/radio-group/radio/index.js +5 -6
- package/build-module/radio-group/radio/index.js.map +1 -1
- package/build-module/range-control/index.js +1 -3
- package/build-module/range-control/index.js.map +1 -1
- package/build-module/range-control/index.native.js +23 -22
- package/build-module/range-control/index.native.js.map +1 -1
- package/build-module/range-control/rail.js +7 -9
- package/build-module/range-control/rail.js.map +1 -1
- package/build-module/range-control/styles/range-control-styles.js +37 -52
- package/build-module/range-control/styles/range-control-styles.js.map +1 -1
- package/build-module/range-control/tooltip.js +4 -5
- package/build-module/range-control/tooltip.js.map +1 -1
- package/build-module/resizable-box/index.js +8 -9
- package/build-module/resizable-box/index.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/index.js +12 -13
- package/build-module/resizable-box/resize-tooltip/index.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/label.js +6 -7
- package/build-module/resizable-box/resize-tooltip/label.js.map +1 -1
- package/build-module/resizable-box/resize-tooltip/utils.js +16 -19
- package/build-module/resizable-box/resize-tooltip/utils.js.map +1 -1
- package/build-module/responsive-wrapper/index.js +6 -8
- package/build-module/responsive-wrapper/index.js.map +1 -1
- package/build-module/sandbox/index.js +16 -23
- package/build-module/sandbox/index.js.map +1 -1
- package/build-module/sandbox/index.native.js +20 -26
- package/build-module/sandbox/index.native.js.map +1 -1
- package/build-module/search-control/index.js +14 -17
- package/build-module/search-control/index.js.map +1 -1
- package/build-module/search-control/index.native.js +7 -8
- package/build-module/search-control/index.native.js.map +1 -1
- package/build-module/select-control/index.js +9 -19
- package/build-module/select-control/index.js.map +1 -1
- package/build-module/select-control/index.native.js +11 -12
- package/build-module/select-control/index.native.js.map +1 -1
- package/build-module/select-control/styles/select-control-styles.js +19 -25
- package/build-module/select-control/styles/select-control-styles.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/fill.js +4 -5
- package/build-module/slot-fill/bubbles-virtually/fill.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js +4 -7
- package/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js.map +1 -1
- package/build-module/slot-fill/bubbles-virtually/slot.js +6 -7
- package/build-module/slot-fill/bubbles-virtually/slot.js.map +1 -1
- package/build-module/slot-fill/fill.js +4 -5
- package/build-module/slot-fill/fill.js.map +1 -1
- package/build-module/slot-fill/index.js +8 -11
- package/build-module/slot-fill/index.js.map +1 -1
- package/build-module/slot-fill/index.native.js +4 -5
- package/build-module/slot-fill/index.native.js.map +1 -1
- package/build-module/slot-fill/provider.js +2 -2
- package/build-module/slot-fill/provider.js.map +1 -1
- package/build-module/slot-fill/slot.js +9 -12
- package/build-module/slot-fill/slot.js.map +1 -1
- package/build-module/snackbar/index.js +26 -31
- package/build-module/snackbar/index.js.map +1 -1
- package/build-module/snackbar/list.js +7 -8
- package/build-module/snackbar/list.js.map +1 -1
- package/build-module/spinner/index.js +4 -5
- package/build-module/spinner/index.js.map +1 -1
- package/build-module/style-provider/index.native.js +3 -4
- package/build-module/style-provider/index.native.js.map +1 -1
- package/build-module/surface/styles.js +6 -7
- package/build-module/surface/styles.js.map +1 -1
- package/build-module/tab-panel/index.js +36 -40
- package/build-module/tab-panel/index.js.map +1 -1
- package/build-module/text/styles/text-mixins.native.js +1 -3
- package/build-module/text/styles/text-mixins.native.js.map +1 -1
- package/build-module/text/utils.js +16 -17
- package/build-module/text/utils.js.map +1 -1
- package/build-module/text-control/index.native.js +12 -13
- package/build-module/text-control/index.native.js.map +1 -1
- package/build-module/textarea-control/index.native.js +7 -8
- package/build-module/textarea-control/index.native.js.map +1 -1
- package/build-module/theme/color-algorithms.js +1 -2
- package/build-module/theme/color-algorithms.js.map +1 -1
- package/build-module/theme/index.js +6 -7
- package/build-module/theme/index.js.map +1 -1
- package/build-module/theme/styles.js +4 -8
- package/build-module/theme/styles.js.map +1 -1
- package/build-module/toggle-control/index.js +9 -11
- package/build-module/toggle-control/index.js.map +1 -1
- package/build-module/toggle-control/index.native.js +9 -10
- package/build-module/toggle-control/index.native.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js +9 -10
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js +9 -10
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/styles.js +11 -14
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js +7 -8
- package/build-module/toggle-group-control/toggle-group-control/toggle-group-control-backdrop.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +5 -7
- 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 +11 -15
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build-module/toolbar/toolbar/index.js +20 -8
- package/build-module/toolbar/toolbar/index.js.map +1 -1
- package/build-module/toolbar/toolbar/toolbar-container.js +4 -5
- package/build-module/toolbar/toolbar/toolbar-container.js.map +1 -1
- package/build-module/toolbar/toolbar/toolbar-container.native.js +3 -6
- package/build-module/toolbar/toolbar/toolbar-container.native.js.map +1 -1
- package/build-module/toolbar/toolbar-button/index.js +10 -11
- package/build-module/toolbar/toolbar-button/index.js.map +1 -1
- package/build-module/toolbar/toolbar-button/toolbar-button-container.js +6 -9
- package/build-module/toolbar/toolbar-button/toolbar-button-container.js.map +1 -1
- package/build-module/toolbar/toolbar-group/index.js +9 -12
- package/build-module/toolbar/toolbar-group/index.js.map +1 -1
- package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.js +5 -6
- package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.js.map +1 -1
- package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.native.js +6 -7
- package/build-module/toolbar/toolbar-group/toolbar-group-collapsed.native.js.map +1 -1
- package/build-module/toolbar/toolbar-group/toolbar-group-container.js +7 -10
- package/build-module/toolbar/toolbar-group/toolbar-group-container.js.map +1 -1
- package/build-module/toolbar/toolbar-group/toolbar-group-container.native.js +7 -10
- package/build-module/toolbar/toolbar-group/toolbar-group-container.native.js.map +1 -1
- package/build-module/toolbar/toolbar-item/index.js +5 -6
- package/build-module/toolbar/toolbar-item/index.js.map +1 -1
- package/build-module/toolbar/toolbar-item/index.native.js +4 -6
- package/build-module/toolbar/toolbar-item/index.native.js.map +1 -1
- package/build-module/tools-panel/tools-panel/hook.js +17 -25
- package/build-module/tools-panel/tools-panel/hook.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/component.js +14 -24
- package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build-module/tools-panel/tools-panel-item/hook.js +5 -7
- package/build-module/tools-panel/tools-panel-item/hook.js.map +1 -1
- package/build-module/tooltip/index.js +36 -43
- package/build-module/tooltip/index.js.map +1 -1
- package/build-module/tooltip/index.native.js +14 -19
- package/build-module/tooltip/index.native.js.map +1 -1
- package/build-module/tree-grid/cell.js +5 -6
- package/build-module/tree-grid/cell.js.map +1 -1
- package/build-module/tree-grid/index.js +12 -15
- package/build-module/tree-grid/index.js.map +1 -1
- package/build-module/tree-grid/item.js +4 -5
- package/build-module/tree-grid/item.js.map +1 -1
- package/build-module/tree-grid/roving-tab-index-item.js +6 -7
- package/build-module/tree-grid/roving-tab-index-item.js.map +1 -1
- package/build-module/tree-grid/roving-tab-index.js +3 -4
- package/build-module/tree-grid/roving-tab-index.js.map +1 -1
- package/build-module/tree-grid/row.js +8 -9
- package/build-module/tree-grid/row.js.map +1 -1
- package/build-module/tree-select/index.js +9 -11
- package/build-module/tree-select/index.js.map +1 -1
- package/build-module/truncate/utils.js +1 -3
- package/build-module/truncate/utils.js.map +1 -1
- package/build-module/ui/context/context-connect.js +1 -1
- package/build-module/ui/context/context-connect.js.map +1 -1
- package/build-module/ui/context/context-system-provider.js +7 -9
- package/build-module/ui/context/context-system-provider.js.map +1 -1
- package/build-module/ui/context/index.js +1 -1
- package/build-module/ui/context/index.js.map +1 -1
- package/build-module/ui/context/use-context-system.js +1 -1
- package/build-module/ui/context/use-context-system.js.map +1 -1
- package/build-module/ui/control-group/hook.js +1 -1
- package/build-module/ui/control-group/hook.js.map +1 -1
- package/build-module/ui/form-group/form-group-content.js +12 -13
- package/build-module/ui/form-group/form-group-content.js.map +1 -1
- package/build-module/ui/form-group/form-group-help.js +3 -4
- package/build-module/ui/form-group/form-group-help.js.map +1 -1
- package/build-module/ui/form-group/form-group-label.js +7 -8
- package/build-module/ui/form-group/form-group-label.js.map +1 -1
- package/build-module/ui/tooltip/component.js +1 -1
- package/build-module/ui/tooltip/component.js.map +1 -1
- package/build-module/ui/utils/colors.js +1 -3
- package/build-module/ui/utils/colors.js.map +1 -1
- package/build-module/ui/utils/font-size.js +2 -6
- package/build-module/ui/utils/font-size.js.map +1 -1
- package/build-module/ui/utils/get-high-dpi.js +1 -5
- package/build-module/ui/utils/get-high-dpi.js.map +1 -1
- package/build-module/ui/utils/space.js +1 -3
- package/build-module/ui/utils/space.js.map +1 -1
- package/build-module/ui/utils/use-responsive-value.js +2 -4
- package/build-module/ui/utils/use-responsive-value.js.map +1 -1
- package/build-module/unit-control/index.js +8 -8
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/unit-control/index.native.js +22 -23
- package/build-module/unit-control/index.native.js.map +1 -1
- package/build-module/unit-control/styles/unit-control-styles.js +6 -8
- package/build-module/unit-control/styles/unit-control-styles.js.map +1 -1
- package/build-module/unit-control/unit-select-control.js +11 -13
- package/build-module/unit-control/unit-select-control.js.map +1 -1
- package/build-module/unit-control/utils.js +12 -19
- package/build-module/unit-control/utils.js.map +1 -1
- package/build-module/utils/browsers.js +2 -10
- package/build-module/utils/browsers.js.map +1 -1
- package/build-module/utils/colors.js +1 -3
- package/build-module/utils/colors.js.map +1 -1
- package/build-module/utils/config-values.js +1 -0
- package/build-module/utils/config-values.js.map +1 -1
- package/build-module/utils/hooks/use-controlled-state.js +1 -2
- package/build-module/utils/hooks/use-controlled-state.js.map +1 -1
- package/build-module/utils/hooks/use-controlled-value.js +5 -6
- package/build-module/utils/hooks/use-controlled-value.js.map +1 -1
- package/build-module/utils/hooks/use-cx.js +1 -5
- package/build-module/utils/hooks/use-cx.js.map +1 -1
- package/build-module/utils/math.js +5 -17
- package/build-module/utils/math.js.map +1 -1
- package/build-module/utils/reduce-motion.js +1 -2
- package/build-module/utils/reduce-motion.js.map +1 -1
- package/build-module/utils/rtl.js +3 -9
- package/build-module/utils/rtl.js.map +1 -1
- package/build-module/utils/values.js +2 -6
- package/build-module/utils/values.js.map +1 -1
- package/build-module/z-stack/styles.js +14 -23
- package/build-module/z-stack/styles.js.map +1 -1
- package/build-style/style-rtl.css +57 -27
- package/build-style/style.css +59 -29
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/button/deprecated.d.ts +6 -0
- package/build-types/button/deprecated.d.ts.map +1 -1
- package/build-types/button/index.d.ts.map +1 -1
- package/build-types/button/stories/e2e/index.d.ts +14 -0
- package/build-types/button/stories/e2e/index.d.ts.map +1 -0
- package/build-types/button/types.d.ts +9 -0
- package/build-types/button/types.d.ts.map +1 -1
- package/build-types/color-palette/index.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts.map +1 -1
- package/build-types/date-time/date-time/index.d.ts +3 -4
- package/build-types/date-time/date-time/index.d.ts.map +1 -1
- package/build-types/date-time/date-time/styles.d.ts +0 -4
- package/build-types/date-time/date-time/styles.d.ts.map +1 -1
- package/build-types/date-time/stories/date-time.d.ts.map +1 -1
- package/build-types/date-time/types.d.ts +0 -14
- package/build-types/date-time/types.d.ts.map +1 -1
- package/build-types/dropdown-menu/index.d.ts +83 -1
- package/build-types/dropdown-menu/index.d.ts.map +1 -1
- package/build-types/dropdown-menu/stories/index.d.ts +13 -0
- package/build-types/dropdown-menu/stories/index.d.ts.map +1 -0
- package/build-types/dropdown-menu/test/index.d.ts +2 -0
- package/build-types/dropdown-menu/test/index.d.ts.map +1 -0
- package/build-types/dropdown-menu/types.d.ts +134 -0
- package/build-types/dropdown-menu/types.d.ts.map +1 -0
- package/build-types/dropdown-menu-v2/index.d.ts +17 -0
- package/build-types/dropdown-menu-v2/index.d.ts.map +1 -0
- package/build-types/dropdown-menu-v2/stories/index.d.ts +11 -0
- package/build-types/dropdown-menu-v2/stories/index.d.ts.map +1 -0
- package/build-types/dropdown-menu-v2/styles.d.ts +42 -0
- package/build-types/dropdown-menu-v2/styles.d.ts.map +1 -0
- package/build-types/dropdown-menu-v2/test/index.d.ts +2 -0
- package/build-types/dropdown-menu-v2/test/index.d.ts.map +1 -0
- package/build-types/dropdown-menu-v2/types.d.ts +252 -0
- package/build-types/dropdown-menu-v2/types.d.ts.map +1 -0
- package/build-types/focal-point-picker/controls.d.ts.map +1 -1
- package/build-types/font-size-picker/index.d.ts.map +1 -1
- package/build-types/font-size-picker/styles.d.ts +11 -0
- package/build-types/font-size-picker/styles.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/modal/index.d.ts.map +1 -1
- package/build-types/navigator/navigator-back-button/component.d.ts +1 -0
- package/build-types/navigator/navigator-back-button/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-back-button/hook.d.ts +1 -0
- package/build-types/navigator/navigator-back-button/hook.d.ts.map +1 -1
- package/build-types/navigator/navigator-button/component.d.ts +1 -0
- package/build-types/navigator/navigator-button/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-button/hook.d.ts +1 -0
- package/build-types/navigator/navigator-button/hook.d.ts.map +1 -1
- package/build-types/navigator/navigator-to-parent-button/component.d.ts +1 -0
- package/build-types/navigator/navigator-to-parent-button/component.d.ts.map +1 -1
- package/build-types/popover/index.d.ts +6 -0
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/private-apis.d.ts.map +1 -1
- package/build-types/tab-panel/index.d.ts +1 -38
- package/build-types/tab-panel/index.d.ts.map +1 -1
- package/build-types/tab-panel/stories/index.d.ts +4 -3
- package/build-types/tab-panel/stories/index.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toolbar/stories/index.d.ts.map +1 -1
- package/build-types/toolbar/toolbar/index.d.ts.map +1 -1
- package/build-types/toolbar/toolbar-button/index.d.ts +6 -0
- package/build-types/toolbar/toolbar-button/index.d.ts.map +1 -1
- package/build-types/ui/context/get-styled-class-name-from-key.d.ts +1 -10
- package/build-types/ui/context/get-styled-class-name-from-key.d.ts.map +1 -1
- package/build-types/ui/context/index.d.ts +1 -1
- package/build-types/ui/context/index.d.ts.map +1 -1
- package/build-types/utils/config-values.d.ts +1 -0
- package/package.json +21 -20
- package/src/border-control/border-control-dropdown/component.tsx +23 -12
- package/src/border-control/test/index.js +6 -6
- package/src/button/index.tsx +2 -0
- package/src/button/stories/e2e/index.tsx +58 -0
- package/src/button/style.scss +17 -15
- package/src/button/types.ts +9 -0
- package/src/color-palette/index.tsx +47 -46
- package/src/color-palette/style.scss +57 -19
- package/src/color-palette/test/__snapshots__/index.tsx.snap +66 -50
- package/src/color-palette/test/index.tsx +76 -13
- package/src/color-picker/styles.ts +7 -2
- package/src/date-time/README.md +0 -16
- package/src/date-time/date-time/index.tsx +17 -155
- package/src/date-time/date-time/styles.ts +0 -4
- package/src/date-time/stories/date-time.tsx +0 -4
- package/src/date-time/types.ts +0 -16
- package/src/dropdown-menu/README.md +12 -22
- package/src/dropdown-menu/{index.js → index.tsx} +111 -25
- package/src/dropdown-menu/stories/{index.js → index.tsx} +14 -22
- package/src/dropdown-menu/test/{index.js → index.tsx} +6 -5
- package/src/dropdown-menu/types.ts +143 -0
- package/src/dropdown-menu-v2/README.md +392 -0
- package/src/dropdown-menu-v2/index.tsx +293 -0
- package/src/dropdown-menu-v2/stories/index.tsx +217 -0
- package/src/dropdown-menu-v2/styles.ts +276 -0
- package/src/dropdown-menu-v2/test/index.tsx +816 -0
- package/src/dropdown-menu-v2/types.ts +265 -0
- package/src/focal-point-picker/controls.tsx +2 -0
- package/src/focal-point-picker/test/index.js +9 -3
- package/src/font-size-picker/index.tsx +5 -5
- package/src/font-size-picker/styles.ts +9 -0
- package/src/index.native.js +0 -1
- package/src/input-control/styles/input-control-styles.tsx +7 -0
- package/src/mobile/bottom-sheet/cell.native.js +34 -5
- package/src/mobile/bottom-sheet/color-cell.native.js +3 -2
- package/src/mobile/bottom-sheet/lock-icon/index.native.js +19 -0
- package/src/mobile/bottom-sheet/lock-icon/styles.native.scss +8 -0
- package/src/mobile/bottom-sheet/radio-cell.native.js +2 -1
- package/src/mobile/bottom-sheet/range-cell.native.js +5 -1
- package/src/mobile/bottom-sheet/stepper-cell/index.native.js +2 -0
- package/src/mobile/bottom-sheet/styles.native.scss +15 -1
- package/src/mobile/bottom-sheet/switch-cell.native.js +10 -2
- package/src/mobile/bottom-sheet-select-control/index.native.js +3 -1
- package/src/mobile/bottom-sheet-text-control/index.native.js +3 -1
- package/src/modal/index.tsx +1 -6
- package/src/popover/index.tsx +1 -1
- package/src/private-apis.ts +24 -0
- package/src/range-control/index.native.js +3 -0
- package/src/search-control/style.scss +2 -0
- package/src/slot-fill/README.md +26 -1
- package/src/tab-panel/index.tsx +18 -12
- package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +6 -2
- package/src/toggle-group-control/toggle-group-control/styles.ts +6 -1
- package/src/toolbar/stories/index.tsx +25 -28
- package/src/toolbar/toolbar/index.tsx +24 -7
- package/src/tooltip/style.scss +2 -2
- package/src/ui/context/index.ts +1 -0
- package/src/utils/config-values.js +1 -0
- package/src/view/README.md +2 -2
- package/tsconfig.tsbuildinfo +1 -1
- package/build/mobile/readable-content-view/index.native.js +0 -97
- package/build/mobile/readable-content-view/index.native.js.map +0 -1
- package/build-module/mobile/readable-content-view/index.native.js +0 -81
- package/build-module/mobile/readable-content-view/index.native.js.map +0 -1
- package/src/mobile/readable-content-view/index.native.js +0 -85
- package/src/mobile/readable-content-view/style.native.scss +0 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel/hook.ts"],"names":["DEFAULT_COLUMNS","generateMenuItems","panelItems","shouldReset","currentMenuItems","menuItemOrder","newMenuItems","default","optional","menuItems","forEach","hasValue","isShownByDefault","label","group","existingItemValue","value","key","hasOwnProperty","Object","keys","isMenuItemTypeEmpty","obj","length","useToolsPanel","props","className","headingLevel","resetAll","panelId","hasInnerWrapper","shouldRenderPlaceholderItems","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","otherProps","isResetting","wasResetting","current","setPanelItems","setMenuItemOrder","resetAllFilters","setResetAllFilters","registerPanelItem","item","items","newItems","existingIndex","findIndex","oldItem","splice","includes","deregisterPanelItem","index","registerResetAllFilter","newFilter","filters","deregisterResetAllFilter","filterToRemove","filter","setMenuItems","prevState","flagItemCustomization","newState","areAllOptionalControlsHidden","setAreAllOptionalControlsHidden","allControlsHidden","entries","some","isSelected","cx","classes","wrapperStyle","styles","ToolsPanelWithInnerWrapper","emptyStyle","ToolsPanelHiddenInnerWrapper","ToolsPanel","toggleItem","currentItem","find","menuGroup","resetAllItems","resetMenuItems","getFirstVisibleItemLabel","optionalItems","firstItem","firstDisplayedItem","lastDisplayedItem","reverse","panelContext","hasMenuItems"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type {\n\tToolsPanelItem,\n\tToolsPanelMenuItemKey,\n\tToolsPanelMenuItems,\n\tToolsPanelMenuItemsConfig,\n\tToolsPanelProps,\n\tResetAllFilter,\n} from '../types';\n\nconst DEFAULT_COLUMNS = 2;\n\nconst generateMenuItems = ( {\n\tpanelItems,\n\tshouldReset,\n\tcurrentMenuItems,\n\tmenuItemOrder,\n}: ToolsPanelMenuItemsConfig ) => {\n\tconst newMenuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\tconst menuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\n\tpanelItems.forEach( ( { hasValue, isShownByDefault, label } ) => {\n\t\tconst group = isShownByDefault ? 'default' : 'optional';\n\n\t\t// If a menu item for this label has already been flagged as customized\n\t\t// (for default controls), or toggled on (for optional controls), do not\n\t\t// overwrite its value as those controls would lose that state.\n\t\tconst existingItemValue = currentMenuItems?.[ group ]?.[ label ];\n\t\tconst value = existingItemValue ? existingItemValue : hasValue();\n\n\t\tnewMenuItems[ group ][ label ] = shouldReset ? false : value;\n\t} );\n\n\t// Loop the known, previously registered items first to maintain menu order.\n\tmenuItemOrder.forEach( ( key ) => {\n\t\tif ( newMenuItems.default.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.default[ key ] = newMenuItems.default[ key ];\n\t\t}\n\n\t\tif ( newMenuItems.optional.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.optional[ key ] = newMenuItems.optional[ key ];\n\t\t}\n\t} );\n\n\t// Loop newMenuItems object adding any that aren't in the known items order.\n\tObject.keys( newMenuItems.default ).forEach( ( key ) => {\n\t\tif ( ! menuItems.default.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.default[ key ] = newMenuItems.default[ key ];\n\t\t}\n\t} );\n\n\tObject.keys( newMenuItems.optional ).forEach( ( key ) => {\n\t\tif ( ! menuItems.optional.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.optional[ key ] = newMenuItems.optional[ key ];\n\t\t}\n\t} );\n\n\treturn menuItems;\n};\n\nconst isMenuItemTypeEmpty = (\n\tobj?: ToolsPanelMenuItems[ ToolsPanelMenuItemKey ]\n) => obj && Object.keys( obj ).length === 0;\n\nexport function useToolsPanel(\n\tprops: WordPressComponentProps< ToolsPanelProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\theadingLevel = 2,\n\t\tresetAll,\n\t\tpanelId,\n\t\thasInnerWrapper = false,\n\t\tshouldRenderPlaceholderItems = false,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanel' );\n\n\tconst isResetting = useRef( false );\n\tconst wasResetting = isResetting.current;\n\n\t// `isResetting` is cleared via this hook to effectively batch together\n\t// the resetAll task. Without this, the flag is cleared after the first\n\t// control updates and forces a rerender with subsequent controls then\n\t// believing they need to reset, unfortunately using stale data.\n\tuseEffect( () => {\n\t\tif ( wasResetting ) {\n\t\t\tisResetting.current = false;\n\t\t}\n\t}, [ wasResetting ] );\n\n\t// Allow panel items to register themselves.\n\tconst [ panelItems, setPanelItems ] = useState< ToolsPanelItem[] >( [] );\n\tconst [ menuItemOrder, setMenuItemOrder ] = useState< string[] >( [] );\n\tconst [ resetAllFilters, setResetAllFilters ] = useState<\n\t\tResetAllFilter[]\n\t>( [] );\n\n\tconst registerPanelItem = useCallback(\n\t\t( item: ToolsPanelItem ) => {\n\t\t\t// Add item to panel items.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\t// If an item with this label has already been registered, remove it\n\t\t\t\t// first. This can happen when an item is moved between the default\n\t\t\t\t// and optional groups.\n\t\t\t\tconst existingIndex = newItems.findIndex(\n\t\t\t\t\t( oldItem ) => oldItem.label === item.label\n\t\t\t\t);\n\t\t\t\tif ( existingIndex !== -1 ) {\n\t\t\t\t\tnewItems.splice( existingIndex, 1 );\n\t\t\t\t}\n\t\t\t\treturn [ ...newItems, item ];\n\t\t\t} );\n\n\t\t\t// Track the initial order of item registration. This is used for\n\t\t\t// maintaining menu item order later.\n\t\t\tsetMenuItemOrder( ( items ) => {\n\t\t\t\tif ( items.includes( item.label ) ) {\n\t\t\t\t\treturn items;\n\t\t\t\t}\n\n\t\t\t\treturn [ ...items, item.label ];\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems, setMenuItemOrder ]\n\t);\n\n\t// Panels need to deregister on unmount to avoid orphans in menu state.\n\t// This is an issue when panel items are being injected via SlotFills.\n\tconst deregisterPanelItem = useCallback(\n\t\t( label: string ) => {\n\t\t\t// When switching selections between components injecting matching\n\t\t\t// controls, e.g. both panels have a \"padding\" control, the\n\t\t\t// deregistration of the first panel doesn't occur until after the\n\t\t\t// registration of the next.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\tconst index = newItems.findIndex(\n\t\t\t\t\t( item ) => item.label === label\n\t\t\t\t);\n\t\t\t\tif ( index !== -1 ) {\n\t\t\t\t\tnewItems.splice( index, 1 );\n\t\t\t\t}\n\t\t\t\treturn newItems;\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\tconst registerResetAllFilter = useCallback(\n\t\t( newFilter: ResetAllFilter ) => {\n\t\t\tsetResetAllFilters( ( filters ) => {\n\t\t\t\treturn [ ...filters, newFilter ];\n\t\t\t} );\n\t\t},\n\t\t[ setResetAllFilters ]\n\t);\n\n\tconst deregisterResetAllFilter = useCallback(\n\t\t( filterToRemove: ResetAllFilter ) => {\n\t\t\tsetResetAllFilters( ( filters ) => {\n\t\t\t\treturn filters.filter(\n\t\t\t\t\t( filter ) => filter !== filterToRemove\n\t\t\t\t);\n\t\t\t} );\n\t\t},\n\t\t[ setResetAllFilters ]\n\t);\n\n\t// Manage and share display state of menu items representing child controls.\n\tconst [ menuItems, setMenuItems ] = useState< ToolsPanelMenuItems >( {\n\t\tdefault: {},\n\t\toptional: {},\n\t} );\n\n\t// Setup menuItems state as panel items register themselves.\n\tuseEffect( () => {\n\t\tsetMenuItems( ( prevState ) => {\n\t\t\tconst items = generateMenuItems( {\n\t\t\t\tpanelItems,\n\t\t\t\tshouldReset: false,\n\t\t\t\tcurrentMenuItems: prevState,\n\t\t\t\tmenuItemOrder,\n\t\t\t} );\n\t\t\treturn items;\n\t\t} );\n\t}, [ panelItems, setMenuItems, menuItemOrder ] );\n\n\t// Force a menu item to be checked.\n\t// This is intended for use with default panel items. They are displayed\n\t// separately to optional items and have different display states,\n\t// we need to update that when their value is customized.\n\tconst flagItemCustomization = useCallback(\n\t\t( label: string, group: ToolsPanelMenuItemKey = 'default' ) => {\n\t\t\tsetMenuItems( ( items ) => {\n\t\t\t\tconst newState = {\n\t\t\t\t\t...items,\n\t\t\t\t\t[ group ]: {\n\t\t\t\t\t\t...items[ group ],\n\t\t\t\t\t\t[ label ]: true,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\treturn newState;\n\t\t\t} );\n\t\t},\n\t\t[ setMenuItems ]\n\t);\n\n\t// Whether all optional menu items are hidden or not must be tracked\n\t// in order to later determine if the panel display is empty and handle\n\t// conditional display of a plus icon to indicate the presence of further\n\t// menu items.\n\tconst [ areAllOptionalControlsHidden, setAreAllOptionalControlsHidden ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\t! isMenuItemTypeEmpty( menuItems?.optional )\n\t\t) {\n\t\t\tconst allControlsHidden = ! Object.entries(\n\t\t\t\tmenuItems.optional\n\t\t\t).some( ( [ , isSelected ] ) => isSelected );\n\t\t\tsetAreAllOptionalControlsHidden( allControlsHidden );\n\t\t}\n\t}, [ menuItems, setAreAllOptionalControlsHidden ] );\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst wrapperStyle =\n\t\t\thasInnerWrapper &&\n\t\t\tstyles.ToolsPanelWithInnerWrapper( DEFAULT_COLUMNS );\n\t\tconst emptyStyle =\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\tareAllOptionalControlsHidden &&\n\t\t\tstyles.ToolsPanelHiddenInnerWrapper;\n\n\t\treturn cx(\n\t\t\tstyles.ToolsPanel( DEFAULT_COLUMNS ),\n\t\t\twrapperStyle,\n\t\t\temptyStyle,\n\t\t\tclassName\n\t\t);\n\t}, [\n\t\tareAllOptionalControlsHidden,\n\t\tclassName,\n\t\tcx,\n\t\thasInnerWrapper,\n\t\tmenuItems,\n\t] );\n\n\t// Toggle the checked state of a menu item which is then used to determine\n\t// display of the item within the panel.\n\tconst toggleItem = useCallback(\n\t\t( label: string ) => {\n\t\t\tconst currentItem = panelItems.find(\n\t\t\t\t( item ) => item.label === label\n\t\t\t);\n\n\t\t\tif ( ! currentItem ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst menuGroup = currentItem.isShownByDefault\n\t\t\t\t? 'default'\n\t\t\t\t: 'optional';\n\n\t\t\tconst newMenuItems = {\n\t\t\t\t...menuItems,\n\t\t\t\t[ menuGroup ]: {\n\t\t\t\t\t...menuItems[ menuGroup ],\n\t\t\t\t\t[ label ]: ! menuItems[ menuGroup ][ label ],\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tsetMenuItems( newMenuItems );\n\t\t},\n\t\t[ menuItems, panelItems, setMenuItems ]\n\t);\n\n\t// Resets display of children and executes resetAll callback if available.\n\tconst resetAllItems = useCallback( () => {\n\t\tif ( typeof resetAll === 'function' ) {\n\t\t\tisResetting.current = true;\n\t\t\tresetAll( resetAllFilters );\n\t\t}\n\n\t\t// Turn off display of all non-default items.\n\t\tconst resetMenuItems = generateMenuItems( {\n\t\t\tpanelItems,\n\t\t\tmenuItemOrder,\n\t\t\tshouldReset: true,\n\t\t} );\n\t\tsetMenuItems( resetMenuItems );\n\t}, [ panelItems, resetAllFilters, resetAll, setMenuItems, menuItemOrder ] );\n\n\t// Assist ItemGroup styling when there are potentially hidden placeholder\n\t// items by identifying first & last items that are toggled on for display.\n\tconst getFirstVisibleItemLabel = ( items: ToolsPanelItem[] ) => {\n\t\tconst optionalItems = menuItems.optional || {};\n\t\tconst firstItem = items.find(\n\t\t\t( item ) => item.isShownByDefault || !! optionalItems[ item.label ]\n\t\t);\n\n\t\treturn firstItem?.label;\n\t};\n\n\tconst firstDisplayedItem = getFirstVisibleItemLabel( panelItems );\n\tconst lastDisplayedItem = getFirstVisibleItemLabel(\n\t\t[ ...panelItems ].reverse()\n\t);\n\n\tconst panelContext = useMemo(\n\t\t() => ( {\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tderegisterResetAllFilter,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\thasMenuItems: !! panelItems.length,\n\t\t\tisResetting: isResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tregisterPanelItem,\n\t\t\tregisterResetAllFilter,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t} ),\n\t\t[\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tderegisterResetAllFilter,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tpanelItems,\n\t\t\tregisterResetAllFilter,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t]\n\t);\n\n\treturn {\n\t\t...otherProps,\n\t\theadingLevel,\n\t\tpanelContext,\n\t\tresetAllItems,\n\t\ttoggleItem,\n\t\tclassName: classes,\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel/hook.ts"],"names":["DEFAULT_COLUMNS","generateMenuItems","panelItems","shouldReset","currentMenuItems","menuItemOrder","newMenuItems","default","optional","menuItems","forEach","hasValue","isShownByDefault","label","group","existingItemValue","value","key","hasOwnProperty","Object","keys","isMenuItemTypeEmpty","obj","length","useToolsPanel","props","className","headingLevel","resetAll","panelId","hasInnerWrapper","shouldRenderPlaceholderItems","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","otherProps","isResetting","wasResetting","current","setPanelItems","setMenuItemOrder","resetAllFilters","setResetAllFilters","registerPanelItem","item","items","newItems","existingIndex","findIndex","oldItem","splice","includes","deregisterPanelItem","index","registerResetAllFilter","newFilter","filters","deregisterResetAllFilter","filterToRemove","filter","setMenuItems","prevState","flagItemCustomization","newState","areAllOptionalControlsHidden","setAreAllOptionalControlsHidden","allControlsHidden","entries","some","isSelected","cx","classes","wrapperStyle","styles","ToolsPanelWithInnerWrapper","emptyStyle","ToolsPanelHiddenInnerWrapper","ToolsPanel","toggleItem","currentItem","find","menuGroup","resetAllItems","resetMenuItems","getFirstVisibleItemLabel","optionalItems","firstItem","firstDisplayedItem","lastDisplayedItem","reverse","panelContext","hasMenuItems"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type {\n\tToolsPanelItem,\n\tToolsPanelMenuItemKey,\n\tToolsPanelMenuItems,\n\tToolsPanelMenuItemsConfig,\n\tToolsPanelProps,\n\tResetAllFilter,\n} from '../types';\n\nconst DEFAULT_COLUMNS = 2;\n\nconst generateMenuItems = ( {\n\tpanelItems,\n\tshouldReset,\n\tcurrentMenuItems,\n\tmenuItemOrder,\n}: ToolsPanelMenuItemsConfig ) => {\n\tconst newMenuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\tconst menuItems: ToolsPanelMenuItems = { default: {}, optional: {} };\n\n\tpanelItems.forEach( ( { hasValue, isShownByDefault, label } ) => {\n\t\tconst group = isShownByDefault ? 'default' : 'optional';\n\n\t\t// If a menu item for this label has already been flagged as customized\n\t\t// (for default controls), or toggled on (for optional controls), do not\n\t\t// overwrite its value as those controls would lose that state.\n\t\tconst existingItemValue = currentMenuItems?.[ group ]?.[ label ];\n\t\tconst value = existingItemValue ? existingItemValue : hasValue();\n\n\t\tnewMenuItems[ group ][ label ] = shouldReset ? false : value;\n\t} );\n\n\t// Loop the known, previously registered items first to maintain menu order.\n\tmenuItemOrder.forEach( ( key ) => {\n\t\tif ( newMenuItems.default.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.default[ key ] = newMenuItems.default[ key ];\n\t\t}\n\n\t\tif ( newMenuItems.optional.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.optional[ key ] = newMenuItems.optional[ key ];\n\t\t}\n\t} );\n\n\t// Loop newMenuItems object adding any that aren't in the known items order.\n\tObject.keys( newMenuItems.default ).forEach( ( key ) => {\n\t\tif ( ! menuItems.default.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.default[ key ] = newMenuItems.default[ key ];\n\t\t}\n\t} );\n\n\tObject.keys( newMenuItems.optional ).forEach( ( key ) => {\n\t\tif ( ! menuItems.optional.hasOwnProperty( key ) ) {\n\t\t\tmenuItems.optional[ key ] = newMenuItems.optional[ key ];\n\t\t}\n\t} );\n\n\treturn menuItems;\n};\n\nconst isMenuItemTypeEmpty = (\n\tobj?: ToolsPanelMenuItems[ ToolsPanelMenuItemKey ]\n) => obj && Object.keys( obj ).length === 0;\n\nexport function useToolsPanel(\n\tprops: WordPressComponentProps< ToolsPanelProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\theadingLevel = 2,\n\t\tresetAll,\n\t\tpanelId,\n\t\thasInnerWrapper = false,\n\t\tshouldRenderPlaceholderItems = false,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanel' );\n\n\tconst isResetting = useRef( false );\n\tconst wasResetting = isResetting.current;\n\n\t// `isResetting` is cleared via this hook to effectively batch together\n\t// the resetAll task. Without this, the flag is cleared after the first\n\t// control updates and forces a rerender with subsequent controls then\n\t// believing they need to reset, unfortunately using stale data.\n\tuseEffect( () => {\n\t\tif ( wasResetting ) {\n\t\t\tisResetting.current = false;\n\t\t}\n\t}, [ wasResetting ] );\n\n\t// Allow panel items to register themselves.\n\tconst [ panelItems, setPanelItems ] = useState< ToolsPanelItem[] >( [] );\n\tconst [ menuItemOrder, setMenuItemOrder ] = useState< string[] >( [] );\n\tconst [ resetAllFilters, setResetAllFilters ] = useState<\n\t\tResetAllFilter[]\n\t>( [] );\n\n\tconst registerPanelItem = useCallback(\n\t\t( item: ToolsPanelItem ) => {\n\t\t\t// Add item to panel items.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\t// If an item with this label has already been registered, remove it\n\t\t\t\t// first. This can happen when an item is moved between the default\n\t\t\t\t// and optional groups.\n\t\t\t\tconst existingIndex = newItems.findIndex(\n\t\t\t\t\t( oldItem ) => oldItem.label === item.label\n\t\t\t\t);\n\t\t\t\tif ( existingIndex !== -1 ) {\n\t\t\t\t\tnewItems.splice( existingIndex, 1 );\n\t\t\t\t}\n\t\t\t\treturn [ ...newItems, item ];\n\t\t\t} );\n\n\t\t\t// Track the initial order of item registration. This is used for\n\t\t\t// maintaining menu item order later.\n\t\t\tsetMenuItemOrder( ( items ) => {\n\t\t\t\tif ( items.includes( item.label ) ) {\n\t\t\t\t\treturn items;\n\t\t\t\t}\n\n\t\t\t\treturn [ ...items, item.label ];\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems, setMenuItemOrder ]\n\t);\n\n\t// Panels need to deregister on unmount to avoid orphans in menu state.\n\t// This is an issue when panel items are being injected via SlotFills.\n\tconst deregisterPanelItem = useCallback(\n\t\t( label: string ) => {\n\t\t\t// When switching selections between components injecting matching\n\t\t\t// controls, e.g. both panels have a \"padding\" control, the\n\t\t\t// deregistration of the first panel doesn't occur until after the\n\t\t\t// registration of the next.\n\t\t\tsetPanelItems( ( items ) => {\n\t\t\t\tconst newItems = [ ...items ];\n\t\t\t\tconst index = newItems.findIndex(\n\t\t\t\t\t( item ) => item.label === label\n\t\t\t\t);\n\t\t\t\tif ( index !== -1 ) {\n\t\t\t\t\tnewItems.splice( index, 1 );\n\t\t\t\t}\n\t\t\t\treturn newItems;\n\t\t\t} );\n\t\t},\n\t\t[ setPanelItems ]\n\t);\n\n\tconst registerResetAllFilter = useCallback(\n\t\t( newFilter: ResetAllFilter ) => {\n\t\t\tsetResetAllFilters( ( filters ) => {\n\t\t\t\treturn [ ...filters, newFilter ];\n\t\t\t} );\n\t\t},\n\t\t[ setResetAllFilters ]\n\t);\n\n\tconst deregisterResetAllFilter = useCallback(\n\t\t( filterToRemove: ResetAllFilter ) => {\n\t\t\tsetResetAllFilters( ( filters ) => {\n\t\t\t\treturn filters.filter(\n\t\t\t\t\t( filter ) => filter !== filterToRemove\n\t\t\t\t);\n\t\t\t} );\n\t\t},\n\t\t[ setResetAllFilters ]\n\t);\n\n\t// Manage and share display state of menu items representing child controls.\n\tconst [ menuItems, setMenuItems ] = useState< ToolsPanelMenuItems >( {\n\t\tdefault: {},\n\t\toptional: {},\n\t} );\n\n\t// Setup menuItems state as panel items register themselves.\n\tuseEffect( () => {\n\t\tsetMenuItems( ( prevState ) => {\n\t\t\tconst items = generateMenuItems( {\n\t\t\t\tpanelItems,\n\t\t\t\tshouldReset: false,\n\t\t\t\tcurrentMenuItems: prevState,\n\t\t\t\tmenuItemOrder,\n\t\t\t} );\n\t\t\treturn items;\n\t\t} );\n\t}, [ panelItems, setMenuItems, menuItemOrder ] );\n\n\t// Force a menu item to be checked.\n\t// This is intended for use with default panel items. They are displayed\n\t// separately to optional items and have different display states,\n\t// we need to update that when their value is customized.\n\tconst flagItemCustomization = useCallback(\n\t\t( label: string, group: ToolsPanelMenuItemKey = 'default' ) => {\n\t\t\tsetMenuItems( ( items ) => {\n\t\t\t\tconst newState = {\n\t\t\t\t\t...items,\n\t\t\t\t\t[ group ]: {\n\t\t\t\t\t\t...items[ group ],\n\t\t\t\t\t\t[ label ]: true,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t\treturn newState;\n\t\t\t} );\n\t\t},\n\t\t[ setMenuItems ]\n\t);\n\n\t// Whether all optional menu items are hidden or not must be tracked\n\t// in order to later determine if the panel display is empty and handle\n\t// conditional display of a plus icon to indicate the presence of further\n\t// menu items.\n\tconst [ areAllOptionalControlsHidden, setAreAllOptionalControlsHidden ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\t! isMenuItemTypeEmpty( menuItems?.optional )\n\t\t) {\n\t\t\tconst allControlsHidden = ! Object.entries(\n\t\t\t\tmenuItems.optional\n\t\t\t).some( ( [ , isSelected ] ) => isSelected );\n\t\t\tsetAreAllOptionalControlsHidden( allControlsHidden );\n\t\t}\n\t}, [ menuItems, setAreAllOptionalControlsHidden ] );\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst wrapperStyle =\n\t\t\thasInnerWrapper &&\n\t\t\tstyles.ToolsPanelWithInnerWrapper( DEFAULT_COLUMNS );\n\t\tconst emptyStyle =\n\t\t\tisMenuItemTypeEmpty( menuItems?.default ) &&\n\t\t\tareAllOptionalControlsHidden &&\n\t\t\tstyles.ToolsPanelHiddenInnerWrapper;\n\n\t\treturn cx(\n\t\t\tstyles.ToolsPanel( DEFAULT_COLUMNS ),\n\t\t\twrapperStyle,\n\t\t\temptyStyle,\n\t\t\tclassName\n\t\t);\n\t}, [\n\t\tareAllOptionalControlsHidden,\n\t\tclassName,\n\t\tcx,\n\t\thasInnerWrapper,\n\t\tmenuItems,\n\t] );\n\n\t// Toggle the checked state of a menu item which is then used to determine\n\t// display of the item within the panel.\n\tconst toggleItem = useCallback(\n\t\t( label: string ) => {\n\t\t\tconst currentItem = panelItems.find(\n\t\t\t\t( item ) => item.label === label\n\t\t\t);\n\n\t\t\tif ( ! currentItem ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst menuGroup = currentItem.isShownByDefault\n\t\t\t\t? 'default'\n\t\t\t\t: 'optional';\n\n\t\t\tconst newMenuItems = {\n\t\t\t\t...menuItems,\n\t\t\t\t[ menuGroup ]: {\n\t\t\t\t\t...menuItems[ menuGroup ],\n\t\t\t\t\t[ label ]: ! menuItems[ menuGroup ][ label ],\n\t\t\t\t},\n\t\t\t};\n\n\t\t\tsetMenuItems( newMenuItems );\n\t\t},\n\t\t[ menuItems, panelItems, setMenuItems ]\n\t);\n\n\t// Resets display of children and executes resetAll callback if available.\n\tconst resetAllItems = useCallback( () => {\n\t\tif ( typeof resetAll === 'function' ) {\n\t\t\tisResetting.current = true;\n\t\t\tresetAll( resetAllFilters );\n\t\t}\n\n\t\t// Turn off display of all non-default items.\n\t\tconst resetMenuItems = generateMenuItems( {\n\t\t\tpanelItems,\n\t\t\tmenuItemOrder,\n\t\t\tshouldReset: true,\n\t\t} );\n\t\tsetMenuItems( resetMenuItems );\n\t}, [ panelItems, resetAllFilters, resetAll, setMenuItems, menuItemOrder ] );\n\n\t// Assist ItemGroup styling when there are potentially hidden placeholder\n\t// items by identifying first & last items that are toggled on for display.\n\tconst getFirstVisibleItemLabel = ( items: ToolsPanelItem[] ) => {\n\t\tconst optionalItems = menuItems.optional || {};\n\t\tconst firstItem = items.find(\n\t\t\t( item ) => item.isShownByDefault || !! optionalItems[ item.label ]\n\t\t);\n\n\t\treturn firstItem?.label;\n\t};\n\n\tconst firstDisplayedItem = getFirstVisibleItemLabel( panelItems );\n\tconst lastDisplayedItem = getFirstVisibleItemLabel(\n\t\t[ ...panelItems ].reverse()\n\t);\n\n\tconst panelContext = useMemo(\n\t\t() => ( {\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tderegisterResetAllFilter,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\thasMenuItems: !! panelItems.length,\n\t\t\tisResetting: isResetting.current,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tregisterPanelItem,\n\t\t\tregisterResetAllFilter,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t} ),\n\t\t[\n\t\t\tareAllOptionalControlsHidden,\n\t\t\tderegisterPanelItem,\n\t\t\tderegisterResetAllFilter,\n\t\t\tfirstDisplayedItem,\n\t\t\tflagItemCustomization,\n\t\t\tlastDisplayedItem,\n\t\t\tmenuItems,\n\t\t\tpanelId,\n\t\t\tpanelItems,\n\t\t\tregisterResetAllFilter,\n\t\t\tregisterPanelItem,\n\t\t\tshouldRenderPlaceholderItems,\n\t\t\t__experimentalFirstVisibleItemClass,\n\t\t\t__experimentalLastVisibleItemClass,\n\t\t]\n\t);\n\n\treturn {\n\t\t...otherProps,\n\t\theadingLevel,\n\t\tpanelContext,\n\t\tresetAllItems,\n\t\ttoggleItem,\n\t\tclassName: classes,\n\t};\n}\n"]}
|
|
@@ -44,13 +44,11 @@ var _styles = require("../styles");
|
|
|
44
44
|
/**
|
|
45
45
|
* Internal dependencies
|
|
46
46
|
*/
|
|
47
|
-
const DefaultControlsGroup =
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
} = _ref;
|
|
53
|
-
|
|
47
|
+
const DefaultControlsGroup = ({
|
|
48
|
+
itemClassName,
|
|
49
|
+
items,
|
|
50
|
+
toggleItem
|
|
51
|
+
}) => {
|
|
54
52
|
if (!items.length) {
|
|
55
53
|
return null;
|
|
56
54
|
}
|
|
@@ -60,9 +58,7 @@ const DefaultControlsGroup = _ref => {
|
|
|
60
58
|
}, (0, _i18n.__)('Reset'));
|
|
61
59
|
return (0, _element.createElement)(_menuGroup.default, {
|
|
62
60
|
label: (0, _i18n.__)('Defaults')
|
|
63
|
-
}, items.map(
|
|
64
|
-
let [label, hasValue] = _ref2;
|
|
65
|
-
|
|
61
|
+
}, items.map(([label, hasValue]) => {
|
|
66
62
|
if (hasValue) {
|
|
67
63
|
return (0, _element.createElement)(_menuItem.default, {
|
|
68
64
|
key: label,
|
|
@@ -89,20 +85,17 @@ const DefaultControlsGroup = _ref => {
|
|
|
89
85
|
}));
|
|
90
86
|
};
|
|
91
87
|
|
|
92
|
-
const OptionalControlsGroup =
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
} = _ref3;
|
|
97
|
-
|
|
88
|
+
const OptionalControlsGroup = ({
|
|
89
|
+
items,
|
|
90
|
+
toggleItem
|
|
91
|
+
}) => {
|
|
98
92
|
if (!items.length) {
|
|
99
93
|
return null;
|
|
100
94
|
}
|
|
101
95
|
|
|
102
96
|
return (0, _element.createElement)(_menuGroup.default, {
|
|
103
97
|
label: (0, _i18n.__)('Tools')
|
|
104
|
-
}, items.map(
|
|
105
|
-
let [label, isSelected] = _ref4;
|
|
98
|
+
}, items.map(([label, isSelected]) => {
|
|
106
99
|
const itemLabel = isSelected ? (0, _i18n.sprintf)( // translators: %s: The name of the control being hidden and reset e.g. "Padding".
|
|
107
100
|
(0, _i18n.__)('Hide and reset %s'), label) : (0, _i18n.sprintf)( // translators: %s: The name of the control to display e.g. "Padding".
|
|
108
101
|
(0, _i18n.__)('Show %s'), label);
|
|
@@ -146,16 +139,13 @@ const ToolsPanelHeader = (props, forwardedRef) => {
|
|
|
146
139
|
return null;
|
|
147
140
|
}
|
|
148
141
|
|
|
149
|
-
const defaultItems = Object.entries(
|
|
150
|
-
const optionalItems = Object.entries(
|
|
142
|
+
const defaultItems = Object.entries(menuItems?.default || {});
|
|
143
|
+
const optionalItems = Object.entries(menuItems?.optional || {});
|
|
151
144
|
const dropDownMenuIcon = areAllOptionalControlsHidden ? _icons.plus : _icons.moreVertical;
|
|
152
145
|
const dropDownMenuLabelText = (0, _i18n.sprintf)( // translators: %s: The name of the tool e.g. "Color" or "Typography".
|
|
153
146
|
(0, _i18n._x)('%s options', 'Button label to reveal tool panel options'), labelText);
|
|
154
147
|
const dropdownMenuDescriptionText = areAllOptionalControlsHidden ? (0, _i18n.__)('All options are currently hidden') : undefined;
|
|
155
|
-
const canResetAll = [...defaultItems, ...optionalItems].some(
|
|
156
|
-
let [, isSelected] = _ref5;
|
|
157
|
-
return isSelected;
|
|
158
|
-
});
|
|
148
|
+
const canResetAll = [...defaultItems, ...optionalItems].some(([, isSelected]) => isSelected);
|
|
159
149
|
return (0, _element.createElement)(_hStack.HStack, (0, _extends2.default)({}, headerProps, {
|
|
160
150
|
ref: forwardedRef
|
|
161
151
|
}), (0, _element.createElement)(_heading.Heading, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel-header/component.tsx"],"names":["DefaultControlsGroup","itemClassName","items","toggleItem","length","resetSuffix","map","label","hasValue","OptionalControlsGroup","isSelected","itemLabel","check","ToolsPanelHeader","props","forwardedRef","areAllOptionalControlsHidden","defaultControlsItemClassName","dropdownMenuClassName","hasMenuItems","headingClassName","headingLevel","labelText","menuItems","resetAll","headerProps","defaultItems","Object","entries","default","optionalItems","optional","dropDownMenuIcon","plus","moreVertical","dropDownMenuLabelText","dropdownMenuDescriptionText","undefined","canResetAll","some","className","isSmall","describedBy","ConnectedToolsPanelHeader"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { check, moreVertical, plus } from '@wordpress/icons';\nimport { __, _x, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport DropdownMenu from '../../dropdown-menu';\nimport MenuGroup from '../../menu-group';\nimport MenuItem from '../../menu-item';\nimport { HStack } from '../../h-stack';\nimport { Heading } from '../../heading';\nimport { useToolsPanelHeader } from './hook';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { ResetLabel } from '../styles';\nimport type {\n\tToolsPanelControlsGroupProps,\n\tToolsPanelHeaderProps,\n} from '../types';\n\nconst DefaultControlsGroup = ( {\n\titemClassName,\n\titems,\n\ttoggleItem,\n}: ToolsPanelControlsGroupProps ) => {\n\tif ( ! items.length ) {\n\t\treturn null;\n\t}\n\n\tconst resetSuffix = <ResetLabel aria-hidden>{ __( 'Reset' ) }</ResetLabel>;\n\n\treturn (\n\t\t<MenuGroup label={ __( 'Defaults' ) }>\n\t\t\t{ items.map( ( [ label, hasValue ] ) => {\n\t\t\t\tif ( hasValue ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\tclassName={ itemClassName }\n\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\tlabel={ sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t__( 'Reset %s' ),\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\ttoggleItem( label );\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s reset to default' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tsuffix={ resetSuffix }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\tclassName={ itemClassName }\n\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t\tisSelected\n\t\t\t\t\t\taria-disabled\n\t\t\t\t\t>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</MenuGroup>\n\t);\n};\n\nconst OptionalControlsGroup = ( {\n\titems,\n\ttoggleItem,\n}: ToolsPanelControlsGroupProps ) => {\n\tif ( ! items.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t{ items.map( ( [ label, isSelected ] ) => {\n\t\t\t\tconst itemLabel = isSelected\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: %s: The name of the control being hidden and reset e.g. \"Padding\".\n\t\t\t\t\t\t\t__( 'Hide and reset %s' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: %s: The name of the control to display e.g. \"Padding\".\n\t\t\t\t\t\t\t__( 'Show %s' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t );\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\ticon={ isSelected && check }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tlabel={ itemLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tif ( isSelected ) {\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s hidden and reset to default' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s is now visible' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ttoggleItem( label );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</MenuGroup>\n\t);\n};\n\nconst ToolsPanelHeader = (\n\tprops: WordPressComponentProps< ToolsPanelHeaderProps, 'h2' >,\n\tforwardedRef: ForwardedRef< any >\n) => {\n\tconst {\n\t\tareAllOptionalControlsHidden,\n\t\tdefaultControlsItemClassName,\n\t\tdropdownMenuClassName,\n\t\thasMenuItems,\n\t\theadingClassName,\n\t\theadingLevel = 2,\n\t\tlabel: labelText,\n\t\tmenuItems,\n\t\tresetAll,\n\t\ttoggleItem,\n\t\t...headerProps\n\t} = useToolsPanelHeader( props );\n\n\tif ( ! labelText ) {\n\t\treturn null;\n\t}\n\n\tconst defaultItems = Object.entries( menuItems?.default || {} );\n\tconst optionalItems = Object.entries( menuItems?.optional || {} );\n\tconst dropDownMenuIcon = areAllOptionalControlsHidden ? plus : moreVertical;\n\tconst dropDownMenuLabelText = sprintf(\n\t\t// translators: %s: The name of the tool e.g. \"Color\" or \"Typography\".\n\t\t_x( '%s options', 'Button label to reveal tool panel options' ),\n\t\tlabelText\n\t);\n\tconst dropdownMenuDescriptionText = areAllOptionalControlsHidden\n\t\t? __( 'All options are currently hidden' )\n\t\t: undefined;\n\n\tconst canResetAll = [ ...defaultItems, ...optionalItems ].some(\n\t\t( [ , isSelected ] ) => isSelected\n\t);\n\n\treturn (\n\t\t<HStack { ...headerProps } ref={ forwardedRef }>\n\t\t\t<Heading level={ headingLevel } className={ headingClassName }>\n\t\t\t\t{ labelText }\n\t\t\t</Heading>\n\t\t\t{ hasMenuItems && (\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ dropDownMenuIcon }\n\t\t\t\t\tlabel={ dropDownMenuLabelText }\n\t\t\t\t\tmenuProps={ { className: dropdownMenuClassName } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tisSmall: true,\n\t\t\t\t\t\tdescribedBy: dropdownMenuDescriptionText,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ () => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<DefaultControlsGroup\n\t\t\t\t\t\t\t\titems={ defaultItems }\n\t\t\t\t\t\t\t\ttoggleItem={ toggleItem }\n\t\t\t\t\t\t\t\titemClassName={ defaultControlsItemClassName }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<OptionalControlsGroup\n\t\t\t\t\t\t\t\titems={ optionalItems }\n\t\t\t\t\t\t\t\ttoggleItem={ toggleItem }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\taria-disabled={ ! canResetAll }\n\t\t\t\t\t\t\t\t\tvariant={ 'tertiary' }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif ( canResetAll ) {\n\t\t\t\t\t\t\t\t\t\t\tresetAll();\n\t\t\t\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'All options reset' ),\n\t\t\t\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Reset all' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t) }\n\t\t</HStack>\n\t);\n};\n\nconst ConnectedToolsPanelHeader = contextConnect(\n\tToolsPanelHeader,\n\t'ToolsPanelHeader'\n);\n\nexport default ConnectedToolsPanelHeader;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel-header/component.tsx"],"names":["DefaultControlsGroup","itemClassName","items","toggleItem","length","resetSuffix","map","label","hasValue","OptionalControlsGroup","isSelected","itemLabel","check","ToolsPanelHeader","props","forwardedRef","areAllOptionalControlsHidden","defaultControlsItemClassName","dropdownMenuClassName","hasMenuItems","headingClassName","headingLevel","labelText","menuItems","resetAll","headerProps","defaultItems","Object","entries","default","optionalItems","optional","dropDownMenuIcon","plus","moreVertical","dropDownMenuLabelText","dropdownMenuDescriptionText","undefined","canResetAll","some","className","isSmall","describedBy","ConnectedToolsPanelHeader"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { speak } from '@wordpress/a11y';\nimport { check, moreVertical, plus } from '@wordpress/icons';\nimport { __, _x, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport DropdownMenu from '../../dropdown-menu';\nimport MenuGroup from '../../menu-group';\nimport MenuItem from '../../menu-item';\nimport { HStack } from '../../h-stack';\nimport { Heading } from '../../heading';\nimport { useToolsPanelHeader } from './hook';\nimport { contextConnect, WordPressComponentProps } from '../../ui/context';\nimport { ResetLabel } from '../styles';\nimport type {\n\tToolsPanelControlsGroupProps,\n\tToolsPanelHeaderProps,\n} from '../types';\n\nconst DefaultControlsGroup = ( {\n\titemClassName,\n\titems,\n\ttoggleItem,\n}: ToolsPanelControlsGroupProps ) => {\n\tif ( ! items.length ) {\n\t\treturn null;\n\t}\n\n\tconst resetSuffix = <ResetLabel aria-hidden>{ __( 'Reset' ) }</ResetLabel>;\n\n\treturn (\n\t\t<MenuGroup label={ __( 'Defaults' ) }>\n\t\t\t{ items.map( ( [ label, hasValue ] ) => {\n\t\t\t\tif ( hasValue ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\t\tclassName={ itemClassName }\n\t\t\t\t\t\t\trole=\"menuitem\"\n\t\t\t\t\t\t\tlabel={ sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t__( 'Reset %s' ),\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\ttoggleItem( label );\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s reset to default' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tsuffix={ resetSuffix }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\tclassName={ itemClassName }\n\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t\tisSelected\n\t\t\t\t\t\taria-disabled\n\t\t\t\t\t>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</MenuGroup>\n\t);\n};\n\nconst OptionalControlsGroup = ( {\n\titems,\n\ttoggleItem,\n}: ToolsPanelControlsGroupProps ) => {\n\tif ( ! items.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuGroup label={ __( 'Tools' ) }>\n\t\t\t{ items.map( ( [ label, isSelected ] ) => {\n\t\t\t\tconst itemLabel = isSelected\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: %s: The name of the control being hidden and reset e.g. \"Padding\".\n\t\t\t\t\t\t\t__( 'Hide and reset %s' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// translators: %s: The name of the control to display e.g. \"Padding\".\n\t\t\t\t\t\t\t__( 'Show %s' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t );\n\n\t\t\t\treturn (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tkey={ label }\n\t\t\t\t\t\ticon={ isSelected && check }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tlabel={ itemLabel }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tif ( isSelected ) {\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s hidden and reset to default' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The name of the control being reset e.g. \"Padding\".\n\t\t\t\t\t\t\t\t\t\t__( '%s is now visible' ),\n\t\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\ttoggleItem( label );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ label }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</MenuGroup>\n\t);\n};\n\nconst ToolsPanelHeader = (\n\tprops: WordPressComponentProps< ToolsPanelHeaderProps, 'h2' >,\n\tforwardedRef: ForwardedRef< any >\n) => {\n\tconst {\n\t\tareAllOptionalControlsHidden,\n\t\tdefaultControlsItemClassName,\n\t\tdropdownMenuClassName,\n\t\thasMenuItems,\n\t\theadingClassName,\n\t\theadingLevel = 2,\n\t\tlabel: labelText,\n\t\tmenuItems,\n\t\tresetAll,\n\t\ttoggleItem,\n\t\t...headerProps\n\t} = useToolsPanelHeader( props );\n\n\tif ( ! labelText ) {\n\t\treturn null;\n\t}\n\n\tconst defaultItems = Object.entries( menuItems?.default || {} );\n\tconst optionalItems = Object.entries( menuItems?.optional || {} );\n\tconst dropDownMenuIcon = areAllOptionalControlsHidden ? plus : moreVertical;\n\tconst dropDownMenuLabelText = sprintf(\n\t\t// translators: %s: The name of the tool e.g. \"Color\" or \"Typography\".\n\t\t_x( '%s options', 'Button label to reveal tool panel options' ),\n\t\tlabelText\n\t);\n\tconst dropdownMenuDescriptionText = areAllOptionalControlsHidden\n\t\t? __( 'All options are currently hidden' )\n\t\t: undefined;\n\n\tconst canResetAll = [ ...defaultItems, ...optionalItems ].some(\n\t\t( [ , isSelected ] ) => isSelected\n\t);\n\n\treturn (\n\t\t<HStack { ...headerProps } ref={ forwardedRef }>\n\t\t\t<Heading level={ headingLevel } className={ headingClassName }>\n\t\t\t\t{ labelText }\n\t\t\t</Heading>\n\t\t\t{ hasMenuItems && (\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ dropDownMenuIcon }\n\t\t\t\t\tlabel={ dropDownMenuLabelText }\n\t\t\t\t\tmenuProps={ { className: dropdownMenuClassName } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tisSmall: true,\n\t\t\t\t\t\tdescribedBy: dropdownMenuDescriptionText,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ () => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<DefaultControlsGroup\n\t\t\t\t\t\t\t\titems={ defaultItems }\n\t\t\t\t\t\t\t\ttoggleItem={ toggleItem }\n\t\t\t\t\t\t\t\titemClassName={ defaultControlsItemClassName }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<OptionalControlsGroup\n\t\t\t\t\t\t\t\titems={ optionalItems }\n\t\t\t\t\t\t\t\ttoggleItem={ toggleItem }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\taria-disabled={ ! canResetAll }\n\t\t\t\t\t\t\t\t\tvariant={ 'tertiary' }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tif ( canResetAll ) {\n\t\t\t\t\t\t\t\t\t\t\tresetAll();\n\t\t\t\t\t\t\t\t\t\t\tspeak(\n\t\t\t\t\t\t\t\t\t\t\t\t__( 'All options reset' ),\n\t\t\t\t\t\t\t\t\t\t\t\t'assertive'\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Reset all' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t) }\n\t\t</HStack>\n\t);\n};\n\nconst ConnectedToolsPanelHeader = contextConnect(\n\tToolsPanelHeader,\n\t'ToolsPanelHeader'\n);\n\nexport default ConnectedToolsPanelHeader;\n"]}
|
|
@@ -31,8 +31,6 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
31
31
|
const noop = () => {};
|
|
32
32
|
|
|
33
33
|
function useToolsPanelItem(props) {
|
|
34
|
-
var _menuItems$menuGroup, _menuItems$menuGroup2, _menuItems$menuGroup3;
|
|
35
|
-
|
|
36
34
|
const {
|
|
37
35
|
className,
|
|
38
36
|
hasValue,
|
|
@@ -95,9 +93,9 @@ function useToolsPanelItem(props) {
|
|
|
95
93
|
// `ToolsPanel`.
|
|
96
94
|
|
|
97
95
|
const menuGroup = isShownByDefault ? 'default' : 'optional';
|
|
98
|
-
const isMenuItemChecked = menuItems
|
|
96
|
+
const isMenuItemChecked = menuItems?.[menuGroup]?.[label];
|
|
99
97
|
const wasMenuItemChecked = (0, _compose.usePrevious)(isMenuItemChecked);
|
|
100
|
-
const isRegistered =
|
|
98
|
+
const isRegistered = menuItems?.[menuGroup]?.[label] !== undefined;
|
|
101
99
|
const isValueSet = hasValue();
|
|
102
100
|
const wasValueSet = (0, _compose.usePrevious)(isValueSet);
|
|
103
101
|
const newValueSet = isValueSet && !wasValueSet; // Notify the panel when an item's value has been set.
|
|
@@ -127,17 +125,17 @@ function useToolsPanelItem(props) {
|
|
|
127
125
|
}
|
|
128
126
|
|
|
129
127
|
if (isMenuItemChecked && !isValueSet && !wasMenuItemChecked) {
|
|
130
|
-
onSelect
|
|
128
|
+
onSelect?.();
|
|
131
129
|
}
|
|
132
130
|
|
|
133
131
|
if (!isMenuItemChecked && wasMenuItemChecked) {
|
|
134
|
-
onDeselect
|
|
132
|
+
onDeselect?.();
|
|
135
133
|
}
|
|
136
134
|
}, [hasMatchingPanel, isMenuItemChecked, isRegistered, isResetting, isValueSet, wasMenuItemChecked, onSelect, onDeselect]); // The item is shown if it is a default control regardless of whether it
|
|
137
135
|
// has a value. Optional items are shown when they are checked or have
|
|
138
136
|
// a value.
|
|
139
137
|
|
|
140
|
-
const isShown = isShownByDefault ?
|
|
138
|
+
const isShown = isShownByDefault ? menuItems?.[menuGroup]?.[label] !== undefined : isMenuItemChecked;
|
|
141
139
|
const cx = (0, _useCx.useCx)();
|
|
142
140
|
const classes = (0, _element.useMemo)(() => {
|
|
143
141
|
const placeholderStyle = shouldRenderPlaceholder && !isShown && styles.ToolsPanelItemPlaceholder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel-item/hook.ts"],"names":["noop","useToolsPanelItem","props","className","hasValue","isShownByDefault","label","panelId","resetAllFilter","onDeselect","onSelect","otherProps","currentPanelId","menuItems","registerResetAllFilter","deregisterResetAllFilter","registerPanelItem","deregisterPanelItem","flagItemCustomization","isResetting","shouldRenderPlaceholderItems","shouldRenderPlaceholder","firstDisplayedItem","lastDisplayedItem","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","hasValueCallback","resetAllFilterCallback","previousPanelId","hasMatchingPanel","menuGroup","isMenuItemChecked","wasMenuItemChecked","isRegistered","undefined","isValueSet","wasValueSet","newValueSet","isShown","cx","classes","placeholderStyle","styles","ToolsPanelItemPlaceholder","firstItemStyle","lastItemStyle","ToolsPanelItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { usePrevious } from '@wordpress/compose';\nimport { useCallback, useEffect, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useToolsPanelContext } from '../context';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type { ToolsPanelItemProps } from '../types';\n\nconst noop = () => {};\n\nexport function useToolsPanelItem(\n\tprops: WordPressComponentProps< ToolsPanelItemProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\thasValue,\n\t\tisShownByDefault = false,\n\t\tlabel,\n\t\tpanelId,\n\t\tresetAllFilter = noop,\n\t\tonDeselect,\n\t\tonSelect,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanelItem' );\n\n\tconst {\n\t\tpanelId: currentPanelId,\n\t\tmenuItems,\n\t\tregisterResetAllFilter,\n\t\tderegisterResetAllFilter,\n\t\tregisterPanelItem,\n\t\tderegisterPanelItem,\n\t\tflagItemCustomization,\n\t\tisResetting,\n\t\tshouldRenderPlaceholderItems: shouldRenderPlaceholder,\n\t\tfirstDisplayedItem,\n\t\tlastDisplayedItem,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t} = useToolsPanelContext();\n\n\tconst hasValueCallback = useCallback( hasValue, [ panelId, hasValue ] );\n\tconst resetAllFilterCallback = useCallback( resetAllFilter, [\n\t\tpanelId,\n\t\tresetAllFilter,\n\t] );\n\tconst previousPanelId = usePrevious( currentPanelId );\n\n\tconst hasMatchingPanel =\n\t\tcurrentPanelId === panelId || currentPanelId === null;\n\n\t// Registering the panel item allows the panel to include it in its\n\t// automatically generated menu and determine its initial checked status.\n\tuseEffect( () => {\n\t\tif ( hasMatchingPanel && previousPanelId !== null ) {\n\t\t\tregisterPanelItem( {\n\t\t\t\thasValue: hasValueCallback,\n\t\t\t\tisShownByDefault,\n\t\t\t\tlabel,\n\t\t\t\tpanelId,\n\t\t\t} );\n\t\t}\n\n\t\treturn () => {\n\t\t\tif (\n\t\t\t\t( previousPanelId === null && !! currentPanelId ) ||\n\t\t\t\tcurrentPanelId === panelId\n\t\t\t) {\n\t\t\t\tderegisterPanelItem( label );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tcurrentPanelId,\n\t\thasMatchingPanel,\n\t\tisShownByDefault,\n\t\tlabel,\n\t\thasValueCallback,\n\t\tpanelId,\n\t\tpreviousPanelId,\n\t\tregisterPanelItem,\n\t\tderegisterPanelItem,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( hasMatchingPanel ) {\n\t\t\tregisterResetAllFilter( resetAllFilterCallback );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( hasMatchingPanel ) {\n\t\t\t\tderegisterResetAllFilter( resetAllFilterCallback );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tregisterResetAllFilter,\n\t\tderegisterResetAllFilter,\n\t\tresetAllFilterCallback,\n\t\thasMatchingPanel,\n\t] );\n\n\t// Note: `label` is used as a key when building menu item state in\n\t// `ToolsPanel`.\n\tconst menuGroup = isShownByDefault ? 'default' : 'optional';\n\tconst isMenuItemChecked = menuItems?.[ menuGroup ]?.[ label ];\n\tconst wasMenuItemChecked = usePrevious( isMenuItemChecked );\n\tconst isRegistered = menuItems?.[ menuGroup ]?.[ label ] !== undefined;\n\n\tconst isValueSet = hasValue();\n\tconst wasValueSet = usePrevious( isValueSet );\n\tconst newValueSet = isValueSet && ! wasValueSet;\n\n\t// Notify the panel when an item's value has been set.\n\t//\n\t// 1. For default controls, this is so \"reset\" appears beside its menu item.\n\t// 2. For optional controls, when the panel ID is `null`, it allows the\n\t// panel to ensure the item is toggled on for display in the menu, given the\n\t// value has been set external to the control.\n\tuseEffect( () => {\n\t\tif ( ! newValueSet ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isShownByDefault || currentPanelId === null ) {\n\t\t\tflagItemCustomization( label, menuGroup );\n\t\t}\n\t}, [\n\t\tcurrentPanelId,\n\t\tnewValueSet,\n\t\tisShownByDefault,\n\t\tmenuGroup,\n\t\tlabel,\n\t\tflagItemCustomization,\n\t] );\n\n\t// Determine if the panel item's corresponding menu is being toggled and\n\t// trigger appropriate callback if it is.\n\tuseEffect( () => {\n\t\t// We check whether this item is currently registered as items rendered\n\t\t// via fills can persist through the parent panel being remounted.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/45673\n\t\tif ( ! isRegistered || isResetting || ! hasMatchingPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isMenuItemChecked && ! isValueSet && ! wasMenuItemChecked ) {\n\t\t\tonSelect?.();\n\t\t}\n\n\t\tif ( ! isMenuItemChecked && wasMenuItemChecked ) {\n\t\t\tonDeselect?.();\n\t\t}\n\t}, [\n\t\thasMatchingPanel,\n\t\tisMenuItemChecked,\n\t\tisRegistered,\n\t\tisResetting,\n\t\tisValueSet,\n\t\twasMenuItemChecked,\n\t\tonSelect,\n\t\tonDeselect,\n\t] );\n\n\t// The item is shown if it is a default control regardless of whether it\n\t// has a value. Optional items are shown when they are checked or have\n\t// a value.\n\tconst isShown = isShownByDefault\n\t\t? menuItems?.[ menuGroup ]?.[ label ] !== undefined\n\t\t: isMenuItemChecked;\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst placeholderStyle =\n\t\t\tshouldRenderPlaceholder &&\n\t\t\t! isShown &&\n\t\t\tstyles.ToolsPanelItemPlaceholder;\n\t\tconst firstItemStyle =\n\t\t\tfirstDisplayedItem === label && __experimentalFirstVisibleItemClass;\n\t\tconst lastItemStyle =\n\t\t\tlastDisplayedItem === label && __experimentalLastVisibleItemClass;\n\t\treturn cx(\n\t\t\tstyles.ToolsPanelItem,\n\t\t\tplaceholderStyle,\n\t\t\tclassName,\n\t\t\tfirstItemStyle,\n\t\t\tlastItemStyle\n\t\t);\n\t}, [\n\t\tisShown,\n\t\tshouldRenderPlaceholder,\n\t\tclassName,\n\t\tcx,\n\t\tfirstDisplayedItem,\n\t\tlastDisplayedItem,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\tlabel,\n\t] );\n\n\treturn {\n\t\t...otherProps,\n\t\tisShown,\n\t\tshouldRenderPlaceholder,\n\t\tclassName: classes,\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/tools-panel/tools-panel-item/hook.ts"],"names":["noop","useToolsPanelItem","props","className","hasValue","isShownByDefault","label","panelId","resetAllFilter","onDeselect","onSelect","otherProps","currentPanelId","menuItems","registerResetAllFilter","deregisterResetAllFilter","registerPanelItem","deregisterPanelItem","flagItemCustomization","isResetting","shouldRenderPlaceholderItems","shouldRenderPlaceholder","firstDisplayedItem","lastDisplayedItem","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","hasValueCallback","resetAllFilterCallback","previousPanelId","hasMatchingPanel","menuGroup","isMenuItemChecked","wasMenuItemChecked","isRegistered","undefined","isValueSet","wasValueSet","newValueSet","isShown","cx","classes","placeholderStyle","styles","ToolsPanelItemPlaceholder","firstItemStyle","lastItemStyle","ToolsPanelItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { usePrevious } from '@wordpress/compose';\nimport { useCallback, useEffect, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport * as styles from '../styles';\nimport { useToolsPanelContext } from '../context';\nimport { useContextSystem, WordPressComponentProps } from '../../ui/context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport type { ToolsPanelItemProps } from '../types';\n\nconst noop = () => {};\n\nexport function useToolsPanelItem(\n\tprops: WordPressComponentProps< ToolsPanelItemProps, 'div' >\n) {\n\tconst {\n\t\tclassName,\n\t\thasValue,\n\t\tisShownByDefault = false,\n\t\tlabel,\n\t\tpanelId,\n\t\tresetAllFilter = noop,\n\t\tonDeselect,\n\t\tonSelect,\n\t\t...otherProps\n\t} = useContextSystem( props, 'ToolsPanelItem' );\n\n\tconst {\n\t\tpanelId: currentPanelId,\n\t\tmenuItems,\n\t\tregisterResetAllFilter,\n\t\tderegisterResetAllFilter,\n\t\tregisterPanelItem,\n\t\tderegisterPanelItem,\n\t\tflagItemCustomization,\n\t\tisResetting,\n\t\tshouldRenderPlaceholderItems: shouldRenderPlaceholder,\n\t\tfirstDisplayedItem,\n\t\tlastDisplayedItem,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t} = useToolsPanelContext();\n\n\tconst hasValueCallback = useCallback( hasValue, [ panelId, hasValue ] );\n\tconst resetAllFilterCallback = useCallback( resetAllFilter, [\n\t\tpanelId,\n\t\tresetAllFilter,\n\t] );\n\tconst previousPanelId = usePrevious( currentPanelId );\n\n\tconst hasMatchingPanel =\n\t\tcurrentPanelId === panelId || currentPanelId === null;\n\n\t// Registering the panel item allows the panel to include it in its\n\t// automatically generated menu and determine its initial checked status.\n\tuseEffect( () => {\n\t\tif ( hasMatchingPanel && previousPanelId !== null ) {\n\t\t\tregisterPanelItem( {\n\t\t\t\thasValue: hasValueCallback,\n\t\t\t\tisShownByDefault,\n\t\t\t\tlabel,\n\t\t\t\tpanelId,\n\t\t\t} );\n\t\t}\n\n\t\treturn () => {\n\t\t\tif (\n\t\t\t\t( previousPanelId === null && !! currentPanelId ) ||\n\t\t\t\tcurrentPanelId === panelId\n\t\t\t) {\n\t\t\t\tderegisterPanelItem( label );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tcurrentPanelId,\n\t\thasMatchingPanel,\n\t\tisShownByDefault,\n\t\tlabel,\n\t\thasValueCallback,\n\t\tpanelId,\n\t\tpreviousPanelId,\n\t\tregisterPanelItem,\n\t\tderegisterPanelItem,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( hasMatchingPanel ) {\n\t\t\tregisterResetAllFilter( resetAllFilterCallback );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( hasMatchingPanel ) {\n\t\t\t\tderegisterResetAllFilter( resetAllFilterCallback );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tregisterResetAllFilter,\n\t\tderegisterResetAllFilter,\n\t\tresetAllFilterCallback,\n\t\thasMatchingPanel,\n\t] );\n\n\t// Note: `label` is used as a key when building menu item state in\n\t// `ToolsPanel`.\n\tconst menuGroup = isShownByDefault ? 'default' : 'optional';\n\tconst isMenuItemChecked = menuItems?.[ menuGroup ]?.[ label ];\n\tconst wasMenuItemChecked = usePrevious( isMenuItemChecked );\n\tconst isRegistered = menuItems?.[ menuGroup ]?.[ label ] !== undefined;\n\n\tconst isValueSet = hasValue();\n\tconst wasValueSet = usePrevious( isValueSet );\n\tconst newValueSet = isValueSet && ! wasValueSet;\n\n\t// Notify the panel when an item's value has been set.\n\t//\n\t// 1. For default controls, this is so \"reset\" appears beside its menu item.\n\t// 2. For optional controls, when the panel ID is `null`, it allows the\n\t// panel to ensure the item is toggled on for display in the menu, given the\n\t// value has been set external to the control.\n\tuseEffect( () => {\n\t\tif ( ! newValueSet ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isShownByDefault || currentPanelId === null ) {\n\t\t\tflagItemCustomization( label, menuGroup );\n\t\t}\n\t}, [\n\t\tcurrentPanelId,\n\t\tnewValueSet,\n\t\tisShownByDefault,\n\t\tmenuGroup,\n\t\tlabel,\n\t\tflagItemCustomization,\n\t] );\n\n\t// Determine if the panel item's corresponding menu is being toggled and\n\t// trigger appropriate callback if it is.\n\tuseEffect( () => {\n\t\t// We check whether this item is currently registered as items rendered\n\t\t// via fills can persist through the parent panel being remounted.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/45673\n\t\tif ( ! isRegistered || isResetting || ! hasMatchingPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isMenuItemChecked && ! isValueSet && ! wasMenuItemChecked ) {\n\t\t\tonSelect?.();\n\t\t}\n\n\t\tif ( ! isMenuItemChecked && wasMenuItemChecked ) {\n\t\t\tonDeselect?.();\n\t\t}\n\t}, [\n\t\thasMatchingPanel,\n\t\tisMenuItemChecked,\n\t\tisRegistered,\n\t\tisResetting,\n\t\tisValueSet,\n\t\twasMenuItemChecked,\n\t\tonSelect,\n\t\tonDeselect,\n\t] );\n\n\t// The item is shown if it is a default control regardless of whether it\n\t// has a value. Optional items are shown when they are checked or have\n\t// a value.\n\tconst isShown = isShownByDefault\n\t\t? menuItems?.[ menuGroup ]?.[ label ] !== undefined\n\t\t: isMenuItemChecked;\n\n\tconst cx = useCx();\n\tconst classes = useMemo( () => {\n\t\tconst placeholderStyle =\n\t\t\tshouldRenderPlaceholder &&\n\t\t\t! isShown &&\n\t\t\tstyles.ToolsPanelItemPlaceholder;\n\t\tconst firstItemStyle =\n\t\t\tfirstDisplayedItem === label && __experimentalFirstVisibleItemClass;\n\t\tconst lastItemStyle =\n\t\t\tlastDisplayedItem === label && __experimentalLastVisibleItemClass;\n\t\treturn cx(\n\t\t\tstyles.ToolsPanelItem,\n\t\t\tplaceholderStyle,\n\t\t\tclassName,\n\t\t\tfirstItemStyle,\n\t\t\tlastItemStyle\n\t\t);\n\t}, [\n\t\tisShown,\n\t\tshouldRenderPlaceholder,\n\t\tclassName,\n\t\tcx,\n\t\tfirstDisplayedItem,\n\t\tlastDisplayedItem,\n\t\t__experimentalFirstVisibleItemClass,\n\t\t__experimentalLastVisibleItemClass,\n\t\tlabel,\n\t] );\n\n\treturn {\n\t\t...otherProps,\n\t\tisShown,\n\t\tshouldRenderPlaceholder,\n\t\tclassName: classes,\n\t};\n}\n"]}
|
package/build/tooltip/index.js
CHANGED
|
@@ -44,13 +44,12 @@ const eventCatcher = (0, _element.createElement)("div", {
|
|
|
44
44
|
className: "event-catcher"
|
|
45
45
|
});
|
|
46
46
|
|
|
47
|
-
const getDisabledElement =
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
} = _ref;
|
|
47
|
+
const getDisabledElement = ({
|
|
48
|
+
eventHandlers,
|
|
49
|
+
child,
|
|
50
|
+
childrenWithPopover,
|
|
51
|
+
mergedRefs
|
|
52
|
+
}) => {
|
|
54
53
|
return (0, _element.cloneElement)((0, _element.createElement)("span", {
|
|
55
54
|
className: "disabled-element-wrapper"
|
|
56
55
|
}, (0, _element.cloneElement)(eventCatcher, eventHandlers), (0, _element.cloneElement)(child, {
|
|
@@ -60,45 +59,41 @@ const getDisabledElement = _ref => {
|
|
|
60
59
|
});
|
|
61
60
|
};
|
|
62
61
|
|
|
63
|
-
const getRegularElement =
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
} = _ref2;
|
|
62
|
+
const getRegularElement = ({
|
|
63
|
+
child,
|
|
64
|
+
eventHandlers,
|
|
65
|
+
childrenWithPopover,
|
|
66
|
+
mergedRefs
|
|
67
|
+
}) => {
|
|
70
68
|
return (0, _element.cloneElement)(child, { ...eventHandlers,
|
|
71
69
|
children: childrenWithPopover,
|
|
72
70
|
ref: mergedRefs
|
|
73
71
|
});
|
|
74
72
|
};
|
|
75
73
|
|
|
76
|
-
const addPopoverToGrandchildren =
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
shortcut: shortcut
|
|
100
|
-
})));
|
|
101
|
-
};
|
|
74
|
+
const addPopoverToGrandchildren = ({
|
|
75
|
+
anchor,
|
|
76
|
+
grandchildren,
|
|
77
|
+
isOver,
|
|
78
|
+
offset,
|
|
79
|
+
position,
|
|
80
|
+
shortcut,
|
|
81
|
+
text,
|
|
82
|
+
className,
|
|
83
|
+
...props
|
|
84
|
+
}) => (0, _element.concatChildren)(grandchildren, isOver && (0, _element.createElement)(_popover.default, (0, _extends2.default)({
|
|
85
|
+
focusOnMount: false,
|
|
86
|
+
position: position,
|
|
87
|
+
className: (0, _classnames.default)('components-tooltip', className),
|
|
88
|
+
"aria-hidden": "true",
|
|
89
|
+
animate: false,
|
|
90
|
+
offset: offset,
|
|
91
|
+
anchor: anchor,
|
|
92
|
+
shift: true
|
|
93
|
+
}, props), text, (0, _element.createElement)(_shortcut.default, {
|
|
94
|
+
className: "components-tooltip__shortcut",
|
|
95
|
+
shortcut: shortcut
|
|
96
|
+
})));
|
|
102
97
|
|
|
103
98
|
const emitToChild = (children, eventName, event) => {
|
|
104
99
|
if (_element.Children.count(children) !== 1) {
|
|
@@ -118,8 +113,6 @@ const emitToChild = (children, eventName, event) => {
|
|
|
118
113
|
};
|
|
119
114
|
|
|
120
115
|
function Tooltip(props) {
|
|
121
|
-
var _Children$toArray$;
|
|
122
|
-
|
|
123
116
|
const {
|
|
124
117
|
children,
|
|
125
118
|
position = 'bottom middle',
|
|
@@ -144,7 +137,7 @@ function Tooltip(props) {
|
|
|
144
137
|
// so that the Tooltip can be correctly positioned. Also, merge with the
|
|
145
138
|
// existing ref for the first child, so that its ref is preserved.
|
|
146
139
|
|
|
147
|
-
const existingChildRef =
|
|
140
|
+
const existingChildRef = _element.Children.toArray(children)[0]?.ref;
|
|
148
141
|
const mergedChildRefs = (0, _compose.useMergeRefs)([setPopoverAnchor, existingChildRef]);
|
|
149
142
|
|
|
150
143
|
const createMouseDown = event => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","mergedRefs","children","ref","getRegularElement","addPopoverToGrandchildren","anchor","grandchildren","isOver","offset","position","shortcut","text","className","props","emitToChild","eventName","event","Children","count","only","disabled","Tooltip","delay","popoverProps","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","popoverAnchor","setPopoverAnchor","existingChildRef","toArray","mergedChildRefs","createMouseDown","target","tagName","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","includes","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":"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","sourcesContent":["// @ts-nocheck\n\n/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { useDebounce, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( {\n\teventHandlers,\n\tchild,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t\tref: mergedRefs,\n\t\t\t} ) }\n\t\t</span>,\n\t\t{ ...eventHandlers }\n\t);\n};\n\nconst getRegularElement = ( {\n\tchild,\n\teventHandlers,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t\tref: mergedRefs,\n\t} );\n};\n\nconst addPopoverToGrandchildren = ( {\n\tanchor,\n\tgrandchildren,\n\tisOver,\n\toffset,\n\tposition,\n\tshortcut,\n\ttext,\n\tclassName,\n\t...props\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName={ classNames( 'components-tooltip', className ) }\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\toffset={ offset }\n\t\t\t\tanchor={ anchor }\n\t\t\t\tshift\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( props ) {\n\tconst {\n\t\tchildren,\n\t\tposition = 'bottom middle',\n\t\ttext,\n\t\tshortcut,\n\t\tdelay = TOOLTIP_DELAY,\n\t\t...popoverProps\n\t} = props;\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\t// Using internal state (instead of a ref) for the popover anchor to make sure\n\t// that the component re-renders when the anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\t// Create a reference to the Tooltip's child, to be passed to the Popover\n\t// so that the Tooltip can be correctly positioned. Also, merge with the\n\t// existing ref for the first child, so that its ref is preserved.\n\tconst existingChildRef = Children.toArray( children )[ 0 ]?.ref;\n\tconst mergedChildRefs = useMergeRefs( [\n\t\tsetPopoverAnchor,\n\t\texistingChildRef,\n\t] );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// In firefox, the mouse down event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Preserve original child callback behavior.\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\t// In firefox, the mouse up event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior.\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called.\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = [ 'focus', 'mouseenter' ].includes( event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\t// Ignore reason: updating the deps array here could cause unexpected changes in behavior.\n\t// Deferring until a more detailed investigation/refactor can be performed.\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tanchor: popoverAnchor,\n\t\tisOver,\n\t\toffset: 4,\n\t\tposition,\n\t\tshortcut,\n\t\ttext,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t\t...popoverProps,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t\tmergedRefs: mergedChildRefs,\n\t} );\n}\n\nexport default Tooltip;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/components/src/tooltip/index.js"],"names":["TOOLTIP_DELAY","eventCatcher","getDisabledElement","eventHandlers","child","childrenWithPopover","mergedRefs","children","ref","getRegularElement","addPopoverToGrandchildren","anchor","grandchildren","isOver","offset","position","shortcut","text","className","props","emitToChild","eventName","event","Children","count","only","disabled","Tooltip","delay","popoverProps","isMouseDown","setIsMouseDown","setIsOver","delayedSetIsOver","popoverAnchor","setPopoverAnchor","existingChildRef","toArray","mergedChildRefs","createMouseDown","target","tagName","document","addEventListener","cancelIsMouseDown","createMouseUp","removeEventListener","createMouseEvent","type","createToggleIsOver","isDelayed","currentTarget","cancel","_isOver","includes","clearOnUnmount","process","env","NODE_ENV","console","error","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","onMouseDown","getElementWithPopover","popoverData"],"mappings":"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","sourcesContent":["// @ts-nocheck\n\n/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tChildren,\n\tcloneElement,\n\tconcatChildren,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { useDebounce, useMergeRefs } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Popover from '../popover';\nimport Shortcut from '../shortcut';\n\n/**\n * Time over children to wait before showing tooltip\n *\n * @type {number}\n */\nexport const TOOLTIP_DELAY = 700;\n\nconst eventCatcher = <div className=\"event-catcher\" />;\n\nconst getDisabledElement = ( {\n\teventHandlers,\n\tchild,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement(\n\t\t<span className=\"disabled-element-wrapper\">\n\t\t\t{ cloneElement( eventCatcher, eventHandlers ) }\n\t\t\t{ cloneElement( child, {\n\t\t\t\tchildren: childrenWithPopover,\n\t\t\t\tref: mergedRefs,\n\t\t\t} ) }\n\t\t</span>,\n\t\t{ ...eventHandlers }\n\t);\n};\n\nconst getRegularElement = ( {\n\tchild,\n\teventHandlers,\n\tchildrenWithPopover,\n\tmergedRefs,\n} ) => {\n\treturn cloneElement( child, {\n\t\t...eventHandlers,\n\t\tchildren: childrenWithPopover,\n\t\tref: mergedRefs,\n\t} );\n};\n\nconst addPopoverToGrandchildren = ( {\n\tanchor,\n\tgrandchildren,\n\tisOver,\n\toffset,\n\tposition,\n\tshortcut,\n\ttext,\n\tclassName,\n\t...props\n} ) =>\n\tconcatChildren(\n\t\tgrandchildren,\n\t\tisOver && (\n\t\t\t<Popover\n\t\t\t\tfocusOnMount={ false }\n\t\t\t\tposition={ position }\n\t\t\t\tclassName={ classNames( 'components-tooltip', className ) }\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tanimate={ false }\n\t\t\t\toffset={ offset }\n\t\t\t\tanchor={ anchor }\n\t\t\t\tshift\n\t\t\t\t{ ...props }\n\t\t\t>\n\t\t\t\t{ text }\n\t\t\t\t<Shortcut\n\t\t\t\t\tclassName=\"components-tooltip__shortcut\"\n\t\t\t\t\tshortcut={ shortcut }\n\t\t\t\t/>\n\t\t\t</Popover>\n\t\t)\n\t);\n\nconst emitToChild = ( children, eventName, event ) => {\n\tif ( Children.count( children ) !== 1 ) {\n\t\treturn;\n\t}\n\n\tconst child = Children.only( children );\n\n\t// If the underlying element is disabled, do not emit the event.\n\tif ( child.props.disabled ) {\n\t\treturn;\n\t}\n\n\tif ( typeof child.props[ eventName ] === 'function' ) {\n\t\tchild.props[ eventName ]( event );\n\t}\n};\n\nfunction Tooltip( props ) {\n\tconst {\n\t\tchildren,\n\t\tposition = 'bottom middle',\n\t\ttext,\n\t\tshortcut,\n\t\tdelay = TOOLTIP_DELAY,\n\t\t...popoverProps\n\t} = props;\n\t/**\n\t * Whether a mouse is currently pressed, used in determining whether\n\t * to handle a focus event as displaying the tooltip immediately.\n\t *\n\t * @type {boolean}\n\t */\n\tconst [ isMouseDown, setIsMouseDown ] = useState( false );\n\tconst [ isOver, setIsOver ] = useState( false );\n\tconst delayedSetIsOver = useDebounce( setIsOver, delay );\n\t// Using internal state (instead of a ref) for the popover anchor to make sure\n\t// that the component re-renders when the anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\t// Create a reference to the Tooltip's child, to be passed to the Popover\n\t// so that the Tooltip can be correctly positioned. Also, merge with the\n\t// existing ref for the first child, so that its ref is preserved.\n\tconst existingChildRef = Children.toArray( children )[ 0 ]?.ref;\n\tconst mergedChildRefs = useMergeRefs( [\n\t\tsetPopoverAnchor,\n\t\texistingChildRef,\n\t] );\n\n\tconst createMouseDown = ( event ) => {\n\t\t// In firefox, the mouse down event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Preserve original child callback behavior.\n\t\temitToChild( children, 'onMouseDown', event );\n\n\t\t// On mouse down, the next `mouseup` should revert the value of the\n\t\t// instance property and remove its own event handler. The bind is\n\t\t// made on the document since the `mouseup` might not occur within\n\t\t// the bounds of the element.\n\t\tdocument.addEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( true );\n\t};\n\n\tconst createMouseUp = ( event ) => {\n\t\t// In firefox, the mouse up event is also fired when the select\n\t\t// list is chosen.\n\t\t// Cancel further processing because re-rendering of child components\n\t\t// causes onChange to be triggered with the old value.\n\t\t// See https://github.com/WordPress/gutenberg/pull/42483\n\t\tif ( event.target.tagName === 'OPTION' ) {\n\t\t\treturn;\n\t\t}\n\n\t\temitToChild( children, 'onMouseUp', event );\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t\tsetIsMouseDown( false );\n\t};\n\n\tconst createMouseEvent = ( type ) => {\n\t\tif ( type === 'mouseUp' ) return createMouseUp;\n\t\tif ( type === 'mouseDown' ) return createMouseDown;\n\t};\n\n\t/**\n\t * Prebound `isInMouseDown` handler, created as a constant reference to\n\t * assure ability to remove in component unmount.\n\t *\n\t * @type {Function}\n\t */\n\tconst cancelIsMouseDown = createMouseEvent( 'mouseUp' );\n\n\tconst createToggleIsOver = ( eventName, isDelayed ) => {\n\t\treturn ( event ) => {\n\t\t\t// Preserve original child callback behavior.\n\t\t\temitToChild( children, eventName, event );\n\n\t\t\t// Mouse events behave unreliably in React for disabled elements,\n\t\t\t// firing on mouseenter but not mouseleave. Further, the default\n\t\t\t// behavior for disabled elements in some browsers is to ignore\n\t\t\t// mouse events. Don't bother trying to handle them.\n\t\t\t//\n\t\t\t// See: https://github.com/facebook/react/issues/4251\n\t\t\tif ( event.currentTarget.disabled ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// A focus event will occur as a result of a mouse click, but it\n\t\t\t// should be disambiguated between interacting with the button and\n\t\t\t// using an explicit focus shift as a cue to display the tooltip.\n\t\t\tif ( 'focus' === event.type && isMouseDown ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Needed in case unsetting is over while delayed set pending, i.e.\n\t\t\t// quickly blur/mouseleave before delayedSetIsOver is called.\n\t\t\tdelayedSetIsOver.cancel();\n\n\t\t\tconst _isOver = [ 'focus', 'mouseenter' ].includes( event.type );\n\t\t\tif ( _isOver === isOver ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isDelayed ) {\n\t\t\t\tdelayedSetIsOver( _isOver );\n\t\t\t} else {\n\t\t\t\tsetIsOver( _isOver );\n\t\t\t}\n\t\t};\n\t};\n\tconst clearOnUnmount = () => {\n\t\tdelayedSetIsOver.cancel();\n\t\tdocument.removeEventListener( 'mouseup', cancelIsMouseDown );\n\t};\n\n\t// Ignore reason: updating the deps array here could cause unexpected changes in behavior.\n\t// Deferring until a more detailed investigation/refactor can be performed.\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\tuseEffect( () => clearOnUnmount, [] );\n\n\tif ( Children.count( children ) !== 1 ) {\n\t\tif ( 'development' === process.env.NODE_ENV ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error(\n\t\t\t\t'Tooltip should be called with only a single child element.'\n\t\t\t);\n\t\t}\n\n\t\treturn children;\n\t}\n\n\tconst eventHandlers = {\n\t\tonMouseEnter: createToggleIsOver( 'onMouseEnter', true ),\n\t\tonMouseLeave: createToggleIsOver( 'onMouseLeave' ),\n\t\tonClick: createToggleIsOver( 'onClick' ),\n\t\tonFocus: createToggleIsOver( 'onFocus' ),\n\t\tonBlur: createToggleIsOver( 'onBlur' ),\n\t\tonMouseDown: createMouseEvent( 'mouseDown' ),\n\t};\n\n\tconst child = Children.only( children );\n\tconst { children: grandchildren, disabled } = child.props;\n\tconst getElementWithPopover = disabled\n\t\t? getDisabledElement\n\t\t: getRegularElement;\n\n\tconst popoverData = {\n\t\tanchor: popoverAnchor,\n\t\tisOver,\n\t\toffset: 4,\n\t\tposition,\n\t\tshortcut,\n\t\ttext,\n\t};\n\tconst childrenWithPopover = addPopoverToGrandchildren( {\n\t\tgrandchildren,\n\t\t...popoverData,\n\t\t...popoverProps,\n\t} );\n\n\treturn getElementWithPopover( {\n\t\tchild,\n\t\teventHandlers,\n\t\tchildrenWithPopover,\n\t\tmergedRefs: mergedChildRefs,\n\t} );\n}\n\nexport default Tooltip;\n"]}
|
|
@@ -69,15 +69,12 @@ const useKeyboardVisibility = () => {
|
|
|
69
69
|
return keyboardVisible;
|
|
70
70
|
};
|
|
71
71
|
|
|
72
|
-
const Tooltip =
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
text,
|
|
79
|
-
visible: initialVisible = false
|
|
80
|
-
} = _ref;
|
|
72
|
+
const Tooltip = ({
|
|
73
|
+
children,
|
|
74
|
+
position = 'top',
|
|
75
|
+
text,
|
|
76
|
+
visible: initialVisible = false
|
|
77
|
+
}) => {
|
|
81
78
|
const referenceElementRef = (0, _element.useRef)(null);
|
|
82
79
|
const animationValue = (0, _element.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
83
80
|
const [, horizontalPosition = 'center'] = position.split(' ');
|
|
@@ -176,7 +173,7 @@ const Tooltip = _ref => {
|
|
|
176
173
|
const tooltipBoxStyles = [_style.default.tooltip__box, horizontalPosition === 'right' && _style.default['tooltip--rightAlign'], {
|
|
177
174
|
elevation: 2,
|
|
178
175
|
opacity: animationValue,
|
|
179
|
-
shadowColor:
|
|
176
|
+
shadowColor: _style.default.tooltip__shadow?.color,
|
|
180
177
|
shadowOffset: {
|
|
181
178
|
height: 2,
|
|
182
179
|
width: 0
|
|
@@ -211,10 +208,9 @@ const Tooltip = _ref => {
|
|
|
211
208
|
});
|
|
212
209
|
};
|
|
213
210
|
|
|
214
|
-
const getTooltipLayout =
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
} = _ref2;
|
|
211
|
+
const getTooltipLayout = ({
|
|
212
|
+
nativeEvent
|
|
213
|
+
}) => {
|
|
218
214
|
const {
|
|
219
215
|
height,
|
|
220
216
|
width
|
|
@@ -244,11 +240,10 @@ const Tooltip = _ref => {
|
|
|
244
240
|
})))));
|
|
245
241
|
};
|
|
246
242
|
|
|
247
|
-
const TooltipSlot =
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
} = _ref3;
|
|
243
|
+
const TooltipSlot = ({
|
|
244
|
+
children,
|
|
245
|
+
...rest
|
|
246
|
+
}) => {
|
|
252
247
|
const [handleScreenTouch, setHandleScreenTouch] = (0, _element.useState)(null);
|
|
253
248
|
|
|
254
249
|
const onHandleScreenTouch = callback => {
|