@wordpress/components 36.0.1 → 37.0.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 +80 -3
- package/CONTRIBUTING.md +6 -4
- package/build/angle-picker-control/index.cjs +0 -1
- package/build/angle-picker-control/index.cjs.map +2 -2
- package/build/autocomplete/index.cjs +3 -3
- package/build/autocomplete/index.cjs.map +3 -3
- package/build/border-box-control/border-box-control/component.cjs +4 -9
- package/build/border-box-control/border-box-control/component.cjs.map +2 -2
- package/build/border-box-control/border-box-control/hook.cjs +3 -10
- package/build/border-box-control/border-box-control/hook.cjs.map +2 -2
- package/build/border-box-control/border-box-control-linked-button/hook.cjs +2 -3
- package/build/border-box-control/border-box-control-linked-button/hook.cjs.map +2 -2
- package/build/border-box-control/border-box-control-split-controls/component.cjs +2 -6
- package/build/border-box-control/border-box-control-split-controls/component.cjs.map +2 -2
- package/build/border-box-control/border-box-control-split-controls/hook.cjs +2 -4
- package/build/border-box-control/border-box-control-split-controls/hook.cjs.map +2 -2
- package/build/border-box-control/border-box-control-visualizer/hook.cjs +2 -3
- package/build/border-box-control/border-box-control-visualizer/hook.cjs.map +2 -2
- package/build/border-box-control/styles.cjs +21 -18
- package/build/border-box-control/styles.cjs.map +2 -2
- package/build/border-control/border-control/component.cjs +3 -11
- package/build/border-control/border-control/component.cjs.map +2 -2
- package/build/border-control/border-control/hook.cjs +11 -21
- package/build/border-control/border-control/hook.cjs.map +3 -3
- package/build/border-control/border-control-dropdown/component.cjs +1 -2
- package/build/border-control/border-control-dropdown/component.cjs.map +2 -2
- package/build/border-control/border-control-dropdown/hook.cjs +2 -4
- package/build/border-control/border-control-dropdown/hook.cjs.map +2 -2
- package/build/border-control/border-control-style-picker/component.cjs +0 -1
- package/build/border-control/border-control-style-picker/component.cjs.map +2 -2
- package/build/border-control/styles.cjs +27 -15
- package/build/border-control/styles.cjs.map +2 -2
- package/build/box-control/box-input-control.cjs +0 -5
- package/build/box-control/box-input-control.cjs.map +2 -2
- package/build/card/card/hook.cjs +4 -1
- package/build/card/card/hook.cjs.map +2 -2
- package/build/card/card-footer/hook.cjs +12 -12
- package/build/card/card-footer/hook.cjs.map +2 -2
- package/build/card/card-header/hook.cjs +12 -12
- package/build/card/card-header/hook.cjs.map +2 -2
- package/build/card/styles.cjs +43 -13
- package/build/card/styles.cjs.map +2 -2
- package/build/color-palette/styles.cjs +1 -1
- package/build/color-palette/styles.cjs.map +2 -2
- package/build/color-picker/component.cjs.map +2 -2
- package/build/color-picker/hex-input.cjs +0 -1
- package/build/color-picker/hex-input.cjs.map +2 -2
- package/build/color-picker/input-with-slider.cjs +0 -2
- package/build/color-picker/input-with-slider.cjs.map +2 -2
- package/build/combobox-control/index.cjs +1 -10
- package/build/combobox-control/index.cjs.map +2 -2
- package/build/combobox-control/styles.cjs +1 -5
- package/build/combobox-control/styles.cjs.map +2 -2
- package/build/content-editable-control/docs-manifest.json +5 -0
- package/build/content-editable-control/index.cjs +171 -0
- package/build/content-editable-control/index.cjs.map +7 -0
- package/build/content-editable-control/types.cjs +19 -0
- package/build/content-editable-control/types.cjs.map +7 -0
- package/build/custom-gradient-picker/index.cjs +0 -1
- package/build/custom-gradient-picker/index.cjs.map +2 -2
- package/build/custom-select-control/index.cjs +4 -19
- package/build/custom-select-control/index.cjs.map +2 -2
- package/build/custom-select-control-v2/custom-select.cjs +0 -1
- package/build/custom-select-control-v2/custom-select.cjs.map +2 -2
- package/build/date-time/date-picker/styles.cjs +8 -8
- package/build/date-time/date-picker/styles.cjs.map +2 -2
- package/build/date-time/time-picker/index.cjs +0 -3
- package/build/date-time/time-picker/index.cjs.map +2 -2
- package/build/date-time/time-picker/time-input/index.cjs +0 -3
- package/build/date-time/time-picker/time-input/index.cjs.map +2 -2
- package/build/divider/component.cjs +1 -1
- package/build/divider/component.cjs.map +2 -2
- package/build/elevation/hook.cjs +6 -5
- package/build/elevation/hook.cjs.map +2 -2
- package/build/external-link/index.cjs +0 -3
- package/build/external-link/index.cjs.map +2 -2
- package/build/flex/flex/hook.cjs +97 -18
- package/build/flex/flex/hook.cjs.map +4 -4
- package/build/flex/flex-item/hook.cjs +94 -10
- package/build/flex/flex-item/hook.cjs.map +4 -4
- package/build/focal-point-picker/controls.cjs +0 -1
- package/build/focal-point-picker/controls.cjs.map +2 -2
- package/build/focal-point-picker/index.cjs +1 -0
- package/build/focal-point-picker/index.cjs.map +2 -2
- package/build/font-size-picker/font-size-picker-select.cjs +1 -6
- package/build/font-size-picker/font-size-picker-select.cjs.map +2 -2
- package/build/font-size-picker/font-size-picker-toggle-group.cjs +0 -5
- package/build/font-size-picker/font-size-picker-toggle-group.cjs.map +2 -2
- package/build/font-size-picker/index.cjs +1 -18
- package/build/font-size-picker/index.cjs.map +2 -2
- package/build/form-file-upload/index.cjs +7 -18
- package/build/form-file-upload/index.cjs.map +2 -2
- package/build/form-token-field/index.cjs +1 -11
- package/build/form-token-field/index.cjs.map +2 -2
- package/build/form-token-field/styles.cjs +1 -7
- package/build/form-token-field/styles.cjs.map +2 -2
- package/build/heading/hook.cjs +1 -1
- package/build/heading/hook.cjs.map +1 -1
- package/build/input-control/index.cjs +5 -14
- package/build/input-control/index.cjs.map +2 -2
- package/build/input-control/input-base.cjs +2 -6
- package/build/input-control/input-base.cjs.map +2 -2
- package/build/input-control/styles/input-control-styles.cjs +24 -30
- package/build/input-control/styles/input-control-styles.cjs.map +2 -2
- package/build/menu/group-label.cjs +2 -1
- package/build/menu/group-label.cjs.map +2 -2
- package/build/number-control/index.cjs +1 -11
- package/build/number-control/index.cjs.map +2 -2
- package/build/palette-edit/styles.cjs +9 -9
- package/build/palette-edit/styles.cjs.map +2 -2
- package/build/private-apis.cjs +3 -0
- package/build/private-apis.cjs.map +3 -3
- package/build/query-controls/author-select.cjs +1 -3
- package/build/query-controls/author-select.cjs.map +2 -2
- package/build/query-controls/category-select.cjs +1 -3
- package/build/query-controls/category-select.cjs.map +2 -2
- package/build/query-controls/index.cjs +0 -5
- package/build/query-controls/index.cjs.map +2 -2
- package/build/radio-group/radio.cjs +6 -14
- package/build/radio-group/radio.cjs.map +2 -2
- package/build/range-control/index.cjs +5 -15
- package/build/range-control/index.cjs.map +2 -2
- package/build/range-control/styles/range-control-styles.cjs +32 -30
- package/build/range-control/styles/range-control-styles.cjs.map +2 -2
- package/build/resizable-box/index.cjs.map +2 -2
- package/build/sandbox/index.cjs +73 -69
- package/build/sandbox/index.cjs.map +2 -2
- package/build/search-control/index.cjs +2 -2
- package/build/search-control/index.cjs.map +2 -2
- package/build/select-control/index.cjs +6 -15
- package/build/select-control/index.cjs.map +2 -2
- package/build/select-control/styles/select-control-styles.cjs +8 -16
- package/build/select-control/styles/select-control-styles.cjs.map +2 -2
- package/build/slot-fill/index.cjs.map +2 -2
- package/build/spacer/hook.cjs +150 -13
- package/build/spacer/hook.cjs.map +4 -4
- package/build/surface/hook.cjs +103 -16
- package/build/surface/hook.cjs.map +4 -4
- package/build/text/hook.cjs +11 -11
- package/build/text/hook.cjs.map +2 -2
- package/build/theme/index.cjs +119 -7
- package/build/theme/index.cjs.map +4 -4
- package/build/toggle-group-control/toggle-group-control/as-button-group.cjs +1 -3
- package/build/toggle-group-control/toggle-group-control/as-button-group.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control/as-radio-group.cjs +1 -3
- package/build/toggle-group-control/toggle-group-control/as-radio-group.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control/component.cjs +6 -16
- package/build/toggle-group-control/toggle-group-control/component.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control/styles.cjs +11 -37
- package/build/toggle-group-control/toggle-group-control/styles.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control-option/component.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control-option-base/component.cjs +3 -5
- package/build/toggle-group-control/toggle-group-control-option-base/component.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control-option-base/styles.cjs +14 -18
- package/build/toggle-group-control/toggle-group-control-option-base/styles.cjs.map +2 -2
- package/build/toggle-group-control/toggle-group-control-option-icon/component.cjs.map +1 -1
- package/build/tools-panel/styles.cjs +25 -16
- package/build/tools-panel/styles.cjs.map +2 -2
- package/build/tools-panel/tools-panel/component.cjs.map +2 -2
- package/build/tools-panel/tools-panel/hook.cjs +5 -3
- package/build/tools-panel/tools-panel/hook.cjs.map +2 -2
- package/build/tree-select/index.cjs +9 -20
- package/build/tree-select/index.cjs.map +2 -2
- package/build/truncate/hook.cjs +95 -9
- package/build/truncate/hook.cjs.map +4 -4
- package/build/unit-control/index.cjs +2 -12
- package/build/unit-control/index.cjs.map +2 -2
- package/build/utils/base-label.cjs +1 -1
- package/build/utils/base-label.cjs.map +2 -2
- package/build/utils/config-values.cjs +1 -9
- package/build/utils/config-values.cjs.map +2 -2
- package/build/utils/font-values.cjs +1 -1
- package/build/utils/font-values.cjs.map +1 -1
- package/build/utils/hooks/use-cx.cjs.map +2 -2
- package/build/utils/polymorphic-element.cjs +123 -0
- package/build/utils/polymorphic-element.cjs.map +7 -0
- package/build/validated-form-controls/components/combobox-control.cjs +0 -1
- package/build/validated-form-controls/components/combobox-control.cjs.map +2 -2
- package/build/validated-form-controls/components/content-editable-control.cjs +84 -0
- package/build/validated-form-controls/components/content-editable-control.cjs.map +7 -0
- package/build/validated-form-controls/components/custom-select-control.cjs +0 -1
- package/build/validated-form-controls/components/custom-select-control.cjs.map +2 -2
- package/build/validated-form-controls/components/form-token-field.cjs +0 -1
- package/build/validated-form-controls/components/form-token-field.cjs.map +2 -2
- package/build/validated-form-controls/components/index.cjs +2 -0
- package/build/validated-form-controls/components/index.cjs.map +2 -2
- package/build/validated-form-controls/components/input-control.cjs +0 -1
- package/build/validated-form-controls/components/input-control.cjs.map +2 -2
- package/build/validated-form-controls/components/number-control.cjs +0 -1
- package/build/validated-form-controls/components/number-control.cjs.map +2 -2
- package/build/validated-form-controls/components/range-control.cjs +0 -1
- package/build/validated-form-controls/components/range-control.cjs.map +2 -2
- package/build/validated-form-controls/components/select-control.cjs +0 -1
- package/build/validated-form-controls/components/select-control.cjs.map +2 -2
- package/build/validated-form-controls/components/toggle-group-control.cjs +0 -1
- package/build/validated-form-controls/components/toggle-group-control.cjs.map +2 -2
- package/build/validated-form-controls/control-with-error.cjs +1 -4
- package/build/validated-form-controls/control-with-error.cjs.map +2 -2
- package/build/view/component.cjs +4 -20
- package/build/view/component.cjs.map +3 -3
- package/build-module/angle-picker-control/index.mjs +0 -1
- package/build-module/angle-picker-control/index.mjs.map +2 -2
- package/build-module/autocomplete/index.mjs +5 -5
- package/build-module/autocomplete/index.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control/component.mjs +4 -9
- package/build-module/border-box-control/border-box-control/component.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control/hook.mjs +3 -10
- package/build-module/border-box-control/border-box-control/hook.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control-linked-button/hook.mjs +2 -3
- package/build-module/border-box-control/border-box-control-linked-button/hook.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control-split-controls/component.mjs +2 -6
- package/build-module/border-box-control/border-box-control-split-controls/component.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control-split-controls/hook.mjs +2 -4
- package/build-module/border-box-control/border-box-control-split-controls/hook.mjs.map +2 -2
- package/build-module/border-box-control/border-box-control-visualizer/hook.mjs +2 -3
- package/build-module/border-box-control/border-box-control-visualizer/hook.mjs.map +2 -2
- package/build-module/border-box-control/styles.mjs +21 -18
- package/build-module/border-box-control/styles.mjs.map +2 -2
- package/build-module/border-control/border-control/component.mjs +3 -11
- package/build-module/border-control/border-control/component.mjs.map +2 -2
- package/build-module/border-control/border-control/hook.mjs +11 -21
- package/build-module/border-control/border-control/hook.mjs.map +3 -3
- package/build-module/border-control/border-control-dropdown/component.mjs +1 -2
- package/build-module/border-control/border-control-dropdown/component.mjs.map +2 -2
- package/build-module/border-control/border-control-dropdown/hook.mjs +2 -4
- package/build-module/border-control/border-control-dropdown/hook.mjs.map +2 -2
- package/build-module/border-control/border-control-style-picker/component.mjs +0 -1
- package/build-module/border-control/border-control-style-picker/component.mjs.map +2 -2
- package/build-module/border-control/styles.mjs +26 -15
- package/build-module/border-control/styles.mjs.map +2 -2
- package/build-module/box-control/box-input-control.mjs +0 -5
- package/build-module/box-control/box-input-control.mjs.map +2 -2
- package/build-module/card/card/hook.mjs +4 -1
- package/build-module/card/card/hook.mjs.map +2 -2
- package/build-module/card/card-footer/hook.mjs +12 -12
- package/build-module/card/card-footer/hook.mjs.map +2 -2
- package/build-module/card/card-header/hook.mjs +12 -12
- package/build-module/card/card-header/hook.mjs.map +2 -2
- package/build-module/card/styles.mjs +40 -13
- package/build-module/card/styles.mjs.map +2 -2
- package/build-module/color-palette/styles.mjs +1 -1
- package/build-module/color-palette/styles.mjs.map +2 -2
- package/build-module/color-picker/component.mjs.map +2 -2
- package/build-module/color-picker/hex-input.mjs +0 -1
- package/build-module/color-picker/hex-input.mjs.map +2 -2
- package/build-module/color-picker/input-with-slider.mjs +0 -2
- package/build-module/color-picker/input-with-slider.mjs.map +2 -2
- package/build-module/combobox-control/index.mjs +1 -10
- package/build-module/combobox-control/index.mjs.map +2 -2
- package/build-module/combobox-control/styles.mjs +1 -5
- package/build-module/combobox-control/styles.mjs.map +2 -2
- package/build-module/content-editable-control/docs-manifest.json +5 -0
- package/build-module/content-editable-control/index.mjs +136 -0
- package/build-module/content-editable-control/index.mjs.map +7 -0
- package/build-module/content-editable-control/types.mjs +1 -0
- package/build-module/content-editable-control/types.mjs.map +7 -0
- package/build-module/custom-gradient-picker/index.mjs +0 -1
- package/build-module/custom-gradient-picker/index.mjs.map +2 -2
- package/build-module/custom-select-control/index.mjs +4 -19
- package/build-module/custom-select-control/index.mjs.map +2 -2
- package/build-module/custom-select-control-v2/custom-select.mjs +0 -1
- package/build-module/custom-select-control-v2/custom-select.mjs.map +2 -2
- package/build-module/date-time/date-picker/styles.mjs +8 -8
- package/build-module/date-time/date-picker/styles.mjs.map +2 -2
- package/build-module/date-time/time-picker/index.mjs +0 -3
- package/build-module/date-time/time-picker/index.mjs.map +2 -2
- package/build-module/date-time/time-picker/time-input/index.mjs +0 -3
- package/build-module/date-time/time-picker/time-input/index.mjs.map +2 -2
- package/build-module/divider/component.mjs +1 -1
- package/build-module/divider/component.mjs.map +2 -2
- package/build-module/elevation/hook.mjs +6 -5
- package/build-module/elevation/hook.mjs.map +2 -2
- package/build-module/external-link/index.mjs +0 -3
- package/build-module/external-link/index.mjs.map +2 -2
- package/build-module/flex/flex/hook.mjs +97 -18
- package/build-module/flex/flex/hook.mjs.map +3 -3
- package/build-module/flex/flex-item/hook.mjs +94 -10
- package/build-module/flex/flex-item/hook.mjs.map +3 -3
- package/build-module/focal-point-picker/controls.mjs +0 -1
- package/build-module/focal-point-picker/controls.mjs.map +2 -2
- package/build-module/focal-point-picker/index.mjs +1 -0
- package/build-module/focal-point-picker/index.mjs.map +2 -2
- package/build-module/font-size-picker/font-size-picker-select.mjs +1 -6
- package/build-module/font-size-picker/font-size-picker-select.mjs.map +2 -2
- package/build-module/font-size-picker/font-size-picker-toggle-group.mjs +0 -5
- package/build-module/font-size-picker/font-size-picker-toggle-group.mjs.map +2 -2
- package/build-module/font-size-picker/index.mjs +1 -18
- package/build-module/font-size-picker/index.mjs.map +2 -2
- package/build-module/form-file-upload/index.mjs +7 -18
- package/build-module/form-file-upload/index.mjs.map +2 -2
- package/build-module/form-token-field/index.mjs +1 -11
- package/build-module/form-token-field/index.mjs.map +2 -2
- package/build-module/form-token-field/styles.mjs +1 -7
- package/build-module/form-token-field/styles.mjs.map +2 -2
- package/build-module/heading/hook.mjs +1 -1
- package/build-module/heading/hook.mjs.map +1 -1
- package/build-module/input-control/index.mjs +5 -14
- package/build-module/input-control/index.mjs.map +2 -2
- package/build-module/input-control/input-base.mjs +2 -6
- package/build-module/input-control/input-base.mjs.map +2 -2
- package/build-module/input-control/styles/input-control-styles.mjs +24 -30
- package/build-module/input-control/styles/input-control-styles.mjs.map +2 -2
- package/build-module/menu/group-label.mjs +2 -1
- package/build-module/menu/group-label.mjs.map +2 -2
- package/build-module/number-control/index.mjs +1 -11
- package/build-module/number-control/index.mjs.map +2 -2
- package/build-module/palette-edit/styles.mjs +9 -9
- package/build-module/palette-edit/styles.mjs.map +2 -2
- package/build-module/private-apis.mjs +4 -1
- package/build-module/private-apis.mjs.map +2 -2
- package/build-module/query-controls/author-select.mjs +1 -3
- package/build-module/query-controls/author-select.mjs.map +2 -2
- package/build-module/query-controls/category-select.mjs +1 -3
- package/build-module/query-controls/category-select.mjs.map +2 -2
- package/build-module/query-controls/index.mjs +0 -5
- package/build-module/query-controls/index.mjs.map +2 -2
- package/build-module/radio-group/radio.mjs +6 -14
- package/build-module/radio-group/radio.mjs.map +2 -2
- package/build-module/range-control/index.mjs +5 -15
- package/build-module/range-control/index.mjs.map +2 -2
- package/build-module/range-control/styles/range-control-styles.mjs +32 -30
- package/build-module/range-control/styles/range-control-styles.mjs.map +2 -2
- package/build-module/resizable-box/index.mjs.map +2 -2
- package/build-module/sandbox/index.mjs +71 -68
- package/build-module/sandbox/index.mjs.map +2 -2
- package/build-module/search-control/index.mjs +2 -2
- package/build-module/search-control/index.mjs.map +2 -2
- package/build-module/select-control/index.mjs +6 -15
- package/build-module/select-control/index.mjs.map +2 -2
- package/build-module/select-control/styles/select-control-styles.mjs +8 -16
- package/build-module/select-control/styles/select-control-styles.mjs.map +2 -2
- package/build-module/slot-fill/index.mjs.map +2 -2
- package/build-module/spacer/hook.mjs +140 -13
- package/build-module/spacer/hook.mjs.map +3 -3
- package/build-module/surface/hook.mjs +103 -16
- package/build-module/surface/hook.mjs.map +3 -3
- package/build-module/text/hook.mjs +11 -11
- package/build-module/text/hook.mjs.map +2 -2
- package/build-module/theme/index.mjs +109 -7
- package/build-module/theme/index.mjs.map +3 -3
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.mjs +1 -3
- package/build-module/toggle-group-control/toggle-group-control/as-button-group.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.mjs +1 -3
- package/build-module/toggle-group-control/toggle-group-control/as-radio-group.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control/component.mjs +6 -16
- package/build-module/toggle-group-control/toggle-group-control/component.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control/styles.mjs +10 -35
- package/build-module/toggle-group-control/toggle-group-control/styles.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control-option/component.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.mjs +3 -5
- package/build-module/toggle-group-control/toggle-group-control-option-base/component.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.mjs +14 -18
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.mjs.map +2 -2
- package/build-module/toggle-group-control/toggle-group-control-option-icon/component.mjs.map +1 -1
- package/build-module/tools-panel/styles.mjs +23 -15
- package/build-module/tools-panel/styles.mjs.map +2 -2
- package/build-module/tools-panel/tools-panel/component.mjs.map +2 -2
- package/build-module/tools-panel/tools-panel/hook.mjs +5 -3
- package/build-module/tools-panel/tools-panel/hook.mjs.map +2 -2
- package/build-module/tree-select/index.mjs +9 -20
- package/build-module/tree-select/index.mjs.map +2 -2
- package/build-module/truncate/hook.mjs +95 -9
- package/build-module/truncate/hook.mjs.map +3 -3
- package/build-module/unit-control/index.mjs +2 -12
- package/build-module/unit-control/index.mjs.map +2 -2
- package/build-module/utils/base-label.mjs +1 -1
- package/build-module/utils/base-label.mjs.map +2 -2
- package/build-module/utils/config-values.mjs +1 -9
- package/build-module/utils/config-values.mjs.map +2 -2
- package/build-module/utils/font-values.mjs +1 -1
- package/build-module/utils/font-values.mjs.map +1 -1
- package/build-module/utils/hooks/use-cx.mjs.map +2 -2
- package/build-module/utils/polymorphic-element.mjs +98 -0
- package/build-module/utils/polymorphic-element.mjs.map +7 -0
- package/build-module/validated-form-controls/components/combobox-control.mjs +0 -1
- package/build-module/validated-form-controls/components/combobox-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/content-editable-control.mjs +49 -0
- package/build-module/validated-form-controls/components/content-editable-control.mjs.map +7 -0
- package/build-module/validated-form-controls/components/custom-select-control.mjs +0 -1
- package/build-module/validated-form-controls/components/custom-select-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/form-token-field.mjs +0 -1
- package/build-module/validated-form-controls/components/form-token-field.mjs.map +2 -2
- package/build-module/validated-form-controls/components/index.mjs +1 -0
- package/build-module/validated-form-controls/components/index.mjs.map +2 -2
- package/build-module/validated-form-controls/components/input-control.mjs +0 -1
- package/build-module/validated-form-controls/components/input-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/number-control.mjs +0 -1
- package/build-module/validated-form-controls/components/number-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/range-control.mjs +0 -1
- package/build-module/validated-form-controls/components/range-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/select-control.mjs +0 -1
- package/build-module/validated-form-controls/components/select-control.mjs.map +2 -2
- package/build-module/validated-form-controls/components/toggle-group-control.mjs +0 -1
- package/build-module/validated-form-controls/components/toggle-group-control.mjs.map +2 -2
- package/build-module/validated-form-controls/control-with-error.mjs +1 -4
- package/build-module/validated-form-controls/control-with-error.mjs.map +2 -2
- package/build-module/view/component.mjs +4 -10
- package/build-module/view/component.mjs.map +2 -2
- package/build-style/style-rtl.css +67 -91
- package/build-style/style.css +67 -91
- package/build-types/angle-picker-control/index.d.ts.map +1 -1
- package/build-types/autocomplete/autocompleter-ui.d.ts +1 -1
- package/build-types/autocomplete/autocompleter-ui.d.ts.map +1 -1
- package/build-types/autocomplete/index.d.ts +1 -1
- package/build-types/autocomplete/index.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control/component.d.ts +2 -2
- package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control/hook.d.ts +0 -1
- package/build-types/border-box-control/border-box-control/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts +2 -4
- package/build-types/border-box-control/border-box-control-linked-button/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-linked-button/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts +0 -1
- package/build-types/border-box-control/border-box-control-split-controls/hook.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-visualizer/component.d.ts +2 -3
- package/build-types/border-box-control/border-box-control-visualizer/component.d.ts.map +1 -1
- package/build-types/border-box-control/border-box-control-visualizer/hook.d.ts.map +1 -1
- package/build-types/border-box-control/stories/index.story.d.ts +2 -1
- package/build-types/border-box-control/stories/index.story.d.ts.map +1 -1
- package/build-types/border-box-control/styles.d.ts +3 -3
- package/build-types/border-box-control/styles.d.ts.map +1 -1
- package/build-types/border-box-control/types.d.ts +13 -5
- package/build-types/border-box-control/types.d.ts.map +1 -1
- package/build-types/border-control/border-control/component.d.ts +0 -2
- package/build-types/border-control/border-control/component.d.ts.map +1 -1
- package/build-types/border-control/border-control/hook.d.ts +0 -2
- package/build-types/border-control/border-control/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts +1 -1
- package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts +0 -1
- package/build-types/border-control/border-control-dropdown/hook.d.ts.map +1 -1
- package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
- package/build-types/border-control/stories/index.story.d.ts +5 -10
- package/build-types/border-control/stories/index.story.d.ts.map +1 -1
- package/build-types/border-control/styles.d.ts +5 -2
- package/build-types/border-control/styles.d.ts.map +1 -1
- package/build-types/border-control/types.d.ts +5 -10
- package/build-types/border-control/types.d.ts.map +1 -1
- package/build-types/box-control/box-input-control.d.ts.map +1 -1
- package/build-types/box-control/index.d.ts +1 -1
- package/build-types/box-control/index.d.ts.map +1 -1
- package/build-types/box-control/styles/box-control-styles.d.ts +2 -1
- package/build-types/box-control/styles/box-control-styles.d.ts.map +1 -1
- package/build-types/button/stories/e2e/index.story.d.ts.map +1 -1
- package/build-types/calendar/date-range-calendar/index.d.ts +1 -1
- package/build-types/calendar/date-range-calendar/index.d.ts.map +1 -1
- package/build-types/calendar/utils/use-localization-props.d.ts +6 -2
- package/build-types/calendar/utils/use-localization-props.d.ts.map +1 -1
- package/build-types/card/card/hook.d.ts +1 -1
- package/build-types/card/card/hook.d.ts.map +1 -1
- package/build-types/card/card-footer/hook.d.ts.map +1 -1
- package/build-types/card/card-header/hook.d.ts.map +1 -1
- package/build-types/card/styles.d.ts +4 -0
- package/build-types/card/styles.d.ts.map +1 -1
- package/build-types/circular-option-picker/circular-option-picker-actions.d.ts +1 -1
- package/build-types/circular-option-picker/circular-option-picker-actions.d.ts.map +1 -1
- package/build-types/circular-option-picker/circular-option-picker.d.ts +8 -13
- package/build-types/circular-option-picker/circular-option-picker.d.ts.map +1 -1
- package/build-types/color-picker/component.d.ts +4 -0
- package/build-types/color-picker/component.d.ts.map +1 -1
- package/build-types/color-picker/hex-input.d.ts.map +1 -1
- package/build-types/color-picker/input-with-slider.d.ts.map +1 -1
- package/build-types/color-picker/stories/index.story.d.ts.map +1 -1
- package/build-types/color-picker/styles.d.ts +2 -1
- package/build-types/color-picker/styles.d.ts.map +1 -1
- package/build-types/combobox-control/index.d.ts +0 -1
- package/build-types/combobox-control/index.d.ts.map +1 -1
- package/build-types/combobox-control/stories/index.story.d.ts.map +1 -1
- package/build-types/combobox-control/styles.d.ts +1 -2
- package/build-types/combobox-control/styles.d.ts.map +1 -1
- package/build-types/combobox-control/types.d.ts +2 -1
- package/build-types/combobox-control/types.d.ts.map +1 -1
- package/build-types/composite/legacy/stories/utils.d.ts.map +1 -1
- package/build-types/content-editable-control/index.d.ts +31 -0
- package/build-types/content-editable-control/index.d.ts.map +1 -0
- package/build-types/content-editable-control/stories/index.story.d.ts +13 -0
- package/build-types/content-editable-control/stories/index.story.d.ts.map +1 -0
- package/build-types/content-editable-control/test/index.d.ts +2 -0
- package/build-types/content-editable-control/test/index.d.ts.map +1 -0
- package/build-types/content-editable-control/types.d.ts +32 -0
- package/build-types/content-editable-control/types.d.ts.map +1 -0
- package/build-types/context/context-system-provider.d.ts +21 -2
- package/build-types/context/context-system-provider.d.ts.map +1 -1
- package/build-types/custom-gradient-picker/gradient-bar/control-points.d.ts +3 -2
- package/build-types/custom-gradient-picker/gradient-bar/control-points.d.ts.map +1 -1
- package/build-types/custom-gradient-picker/gradient-bar/index.d.ts +1 -1
- package/build-types/custom-gradient-picker/gradient-bar/index.d.ts.map +1 -1
- package/build-types/custom-gradient-picker/index.d.ts +1 -1
- package/build-types/custom-gradient-picker/index.d.ts.map +1 -1
- package/build-types/custom-gradient-picker/serializer.d.ts +3 -3
- package/build-types/custom-gradient-picker/serializer.d.ts.map +1 -1
- package/build-types/custom-select-control/index.d.ts +5 -0
- package/build-types/custom-select-control/index.d.ts.map +1 -1
- package/build-types/custom-select-control/stories/index.story.d.ts.map +1 -1
- package/build-types/custom-select-control/types.d.ts +2 -1
- package/build-types/custom-select-control/types.d.ts.map +1 -1
- package/build-types/custom-select-control-v2/custom-select.d.ts.map +1 -1
- package/build-types/custom-select-control-v2/index.d.ts +2 -1
- package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
- package/build-types/custom-select-control-v2/item.d.ts.map +1 -1
- package/build-types/date-time/date-picker/index.d.ts +1 -1
- package/build-types/date-time/date-picker/index.d.ts.map +1 -1
- package/build-types/date-time/time-picker/index.d.ts +3 -2
- package/build-types/date-time/time-picker/index.d.ts.map +1 -1
- package/build-types/date-time/time-picker/styles.d.ts +8 -4
- package/build-types/date-time/time-picker/styles.d.ts.map +1 -1
- package/build-types/date-time/time-picker/time-input/index.d.ts +1 -1
- package/build-types/date-time/time-picker/time-input/index.d.ts.map +1 -1
- package/build-types/disabled/index.d.ts +4 -4
- package/build-types/disabled/index.d.ts.map +1 -1
- package/build-types/disabled/stories/index.story.d.ts.map +1 -1
- package/build-types/draggable/index.d.ts +1 -1
- package/build-types/draggable/index.d.ts.map +1 -1
- package/build-types/drop-zone/provider.d.ts +1 -1
- package/build-types/drop-zone/provider.d.ts.map +1 -1
- package/build-types/duotone-picker/color-list-picker/index.d.ts +1 -1
- package/build-types/duotone-picker/color-list-picker/index.d.ts.map +1 -1
- package/build-types/duotone-picker/custom-duotone-bar.d.ts +1 -1
- package/build-types/duotone-picker/custom-duotone-bar.d.ts.map +1 -1
- package/build-types/elevation/hook.d.ts.map +1 -1
- package/build-types/external-link/index.d.ts.map +1 -1
- package/build-types/flex/flex/hook.d.ts +864 -4
- package/build-types/flex/flex/hook.d.ts.map +1 -1
- package/build-types/flex/flex-block/hook.d.ts +860 -1
- package/build-types/flex/flex-block/hook.d.ts.map +1 -1
- package/build-types/flex/flex-item/hook.d.ts +860 -4
- package/build-types/flex/flex-item/hook.d.ts.map +1 -1
- package/build-types/focal-point-picker/controls.d.ts +1 -1
- package/build-types/focal-point-picker/controls.d.ts.map +1 -1
- package/build-types/focal-point-picker/index.d.ts +1 -1
- package/build-types/focal-point-picker/index.d.ts.map +1 -1
- package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts +252 -1
- package/build-types/focal-point-picker/styles/focal-point-picker-style.d.ts.map +1 -1
- package/build-types/font-size-picker/font-size-picker-select.d.ts.map +1 -1
- package/build-types/font-size-picker/font-size-picker-toggle-group.d.ts.map +1 -1
- package/build-types/font-size-picker/index.d.ts.map +1 -1
- package/build-types/font-size-picker/stories/e2e/index.story.d.ts.map +1 -1
- package/build-types/font-size-picker/stories/index.story.d.ts.map +1 -1
- package/build-types/font-size-picker/types.d.ts +6 -5
- package/build-types/font-size-picker/types.d.ts.map +1 -1
- package/build-types/form-file-upload/index.d.ts +1 -2
- package/build-types/form-file-upload/index.d.ts.map +1 -1
- package/build-types/form-file-upload/stories/index.story.d.ts.map +1 -1
- package/build-types/form-file-upload/types.d.ts +2 -2
- package/build-types/form-file-upload/types.d.ts.map +1 -1
- package/build-types/form-token-field/index.d.ts.map +1 -1
- package/build-types/form-token-field/stories/index.story.d.ts.map +1 -1
- package/build-types/form-token-field/styles.d.ts +1 -6
- package/build-types/form-token-field/styles.d.ts.map +1 -1
- package/build-types/form-token-field/suggestions-list.d.ts +1 -1
- package/build-types/form-token-field/suggestions-list.d.ts.map +1 -1
- package/build-types/form-token-field/token.d.ts +1 -1
- package/build-types/form-token-field/token.d.ts.map +1 -1
- package/build-types/form-token-field/types.d.ts +2 -1
- package/build-types/form-token-field/types.d.ts.map +1 -1
- package/build-types/guide/index.d.ts +1 -1
- package/build-types/guide/index.d.ts.map +1 -1
- package/build-types/guide/page-control.d.ts +1 -1
- package/build-types/guide/page-control.d.ts.map +1 -1
- package/build-types/h-stack/hook.d.ts +864 -1
- package/build-types/h-stack/hook.d.ts.map +1 -1
- package/build-types/heading/hook.d.ts +1 -1
- package/build-types/higher-order/with-fallback-styles/index.d.ts +3 -3
- package/build-types/higher-order/with-fallback-styles/index.d.ts.map +1 -1
- package/build-types/input-control/index.d.ts +0 -1
- package/build-types/input-control/index.d.ts.map +1 -1
- package/build-types/input-control/input-base.d.ts.map +1 -1
- package/build-types/input-control/stories/index.story.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts +1 -2
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/input-control/types.d.ts +21 -28
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/keyboard-shortcuts/index.d.ts +1 -1
- package/build-types/keyboard-shortcuts/index.d.ts.map +1 -1
- package/build-types/menu/group-label.d.ts.map +1 -1
- package/build-types/menu-items-choice/index.d.ts +1 -1
- package/build-types/menu-items-choice/index.d.ts.map +1 -1
- package/build-types/modal/stories/index.story.d.ts.map +1 -1
- package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts +1 -1
- package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts.map +1 -1
- package/build-types/navigator/stories/index.story.d.ts.map +1 -1
- package/build-types/notice/index.d.ts +1 -1
- package/build-types/notice/index.d.ts.map +1 -1
- package/build-types/notice/list.d.ts +1 -1
- package/build-types/notice/list.d.ts.map +1 -1
- package/build-types/number-control/index.d.ts +6 -1
- package/build-types/number-control/index.d.ts.map +1 -1
- package/build-types/number-control/stories/index.story.d.ts +2 -1
- package/build-types/number-control/stories/index.story.d.ts.map +1 -1
- package/build-types/number-control/types.d.ts +8 -1
- package/build-types/number-control/types.d.ts.map +1 -1
- package/build-types/palette-edit/index.d.ts +1 -1
- package/build-types/palette-edit/index.d.ts.map +1 -1
- package/build-types/palette-edit/styles.d.ts +750 -0
- package/build-types/palette-edit/styles.d.ts.map +1 -1
- package/build-types/private-apis.d.ts.map +1 -1
- package/build-types/query-controls/author-select.d.ts +1 -1
- package/build-types/query-controls/author-select.d.ts.map +1 -1
- package/build-types/query-controls/category-select.d.ts +1 -1
- package/build-types/query-controls/category-select.d.ts.map +1 -1
- package/build-types/query-controls/index.d.ts.map +1 -1
- package/build-types/query-controls/types.d.ts +0 -2
- package/build-types/query-controls/types.d.ts.map +1 -1
- package/build-types/radio-group/radio.d.ts +2 -4
- package/build-types/radio-group/radio.d.ts.map +1 -1
- package/build-types/radio-group/stories/index.story.d.ts.map +1 -1
- package/build-types/radio-group/types.d.ts +8 -5
- package/build-types/radio-group/types.d.ts.map +1 -1
- package/build-types/range-control/index.d.ts +0 -1
- package/build-types/range-control/index.d.ts.map +1 -1
- package/build-types/range-control/stories/index.story.d.ts.map +1 -1
- package/build-types/range-control/styles/range-control-styles.d.ts +4 -5
- package/build-types/range-control/styles/range-control-styles.d.ts.map +1 -1
- package/build-types/range-control/types.d.ts +3 -1
- package/build-types/range-control/types.d.ts.map +1 -1
- package/build-types/resizable-box/index.d.ts +4 -0
- package/build-types/resizable-box/index.d.ts.map +1 -1
- package/build-types/resizable-box/resize-tooltip/utils.d.ts +1 -1
- package/build-types/resizable-box/resize-tooltip/utils.d.ts.map +1 -1
- package/build-types/responsive-wrapper/index.d.ts +1 -1
- package/build-types/responsive-wrapper/index.d.ts.map +1 -1
- package/build-types/sandbox/index.d.ts +34 -0
- package/build-types/sandbox/index.d.ts.map +1 -1
- package/build-types/search-control/index.d.ts.map +1 -1
- package/build-types/select-control/index.d.ts +0 -1
- package/build-types/select-control/index.d.ts.map +1 -1
- package/build-types/select-control/stories/index.story.d.ts.map +1 -1
- package/build-types/select-control/styles/select-control-styles.d.ts +1 -1
- package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
- package/build-types/select-control/types.d.ts +23 -1
- package/build-types/select-control/types.d.ts.map +1 -1
- package/build-types/slot-fill/index.d.ts +6 -1
- package/build-types/slot-fill/index.d.ts.map +1 -1
- package/build-types/snackbar/list.d.ts +1 -1
- package/build-types/snackbar/list.d.ts.map +1 -1
- package/build-types/spacer/hook.d.ts +2 -4
- package/build-types/spacer/hook.d.ts.map +1 -1
- package/build-types/spacer/stories/index.story.d.ts +1 -6
- package/build-types/spacer/stories/index.story.d.ts.map +1 -1
- package/build-types/surface/hook.d.ts +1 -1
- package/build-types/surface/hook.d.ts.map +1 -1
- package/build-types/text/hook.d.ts +2 -2
- package/build-types/text/hook.d.ts.map +1 -1
- package/build-types/text/types.d.ts +4 -4
- package/build-types/text/types.d.ts.map +1 -1
- package/build-types/text/utils.d.ts +1 -1
- package/build-types/text/utils.d.ts.map +1 -1
- package/build-types/theme/index.d.ts +1 -4
- package/build-types/theme/index.d.ts.map +1 -1
- package/build-types/toggle-group-control/stories/index.story.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +1 -1
- package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts +0 -1
- package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +1 -4
- package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts +0 -1
- package/build-types/toggle-group-control/toggle-group-control-option/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
- package/build-types/toggle-group-control/toggle-group-control-option-icon/component.d.ts +1 -1
- package/build-types/toggle-group-control/types.d.ts +5 -4
- package/build-types/toggle-group-control/types.d.ts.map +1 -1
- package/build-types/tools-panel/stories/index.story.d.ts.map +1 -1
- package/build-types/tools-panel/styles.d.ts +5 -0
- package/build-types/tools-panel/styles.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel/component.d.ts +0 -2
- package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
- package/build-types/tree-grid/roving-tab-index.d.ts +1 -1
- package/build-types/tree-grid/roving-tab-index.d.ts.map +1 -1
- package/build-types/tree-grid/stories/index.story.d.ts.map +1 -1
- package/build-types/tree-select/index.d.ts +0 -1
- package/build-types/tree-select/index.d.ts.map +1 -1
- package/build-types/tree-select/stories/index.story.d.ts.map +1 -1
- package/build-types/tree-select/types.d.ts +8 -1
- package/build-types/tree-select/types.d.ts.map +1 -1
- package/build-types/truncate/hook.d.ts +1 -1
- package/build-types/truncate/hook.d.ts.map +1 -1
- package/build-types/unit-control/index.d.ts +3 -2
- package/build-types/unit-control/index.d.ts.map +1 -1
- package/build-types/unit-control/stories/index.story.d.ts.map +1 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts +2 -1
- package/build-types/unit-control/styles/unit-control-styles.d.ts.map +1 -1
- package/build-types/unit-control/types.d.ts +8 -1
- package/build-types/unit-control/types.d.ts.map +1 -1
- package/build-types/utils/config-values.d.ts +1 -8
- package/build-types/utils/hooks/use-animated-offset-rect.d.ts +1 -1
- package/build-types/utils/hooks/use-animated-offset-rect.d.ts.map +1 -1
- package/build-types/utils/hooks/use-controlled-state.d.ts +6 -0
- package/build-types/utils/hooks/use-controlled-state.d.ts.map +1 -1
- package/build-types/utils/hooks/use-controlled-value.d.ts +1 -1
- package/build-types/utils/hooks/use-controlled-value.d.ts.map +1 -1
- package/build-types/utils/hooks/use-cx.d.ts +4 -0
- package/build-types/utils/hooks/use-cx.d.ts.map +1 -1
- package/build-types/utils/polymorphic-element.d.ts +17 -0
- package/build-types/utils/polymorphic-element.d.ts.map +1 -0
- package/build-types/utils/rtl.d.ts.map +1 -1
- package/build-types/utils/test/polymorphic-element.d.ts +2 -0
- package/build-types/utils/test/polymorphic-element.d.ts.map +1 -0
- package/build-types/v-stack/hook.d.ts +864 -1
- package/build-types/v-stack/hook.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/combobox-control.d.ts +1 -1
- package/build-types/validated-form-controls/components/content-editable-control.d.ts +16 -0
- package/build-types/validated-form-controls/components/content-editable-control.d.ts.map +1 -0
- package/build-types/validated-form-controls/components/custom-select-control.d.ts +1 -1
- package/build-types/validated-form-controls/components/custom-select-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/form-token-field.d.ts +1 -1
- package/build-types/validated-form-controls/components/form-token-field.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/index.d.ts +1 -0
- package/build-types/validated-form-controls/components/index.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/input-control.d.ts +1 -1
- package/build-types/validated-form-controls/components/input-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/number-control.d.ts +3 -2
- package/build-types/validated-form-controls/components/number-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/range-control.d.ts +2 -2
- package/build-types/validated-form-controls/components/range-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/select-control.d.ts +1 -1
- package/build-types/validated-form-controls/components/select-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/components/stories/content-editable-control.story.d.ts +9 -0
- package/build-types/validated-form-controls/components/stories/content-editable-control.story.d.ts.map +1 -0
- package/build-types/validated-form-controls/components/toggle-group-control.d.ts +2 -2
- package/build-types/validated-form-controls/components/toggle-group-control.d.ts.map +1 -1
- package/build-types/validated-form-controls/test/content-editable-control.d.ts +2 -0
- package/build-types/validated-form-controls/test/content-editable-control.d.ts.map +1 -0
- package/build-types/validated-form-controls/validity-indicator.d.ts +1 -1
- package/build-types/validated-form-controls/validity-indicator.d.ts.map +1 -1
- package/build-types/view/component.d.ts +1125 -0
- package/build-types/view/component.d.ts.map +1 -1
- package/package.json +27 -27
- package/src/angle-picker-control/index.tsx +0 -1
- package/src/autocomplete/index.tsx +4 -8
- package/src/autocomplete/style.scss +1 -0
- package/src/badge/stories/index.story.tsx +1 -1
- package/src/base-control/stories/index.story.tsx +1 -1
- package/src/border-box-control/border-box-control/README.md +0 -16
- package/src/border-box-control/border-box-control/component.tsx +1 -9
- package/src/border-box-control/border-box-control/hook.ts +3 -13
- package/src/border-box-control/border-box-control-linked-button/hook.ts +6 -7
- package/src/border-box-control/border-box-control-split-controls/component.tsx +1 -12
- package/src/border-box-control/border-box-control-split-controls/hook.ts +2 -4
- package/src/border-box-control/border-box-control-visualizer/hook.ts +6 -11
- package/src/border-box-control/stories/index.story.tsx +0 -2
- package/src/border-box-control/styles.ts +28 -36
- package/src/border-box-control/test/index.tsx +1 -3
- package/src/border-box-control/types.ts +13 -5
- package/src/border-control/border-control/README.md +0 -15
- package/src/border-control/border-control/component.tsx +0 -9
- package/src/border-control/border-control/hook.ts +10 -22
- package/src/border-control/border-control-dropdown/component.tsx +1 -2
- package/src/border-control/border-control-dropdown/hook.ts +2 -4
- package/src/border-control/border-control-style-picker/component.tsx +0 -1
- package/src/border-control/stories/index.story.tsx +0 -2
- package/src/border-control/styles.ts +11 -12
- package/src/border-control/test/index.js +32 -1
- package/src/border-control/types.ts +5 -10
- package/src/box-control/box-input-control.tsx +0 -5
- package/src/button/stories/e2e/index.story.tsx +10 -2
- package/src/button/stories/index.story.tsx +1 -1
- package/src/button/style.scss +42 -83
- package/src/button-group/style.scss +1 -6
- package/src/calendar/style.scss +1 -1
- package/src/card/card/hook.ts +4 -3
- package/src/card/card-footer/hook.ts +12 -16
- package/src/card/card-header/hook.ts +12 -16
- package/src/card/stories/index.story.tsx +1 -1
- package/src/card/styles.ts +49 -0
- package/src/card/test/__snapshots__/index.tsx.snap +94 -139
- package/src/card/test/index.tsx +97 -0
- package/src/checkbox-control/stories/index.story.tsx +1 -1
- package/src/checkbox-control/test/__snapshots__/index.tsx.snap +1 -1
- package/src/circular-option-picker/style.scss +0 -1
- package/src/color-palette/styles.ts +1 -1
- package/src/color-picker/component.tsx +4 -0
- package/src/color-picker/hex-input.tsx +0 -1
- package/src/color-picker/input-with-slider.tsx +0 -2
- package/src/color-picker/stories/index.story.tsx +5 -0
- package/src/combobox-control/README.md +0 -9
- package/src/combobox-control/index.tsx +2 -14
- package/src/combobox-control/stories/index.story.tsx +0 -2
- package/src/combobox-control/styles.ts +0 -21
- package/src/combobox-control/test/index.tsx +1 -1
- package/src/combobox-control/types.ts +2 -1
- package/src/confirm-dialog/stories/index.story.tsx +1 -1
- package/src/content-editable-control/README.md +88 -0
- package/src/content-editable-control/docs-manifest.json +5 -0
- package/src/content-editable-control/index.tsx +91 -0
- package/src/content-editable-control/stories/index.story.tsx +32 -0
- package/src/content-editable-control/style.module.scss +34 -0
- package/src/content-editable-control/test/index.tsx +164 -0
- package/src/content-editable-control/types.ts +35 -0
- package/src/context/stories/ComponentsProvider.stories.jsx +3 -3
- package/src/custom-gradient-picker/index.tsx +0 -1
- package/src/custom-select-control/README.md +0 -9
- package/src/custom-select-control/index.tsx +9 -24
- package/src/custom-select-control/stories/index.story.tsx +1 -3
- package/src/custom-select-control/test/index.tsx +1 -1
- package/src/custom-select-control/types.ts +2 -1
- package/src/custom-select-control-v2/custom-select.tsx +1 -5
- package/src/custom-select-control-v2/stories/index.story.tsx +1 -1
- package/src/date-time/date-picker/styles.ts +1 -1
- package/src/date-time/time-picker/index.tsx +0 -3
- package/src/date-time/time-picker/time-input/index.tsx +0 -3
- package/src/disabled/stories/index.story.tsx +0 -1
- package/src/divider/style.module.scss +4 -2
- package/src/dropdown-menu/style.scss +1 -1
- package/src/elevation/hook.ts +4 -3
- package/src/elevation/stories/index.story.tsx +1 -1
- package/src/elevation/test/__snapshots__/index.tsx.snap +6 -6
- package/src/elevation/test/index.tsx +21 -0
- package/src/external-link/index.tsx +1 -7
- package/src/external-link/stories/index.story.tsx +1 -1
- package/src/external-link/style.scss +1 -1
- package/src/flex/flex/hook.ts +24 -43
- package/src/flex/flex-item/hook.ts +10 -27
- package/src/flex/stories/index.story.tsx +1 -1
- package/src/flex/style.module.scss +40 -0
- package/src/flex/test/__snapshots__/index.tsx.snap +6 -156
- package/src/flex/test/index.tsx +80 -49
- package/src/focal-point-picker/controls.tsx +0 -1
- package/src/focal-point-picker/index.tsx +1 -0
- package/src/font-size-picker/README.md +0 -15
- package/src/font-size-picker/font-size-picker-select.tsx +1 -11
- package/src/font-size-picker/font-size-picker-toggle-group.tsx +1 -11
- package/src/font-size-picker/index.tsx +1 -26
- package/src/font-size-picker/stories/e2e/index.story.tsx +0 -2
- package/src/font-size-picker/stories/index.story.tsx +0 -2
- package/src/font-size-picker/test/font-size-picker-select.tsx +0 -16
- package/src/font-size-picker/test/font-size-picker-toggle-group.tsx +0 -22
- package/src/font-size-picker/test/index.tsx +2 -16
- package/src/font-size-picker/types.ts +6 -5
- package/src/form-file-upload/README.md +0 -10
- package/src/form-file-upload/index.tsx +2 -14
- package/src/form-file-upload/stories/index.story.tsx +1 -2
- package/src/form-file-upload/test/index.tsx +1 -16
- package/src/form-file-upload/types.ts +2 -2
- package/src/form-token-field/README.md +0 -2
- package/src/form-token-field/index.tsx +1 -12
- package/src/form-token-field/stories/index.story.tsx +0 -4
- package/src/form-token-field/styles.ts +0 -19
- package/src/form-token-field/test/index.tsx +1 -5
- package/src/form-token-field/types.ts +2 -1
- package/src/h-stack/stories/index.story.tsx +1 -1
- package/src/h-stack/test/__snapshots__/index.tsx.snap +12 -91
- package/src/heading/hook.ts +1 -1
- package/src/heading/stories/index.story.tsx +1 -1
- package/src/heading/test/__snapshots__/index.tsx.snap +1 -1
- package/src/icon/stories/index.story.tsx +1 -1
- package/src/input-control/README.md +0 -8
- package/src/input-control/index.tsx +5 -16
- package/src/input-control/input-base.tsx +4 -8
- package/src/input-control/stories/index.story.tsx +2 -4
- package/src/input-control/styles/input-control-styles.tsx +1 -11
- package/src/input-control/test/index.js +1 -7
- package/src/input-control/types.ts +21 -29
- package/src/item-group/test/__snapshots__/index.js.snap +27 -21
- package/src/menu/group-label.tsx +2 -1
- package/src/menu-group/style.scss +1 -1
- package/src/menu-item/style.scss +1 -1
- package/src/modal/stories/index.story.tsx +2 -5
- package/src/modal/style.scss +1 -1
- package/src/navigator/stories/index.story.tsx +5 -0
- package/src/notice/stories/index.story.tsx +1 -1
- package/src/notice/test/__snapshots__/index.tsx.snap +1 -1
- package/src/number-control/README.md +0 -8
- package/src/number-control/index.tsx +5 -12
- package/src/number-control/stories/index.story.tsx +1 -3
- package/src/number-control/test/index.tsx +1 -1
- package/src/number-control/types.ts +15 -1
- package/src/palette-edit/styles.ts +1 -1
- package/src/panel/stories/index.story.tsx +4 -4
- package/src/panel/style.scss +2 -5
- package/src/placeholder/style.scss +1 -1
- package/src/private-apis.ts +4 -0
- package/src/query-controls/README.md +0 -7
- package/src/query-controls/author-select.tsx +0 -2
- package/src/query-controls/category-select.tsx +0 -2
- package/src/query-controls/index.tsx +0 -5
- package/src/query-controls/types.ts +0 -2
- package/src/radio-group/README.md +8 -8
- package/src/radio-group/radio.tsx +2 -9
- package/src/radio-group/stories/index.story.tsx +3 -9
- package/src/radio-group/types.ts +8 -6
- package/src/range-control/README.md +0 -8
- package/src/range-control/index.tsx +6 -26
- package/src/range-control/stories/index.story.tsx +0 -11
- package/src/range-control/styles/range-control-styles.ts +1 -10
- package/src/range-control/test/index.tsx +1 -14
- package/src/range-control/types.ts +3 -1
- package/src/resizable-box/index.tsx +4 -0
- package/src/sandbox/index.tsx +143 -96
- package/src/sandbox/test/index.tsx +42 -1
- package/src/scrollable/test/__snapshots__/index.tsx.snap +16 -11
- package/src/search-control/index.tsx +3 -2
- package/src/select-control/README.md +0 -11
- package/src/select-control/index.tsx +6 -16
- package/src/select-control/stories/index.story.tsx +1 -5
- package/src/select-control/styles/select-control-styles.ts +3 -22
- package/src/select-control/test/select-control.tsx +6 -12
- package/src/select-control/types.ts +22 -3
- package/src/slot-fill/index.tsx +5 -0
- package/src/slot-fill/test/__snapshots__/slot.js.snap +4 -12
- package/src/spacer/hook.ts +93 -76
- package/src/spacer/stories/index.story.tsx +8 -6
- package/src/spacer/style.module.scss +25 -0
- package/src/spacer/test/__snapshots__/index.tsx.snap +2 -222
- package/src/spacer/test/index.tsx +111 -87
- package/src/surface/hook.ts +30 -36
- package/src/surface/style.module.scss +53 -0
- package/src/surface/test/index.tsx +22 -29
- package/src/tab-panel/stories/index.story.tsx +1 -1
- package/src/tab-panel/style.scss +1 -1
- package/src/tabs/stories/index.story.tsx +1 -1
- package/src/text/README.md +1 -1
- package/src/text/hook.ts +11 -12
- package/src/text/stories/index.story.tsx +1 -1
- package/src/text/test/__snapshots__/index.tsx.snap +2 -2
- package/src/text/test/index.tsx +19 -4
- package/src/text/types.ts +5 -5
- package/src/textarea-control/stories/index.story.tsx +1 -1
- package/src/theme/index.tsx +43 -18
- package/src/theme/style.module.scss +4 -0
- package/src/theme/test/index.tsx +23 -6
- package/src/toggle-group-control/stories/index.story.tsx +0 -1
- package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +86 -86
- package/src/toggle-group-control/test/index.tsx +20 -4
- package/src/toggle-group-control/toggle-group-control/README.md +0 -8
- package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +0 -3
- package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +0 -3
- package/src/toggle-group-control/toggle-group-control/component.tsx +6 -20
- package/src/toggle-group-control/toggle-group-control/styles.ts +8 -25
- package/src/toggle-group-control/toggle-group-control-option/README.md +0 -1
- package/src/toggle-group-control/toggle-group-control-option/component.tsx +0 -1
- package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +3 -7
- package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +9 -19
- package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
- package/src/toggle-group-control/toggle-group-control-option-icon/component.tsx +1 -1
- package/src/toggle-group-control/types.ts +5 -4
- package/src/toolbar/toolbar-button/style.scss +1 -1
- package/src/tools-panel/stories/index.story.tsx +0 -15
- package/src/tools-panel/styles.ts +18 -2
- package/src/tools-panel/test/index.tsx +39 -0
- package/src/tools-panel/tools-panel/component.tsx +0 -2
- package/src/tools-panel/tools-panel/hook.ts +5 -9
- package/src/tooltip/stories/index.story.tsx +1 -1
- package/src/tree-grid/stories/index.story.tsx +0 -2
- package/src/tree-select/README.md +0 -9
- package/src/tree-select/index.tsx +4 -14
- package/src/tree-select/stories/index.story.tsx +0 -2
- package/src/tree-select/types.ts +8 -1
- package/src/truncate/hook.ts +23 -28
- package/src/truncate/style.module.scss +21 -0
- package/src/unit-control/README.md +3 -9
- package/src/unit-control/index.tsx +3 -17
- package/src/unit-control/stories/index.story.tsx +0 -3
- package/src/unit-control/test/index.tsx +1 -5
- package/src/unit-control/types.ts +11 -1
- package/src/utils/base-label.ts +1 -1
- package/src/utils/config-values.js +1 -8
- package/src/utils/font-values.js +1 -1
- package/src/utils/hooks/use-cx.ts +4 -0
- package/src/utils/polymorphic-element.tsx +152 -0
- package/src/utils/test/polymorphic-element.tsx +231 -0
- package/src/v-stack/stories/index.story.tsx +1 -1
- package/src/v-stack/test/__snapshots__/index.tsx.snap +12 -90
- package/src/validated-form-controls/components/combobox-control.tsx +1 -1
- package/src/validated-form-controls/components/content-editable-control.tsx +88 -0
- package/src/validated-form-controls/components/custom-select-control.tsx +1 -5
- package/src/validated-form-controls/components/form-token-field.tsx +2 -6
- package/src/validated-form-controls/components/index.ts +1 -0
- package/src/validated-form-controls/components/input-control.tsx +2 -10
- package/src/validated-form-controls/components/number-control.tsx +2 -10
- package/src/validated-form-controls/components/range-control.tsx +2 -10
- package/src/validated-form-controls/components/select-control.tsx +2 -6
- package/src/validated-form-controls/components/stories/content-editable-control.story.tsx +56 -0
- package/src/validated-form-controls/components/toggle-group-control.tsx +2 -9
- package/src/validated-form-controls/control-with-error.tsx +1 -1
- package/src/validated-form-controls/style.scss +7 -0
- package/src/validated-form-controls/test/content-editable-control.tsx +71 -0
- package/src/view/README.md +0 -6
- package/src/view/component.tsx +17 -8
- package/src/view/test/__snapshots__/index.js.snap +24 -16
- package/src/view/test/index.js +60 -4
- package/src/visually-hidden/stories/index.story.tsx +1 -1
- package/build/flex/styles.cjs +0 -82
- package/build/flex/styles.cjs.map +0 -7
- package/build/surface/styles.cjs +0 -97
- package/build/surface/styles.cjs.map +0 -7
- package/build/theme/styles.cjs +0 -66
- package/build/theme/styles.cjs.map +0 -7
- package/build/truncate/styles.cjs +0 -42
- package/build/truncate/styles.cjs.map +0 -7
- package/build/utils/deprecated-36px-size.cjs +0 -56
- package/build/utils/deprecated-36px-size.cjs.map +0 -7
- package/build-module/flex/styles.mjs +0 -53
- package/build-module/flex/styles.mjs.map +0 -7
- package/build-module/surface/styles.mjs +0 -64
- package/build-module/surface/styles.mjs.map +0 -7
- package/build-module/theme/styles.mjs +0 -30
- package/build-module/theme/styles.mjs.map +0 -7
- package/build-module/truncate/styles.mjs +0 -17
- package/build-module/truncate/styles.mjs.map +0 -7
- package/build-module/utils/deprecated-36px-size.mjs +0 -21
- package/build-module/utils/deprecated-36px-size.mjs.map +0 -7
- package/build-types/flex/styles.d.ts +0 -17
- package/build-types/flex/styles.d.ts.map +0 -1
- package/build-types/surface/styles.d.ts +0 -11
- package/build-types/surface/styles.d.ts.map +0 -1
- package/build-types/theme/styles.d.ts +0 -10
- package/build-types/theme/styles.d.ts.map +0 -1
- package/build-types/truncate/styles.d.ts +0 -2
- package/build-types/truncate/styles.d.ts.map +0 -1
- package/build-types/utils/deprecated-36px-size.d.ts +0 -7
- package/build-types/utils/deprecated-36px-size.d.ts.map +0 -1
- package/src/flex/styles.ts +0 -44
- package/src/focal-point-picker/style.scss +0 -58
- package/src/surface/styles.ts +0 -139
- package/src/surface/test/__snapshots__/index.tsx.snap +0 -104
- package/src/theme/styles.ts +0 -35
- package/src/truncate/styles.ts +0 -11
- package/src/utils/deprecated-36px-size.ts +0 -30
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/flex/flex/hook.ts"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": ";
|
|
3
|
+
"sources": ["../../../src/flex/flex/hook.ts", "../../../../style-runtime/src/index.ts", "../../../src/flex/style.module.scss"],
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport deprecated from '@wordpress/deprecated';\nimport { useContextSystem } from '../../context';\nimport { useResponsiveValue } from '../../utils/use-responsive-value';\nimport { space } from '../../utils/space';\nimport styles from '../style.module.scss';\nfunction useDeprecatedProps(props) {\n const {\n isReversed,\n ...otherProps\n } = props;\n if (typeof isReversed !== 'undefined') {\n deprecated('Flex isReversed', {\n alternative: 'Flex direction=\"row-reverse\" or \"column-reverse\"',\n since: '5.9'\n });\n return {\n ...otherProps,\n direction: isReversed ? 'row-reverse' : 'row'\n };\n }\n return otherProps;\n}\nexport function useFlex(props) {\n const {\n align,\n className,\n direction: directionProp = 'row',\n expanded = true,\n gap = 2,\n justify = 'space-between',\n style,\n wrap = false,\n ...otherProps\n } = useContextSystem(useDeprecatedProps(props), 'Flex');\n const directionAsArray = Array.isArray(directionProp) ? directionProp : [directionProp];\n const direction = useResponsiveValue(directionAsArray);\n const isColumn = typeof direction === 'string' && !!direction.includes('column');\n const flexStyle = {\n ...style,\n '--wp-components-flex-align': align ?? (isColumn ? 'normal' : 'center'),\n '--wp-components-flex-direction': direction,\n '--wp-components-flex-wrap': wrap ? 'wrap' : 'nowrap',\n '--wp-components-flex-gap': space(gap),\n '--wp-components-flex-justify': justify\n };\n return {\n ...otherProps,\n className: clsx(styles.flex, isColumn ? styles['items-column'] : styles['items-row'], expanded && (isColumn ? styles['expanded-column'] : styles['expanded-row']), className),\n style: flexStyle,\n isColumn\n };\n}", "const STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n const globalScope = globalThis;\n if (globalScope.__wpStyleRuntime) {\n return globalScope.__wpStyleRuntime;\n }\n globalScope.__wpStyleRuntime = {\n documents: new Map(),\n styles: new Map(),\n injectedStyles: new WeakMap()\n };\n if (typeof document !== 'undefined') {\n registerDocument(document);\n }\n return globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(targetDocument, hash) {\n if (!targetDocument.head) {\n return false;\n }\n for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {\n if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle(targetDocument, hash, css) {\n if (!targetDocument.head) {\n return;\n }\n const runtime = getRuntime();\n let injectedStyles = runtime.injectedStyles.get(targetDocument);\n if (!injectedStyles) {\n injectedStyles = new Set();\n runtime.injectedStyles.set(targetDocument, injectedStyles);\n }\n if (injectedStyles.has(hash)) {\n return;\n }\n\n // Older generated CSS module output can still inject matching style tags\n // after this document's cache is created, so keep the DOM as the fallback\n // source of truth on cache misses.\n if (documentContainsStyleHash(targetDocument, hash)) {\n injectedStyles.add(hash);\n return;\n }\n const style = targetDocument.createElement('style');\n style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);\n style.appendChild(targetDocument.createTextNode(css));\n targetDocument.head.appendChild(style);\n injectedStyles.add(hash);\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument(targetDocument) {\n const runtime = getRuntime();\n runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);\n for (const [hash, css] of runtime.styles) {\n injectStyle(targetDocument, hash, css);\n }\n return () => {\n const count = runtime.documents.get(targetDocument);\n if (count === undefined) {\n return;\n }\n if (count <= 1) {\n runtime.documents.delete(targetDocument);\n return;\n }\n runtime.documents.set(targetDocument, count - 1);\n };\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle(hash, css) {\n const runtime = getRuntime();\n runtime.styles.set(hash, css);\n for (const targetDocument of runtime.documents.keys()) {\n injectStyle(targetDocument, hash, css);\n }\n}", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"1931a27616\", \".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}\");\n}\nexport default {\"flex\":\"e518617e7c3a18e7__flex\",\"expanded-column\":\"e4a76957e0b12292__expanded-column\",\"expanded-row\":\"cc39999a5fb580d4__expanded-row\",\"item\":\"bc09d0edcc10c304__item\",\"block\":\"c184ec8e81027f31__block\",\"items-column\":\"f9694ed4faabfc82__items-column\",\"items-row\":\"_3896336788892095__items-row\"};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,26 +1,110 @@
|
|
|
1
1
|
// packages/components/src/flex/flex-item/hook.ts
|
|
2
|
-
import
|
|
2
|
+
import clsx from "clsx";
|
|
3
3
|
import { useContextSystem } from "../../context/index.mjs";
|
|
4
4
|
import { useFlexContext } from "../context.mjs";
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
|
|
6
|
+
// packages/style-runtime/src/index.ts
|
|
7
|
+
var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
|
|
8
|
+
function getRuntime() {
|
|
9
|
+
const globalScope = globalThis;
|
|
10
|
+
if (globalScope.__wpStyleRuntime) {
|
|
11
|
+
return globalScope.__wpStyleRuntime;
|
|
12
|
+
}
|
|
13
|
+
globalScope.__wpStyleRuntime = {
|
|
14
|
+
documents: /* @__PURE__ */ new Map(),
|
|
15
|
+
styles: /* @__PURE__ */ new Map(),
|
|
16
|
+
injectedStyles: /* @__PURE__ */ new WeakMap()
|
|
17
|
+
};
|
|
18
|
+
if (typeof document !== "undefined") {
|
|
19
|
+
registerDocument(document);
|
|
20
|
+
}
|
|
21
|
+
return globalScope.__wpStyleRuntime;
|
|
22
|
+
}
|
|
23
|
+
function documentContainsStyleHash(targetDocument, hash) {
|
|
24
|
+
if (!targetDocument.head) {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {
|
|
28
|
+
if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
function injectStyle(targetDocument, hash, css) {
|
|
35
|
+
if (!targetDocument.head) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const runtime = getRuntime();
|
|
39
|
+
let injectedStyles = runtime.injectedStyles.get(targetDocument);
|
|
40
|
+
if (!injectedStyles) {
|
|
41
|
+
injectedStyles = /* @__PURE__ */ new Set();
|
|
42
|
+
runtime.injectedStyles.set(targetDocument, injectedStyles);
|
|
43
|
+
}
|
|
44
|
+
if (injectedStyles.has(hash)) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (documentContainsStyleHash(targetDocument, hash)) {
|
|
48
|
+
injectedStyles.add(hash);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const style = targetDocument.createElement("style");
|
|
52
|
+
style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
|
|
53
|
+
style.appendChild(targetDocument.createTextNode(css));
|
|
54
|
+
targetDocument.head.appendChild(style);
|
|
55
|
+
injectedStyles.add(hash);
|
|
56
|
+
}
|
|
57
|
+
function registerDocument(targetDocument) {
|
|
58
|
+
const runtime = getRuntime();
|
|
59
|
+
runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);
|
|
60
|
+
for (const [hash, css] of runtime.styles) {
|
|
61
|
+
injectStyle(targetDocument, hash, css);
|
|
62
|
+
}
|
|
63
|
+
return () => {
|
|
64
|
+
const count = runtime.documents.get(targetDocument);
|
|
65
|
+
if (count === void 0) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
if (count <= 1) {
|
|
69
|
+
runtime.documents.delete(targetDocument);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
runtime.documents.set(targetDocument, count - 1);
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function registerStyle(hash, css) {
|
|
76
|
+
const runtime = getRuntime();
|
|
77
|
+
runtime.styles.set(hash, css);
|
|
78
|
+
for (const targetDocument of runtime.documents.keys()) {
|
|
79
|
+
injectStyle(targetDocument, hash, css);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// packages/components/src/flex/style.module.scss
|
|
84
|
+
if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
|
|
85
|
+
registerStyle("1931a27616", ".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}");
|
|
86
|
+
}
|
|
87
|
+
var style_module_default = { "flex": "e518617e7c3a18e7__flex", "expanded-column": "e4a76957e0b12292__expanded-column", "expanded-row": "cc39999a5fb580d4__expanded-row", "item": "bc09d0edcc10c304__item", "block": "c184ec8e81027f31__block", "items-column": "f9694ed4faabfc82__items-column", "items-row": "_3896336788892095__items-row" };
|
|
88
|
+
|
|
89
|
+
// packages/components/src/flex/flex-item/hook.ts
|
|
7
90
|
function useFlexItem(props) {
|
|
8
91
|
const {
|
|
9
92
|
className,
|
|
10
93
|
display: displayProp,
|
|
11
94
|
isBlock = false,
|
|
95
|
+
style,
|
|
12
96
|
...otherProps
|
|
13
97
|
} = useContextSystem(props, "FlexItem");
|
|
14
|
-
const sx = {};
|
|
15
98
|
const contextDisplay = useFlexContext().flexItemDisplay;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
99
|
+
const display = displayProp || contextDisplay;
|
|
100
|
+
const itemStyle = {
|
|
101
|
+
...style,
|
|
102
|
+
"--wp-components-flex-item-display": display || "block"
|
|
103
|
+
};
|
|
21
104
|
return {
|
|
22
105
|
...otherProps,
|
|
23
|
-
className:
|
|
106
|
+
className: clsx(style_module_default.item, isBlock && style_module_default.block, className),
|
|
107
|
+
style: itemStyle
|
|
24
108
|
};
|
|
25
109
|
}
|
|
26
110
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/flex/flex-item/hook.ts"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": ";
|
|
3
|
+
"sources": ["../../../src/flex/flex-item/hook.ts", "../../../../style-runtime/src/index.ts", "../../../src/flex/style.module.scss"],
|
|
4
|
+
"sourcesContent": ["import clsx from 'clsx';\nimport { useContextSystem } from '../../context';\nimport { useFlexContext } from '../context';\nimport styles from '../style.module.scss';\nexport function useFlexItem(props) {\n const {\n className,\n display: displayProp,\n isBlock = false,\n style,\n ...otherProps\n } = useContextSystem(props, 'FlexItem');\n const contextDisplay = useFlexContext().flexItemDisplay;\n const display = displayProp || contextDisplay;\n const itemStyle = {\n ...style,\n '--wp-components-flex-item-display': display || 'block'\n };\n return {\n ...otherProps,\n className: clsx(styles.item, isBlock && styles.block, className),\n style: itemStyle\n };\n}", "const STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n const globalScope = globalThis;\n if (globalScope.__wpStyleRuntime) {\n return globalScope.__wpStyleRuntime;\n }\n globalScope.__wpStyleRuntime = {\n documents: new Map(),\n styles: new Map(),\n injectedStyles: new WeakMap()\n };\n if (typeof document !== 'undefined') {\n registerDocument(document);\n }\n return globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(targetDocument, hash) {\n if (!targetDocument.head) {\n return false;\n }\n for (const style of targetDocument.head.querySelectorAll(`style[${STYLE_HASH_ATTRIBUTE}]`)) {\n if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle(targetDocument, hash, css) {\n if (!targetDocument.head) {\n return;\n }\n const runtime = getRuntime();\n let injectedStyles = runtime.injectedStyles.get(targetDocument);\n if (!injectedStyles) {\n injectedStyles = new Set();\n runtime.injectedStyles.set(targetDocument, injectedStyles);\n }\n if (injectedStyles.has(hash)) {\n return;\n }\n\n // Older generated CSS module output can still inject matching style tags\n // after this document's cache is created, so keep the DOM as the fallback\n // source of truth on cache misses.\n if (documentContainsStyleHash(targetDocument, hash)) {\n injectedStyles.add(hash);\n return;\n }\n const style = targetDocument.createElement('style');\n style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);\n style.appendChild(targetDocument.createTextNode(css));\n targetDocument.head.appendChild(style);\n injectedStyles.add(hash);\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument(targetDocument) {\n const runtime = getRuntime();\n runtime.documents.set(targetDocument, (runtime.documents.get(targetDocument) ?? 0) + 1);\n for (const [hash, css] of runtime.styles) {\n injectStyle(targetDocument, hash, css);\n }\n return () => {\n const count = runtime.documents.get(targetDocument);\n if (count === undefined) {\n return;\n }\n if (count <= 1) {\n runtime.documents.delete(targetDocument);\n return;\n }\n runtime.documents.set(targetDocument, count - 1);\n };\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle(hash, css) {\n const runtime = getRuntime();\n runtime.styles.set(hash, css);\n for (const targetDocument of runtime.documents.keys()) {\n injectStyle(targetDocument, hash, css);\n }\n}", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"1931a27616\", \".e518617e7c3a18e7__flex{align-items:var(--wp-components-flex-align);display:flex;flex-direction:var(--wp-components-flex-direction);flex-wrap:var(--wp-components-flex-wrap);gap:var(--wp-components-flex-gap);justify-content:var(--wp-components-flex-justify)}.e4a76957e0b12292__expanded-column{height:100%}.cc39999a5fb580d4__expanded-row{width:100%}.bc09d0edcc10c304__item{display:var(--wp-components-flex-item-display);max-height:100%;max-width:100%;min-height:0;min-width:0}.c184ec8e81027f31__block{flex:1}.f9694ed4faabfc82__items-column>*{min-height:0}._3896336788892095__items-row>*{min-width:0}\");\n}\nexport default {\"flex\":\"e518617e7c3a18e7__flex\",\"expanded-column\":\"e4a76957e0b12292__expanded-column\",\"expanded-row\":\"cc39999a5fb580d4__expanded-row\",\"item\":\"bc09d0edcc10c304__item\",\"block\":\"c184ec8e81027f31__block\",\"items-column\":\"f9694ed4faabfc82__items-column\",\"items-row\":\"_3896336788892095__items-row\"};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -50,7 +50,6 @@ function FocalPointPickerControls({
|
|
|
50
50
|
}
|
|
51
51
|
function FocalPointUnitControl(props) {
|
|
52
52
|
return /* @__PURE__ */ _jsx(StyledUnitControl, {
|
|
53
|
-
__next40pxDefaultSize: true,
|
|
54
53
|
className: "focal-point-picker__controls-position-unit-control",
|
|
55
54
|
labelPosition: "top",
|
|
56
55
|
max: TEXTCONTROL_MAX,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/focal-point-picker/controls.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { StyledUnitControl, ControlWrapper } from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\nconst noop = () => {};\nexport default function FocalPointPickerControls({\n hasHelpText,\n onChange = noop,\n point = {\n x: 0.5,\n y: 0.5\n }\n}) {\n const valueX = fractionToPercentage(point.x);\n const valueY = fractionToPercentage(point.y);\n const handleChange = (value, axis) => {\n if (value === undefined) {\n return;\n }\n const num = parseInt(value, 10);\n if (!isNaN(num)) {\n onChange({\n ...point,\n [axis]: num / 100\n });\n }\n };\n return /*#__PURE__*/_jsxs(ControlWrapper, {\n className: \"focal-point-picker__controls\",\n hasHelpText: hasHelpText,\n gap: 4,\n children: [/*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Left'),\n \"aria-label\": __('Focal point left position'),\n value: [valueX, '%'].join(''),\n onChange: next => handleChange(next, 'x'),\n dragDirection: \"e\"\n }), /*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Top'),\n \"aria-label\": __('Focal point top position'),\n value: [valueY, '%'].join(''),\n onChange: next => handleChange(next, 'y'),\n dragDirection: \"s\"\n })]\n });\n}\nfunction FocalPointUnitControl(props) {\n return /*#__PURE__*/_jsx(StyledUnitControl, {\n
|
|
5
|
-
"mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,mBAAmB,sBAAsB;AAClD,SAAS,4BAA4B;AACrC,SAAS,OAAO,MAAM,QAAQ,aAAa;AAC3C,IAAM,kBAAkB;AACxB,IAAM,kBAAkB;AACxB,IAAM,OAAO,MAAM;AAAC;AACL,SAAR,yBAA0C;AAAA,EAC/C;AAAA,EACA,WAAW;AAAA,EACX,QAAQ;AAAA,IACN,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,GAAG;AACD,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,eAAe,CAAC,OAAO,SAAS;AACpC,QAAI,UAAU,QAAW;AACvB;AAAA,IACF;AACA,UAAM,MAAM,SAAS,OAAO,EAAE;AAC9B,QAAI,CAAC,MAAM,GAAG,GAAG;AACf,eAAS;AAAA,QACP,GAAG;AAAA,QACH,CAAC,IAAI,GAAG,MAAM;AAAA,MAChB,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAoB,sBAAM,gBAAgB;AAAA,IACxC,WAAW;AAAA,IACX;AAAA,IACA,KAAK;AAAA,IACL,UAAU,CAAc,qBAAK,uBAAuB;AAAA,MAClD,OAAO,GAAG,MAAM;AAAA,MAChB,cAAc,GAAG,2BAA2B;AAAA,MAC5C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,GAAgB,qBAAK,uBAAuB;AAAA,MAC3C,OAAO,GAAG,KAAK;AAAA,MACf,cAAc,GAAG,0BAA0B;AAAA,MAC3C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,CAAC;AAAA,EACJ,CAAC;AACH;AACA,SAAS,sBAAsB,OAAO;AACpC,SAAoB,qBAAK,mBAAmB;AAAA,IAC1C,
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { StyledUnitControl, ControlWrapper } from './styles/focal-point-picker-style';\nimport { fractionToPercentage } from './utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst TEXTCONTROL_MIN = 0;\nconst TEXTCONTROL_MAX = 100;\nconst noop = () => {};\nexport default function FocalPointPickerControls({\n hasHelpText,\n onChange = noop,\n point = {\n x: 0.5,\n y: 0.5\n }\n}) {\n const valueX = fractionToPercentage(point.x);\n const valueY = fractionToPercentage(point.y);\n const handleChange = (value, axis) => {\n if (value === undefined) {\n return;\n }\n const num = parseInt(value, 10);\n if (!isNaN(num)) {\n onChange({\n ...point,\n [axis]: num / 100\n });\n }\n };\n return /*#__PURE__*/_jsxs(ControlWrapper, {\n className: \"focal-point-picker__controls\",\n hasHelpText: hasHelpText,\n gap: 4,\n children: [/*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Left'),\n \"aria-label\": __('Focal point left position'),\n value: [valueX, '%'].join(''),\n onChange: next => handleChange(next, 'x'),\n dragDirection: \"e\"\n }), /*#__PURE__*/_jsx(FocalPointUnitControl, {\n label: __('Top'),\n \"aria-label\": __('Focal point top position'),\n value: [valueY, '%'].join(''),\n onChange: next => handleChange(next, 'y'),\n dragDirection: \"s\"\n })]\n });\n}\nfunction FocalPointUnitControl(props) {\n return /*#__PURE__*/_jsx(StyledUnitControl, {\n className: \"focal-point-picker__controls-position-unit-control\",\n labelPosition: \"top\",\n max: TEXTCONTROL_MAX,\n min: TEXTCONTROL_MIN,\n units: [{\n value: '%',\n label: '%'\n }],\n ...props\n });\n}"],
|
|
5
|
+
"mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,mBAAmB,sBAAsB;AAClD,SAAS,4BAA4B;AACrC,SAAS,OAAO,MAAM,QAAQ,aAAa;AAC3C,IAAM,kBAAkB;AACxB,IAAM,kBAAkB;AACxB,IAAM,OAAO,MAAM;AAAC;AACL,SAAR,yBAA0C;AAAA,EAC/C;AAAA,EACA,WAAW;AAAA,EACX,QAAQ;AAAA,IACN,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF,GAAG;AACD,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,SAAS,qBAAqB,MAAM,CAAC;AAC3C,QAAM,eAAe,CAAC,OAAO,SAAS;AACpC,QAAI,UAAU,QAAW;AACvB;AAAA,IACF;AACA,UAAM,MAAM,SAAS,OAAO,EAAE;AAC9B,QAAI,CAAC,MAAM,GAAG,GAAG;AACf,eAAS;AAAA,QACP,GAAG;AAAA,QACH,CAAC,IAAI,GAAG,MAAM;AAAA,MAChB,CAAC;AAAA,IACH;AAAA,EACF;AACA,SAAoB,sBAAM,gBAAgB;AAAA,IACxC,WAAW;AAAA,IACX;AAAA,IACA,KAAK;AAAA,IACL,UAAU,CAAc,qBAAK,uBAAuB;AAAA,MAClD,OAAO,GAAG,MAAM;AAAA,MAChB,cAAc,GAAG,2BAA2B;AAAA,MAC5C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,GAAgB,qBAAK,uBAAuB;AAAA,MAC3C,OAAO,GAAG,KAAK;AAAA,MACf,cAAc,GAAG,0BAA0B;AAAA,MAC3C,OAAO,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE;AAAA,MAC5B,UAAU,UAAQ,aAAa,MAAM,GAAG;AAAA,MACxC,eAAe;AAAA,IACjB,CAAC,CAAC;AAAA,EACJ,CAAC;AACH;AACA,SAAS,sBAAsB,OAAO;AACpC,SAAoB,qBAAK,mBAAmB;AAAA,IAC1C,WAAW;AAAA,IACX,eAAe;AAAA,IACf,KAAK;AAAA,IACL,KAAK;AAAA,IACL,OAAO,CAAC;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,IACT,CAAC;AAAA,IACD,GAAG;AAAA,EACL,CAAC;AACH;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/focal-point-picker/index.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging, useIsomorphicLayoutEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport { Container, MediaWrapper, MediaContainer } from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport { StyledLabel, StyledHelp } from '../base-control/styles/base-control-styles';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * It addresses two common issues when displaying images in cropped containers. First, large\n * background images can be cropped in undesirable ways, especially on smaller viewports such as\n * mobile devices. Second, the CSS aspect-ratio property can inadvertently crop out the area of\n * highest visual interest. This component allows the selection of the point with the most\n * important visual information and returns it as a pair of numbers between 0 and 1.\n * The output value can be applied to either CSS `background-position` (for elements with\n * `background-image`) or `object-position` (for `<img>` / `<video>` elements rendered with\n * `object-fit: cover`).\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`;\n * - Corresponding CSS: `object-position: 50% 10%`;\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.1,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\twidth: '100%',\n * \t\taspectRatio: '16 / 9',\n * \t\tobjectFit: 'cover',\n * \t\tobjectPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<img src={ url } alt=\"\" style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker({\n // Prevent passing to internal component.\n __nextHasNoMarginBottom: _,\n autoPlay = true,\n className,\n help,\n hideLabelFromVision,\n label,\n onChange,\n onDrag,\n onDragEnd,\n onDragStart,\n resolvePoint,\n url,\n value: valueProp = {\n x: 0.5,\n y: 0.5\n },\n ...restProps\n}) {\n const [point, setPoint] = useState(valueProp);\n const [showGridOverlay, setShowGridOverlay] = useState(false);\n const {\n startDrag,\n endDrag,\n isDragging\n } = useDragging({\n onDragStart: event => {\n dragAreaRef.current?.focus();\n const value = getValueWithinDragArea(event);\n\n // `value` can technically be undefined if getValueWithinDragArea() is\n // called before dragAreaRef is set, but this shouldn't happen in reality.\n if (!value) {\n return;\n }\n onDragStart?.(value, event);\n setPoint(value);\n },\n onDragMove: event => {\n // Prevents text-selection when dragging.\n event.preventDefault();\n const value = getValueWithinDragArea(event);\n if (!value) {\n return;\n }\n onDrag?.(value, event);\n setPoint(value);\n },\n onDragEnd: () => {\n onDragEnd?.();\n onChange?.(point);\n }\n });\n\n // Uses the internal point while dragging or else the value from props.\n const {\n x,\n y\n } = isDragging ? point : valueProp;\n const dragAreaRef = useRef(null);\n const [bounds, setBounds] = useState(INITIAL_BOUNDS);\n const refUpdateBounds = useRef(() => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n clientWidth: width,\n clientHeight: height\n } = dragAreaRef.current;\n // Falls back to initial bounds if the ref has no size. Since styles\n // give the drag area dimensions even when the media has not loaded\n // this should only happen in unit tests (jsdom).\n setBounds(width > 0 && height > 0 ? {\n width,\n height\n } : {\n ...INITIAL_BOUNDS\n });\n });\n useEffect(() => {\n const updateBounds = refUpdateBounds.current;\n if (!dragAreaRef.current) {\n return;\n }\n const {\n defaultView\n } = dragAreaRef.current.ownerDocument;\n defaultView?.addEventListener('resize', updateBounds);\n return () => defaultView?.removeEventListener('resize', updateBounds);\n }, []);\n\n // Updates the bounds to cover cases of unspecified media or load failures.\n useIsomorphicLayoutEffect(() => void refUpdateBounds.current(), []);\n\n // TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n // https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n const getValueWithinDragArea = ({\n clientX,\n clientY,\n shiftKey\n }) => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n top,\n left\n } = dragAreaRef.current.getBoundingClientRect();\n let nextX = (clientX - left) / bounds.width;\n let nextY = (clientY - top) / bounds.height;\n // Enables holding shift to jump values by 10%.\n if (shiftKey) {\n nextX = Math.round(nextX / 0.1) * 0.1;\n nextY = Math.round(nextY / 0.1) * 0.1;\n }\n return getFinalValue({\n x: nextX,\n y: nextY\n });\n };\n const getFinalValue = value => {\n const resolvedValue = resolvePoint?.(value) ?? value;\n resolvedValue.x = Math.max(0, Math.min(resolvedValue.x, 1));\n resolvedValue.y = Math.max(0, Math.min(resolvedValue.y, 1));\n const roundToTwoDecimalPlaces = n => Math.round(n * 1e2) / 1e2;\n return {\n x: roundToTwoDecimalPlaces(resolvedValue.x),\n y: roundToTwoDecimalPlaces(resolvedValue.y)\n };\n };\n const arrowKeyStep = event => {\n const {\n code,\n shiftKey\n } = event;\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(code)) {\n return;\n }\n event.preventDefault();\n const value = {\n x,\n y\n };\n const step = shiftKey ? 0.1 : 0.01;\n const delta = code === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n const axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n value[axis] = value[axis] + delta;\n onChange?.(getFinalValue(value));\n };\n const focalPointPosition = {\n left: x !== undefined ? x * bounds.width : 0.5 * bounds.width,\n top: y !== undefined ? y * bounds.height : 0.5 * bounds.height\n };\n const classes = clsx('components-focal-point-picker-control', className);\n const Label = hideLabelFromVision ? VisuallyHidden : StyledLabel;\n useUpdateEffect(() => {\n setShowGridOverlay(true);\n const timeout = window.setTimeout(() => {\n setShowGridOverlay(false);\n }, GRID_OVERLAY_TIMEOUT);\n return () => window.clearTimeout(timeout);\n }, [x, y]);\n return /*#__PURE__*/_jsxs(Container, {\n ...restProps,\n as: \"fieldset\",\n className: classes,\n children: [!!label && /*#__PURE__*/_jsx(Label, {\n as: \"legend\",\n children: label\n }), /*#__PURE__*/_jsx(MediaWrapper, {\n className: \"components-focal-point-picker-wrapper\",\n children: /*#__PURE__*/_jsxs(MediaContainer, {\n className: \"components-focal-point-picker\",\n onKeyDown: arrowKeyStep,\n onMouseDown: startDrag,\n onBlur: () => {\n if (isDragging) {\n endDrag();\n }\n },\n ref: dragAreaRef,\n role: \"button\",\n tabIndex: -1,\n children: [/*#__PURE__*/_jsx(Grid, {\n bounds: bounds,\n showOverlay: showGridOverlay\n }), /*#__PURE__*/_jsx(Media, {\n alt: __('Media preview'),\n autoPlay: autoPlay,\n onLoad: refUpdateBounds.current,\n src: url\n }), /*#__PURE__*/_jsx(FocalPoint, {\n ...focalPointPosition,\n isDragging: isDragging\n })]\n })\n }), /*#__PURE__*/_jsx(Controls, {\n hasHelpText: !!help,\n point: {\n x,\n y\n },\n onChange: value => {\n onChange?.(getFinalValue(value));\n }\n }), !!help && /*#__PURE__*/_jsx(StyledHelp, {\n children: help\n })]\n });\n}\nexport default FocalPointPicker;"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __experimentalUseDragging as useDragging, useIsomorphicLayoutEffect } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Controls from './controls';\nimport FocalPoint from './focal-point';\nimport Grid from './grid';\nimport Media from './media';\nimport { Container, MediaWrapper, MediaContainer } from './styles/focal-point-picker-style';\nimport { INITIAL_BOUNDS } from './utils';\nimport { useUpdateEffect } from '../utils/hooks';\nimport { StyledLabel, StyledHelp } from '../base-control/styles/base-control-styles';\nimport { VisuallyHidden } from '../visually-hidden';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst GRID_OVERLAY_TIMEOUT = 600;\n\n/**\n * Focal Point Picker is a component which creates a UI for identifying the most important visual point of an image.\n *\n * It addresses two common issues when displaying images in cropped containers. First, large\n * background images can be cropped in undesirable ways, especially on smaller viewports such as\n * mobile devices. Second, the CSS aspect-ratio property can inadvertently crop out the area of\n * highest visual interest. This component allows the selection of the point with the most\n * important visual information and returns it as a pair of numbers between 0 and 1.\n * The output value can be applied to either CSS `background-position` (for elements with\n * `background-image`) or `object-position` (for `<img>` / `<video>` elements rendered with\n * `object-fit: cover`).\n *\n * - Example focal point picker value: `{ x: 0.5, y: 0.1 }`;\n * - Corresponding CSS: `object-position: 50% 10%`;\n *\n * ```jsx\n * import { FocalPointPicker } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const Example = () => {\n * \tconst [ focalPoint, setFocalPoint ] = useState( {\n * \t\tx: 0.5,\n * \t\ty: 0.1,\n * \t} );\n *\n * \tconst url = '/path/to/image';\n *\n * \t// Example function to render the CSS styles based on Focal Point Picker value\n * \tconst style = {\n * \t\twidth: '100%',\n * \t\taspectRatio: '16 / 9',\n * \t\tobjectFit: 'cover',\n * \t\tobjectPosition: `${ focalPoint.x * 100 }% ${ focalPoint.y * 100 }%`,\n * \t};\n *\n * \treturn (\n * \t\t<>\n * \t\t\t<FocalPointPicker\n * \t\t\t\turl={ url }\n * \t\t\t\tvalue={ focalPoint }\n * \t\t\t\tonDragStart={ setFocalPoint }\n * \t\t\t\tonDrag={ setFocalPoint }\n * \t\t\t\tonChange={ setFocalPoint }\n * \t\t\t/>\n * \t\t\t<img src={ url } alt=\"\" style={ style } />\n * \t\t</>\n * \t);\n * };\n * ```\n */\nexport function FocalPointPicker({\n // Prevent passing to internal component.\n __nextHasNoMarginBottom: _,\n __next40pxDefaultSize: _next40pxDefaultSize,\n autoPlay = true,\n className,\n help,\n hideLabelFromVision,\n label,\n onChange,\n onDrag,\n onDragEnd,\n onDragStart,\n resolvePoint,\n url,\n value: valueProp = {\n x: 0.5,\n y: 0.5\n },\n ...restProps\n}) {\n const [point, setPoint] = useState(valueProp);\n const [showGridOverlay, setShowGridOverlay] = useState(false);\n const {\n startDrag,\n endDrag,\n isDragging\n } = useDragging({\n onDragStart: event => {\n dragAreaRef.current?.focus();\n const value = getValueWithinDragArea(event);\n\n // `value` can technically be undefined if getValueWithinDragArea() is\n // called before dragAreaRef is set, but this shouldn't happen in reality.\n if (!value) {\n return;\n }\n onDragStart?.(value, event);\n setPoint(value);\n },\n onDragMove: event => {\n // Prevents text-selection when dragging.\n event.preventDefault();\n const value = getValueWithinDragArea(event);\n if (!value) {\n return;\n }\n onDrag?.(value, event);\n setPoint(value);\n },\n onDragEnd: () => {\n onDragEnd?.();\n onChange?.(point);\n }\n });\n\n // Uses the internal point while dragging or else the value from props.\n const {\n x,\n y\n } = isDragging ? point : valueProp;\n const dragAreaRef = useRef(null);\n const [bounds, setBounds] = useState(INITIAL_BOUNDS);\n const refUpdateBounds = useRef(() => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n clientWidth: width,\n clientHeight: height\n } = dragAreaRef.current;\n // Falls back to initial bounds if the ref has no size. Since styles\n // give the drag area dimensions even when the media has not loaded\n // this should only happen in unit tests (jsdom).\n setBounds(width > 0 && height > 0 ? {\n width,\n height\n } : {\n ...INITIAL_BOUNDS\n });\n });\n useEffect(() => {\n const updateBounds = refUpdateBounds.current;\n if (!dragAreaRef.current) {\n return;\n }\n const {\n defaultView\n } = dragAreaRef.current.ownerDocument;\n defaultView?.addEventListener('resize', updateBounds);\n return () => defaultView?.removeEventListener('resize', updateBounds);\n }, []);\n\n // Updates the bounds to cover cases of unspecified media or load failures.\n useIsomorphicLayoutEffect(() => void refUpdateBounds.current(), []);\n\n // TODO: Consider refactoring getValueWithinDragArea() into a pure function.\n // https://github.com/WordPress/gutenberg/pull/43872#discussion_r963455173\n const getValueWithinDragArea = ({\n clientX,\n clientY,\n shiftKey\n }) => {\n if (!dragAreaRef.current) {\n return;\n }\n const {\n top,\n left\n } = dragAreaRef.current.getBoundingClientRect();\n let nextX = (clientX - left) / bounds.width;\n let nextY = (clientY - top) / bounds.height;\n // Enables holding shift to jump values by 10%.\n if (shiftKey) {\n nextX = Math.round(nextX / 0.1) * 0.1;\n nextY = Math.round(nextY / 0.1) * 0.1;\n }\n return getFinalValue({\n x: nextX,\n y: nextY\n });\n };\n const getFinalValue = value => {\n const resolvedValue = resolvePoint?.(value) ?? value;\n resolvedValue.x = Math.max(0, Math.min(resolvedValue.x, 1));\n resolvedValue.y = Math.max(0, Math.min(resolvedValue.y, 1));\n const roundToTwoDecimalPlaces = n => Math.round(n * 1e2) / 1e2;\n return {\n x: roundToTwoDecimalPlaces(resolvedValue.x),\n y: roundToTwoDecimalPlaces(resolvedValue.y)\n };\n };\n const arrowKeyStep = event => {\n const {\n code,\n shiftKey\n } = event;\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'].includes(code)) {\n return;\n }\n event.preventDefault();\n const value = {\n x,\n y\n };\n const step = shiftKey ? 0.1 : 0.01;\n const delta = code === 'ArrowUp' || code === 'ArrowLeft' ? -1 * step : step;\n const axis = code === 'ArrowUp' || code === 'ArrowDown' ? 'y' : 'x';\n value[axis] = value[axis] + delta;\n onChange?.(getFinalValue(value));\n };\n const focalPointPosition = {\n left: x !== undefined ? x * bounds.width : 0.5 * bounds.width,\n top: y !== undefined ? y * bounds.height : 0.5 * bounds.height\n };\n const classes = clsx('components-focal-point-picker-control', className);\n const Label = hideLabelFromVision ? VisuallyHidden : StyledLabel;\n useUpdateEffect(() => {\n setShowGridOverlay(true);\n const timeout = window.setTimeout(() => {\n setShowGridOverlay(false);\n }, GRID_OVERLAY_TIMEOUT);\n return () => window.clearTimeout(timeout);\n }, [x, y]);\n return /*#__PURE__*/_jsxs(Container, {\n ...restProps,\n as: \"fieldset\",\n className: classes,\n children: [!!label && /*#__PURE__*/_jsx(Label, {\n as: \"legend\",\n children: label\n }), /*#__PURE__*/_jsx(MediaWrapper, {\n className: \"components-focal-point-picker-wrapper\",\n children: /*#__PURE__*/_jsxs(MediaContainer, {\n className: \"components-focal-point-picker\",\n onKeyDown: arrowKeyStep,\n onMouseDown: startDrag,\n onBlur: () => {\n if (isDragging) {\n endDrag();\n }\n },\n ref: dragAreaRef,\n role: \"button\",\n tabIndex: -1,\n children: [/*#__PURE__*/_jsx(Grid, {\n bounds: bounds,\n showOverlay: showGridOverlay\n }), /*#__PURE__*/_jsx(Media, {\n alt: __('Media preview'),\n autoPlay: autoPlay,\n onLoad: refUpdateBounds.current,\n src: url\n }), /*#__PURE__*/_jsx(FocalPoint, {\n ...focalPointPosition,\n isDragging: isDragging\n })]\n })\n }), /*#__PURE__*/_jsx(Controls, {\n hasHelpText: !!help,\n point: {\n x,\n y\n },\n onChange: value => {\n onChange?.(getFinalValue(value));\n }\n }), !!help && /*#__PURE__*/_jsx(StyledHelp, {\n children: help\n })]\n });\n}\nexport default FocalPointPicker;"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -11,10 +11,8 @@ var DEFAULT_OPTION = {
|
|
|
11
11
|
};
|
|
12
12
|
var FontSizePickerSelect = (props) => {
|
|
13
13
|
const {
|
|
14
|
-
__next40pxDefaultSize,
|
|
15
14
|
fontSizes,
|
|
16
15
|
value,
|
|
17
|
-
size,
|
|
18
16
|
valueMode = "literal",
|
|
19
17
|
onChange
|
|
20
18
|
} = props;
|
|
@@ -40,8 +38,6 @@ var FontSizePickerSelect = (props) => {
|
|
|
40
38
|
return options.find((option) => option.value === value) ?? DEFAULT_OPTION;
|
|
41
39
|
}, [value, valueMode, options]);
|
|
42
40
|
return /* @__PURE__ */ _jsx(StyledCustomSelectControl, {
|
|
43
|
-
__next40pxDefaultSize,
|
|
44
|
-
__shouldNotWarnDeprecated36pxSize: true,
|
|
45
41
|
className: "components-font-size-picker__select",
|
|
46
42
|
label: __("Font size"),
|
|
47
43
|
hideLabelFromVision: true,
|
|
@@ -58,8 +54,7 @@ var FontSizePickerSelect = (props) => {
|
|
|
58
54
|
}) => {
|
|
59
55
|
const matchingFontSize = selectedItem.key === "default" ? void 0 : fontSizes.find((fontSize) => fontSize.slug === selectedItem.key);
|
|
60
56
|
onChange(selectedItem.value, matchingFontSize);
|
|
61
|
-
}
|
|
62
|
-
size
|
|
57
|
+
}
|
|
63
58
|
});
|
|
64
59
|
};
|
|
65
60
|
var font_size_picker_select_default = FontSizePickerSelect;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/font-size-picker/font-size-picker-select.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { generateFontSizeHint } from './utils';\nimport { StyledCustomSelectControl } from './styles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DEFAULT_OPTION = {\n key: 'default',\n name: __('Default'),\n value: undefined\n};\nconst FontSizePickerSelect = props => {\n const {\n
|
|
5
|
-
"mappings": ";AAGA,SAAS,IAAI,eAAe;AAC5B,SAAS,eAAe;AAMxB,SAAS,4BAA4B;AACrC,SAAS,iCAAiC;AAC1C,SAAS,OAAO,YAAY;AAC5B,IAAM,iBAAiB;AAAA,EACrB,KAAK;AAAA,EACL,MAAM,GAAG,SAAS;AAAA,EAClB,OAAO;AACT;AACA,IAAM,uBAAuB,WAAS;AACpC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { generateFontSizeHint } from './utils';\nimport { StyledCustomSelectControl } from './styles';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst DEFAULT_OPTION = {\n key: 'default',\n name: __('Default'),\n value: undefined\n};\nconst FontSizePickerSelect = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n onChange\n } = props;\n const options = [DEFAULT_OPTION, ...fontSizes.map(fontSize => {\n const hint = generateFontSizeHint(fontSize);\n return {\n key: fontSize.slug,\n name: fontSize.name || fontSize.slug,\n value: fontSize.size,\n hint\n };\n })];\n const selectedOption = useMemo(() => {\n if (value === undefined) {\n return DEFAULT_OPTION;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n const optionBySlug = options.find(option => option.key === value);\n if (optionBySlug) {\n return optionBySlug;\n }\n }\n\n // If valueMode is 'literal', find by value (size)\n return options.find(option => option.value === value) ?? DEFAULT_OPTION;\n }, [value, valueMode, options]);\n return /*#__PURE__*/_jsx(StyledCustomSelectControl, {\n className: \"components-font-size-picker__select\",\n label: __('Font size'),\n hideLabelFromVision: true,\n describedBy: sprintf(\n // translators: %s: Currently selected font size.\n __('Currently selected font size: %s'), selectedOption.name),\n options: options,\n value: selectedOption,\n showSelectedHint: true,\n onChange: ({\n selectedItem\n }) => {\n // Find the corresponding FontSize object\n const matchingFontSize = selectedItem.key === 'default' ? undefined : fontSizes.find(fontSize => fontSize.slug === selectedItem.key);\n onChange(selectedItem.value, matchingFontSize);\n }\n });\n};\nexport default FontSizePickerSelect;"],
|
|
5
|
+
"mappings": ";AAGA,SAAS,IAAI,eAAe;AAC5B,SAAS,eAAe;AAMxB,SAAS,4BAA4B;AACrC,SAAS,iCAAiC;AAC1C,SAAS,OAAO,YAAY;AAC5B,IAAM,iBAAiB;AAAA,EACrB,KAAK;AAAA,EACL,MAAM,GAAG,SAAS;AAAA,EAClB,OAAO;AACT;AACA,IAAM,uBAAuB,WAAS;AACpC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EACF,IAAI;AACJ,QAAM,UAAU,CAAC,gBAAgB,GAAG,UAAU,IAAI,cAAY;AAC5D,UAAM,OAAO,qBAAqB,QAAQ;AAC1C,WAAO;AAAA,MACL,KAAK,SAAS;AAAA,MACd,MAAM,SAAS,QAAQ,SAAS;AAAA,MAChC,OAAO,SAAS;AAAA,MAChB;AAAA,IACF;AAAA,EACF,CAAC,CAAC;AACF,QAAM,iBAAiB,QAAQ,MAAM;AACnC,QAAI,UAAU,QAAW;AACvB,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,YAAM,eAAe,QAAQ,KAAK,YAAU,OAAO,QAAQ,KAAK;AAChE,UAAI,cAAc;AAChB,eAAO;AAAA,MACT;AAAA,IACF;AAGA,WAAO,QAAQ,KAAK,YAAU,OAAO,UAAU,KAAK,KAAK;AAAA,EAC3D,GAAG,CAAC,OAAO,WAAW,OAAO,CAAC;AAC9B,SAAoB,qBAAK,2BAA2B;AAAA,IAClD,WAAW;AAAA,IACX,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,aAAa;AAAA;AAAA,MAEb,GAAG,kCAAkC;AAAA,MAAG,eAAe;AAAA,IAAI;AAAA,IAC3D;AAAA,IACA,OAAO;AAAA,IACP,kBAAkB;AAAA,IAClB,UAAU,CAAC;AAAA,MACT;AAAA,IACF,MAAM;AAEJ,YAAM,mBAAmB,aAAa,QAAQ,YAAY,SAAY,UAAU,KAAK,cAAY,SAAS,SAAS,aAAa,GAAG;AACnI,eAAS,aAAa,OAAO,gBAAgB;AAAA,IAC/C;AAAA,EACF,CAAC;AACH;AACA,IAAO,kCAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -8,8 +8,6 @@ var FontSizePickerToggleGroup = (props) => {
|
|
|
8
8
|
fontSizes,
|
|
9
9
|
value,
|
|
10
10
|
valueMode = "literal",
|
|
11
|
-
__next40pxDefaultSize,
|
|
12
|
-
size,
|
|
13
11
|
onChange
|
|
14
12
|
} = props;
|
|
15
13
|
const currentValue = (() => {
|
|
@@ -27,8 +25,6 @@ var FontSizePickerToggleGroup = (props) => {
|
|
|
27
25
|
return fontSizeBySize?.slug;
|
|
28
26
|
})();
|
|
29
27
|
return /* @__PURE__ */ _jsx(ToggleGroupControl, {
|
|
30
|
-
__next40pxDefaultSize,
|
|
31
|
-
__shouldNotWarnDeprecated36pxSize: true,
|
|
32
28
|
label: __("Font size"),
|
|
33
29
|
hideLabelFromVision: true,
|
|
34
30
|
value: currentValue,
|
|
@@ -43,7 +39,6 @@ var FontSizePickerToggleGroup = (props) => {
|
|
|
43
39
|
}
|
|
44
40
|
},
|
|
45
41
|
isBlock: true,
|
|
46
|
-
size,
|
|
47
42
|
children: fontSizes.map((fontSize, index) => /* @__PURE__ */ _jsx(ToggleGroupControlOption, {
|
|
48
43
|
value: fontSize.slug,
|
|
49
44
|
label: T_SHIRT_ABBREVIATIONS[index],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/font-size-picker/font-size-picker-toggle-group.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ToggleGroupControl, ToggleGroupControlOption } from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst FontSizePickerToggleGroup = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n
|
|
5
|
-
"mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,oBAAoB,gCAAgC;AAC7D,SAAS,uBAAuB,qBAAqB;AACrD,SAAS,OAAO,YAAY;AAC5B,IAAM,4BAA4B,WAAS;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,
|
|
4
|
+
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ToggleGroupControl, ToggleGroupControlOption } from '../toggle-group-control';\nimport { T_SHIRT_ABBREVIATIONS, T_SHIRT_NAMES } from './constants';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst FontSizePickerToggleGroup = props => {\n const {\n fontSizes,\n value,\n valueMode = 'literal',\n onChange\n } = props;\n\n // Find the current value based on valueMode\n const currentValue = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', the value is already the slug\n if (valueMode === 'slug') {\n return String(value);\n }\n\n // If valueMode is 'literal', find the font size by size value\n // If multiple font sizes have the same size value, we can't distinguish them\n // without additional information, so we return undefined to avoid incorrect selection\n const matchingFontSizes = fontSizes.filter(fontSize => fontSize.size === value);\n\n // If there are multiple matches, return undefined to avoid selecting the wrong font size\n if (matchingFontSizes.length > 1) {\n return undefined;\n }\n\n // Find the font size by size value\n const fontSizeBySize = fontSizes.find(fontSize => fontSize.size === value);\n return fontSizeBySize?.slug;\n })();\n return /*#__PURE__*/_jsx(ToggleGroupControl, {\n label: __('Font size'),\n hideLabelFromVision: true,\n value: currentValue,\n onChange: newSlug => {\n if (newSlug === undefined) {\n onChange(undefined);\n } else {\n // Find the font size by slug\n const selectedFontSize = fontSizes.find(fontSize => fontSize.slug === String(newSlug));\n if (selectedFontSize) {\n onChange(selectedFontSize.size, selectedFontSize);\n }\n }\n },\n isBlock: true,\n children: fontSizes.map((fontSize, index) => /*#__PURE__*/_jsx(ToggleGroupControlOption, {\n value: fontSize.slug,\n label: T_SHIRT_ABBREVIATIONS[index],\n \"aria-label\": fontSize.name || T_SHIRT_NAMES[index],\n showTooltip: true\n }, fontSize.slug))\n });\n};\nexport default FontSizePickerToggleGroup;"],
|
|
5
|
+
"mappings": ";AAGA,SAAS,UAAU;AAKnB,SAAS,oBAAoB,gCAAgC;AAC7D,SAAS,uBAAuB,qBAAqB;AACrD,SAAS,OAAO,YAAY;AAC5B,IAAM,4BAA4B,WAAS;AACzC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EACF,IAAI;AAGJ,QAAM,gBAAgB,MAAM;AAC1B,QAAI,CAAC,OAAO;AACV,aAAO;AAAA,IACT;AAGA,QAAI,cAAc,QAAQ;AACxB,aAAO,OAAO,KAAK;AAAA,IACrB;AAKA,UAAM,oBAAoB,UAAU,OAAO,cAAY,SAAS,SAAS,KAAK;AAG9E,QAAI,kBAAkB,SAAS,GAAG;AAChC,aAAO;AAAA,IACT;AAGA,UAAM,iBAAiB,UAAU,KAAK,cAAY,SAAS,SAAS,KAAK;AACzE,WAAO,gBAAgB;AAAA,EACzB,GAAG;AACH,SAAoB,qBAAK,oBAAoB;AAAA,IAC3C,OAAO,GAAG,WAAW;AAAA,IACrB,qBAAqB;AAAA,IACrB,OAAO;AAAA,IACP,UAAU,aAAW;AACnB,UAAI,YAAY,QAAW;AACzB,iBAAS,MAAS;AAAA,MACpB,OAAO;AAEL,cAAM,mBAAmB,UAAU,KAAK,cAAY,SAAS,SAAS,OAAO,OAAO,CAAC;AACrF,YAAI,kBAAkB;AACpB,mBAAS,iBAAiB,MAAM,gBAAgB;AAAA,QAClD;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS;AAAA,IACT,UAAU,UAAU,IAAI,CAAC,UAAU,UAAuB,qBAAK,0BAA0B;AAAA,MACvF,OAAO,SAAS;AAAA,MAChB,OAAO,sBAAsB,KAAK;AAAA,MAClC,cAAc,SAAS,QAAQ,cAAc,KAAK;AAAA,MAClD,aAAa;AAAA,IACf,GAAG,SAAS,IAAI,CAAC;AAAA,EACnB,CAAC;AACH;AACA,IAAO,wCAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -11,18 +11,15 @@ import { Container, Header, HeaderLabel, HeaderToggle } from "./styles.mjs";
|
|
|
11
11
|
import { Spacer } from "../spacer/index.mjs";
|
|
12
12
|
import FontSizePickerSelect from "./font-size-picker-select.mjs";
|
|
13
13
|
import FontSizePickerToggleGroup from "./font-size-picker-toggle-group.mjs";
|
|
14
|
-
import { maybeWarnDeprecated36pxSize } from "../utils/deprecated-36px-size.mjs";
|
|
15
14
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
15
|
var DEFAULT_UNITS = ["px", "em", "rem", "vw", "vh"];
|
|
17
16
|
var MAX_TOGGLE_GROUP_SIZES = 5;
|
|
18
17
|
var UnforwardedFontSizePicker = (props, ref) => {
|
|
19
18
|
const {
|
|
20
|
-
__next40pxDefaultSize = false,
|
|
21
19
|
fallbackFontSize,
|
|
22
20
|
fontSizes = [],
|
|
23
21
|
disableCustomFontSizes = false,
|
|
24
22
|
onChange,
|
|
25
|
-
size = "default",
|
|
26
23
|
units: unitsProp = DEFAULT_UNITS,
|
|
27
24
|
value,
|
|
28
25
|
valueMode = "literal",
|
|
@@ -58,11 +55,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
58
55
|
const [valueQuantity, valueUnit] = parseQuantityAndUnitFromRawValue(resolvedValueForControls, units);
|
|
59
56
|
const isValueUnitRelative = !!valueUnit && ["em", "rem", "vw", "vh"].includes(valueUnit);
|
|
60
57
|
const isDisabled = value === void 0;
|
|
61
|
-
maybeWarnDeprecated36pxSize({
|
|
62
|
-
componentName: "FontSizePicker",
|
|
63
|
-
__next40pxDefaultSize,
|
|
64
|
-
size
|
|
65
|
-
});
|
|
66
58
|
return /* @__PURE__ */ _jsxs(Container, {
|
|
67
59
|
ref,
|
|
68
60
|
className: "components-font-size-picker",
|
|
@@ -83,12 +75,10 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
83
75
|
})
|
|
84
76
|
}), /* @__PURE__ */ _jsxs("div", {
|
|
85
77
|
children: [currentPickerType === "select" && /* @__PURE__ */ _jsx(FontSizePickerSelect, {
|
|
86
|
-
__next40pxDefaultSize,
|
|
87
78
|
fontSizes,
|
|
88
79
|
value,
|
|
89
80
|
valueMode,
|
|
90
81
|
disableCustomFontSizes,
|
|
91
|
-
size,
|
|
92
82
|
onChange: (newValue, selectedItem) => {
|
|
93
83
|
if (newValue === void 0) {
|
|
94
84
|
onChange?.(void 0, selectedItem);
|
|
@@ -101,8 +91,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
101
91
|
fontSizes,
|
|
102
92
|
value,
|
|
103
93
|
valueMode,
|
|
104
|
-
__next40pxDefaultSize,
|
|
105
|
-
size,
|
|
106
94
|
onChange: (newValue, selectedItem) => {
|
|
107
95
|
if (newValue === void 0) {
|
|
108
96
|
onChange?.(void 0, selectedItem);
|
|
@@ -115,8 +103,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
115
103
|
children: [/* @__PURE__ */ _jsx(FlexItem, {
|
|
116
104
|
isBlock: true,
|
|
117
105
|
children: /* @__PURE__ */ _jsx(UnitControl, {
|
|
118
|
-
__next40pxDefaultSize,
|
|
119
|
-
__shouldNotWarnDeprecated36pxSize: true,
|
|
120
106
|
label: __("Font size"),
|
|
121
107
|
labelPosition: "top",
|
|
122
108
|
hideLabelFromVision: true,
|
|
@@ -129,7 +115,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
129
115
|
onChange?.(hasUnits ? newValue : parseInt(newValue, 10));
|
|
130
116
|
}
|
|
131
117
|
},
|
|
132
|
-
size,
|
|
133
118
|
units: hasUnits ? units : [],
|
|
134
119
|
min: 0
|
|
135
120
|
})
|
|
@@ -139,8 +124,6 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
139
124
|
marginX: 2,
|
|
140
125
|
marginBottom: 0,
|
|
141
126
|
children: /* @__PURE__ */ _jsx(RangeControl, {
|
|
142
|
-
__next40pxDefaultSize,
|
|
143
|
-
__shouldNotWarnDeprecated36pxSize: true,
|
|
144
127
|
className: "components-font-size-picker__custom-input",
|
|
145
128
|
label: __("Font size"),
|
|
146
129
|
hideLabelFromVision: true,
|
|
@@ -171,7 +154,7 @@ var UnforwardedFontSizePicker = (props, ref) => {
|
|
|
171
154
|
},
|
|
172
155
|
variant: "secondary",
|
|
173
156
|
__next40pxDefaultSize: true,
|
|
174
|
-
size:
|
|
157
|
+
size: "default",
|
|
175
158
|
children: __("Reset")
|
|
176
159
|
})
|
|
177
160
|
})]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/font-size-picker/index.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * External dependencies\n */\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport { default as UnitControl, parseQuantityAndUnitFromRawValue, useCustomUnits } from '../unit-control';\nimport { Container, Header, HeaderLabel, HeaderToggle } from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport {
|
|
5
|
-
"mappings": ";AAOA,SAAS,UAAU;AACnB,SAAS,gBAAgB;AACzB,SAAS,UAAU,kBAAkB;AACrC,SAAS,qBAAqB;AAK9B,SAAS,cAAc;AACvB,OAAO,kBAAkB;AACzB,SAAS,MAAM,gBAAgB;AAC/B,SAAS,WAAW,aAAa,kCAAkC,sBAAsB;AACzF,SAAS,WAAW,QAAQ,aAAa,oBAAoB;AAC7D,SAAS,cAAc;AACvB,OAAO,0BAA0B;AACjC,OAAO,+BAA+B;AACtC,SAAS,
|
|
4
|
+
"sourcesContent": ["/**\n * External dependencies\n */\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { settings } from '@wordpress/icons';\nimport { useState, forwardRef } from '@wordpress/element';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport RangeControl from '../range-control';\nimport { Flex, FlexItem } from '../flex';\nimport { default as UnitControl, parseQuantityAndUnitFromRawValue, useCustomUnits } from '../unit-control';\nimport { Container, Header, HeaderLabel, HeaderToggle } from './styles';\nimport { Spacer } from '../spacer';\nimport FontSizePickerSelect from './font-size-picker-select';\nimport FontSizePickerToggleGroup from './font-size-picker-toggle-group';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nconst DEFAULT_UNITS = ['px', 'em', 'rem', 'vw', 'vh'];\nconst MAX_TOGGLE_GROUP_SIZES = 5;\nconst UnforwardedFontSizePicker = (props, ref) => {\n const {\n fallbackFontSize,\n fontSizes = [],\n disableCustomFontSizes = false,\n onChange,\n units: unitsProp = DEFAULT_UNITS,\n value,\n valueMode = 'literal',\n withSlider = false,\n withReset = true\n } = props;\n const labelId = useInstanceId(UnforwardedFontSizePicker, 'font-size-picker-label');\n const units = useCustomUnits({\n availableUnits: unitsProp\n });\n const selectedFontSize = (() => {\n if (!value) {\n return undefined;\n }\n\n // If valueMode is 'slug', find by slug\n if (valueMode === 'slug') {\n return fontSizes.find(fontSize => fontSize.slug === value);\n }\n\n // If valueMode is 'literal', find by size value\n return fontSizes.find(fontSize => fontSize.size === value);\n })();\n const isCustomValue = !!value && !selectedFontSize;\n\n // Initially request a custom picker if the value is not from the predef list.\n const [userRequestedCustom, setUserRequestedCustom] = useState(isCustomValue);\n\n // Resolve the literal value to use in custom controls when operating in slug mode.\n // When `valueMode` is 'slug', the `value` prop contains the slug of the\n // selected preset. In that case, the custom input should reflect the preset's\n // actual size value so it pre-populates correctly after clicking \"Set custom size\".\n const resolvedValueForControls = valueMode === 'slug' ? selectedFontSize?.size : value;\n let currentPickerType;\n if (!disableCustomFontSizes && userRequestedCustom) {\n // While showing the custom value picker, switch back to predef only if\n // `disableCustomFontSizes` is set to `true`.\n currentPickerType = 'custom';\n } else {\n currentPickerType = fontSizes.length > MAX_TOGGLE_GROUP_SIZES ? 'select' : 'togglegroup';\n }\n if (fontSizes.length === 0 && disableCustomFontSizes) {\n return null;\n }\n\n // If neither the value or first font size is a string, then FontSizePicker\n // operates in a legacy \"unitless\" mode where UnitControl can only be used\n // to select px values and onChange() is always called with number values.\n const hasUnits = typeof resolvedValueForControls === 'string' || typeof fontSizes[0]?.size === 'string';\n const [valueQuantity, valueUnit] = parseQuantityAndUnitFromRawValue(resolvedValueForControls, units);\n const isValueUnitRelative = !!valueUnit && ['em', 'rem', 'vw', 'vh'].includes(valueUnit);\n const isDisabled = value === undefined;\n return /*#__PURE__*/_jsxs(Container, {\n ref: ref,\n className: \"components-font-size-picker\"\n // This Container component renders a fieldset element that needs to be labeled.\n ,\n \"aria-labelledby\": labelId,\n children: [/*#__PURE__*/_jsx(Spacer, {\n children: /*#__PURE__*/_jsxs(Header, {\n className: \"components-font-size-picker__header\",\n children: [/*#__PURE__*/_jsx(HeaderLabel, {\n id: labelId,\n children: __('Font size')\n }), !disableCustomFontSizes && /*#__PURE__*/_jsx(HeaderToggle, {\n label: currentPickerType === 'custom' ? __('Use size preset') : __('Set custom size'),\n icon: settings,\n onClick: () => setUserRequestedCustom(!userRequestedCustom),\n isPressed: currentPickerType === 'custom',\n size: \"small\"\n })]\n })\n }), /*#__PURE__*/_jsxs(\"div\", {\n children: [currentPickerType === 'select' && /*#__PURE__*/_jsx(FontSizePickerSelect, {\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n disableCustomFontSizes: disableCustomFontSizes,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n },\n onSelectCustom: () => setUserRequestedCustom(true)\n }), currentPickerType === 'togglegroup' && /*#__PURE__*/_jsx(FontSizePickerToggleGroup, {\n fontSizes: fontSizes,\n value: value,\n valueMode: valueMode,\n onChange: (newValue, selectedItem) => {\n if (newValue === undefined) {\n onChange?.(undefined, selectedItem);\n } else {\n onChange?.(hasUnits ? newValue : Number(newValue), selectedItem);\n }\n }\n }), currentPickerType === 'custom' && /*#__PURE__*/_jsxs(Flex, {\n className: \"components-font-size-picker__custom-size-control\",\n children: [/*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(UnitControl, {\n label: __('Font size'),\n labelPosition: \"top\",\n hideLabelFromVision: true,\n value: hasUnits ? `${valueQuantity ?? ''}${valueUnit ?? ''}` : resolvedValueForControls,\n onChange: newValue => {\n setUserRequestedCustom(true);\n\n // Treat clearing the input (empty string) as a reset\n if (newValue === undefined || newValue === '') {\n onChange?.(undefined);\n } else {\n onChange?.(hasUnits ? newValue : parseInt(newValue, 10));\n }\n },\n units: hasUnits ? units : [],\n min: 0\n })\n }), withSlider && /*#__PURE__*/_jsx(FlexItem, {\n isBlock: true,\n children: /*#__PURE__*/_jsx(Spacer, {\n marginX: 2,\n marginBottom: 0,\n children: /*#__PURE__*/_jsx(RangeControl, {\n className: \"components-font-size-picker__custom-input\",\n label: __('Font size'),\n hideLabelFromVision: true,\n value: valueQuantity,\n initialPosition: fallbackFontSize,\n withInputField: false,\n onChange: newValue => {\n setUserRequestedCustom(true);\n if (newValue === undefined) {\n onChange?.(undefined);\n } else if (hasUnits) {\n onChange?.(newValue + (valueUnit ?? 'px'));\n } else {\n onChange?.(newValue);\n }\n },\n min: 0,\n max: isValueUnitRelative ? 10 : 100,\n step: isValueUnitRelative ? 0.1 : 1\n })\n })\n }), withReset && /*#__PURE__*/_jsx(FlexItem, {\n children: /*#__PURE__*/_jsx(Button, {\n disabled: isDisabled,\n accessibleWhenDisabled: true,\n onClick: () => {\n onChange?.(undefined);\n },\n variant: \"secondary\",\n __next40pxDefaultSize: true,\n size: \"default\",\n children: __('Reset')\n })\n })]\n })]\n })]\n });\n};\nexport const FontSizePicker = forwardRef(UnforwardedFontSizePicker);\nFontSizePicker.displayName = 'FontSizePicker';\nexport default FontSizePicker;"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|