@wordpress/components 25.14.0 → 25.15.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 +50 -0
- package/CONTRIBUTING.md +57 -115
- package/LICENSE.md +1 -1
- package/build/base-control/index.js +17 -13
- package/build/base-control/index.js.map +1 -1
- package/build/border-box-control/border-box-control-linked-button/component.js +1 -1
- package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
- package/build/border-control/border-control-style-picker/component.js +1 -1
- package/build/border-control/border-control-style-picker/component.js.map +1 -1
- package/build/box-control/index.js +1 -1
- package/build/box-control/index.js.map +1 -1
- package/build/box-control/linked-button.js +1 -1
- package/build/box-control/linked-button.js.map +1 -1
- package/build/button/index.js +1 -1
- package/build/button/index.js.map +1 -1
- package/build/color-picker/color-copy-button.js +1 -1
- package/build/color-picker/color-copy-button.js.map +1 -1
- package/build/context/wordpress-component.js.map +1 -1
- package/build/custom-select-control-v2/index.js +11 -10
- package/build/custom-select-control-v2/index.js.map +1 -1
- package/build/date-time/date/styles.js +8 -8
- package/build/date-time/date/styles.js.map +1 -1
- package/build/dropdown-menu-v2/index.js +205 -159
- package/build/dropdown-menu-v2/index.js.map +1 -1
- package/build/dropdown-menu-v2/styles.js +86 -77
- package/build/dropdown-menu-v2/styles.js.map +1 -1
- package/build/dropdown-menu-v2/types.js.map +1 -1
- package/build/duotone-picker/duotone-picker.js +4 -3
- package/build/duotone-picker/duotone-picker.js.map +1 -1
- package/build/font-size-picker/index.js +4 -2
- package/build/font-size-picker/index.js.map +1 -1
- package/build/font-size-picker/index.native.js +6 -3
- package/build/font-size-picker/index.native.js.map +1 -1
- package/build/form-token-field/index.js +10 -5
- package/build/form-token-field/index.js.map +1 -1
- package/build/form-token-field/token.js +1 -0
- package/build/form-token-field/token.js.map +1 -1
- package/build/gradient-picker/index.js +3 -2
- package/build/gradient-picker/index.js.map +1 -1
- package/build/index.native.js +20 -3
- package/build/index.native.js.map +1 -1
- package/build/input-control/styles/input-control-styles.js +32 -29
- package/build/input-control/styles/input-control-styles.js.map +1 -1
- package/build/input-control/types.js.map +1 -1
- package/build/lock-unlock.js +18 -0
- package/build/lock-unlock.js.map +1 -0
- package/build/mobile/bottom-sheet/index.native.js +8 -0
- package/build/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build/mobile/global-styles-context/utils.native.js +26 -13
- package/build/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build/mobile/image/constants.js +12 -0
- package/build/mobile/image/constants.js.map +1 -0
- package/build/mobile/image/index.native.js +26 -18
- package/build/mobile/image/index.native.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/index.android.js +40 -8
- package/build/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/index.ios.js +44 -68
- package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +39 -0
- package/build/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js.map +1 -0
- package/build/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +22 -29
- package/build/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js.map +1 -0
- package/build/mobile/keyboard-aware-flat-list/use-scroll.native.js +93 -0
- package/build/mobile/keyboard-aware-flat-list/use-scroll.native.js.map +1 -0
- package/build/mobile/utils/get-px-from-css-unit.native.js +302 -0
- package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -0
- package/build/modal/index.js +18 -13
- package/build/modal/index.js.map +1 -1
- package/build/navigation/menu/menu-title.js +1 -1
- package/build/navigation/menu/menu-title.js.map +1 -1
- package/build/navigator/navigator-provider/component.js +13 -15
- package/build/navigator/navigator-provider/component.js.map +1 -1
- package/build/navigator/navigator-screen/component.js +23 -63
- package/build/navigator/navigator-screen/component.js.map +1 -1
- package/build/navigator/styles.js +52 -0
- package/build/navigator/styles.js.map +1 -0
- package/build/number-control/index.js +4 -8
- package/build/number-control/index.js.map +1 -1
- package/build/number-control/types.js.map +1 -1
- package/build/palette-edit/index.js +15 -54
- package/build/palette-edit/index.js.map +1 -1
- package/build/private-apis.js +11 -26
- package/build/private-apis.js.map +1 -1
- package/build/private-apis.native.js +21 -0
- package/build/private-apis.native.js.map +1 -0
- package/build/radio-control/index.js +1 -0
- package/build/radio-control/index.js.map +1 -1
- package/build/range-control/index.js +1 -1
- package/build/range-control/index.js.map +1 -1
- package/build/select-control/styles/select-control-styles.js +15 -25
- package/build/select-control/styles/select-control-styles.js.map +1 -1
- package/build/slot-fill/index.js +3 -2
- package/build/slot-fill/index.js.map +1 -1
- package/build/slot-fill/types.js.map +1 -1
- package/build/snackbar/types.js.map +1 -1
- package/build/tabs/styles.js +3 -3
- package/build/tabs/styles.js.map +1 -1
- package/build/tabs/tabpanel.js +9 -7
- package/build/tabs/tabpanel.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/component.js +4 -4
- package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control/styles.js +29 -15
- package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js +9 -9
- package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build/tools-panel/tools-panel/component.js +3 -1
- package/build/tools-panel/tools-panel/component.js.map +1 -1
- package/build/tools-panel/tools-panel-header/component.js +9 -8
- package/build/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build/tools-panel/types.js.map +1 -1
- package/build/tooltip/index.js +1 -1
- package/build/tooltip/index.js.map +1 -1
- package/build/truncate/hook.js +10 -4
- package/build/truncate/hook.js.map +1 -1
- package/build/truncate/types.js.map +1 -1
- package/build/unit-control/index.js +1 -1
- package/build/unit-control/index.js.map +1 -1
- package/build/utils/strings.js +34 -3
- package/build/utils/strings.js.map +1 -1
- package/build-module/base-control/index.js +16 -12
- package/build-module/base-control/index.js.map +1 -1
- package/build-module/border-box-control/border-box-control-linked-button/component.js +1 -1
- package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -1
- package/build-module/border-control/border-control-style-picker/component.js +1 -1
- package/build-module/border-control/border-control-style-picker/component.js.map +1 -1
- package/build-module/box-control/index.js +1 -1
- package/build-module/box-control/index.js.map +1 -1
- package/build-module/box-control/linked-button.js +1 -1
- package/build-module/box-control/linked-button.js.map +1 -1
- package/build-module/button/index.js +1 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/color-picker/color-copy-button.js +1 -1
- package/build-module/color-picker/color-copy-button.js.map +1 -1
- package/build-module/context/wordpress-component.js.map +1 -1
- package/build-module/custom-select-control-v2/index.js +11 -10
- package/build-module/custom-select-control-v2/index.js.map +1 -1
- package/build-module/date-time/date/styles.js +8 -8
- package/build-module/date-time/date/styles.js.map +1 -1
- package/build-module/dropdown-menu-v2/index.js +201 -154
- package/build-module/dropdown-menu-v2/index.js.map +1 -1
- package/build-module/dropdown-menu-v2/styles.js +68 -61
- package/build-module/dropdown-menu-v2/styles.js.map +1 -1
- package/build-module/dropdown-menu-v2/types.js.map +1 -1
- package/build-module/duotone-picker/duotone-picker.js +4 -3
- package/build-module/duotone-picker/duotone-picker.js.map +1 -1
- package/build-module/font-size-picker/index.js +4 -2
- package/build-module/font-size-picker/index.js.map +1 -1
- package/build-module/font-size-picker/index.native.js +5 -2
- package/build-module/font-size-picker/index.native.js.map +1 -1
- package/build-module/form-token-field/index.js +10 -5
- package/build-module/form-token-field/index.js.map +1 -1
- package/build-module/form-token-field/token.js +1 -0
- package/build-module/form-token-field/token.js.map +1 -1
- package/build-module/gradient-picker/index.js +3 -2
- package/build-module/gradient-picker/index.js.map +1 -1
- package/build-module/index.native.js +6 -1
- package/build-module/index.native.js.map +1 -1
- package/build-module/input-control/styles/input-control-styles.js +31 -29
- package/build-module/input-control/styles/input-control-styles.js.map +1 -1
- package/build-module/input-control/types.js.map +1 -1
- package/build-module/lock-unlock.js +9 -0
- package/build-module/lock-unlock.js.map +1 -0
- package/build-module/mobile/bottom-sheet/index.native.js +9 -1
- package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
- package/build-module/mobile/global-styles-context/utils.native.js +25 -13
- package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
- package/build-module/mobile/image/constants.js +5 -0
- package/build-module/mobile/image/constants.js.map +1 -0
- package/build-module/mobile/image/index.native.js +25 -16
- package/build-module/mobile/image/index.native.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/index.android.js +40 -6
- package/build-module/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +46 -68
- package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +33 -0
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js.map +1 -0
- package/build-module/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +21 -27
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js.map +1 -0
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll.native.js +86 -0
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll.native.js.map +1 -0
- package/build-module/mobile/utils/get-px-from-css-unit.native.js +294 -0
- package/build-module/mobile/utils/get-px-from-css-unit.native.js.map +1 -0
- package/build-module/modal/index.js +18 -13
- package/build-module/modal/index.js.map +1 -1
- package/build-module/navigation/menu/menu-title.js +1 -1
- package/build-module/navigation/menu/menu-title.js.map +1 -1
- package/build-module/navigator/navigator-provider/component.js +3 -16
- package/build-module/navigator/navigator-provider/component.js.map +1 -1
- package/build-module/navigator/navigator-screen/component.js +16 -70
- package/build-module/navigator/navigator-screen/component.js.map +1 -1
- package/build-module/navigator/styles.js +47 -0
- package/build-module/navigator/styles.js.map +1 -0
- package/build-module/number-control/index.js +4 -8
- package/build-module/number-control/index.js.map +1 -1
- package/build-module/number-control/types.js.map +1 -1
- package/build-module/palette-edit/index.js +15 -51
- package/build-module/palette-edit/index.js.map +1 -1
- package/build-module/private-apis.js +10 -23
- package/build-module/private-apis.js.map +1 -1
- package/build-module/private-apis.native.js +14 -0
- package/build-module/private-apis.native.js.map +1 -0
- package/build-module/radio-control/index.js +1 -0
- package/build-module/radio-control/index.js.map +1 -1
- package/build-module/range-control/index.js +1 -1
- package/build-module/range-control/index.js.map +1 -1
- package/build-module/select-control/styles/select-control-styles.js +15 -25
- package/build-module/select-control/styles/select-control-styles.js.map +1 -1
- package/build-module/slot-fill/index.js +3 -2
- package/build-module/slot-fill/index.js.map +1 -1
- package/build-module/slot-fill/types.js.map +1 -1
- package/build-module/snackbar/types.js.map +1 -1
- package/build-module/tabs/styles.js +3 -3
- package/build-module/tabs/styles.js.map +1 -1
- package/build-module/tabs/tabpanel.js +9 -7
- package/build-module/tabs/tabpanel.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/component.js +4 -4
- package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control/styles.js +29 -15
- package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +9 -9
- package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
- package/build-module/tools-panel/tools-panel/component.js +3 -1
- package/build-module/tools-panel/tools-panel/component.js.map +1 -1
- package/build-module/tools-panel/tools-panel-header/component.js +9 -8
- package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
- package/build-module/tools-panel/types.js.map +1 -1
- package/build-module/tooltip/index.js +1 -1
- package/build-module/tooltip/index.js.map +1 -1
- package/build-module/truncate/hook.js +10 -4
- package/build-module/truncate/hook.js.map +1 -1
- package/build-module/truncate/types.js.map +1 -1
- package/build-module/unit-control/index.js +1 -1
- package/build-module/unit-control/index.js.map +1 -1
- package/build-module/utils/strings.js +32 -2
- package/build-module/utils/strings.js.map +1 -1
- package/build-style/style-rtl.css +29 -5
- package/build-style/style.css +29 -5
- package/build-types/base-control/index.d.ts +3 -27
- package/build-types/base-control/index.d.ts.map +1 -1
- package/build-types/base-control/stories/index.story.d.ts +4 -1
- package/build-types/base-control/stories/index.story.d.ts.map +1 -1
- package/build-types/color-picker/component.d.ts +1 -1
- package/build-types/color-picker/stories/index.story.d.ts +1 -1
- package/build-types/color-picker/stories/index.story.d.ts.map +1 -1
- package/build-types/composite/test/index.d.ts.map +1 -0
- package/build-types/context/wordpress-component.d.ts +3 -3
- package/build-types/context/wordpress-component.d.ts.map +1 -1
- package/build-types/custom-select-control-v2/index.d.ts +3 -2
- package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
- package/build-types/custom-select-control-v2/stories/index.story.d.ts +4 -3
- package/build-types/custom-select-control-v2/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown/index.d.ts +1 -1
- package/build-types/dropdown/index.d.ts.map +1 -1
- package/build-types/dropdown/stories/index.story.d.ts +3 -3
- package/build-types/dropdown/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown-menu/index.d.ts +1 -1
- package/build-types/dropdown-menu/index.d.ts.map +1 -1
- package/build-types/dropdown-menu/stories/index.story.d.ts +2 -2
- package/build-types/dropdown-menu/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown-menu-v2/index.d.ts +18 -15
- package/build-types/dropdown-menu-v2/index.d.ts.map +1 -1
- package/build-types/dropdown-menu-v2/stories/index.story.d.ts +7 -2
- package/build-types/dropdown-menu-v2/stories/index.story.d.ts.map +1 -1
- package/build-types/dropdown-menu-v2/styles.d.ts +77 -23
- package/build-types/dropdown-menu-v2/styles.d.ts.map +1 -1
- package/build-types/dropdown-menu-v2/types.d.ts +89 -173
- package/build-types/dropdown-menu-v2/types.d.ts.map +1 -1
- package/build-types/duotone-picker/duotone-picker.d.ts.map +1 -1
- package/build-types/font-size-picker/index.d.ts.map +1 -1
- package/build-types/form-token-field/index.d.ts.map +1 -1
- package/build-types/form-token-field/token.d.ts.map +1 -1
- package/build-types/input-control/styles/input-control-styles.d.ts +11 -0
- package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
- package/build-types/input-control/types.d.ts +1 -1
- package/build-types/input-control/types.d.ts.map +1 -1
- package/build-types/lock-unlock.d.ts +3 -0
- package/build-types/lock-unlock.d.ts.map +1 -0
- package/build-types/mobile/image/constants.d.ts +5 -0
- package/build-types/mobile/image/constants.d.ts.map +1 -0
- package/build-types/modal/index.d.ts.map +1 -1
- package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
- package/build-types/navigator/navigator-screen/component.d.ts +1 -7
- package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
- package/build-types/navigator/styles.d.ts +9 -0
- package/build-types/navigator/styles.d.ts.map +1 -0
- package/build-types/number-control/index.d.ts.map +1 -1
- package/build-types/number-control/types.d.ts +1 -1
- package/build-types/palette-edit/index.d.ts +3 -8
- package/build-types/palette-edit/index.d.ts.map +1 -1
- package/build-types/popover/index.d.ts +1 -1
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/popover/stories/e2e/index.story.d.ts +1 -1
- package/build-types/private-apis.d.ts +0 -1
- package/build-types/private-apis.d.ts.map +1 -1
- package/build-types/radio-control/index.d.ts.map +1 -1
- package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
- package/build-types/slot-fill/index.d.ts +1 -1
- package/build-types/slot-fill/index.d.ts.map +1 -1
- package/build-types/slot-fill/types.d.ts +4 -0
- package/build-types/slot-fill/types.d.ts.map +1 -1
- package/build-types/snackbar/index.d.ts +2 -2
- package/build-types/snackbar/stories/index.story.d.ts +0 -3
- package/build-types/snackbar/stories/index.story.d.ts.map +1 -1
- package/build-types/snackbar/types.d.ts +1 -1
- package/build-types/snackbar/types.d.ts.map +1 -1
- package/build-types/tabs/styles.d.ts.map +1 -1
- package/build-types/tabs/tabpanel.d.ts +1 -1
- package/build-types/tabs/tabpanel.d.ts.map +1 -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 +2 -2
- 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-base/component.d.ts +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.map +1 -1
- package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel/hook.d.ts +1 -0
- package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
- package/build-types/tools-panel/tools-panel-header/hook.d.ts +1 -0
- package/build-types/tools-panel/tools-panel-header/hook.d.ts.map +1 -1
- package/build-types/tools-panel/types.d.ts +9 -0
- package/build-types/tools-panel/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/truncate/types.d.ts +4 -0
- package/build-types/truncate/types.d.ts.map +1 -1
- package/build-types/utils/strings.d.ts +14 -2
- package/build-types/utils/strings.d.ts.map +1 -1
- package/package.json +20 -21
- package/src/alignment-matrix-control/test/index.tsx +10 -16
- package/src/base-control/index.tsx +21 -16
- package/src/border-box-control/border-box-control-linked-button/component.tsx +1 -1
- package/src/border-control/border-control-style-picker/component.tsx +1 -1
- package/src/box-control/index.tsx +1 -1
- package/src/box-control/linked-button.tsx +1 -1
- package/src/button/README.md +32 -6
- package/src/button/index.tsx +1 -1
- package/src/button-group/README.md +0 -6
- package/src/card/card/README.md +1 -1
- package/src/checkbox-control/README.md +1 -9
- package/src/color-picker/color-copy-button.tsx +1 -1
- package/src/combobox-control/README.md +0 -6
- package/src/composite/test/index.tsx +576 -0
- package/src/context/wordpress-component.ts +11 -6
- package/src/custom-select-control/README.md +0 -6
- package/src/custom-select-control-v2/index.tsx +13 -12
- package/src/date-time/date/styles.ts +3 -3
- package/src/dropdown-menu/README.md +0 -5
- package/src/dropdown-menu-v2/README.md +75 -136
- package/src/dropdown-menu-v2/index.tsx +321 -231
- package/src/dropdown-menu-v2/stories/index.story.tsx +522 -126
- package/src/dropdown-menu-v2/styles.ts +226 -151
- package/src/dropdown-menu-v2/test/index.tsx +480 -188
- package/src/dropdown-menu-v2/types.ts +98 -184
- package/src/duotone-picker/duotone-picker.tsx +7 -3
- package/src/font-size-picker/index.native.js +8 -2
- package/src/font-size-picker/index.tsx +4 -2
- package/src/form-toggle/README.md +0 -6
- package/src/form-token-field/index.tsx +11 -7
- package/src/form-token-field/test/index.tsx +97 -0
- package/src/form-token-field/token.tsx +1 -0
- package/src/gradient-picker/index.tsx +2 -2
- package/src/index.native.js +6 -1
- package/src/input-control/styles/input-control-styles.tsx +10 -8
- package/src/input-control/types.ts +1 -1
- package/src/lock-unlock.js +10 -0
- package/src/menu-group/README.md +0 -8
- package/src/menu-items-choice/README.md +0 -7
- package/src/mobile/bottom-sheet/index.native.js +15 -1
- package/src/mobile/global-styles-context/test/fixtures/theme.native.js +0 -20
- package/src/mobile/global-styles-context/utils.native.js +28 -19
- package/src/mobile/image/constants.js +1 -0
- package/src/mobile/image/index.native.js +55 -18
- package/src/mobile/image/style.native.scss +35 -9
- package/src/mobile/keyboard-aware-flat-list/index.android.js +50 -5
- package/src/mobile/keyboard-aware-flat-list/index.ios.js +65 -91
- package/src/mobile/keyboard-aware-flat-list/test/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +27 -25
- package/src/mobile/keyboard-aware-flat-list/test/use-scroll.native.js +71 -0
- package/src/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +41 -0
- package/src/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +22 -27
- package/src/mobile/keyboard-aware-flat-list/use-scroll.native.js +100 -0
- package/src/mobile/utils/get-px-from-css-unit.native.js +329 -0
- package/src/mobile/utils/test/get-px-from-css-unit.native.js +172 -0
- package/src/modal/README.md +0 -6
- package/src/modal/index.tsx +18 -16
- package/src/modal/test/index.tsx +90 -1
- package/src/navigation/menu/menu-title.tsx +1 -1
- package/src/navigator/navigator-provider/component.tsx +3 -4
- package/src/navigator/navigator-screen/component.tsx +15 -93
- package/src/navigator/styles.ts +71 -0
- package/src/navigator/test/index.tsx +0 -64
- package/src/notice/README.md +0 -6
- package/src/number-control/README.md +2 -2
- package/src/number-control/index.tsx +4 -8
- package/src/number-control/types.ts +1 -1
- package/src/palette-edit/index.tsx +15 -58
- package/src/palette-edit/test/index.tsx +1 -75
- package/src/panel/README.md +0 -6
- package/src/private-apis.native.js +13 -0
- package/src/private-apis.ts +12 -37
- package/src/radio-control/README.md +0 -6
- package/src/radio-control/index.tsx +4 -1
- package/src/radio-control/style.scss +29 -2
- package/src/radio-group/README.md +0 -6
- package/src/range-control/README.md +1 -9
- package/src/range-control/index.tsx +1 -1
- package/src/search-control/README.md +0 -6
- package/src/select-control/README.md +0 -6
- package/src/select-control/styles/select-control-styles.ts +10 -28
- package/src/slot-fill/index.tsx +5 -2
- package/src/slot-fill/types.ts +5 -0
- package/src/snackbar/README.md +0 -6
- package/src/snackbar/stories/index.story.tsx +7 -5
- package/src/snackbar/style.scss +4 -3
- package/src/snackbar/types.ts +2 -1
- package/src/spacer/README.md +0 -2
- package/src/tab-panel/README.md +0 -5
- package/src/tab-panel/test/index.tsx +39 -56
- package/src/tabs/styles.ts +7 -1
- package/src/tabs/tabpanel.tsx +7 -6
- package/src/tabs/test/index.tsx +56 -0
- package/src/text-control/README.md +0 -6
- package/src/textarea-control/README.md +0 -6
- package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +12 -16
- package/src/toggle-group-control/test/index.tsx +58 -45
- package/src/toggle-group-control/toggle-group-control/component.tsx +5 -4
- package/src/toggle-group-control/toggle-group-control/styles.ts +13 -19
- package/src/toggle-group-control/toggle-group-control-option/README.md +1 -1
- package/src/toggle-group-control/toggle-group-control-option-base/README.md +1 -1
- package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +3 -2
- package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
- package/src/toolbar/toolbar/README.md +0 -6
- package/src/tools-panel/test/index.tsx +12 -20
- package/src/tools-panel/tools-panel/README.md +7 -0
- package/src/tools-panel/tools-panel/component.tsx +2 -0
- package/src/tools-panel/tools-panel-header/README.md +7 -0
- package/src/tools-panel/tools-panel-header/component.tsx +20 -13
- package/src/tools-panel/types.ts +9 -0
- package/src/tooltip/index.tsx +1 -1
- package/src/tooltip/test/index.tsx +360 -256
- package/src/tree-grid/README.md +0 -4
- package/src/truncate/README.md +8 -0
- package/src/truncate/hook.ts +17 -10
- package/src/truncate/test/index.tsx +54 -27
- package/src/truncate/types.ts +4 -0
- package/src/unit-control/index.tsx +1 -1
- package/src/utils/strings.ts +30 -2
- package/src/utils/test/strings.js +96 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/build/dropdown-menu-v2-ariakit/index.js +0 -256
- package/build/dropdown-menu-v2-ariakit/index.js.map +0 -1
- package/build/dropdown-menu-v2-ariakit/styles.js +0 -180
- package/build/dropdown-menu-v2-ariakit/styles.js.map +0 -1
- package/build/dropdown-menu-v2-ariakit/types.js +0 -6
- package/build/dropdown-menu-v2-ariakit/types.js.map +0 -1
- package/build/mobile/keyboard-aware-flat-list/use-scroll-to-text-input.native.js.map +0 -1
- package/build-module/dropdown-menu-v2-ariakit/index.js +0 -237
- package/build-module/dropdown-menu-v2-ariakit/index.js.map +0 -1
- package/build-module/dropdown-menu-v2-ariakit/styles.js +0 -165
- package/build-module/dropdown-menu-v2-ariakit/styles.js.map +0 -1
- package/build-module/dropdown-menu-v2-ariakit/types.js +0 -2
- package/build-module/dropdown-menu-v2-ariakit/types.js.map +0 -1
- package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-text-input.native.js.map +0 -1
- package/build-types/dropdown-menu-v2-ariakit/index.d.ts +0 -20
- package/build-types/dropdown-menu-v2-ariakit/index.d.ts.map +0 -1
- package/build-types/dropdown-menu-v2-ariakit/stories/index.story.d.ts +0 -16
- package/build-types/dropdown-menu-v2-ariakit/stories/index.story.d.ts.map +0 -1
- package/build-types/dropdown-menu-v2-ariakit/styles.d.ts +0 -96
- package/build-types/dropdown-menu-v2-ariakit/styles.d.ts.map +0 -1
- package/build-types/dropdown-menu-v2-ariakit/test/index.d.ts.map +0 -1
- package/build-types/dropdown-menu-v2-ariakit/types.d.ts +0 -168
- package/build-types/dropdown-menu-v2-ariakit/types.d.ts.map +0 -1
- package/src/dropdown-menu-v2-ariakit/README.md +0 -331
- package/src/dropdown-menu-v2-ariakit/index.tsx +0 -383
- package/src/dropdown-menu-v2-ariakit/stories/index.story.tsx +0 -617
- package/src/dropdown-menu-v2-ariakit/styles.ts +0 -345
- package/src/dropdown-menu-v2-ariakit/test/index.tsx +0 -1108
- package/src/dropdown-menu-v2-ariakit/types.ts +0 -179
- /package/build-types/{dropdown-menu-v2-ariakit → composite}/test/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react2","require","_flex","_text","_utils","_space","_EMOTION_STRINGIFIED_CSS_ERROR__","_ref2","process","env","NODE_ENV","name","styles","map","toString","rootFocusedStyles","isFocused","Root","_base","default","Flex","target","label","exports","containerDisabledStyles","disabled","backgroundColor","COLORS","ui","backgroundDisabled","background","css","_ref","containerWidthStyles","__unstableInputWidth","labelPosition","flex","width","Container","disabledStyles","color","textDisabled","fontSizeStyles","inputSize","size","sizes","small","fontSize","fontSizeMobile","getSizeConfig","__next40pxDefaultSize","height","lineHeight","minHeight","paddingLeft","space","paddingRight","sizeStyles","props","customPaddings","paddingInlineStart","paddingInlineEnd","dragStyles","isDragging","dragCursor","defaultArrowStyles","activeDragCursorStyles","Input","gray","BaseLabel","Text","baseLabelTypography","Label","_react","createElement","as","LabelWrapper","FlexItem","backdropFocusedStyles","borderColor","borderFocus","border","boxShadow","outline","outlineOffset","CONFIG","controlBoxShadowFocus","borderDisabled","borderStyle","borderWidth","BackdropUI","rtl","Prefix","Suffix"],"sources":["@wordpress/components/src/input-control/styles/input-control-styles.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { SerializedStyles } from '@emotion/react';\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport type { CSSProperties, ReactNode } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { Flex, FlexItem } from '../../flex';\nimport { Text } from '../../text';\nimport { baseLabelTypography, COLORS, CONFIG, rtl } from '../../utils';\nimport type { LabelPosition, Size } from '../types';\nimport { space } from '../../utils/space';\n\ntype ContainerProps = {\n\tdisabled?: boolean;\n\thideLabel?: boolean;\n\t__unstableInputWidth?: CSSProperties[ 'width' ];\n\tlabelPosition?: LabelPosition;\n};\n\ntype RootProps = {\n\tisFocused?: boolean;\n\tlabelPosition?: LabelPosition;\n};\n\nconst rootFocusedStyles = ( { isFocused }: RootProps ) => {\n\tif ( ! isFocused ) return '';\n\n\treturn css( { zIndex: 1 } );\n};\n\nexport const Root = styled( Flex )< RootProps >`\n\tbox-sizing: border-box;\n\tposition: relative;\n\tborder-radius: 2px;\n\tpadding-top: 0;\n\t${ rootFocusedStyles }\n`;\n\nconst containerDisabledStyles = ( { disabled }: ContainerProps ) => {\n\tconst backgroundColor = disabled\n\t\t? COLORS.ui.backgroundDisabled\n\t\t: COLORS.ui.background;\n\n\treturn css( { backgroundColor } );\n};\n\nconst containerWidthStyles = ( {\n\t__unstableInputWidth,\n\tlabelPosition,\n}: ContainerProps ) => {\n\tif ( ! __unstableInputWidth ) return css( { width: '100%' } );\n\n\tif ( labelPosition === 'side' ) return '';\n\n\tif ( labelPosition === 'edge' ) {\n\t\treturn css( {\n\t\t\tflex: `0 0 ${ __unstableInputWidth }`,\n\t\t} );\n\t}\n\n\treturn css( { width: __unstableInputWidth } );\n};\n\nexport const Container = styled.div< ContainerProps >`\n\talign-items: center;\n\tbox-sizing: border-box;\n\tborder-radius: inherit;\n\tdisplay: flex;\n\tflex: 1;\n\tposition: relative;\n\n\t${ containerDisabledStyles }\n\t${ containerWidthStyles }\n`;\n\ntype InputProps = {\n\t__next40pxDefaultSize?: boolean;\n\tdisabled?: boolean;\n\tinputSize?: Size;\n\tisDragging?: boolean;\n\tdragCursor?: CSSProperties[ 'cursor' ];\n\tpaddingInlineStart?: CSSProperties[ 'paddingInlineStart' ];\n\tpaddingInlineEnd?: CSSProperties[ 'paddingInlineEnd' ];\n};\n\nconst disabledStyles = ( { disabled }: InputProps ) => {\n\tif ( ! disabled ) return '';\n\n\treturn css( {\n\t\tcolor: COLORS.ui.textDisabled,\n\t} );\n};\n\nconst fontSizeStyles = ( { inputSize: size }: InputProps ) => {\n\tconst sizes = {\n\t\tdefault: '13px',\n\t\tsmall: '11px',\n\t\t'__unstable-large': '13px',\n\t};\n\n\tconst fontSize = sizes[ size as Size ] || sizes.default;\n\tconst fontSizeMobile = '16px';\n\n\tif ( ! fontSize ) return '';\n\n\treturn css`\n\t\tfont-size: ${ fontSizeMobile };\n\n\t\t@media ( min-width: 600px ) {\n\t\t\tfont-size: ${ fontSize };\n\t\t}\n\t`;\n};\n\nexport const getSizeConfig = ( {\n\tinputSize: size,\n\t__next40pxDefaultSize,\n}: InputProps ) => {\n\t// Paddings may be overridden by the custom paddings props.\n\tconst sizes = {\n\t\tdefault: {\n\t\t\theight: 40,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 40,\n\t\t\tpaddingLeft: space( 4 ),\n\t\t\tpaddingRight: space( 4 ),\n\t\t},\n\t\tsmall: {\n\t\t\theight: 24,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 24,\n\t\t\tpaddingLeft: space( 2 ),\n\t\t\tpaddingRight: space( 2 ),\n\t\t},\n\t\t'__unstable-large': {\n\t\t\theight: 40,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 40,\n\t\t\tpaddingLeft: space( 4 ),\n\t\t\tpaddingRight: space( 4 ),\n\t\t},\n\t};\n\n\tif ( ! __next40pxDefaultSize ) {\n\t\tsizes.default = {\n\t\t\theight: 32,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 32,\n\t\t\tpaddingLeft: space( 2 ),\n\t\t\tpaddingRight: space( 2 ),\n\t\t};\n\t}\n\n\treturn sizes[ size as Size ] || sizes.default;\n};\n\nconst sizeStyles = ( props: InputProps ) => {\n\treturn css( getSizeConfig( props ) );\n};\n\nconst customPaddings = ( {\n\tpaddingInlineStart,\n\tpaddingInlineEnd,\n}: InputProps ) => {\n\treturn css( { paddingInlineStart, paddingInlineEnd } );\n};\n\nconst dragStyles = ( { isDragging, dragCursor }: InputProps ) => {\n\tlet defaultArrowStyles: SerializedStyles | undefined;\n\tlet activeDragCursorStyles: SerializedStyles | undefined;\n\n\tif ( isDragging ) {\n\t\tdefaultArrowStyles = css`\n\t\t\tcursor: ${ dragCursor };\n\t\t\tuser-select: none;\n\n\t\t\t&::-webkit-outer-spin-button,\n\t\t\t&::-webkit-inner-spin-button {\n\t\t\t\t-webkit-appearance: none !important;\n\t\t\t\tmargin: 0 !important;\n\t\t\t}\n\t\t`;\n\t}\n\n\tif ( isDragging && dragCursor ) {\n\t\tactiveDragCursorStyles = css`\n\t\t\t&:active {\n\t\t\t\tcursor: ${ dragCursor };\n\t\t\t}\n\t\t`;\n\t}\n\n\treturn css`\n\t\t${ defaultArrowStyles }\n\t\t${ activeDragCursorStyles }\n\t`;\n};\n\n// TODO: Resolve need to use &&& to increase specificity\n// https://github.com/WordPress/gutenberg/issues/18483\n\nexport const Input = styled.input< InputProps >`\n\t&&& {\n\t\tbackground-color: transparent;\n\t\tbox-sizing: border-box;\n\t\tborder: none;\n\t\tbox-shadow: none !important;\n\t\tcolor: ${ COLORS.gray[ 900 ] };\n\t\tdisplay: block;\n\t\tfont-family: inherit;\n\t\tmargin: 0;\n\t\toutline: none;\n\t\twidth: 100%;\n\n\t\t${ dragStyles }\n\t\t${ disabledStyles }\n\t\t${ fontSizeStyles }\n\t\t${ sizeStyles }\n\t\t${ customPaddings }\n\n\t\t&::-webkit-input-placeholder {\n\t\t\tline-height: normal;\n\t\t}\n\t}\n`;\n\nconst BaseLabel = styled( Text )< { labelPosition?: LabelPosition } >`\n\t&&& {\n\t\t${ baseLabelTypography };\n\n\t\tbox-sizing: border-box;\n\t\tdisplay: block;\n\t\tpadding-top: 0;\n\t\tpadding-bottom: 0;\n\t\tmax-width: 100%;\n\t\tz-index: 1;\n\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t}\n`;\n\nexport const Label = (\n\tprops: WordPressComponentProps<\n\t\t{ labelPosition?: LabelPosition; children: ReactNode },\n\t\t'label',\n\t\tfalse\n\t>\n) => <BaseLabel { ...props } as=\"label\" />;\n\nexport const LabelWrapper = styled( FlexItem )`\n\tmax-width: calc( 100% - 10px );\n`;\n\ntype BackdropProps = {\n\tdisabled?: boolean;\n\tisFocused?: boolean;\n};\n\nconst backdropFocusedStyles = ( {\n\tdisabled,\n\tisFocused,\n}: BackdropProps ): SerializedStyles => {\n\tlet borderColor = isFocused ? COLORS.ui.borderFocus : COLORS.ui.border;\n\n\tlet boxShadow;\n\tlet outline;\n\tlet outlineOffset;\n\n\tif ( isFocused ) {\n\t\tboxShadow = CONFIG.controlBoxShadowFocus;\n\t\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\t\toutline = `2px solid transparent`;\n\t\toutlineOffset = `-2px`;\n\t}\n\n\tif ( disabled ) {\n\t\tborderColor = COLORS.ui.borderDisabled;\n\t}\n\n\treturn css( {\n\t\tboxShadow,\n\t\tborderColor,\n\t\tborderStyle: 'solid',\n\t\tborderWidth: 1,\n\t\toutline,\n\t\toutlineOffset,\n\t} );\n};\n\nexport const BackdropUI = styled.div< BackdropProps >`\n\t&&& {\n\t\tbox-sizing: border-box;\n\t\tborder-radius: inherit;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpointer-events: none;\n\t\tposition: absolute;\n\t\tright: 0;\n\t\ttop: 0;\n\n\t\t${ backdropFocusedStyles }\n\t\t${ rtl( { paddingLeft: 2 } ) }\n\t}\n`;\n\nexport const Prefix = styled.span`\n\tbox-sizing: border-box;\n\tdisplay: block;\n`;\n\nexport const Suffix = styled.span`\n\talign-items: center;\n\talign-self: stretch;\n\tbox-sizing: border-box;\n\tdisplay: flex;\n`;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react2","require","_flex","_text","_utils","_space","_EMOTION_STRINGIFIED_CSS_ERROR__","_ref2","process","env","NODE_ENV","name","styles","map","toString","rootFocusedStyles","isFocused","Root","_base","default","Flex","target","label","exports","containerDisabledStyles","disabled","backgroundColor","COLORS","ui","backgroundDisabled","background","css","_ref","containerWidthStyles","__unstableInputWidth","labelPosition","flex","width","Container","disabledStyles","color","textDisabled","fontSizeStyles","inputSize","size","sizes","small","compact","fontSize","fontSizeMobile","getSizeConfig","__next40pxDefaultSize","height","lineHeight","minHeight","paddingLeft","space","paddingRight","sizeStyles","props","customPaddings","paddingInlineStart","paddingInlineEnd","dragStyles","isDragging","dragCursor","defaultArrowStyles","activeDragCursorStyles","Input","gray","BaseLabel","Text","baseLabelTypography","Label","_react","createElement","as","LabelWrapper","FlexItem","backdropFocusedStyles","borderColor","borderFocus","border","boxShadow","outline","outlineOffset","CONFIG","controlBoxShadowFocus","borderDisabled","borderStyle","borderWidth","BackdropUI","rtl","Prefix","Suffix"],"sources":["@wordpress/components/src/input-control/styles/input-control-styles.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { SerializedStyles } from '@emotion/react';\nimport { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport type { CSSProperties, ReactNode } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { Flex, FlexItem } from '../../flex';\nimport { Text } from '../../text';\nimport { baseLabelTypography, COLORS, CONFIG, rtl } from '../../utils';\nimport type { LabelPosition, Size } from '../types';\nimport { space } from '../../utils/space';\n\ntype ContainerProps = {\n\tdisabled?: boolean;\n\thideLabel?: boolean;\n\t__unstableInputWidth?: CSSProperties[ 'width' ];\n\tlabelPosition?: LabelPosition;\n};\n\ntype RootProps = {\n\tisFocused?: boolean;\n\tlabelPosition?: LabelPosition;\n};\n\nconst rootFocusedStyles = ( { isFocused }: RootProps ) => {\n\tif ( ! isFocused ) return '';\n\n\treturn css( { zIndex: 1 } );\n};\n\nexport const Root = styled( Flex )< RootProps >`\n\tbox-sizing: border-box;\n\tposition: relative;\n\tborder-radius: 2px;\n\tpadding-top: 0;\n\t${ rootFocusedStyles }\n`;\n\nconst containerDisabledStyles = ( { disabled }: ContainerProps ) => {\n\tconst backgroundColor = disabled\n\t\t? COLORS.ui.backgroundDisabled\n\t\t: COLORS.ui.background;\n\n\treturn css( { backgroundColor } );\n};\n\nconst containerWidthStyles = ( {\n\t__unstableInputWidth,\n\tlabelPosition,\n}: ContainerProps ) => {\n\tif ( ! __unstableInputWidth ) return css( { width: '100%' } );\n\n\tif ( labelPosition === 'side' ) return '';\n\n\tif ( labelPosition === 'edge' ) {\n\t\treturn css( {\n\t\t\tflex: `0 0 ${ __unstableInputWidth }`,\n\t\t} );\n\t}\n\n\treturn css( { width: __unstableInputWidth } );\n};\n\nexport const Container = styled.div< ContainerProps >`\n\talign-items: center;\n\tbox-sizing: border-box;\n\tborder-radius: inherit;\n\tdisplay: flex;\n\tflex: 1;\n\tposition: relative;\n\n\t${ containerDisabledStyles }\n\t${ containerWidthStyles }\n`;\n\ntype InputProps = {\n\t__next40pxDefaultSize?: boolean;\n\tdisabled?: boolean;\n\tinputSize?: Size;\n\tisDragging?: boolean;\n\tdragCursor?: CSSProperties[ 'cursor' ];\n\tpaddingInlineStart?: CSSProperties[ 'paddingInlineStart' ];\n\tpaddingInlineEnd?: CSSProperties[ 'paddingInlineEnd' ];\n};\n\nconst disabledStyles = ( { disabled }: InputProps ) => {\n\tif ( ! disabled ) return '';\n\n\treturn css( {\n\t\tcolor: COLORS.ui.textDisabled,\n\t} );\n};\n\nexport const fontSizeStyles = ( { inputSize: size }: InputProps ) => {\n\tconst sizes = {\n\t\tdefault: '13px',\n\t\tsmall: '11px',\n\t\tcompact: '13px',\n\t\t'__unstable-large': '13px',\n\t};\n\n\tconst fontSize = sizes[ size as Size ] || sizes.default;\n\tconst fontSizeMobile = '16px';\n\n\tif ( ! fontSize ) return '';\n\n\treturn css`\n\t\tfont-size: ${ fontSizeMobile };\n\n\t\t@media ( min-width: 600px ) {\n\t\t\tfont-size: ${ fontSize };\n\t\t}\n\t`;\n};\n\nexport const getSizeConfig = ( {\n\tinputSize: size,\n\t__next40pxDefaultSize,\n}: InputProps ) => {\n\t// Paddings may be overridden by the custom paddings props.\n\tconst sizes = {\n\t\tdefault: {\n\t\t\theight: 40,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 40,\n\t\t\tpaddingLeft: space( 4 ),\n\t\t\tpaddingRight: space( 4 ),\n\t\t},\n\t\tsmall: {\n\t\t\theight: 24,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 24,\n\t\t\tpaddingLeft: space( 2 ),\n\t\t\tpaddingRight: space( 2 ),\n\t\t},\n\t\tcompact: {\n\t\t\theight: 32,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 32,\n\t\t\tpaddingLeft: space( 2 ),\n\t\t\tpaddingRight: space( 2 ),\n\t\t},\n\t\t'__unstable-large': {\n\t\t\theight: 40,\n\t\t\tlineHeight: 1,\n\t\t\tminHeight: 40,\n\t\t\tpaddingLeft: space( 4 ),\n\t\t\tpaddingRight: space( 4 ),\n\t\t},\n\t};\n\n\tif ( ! __next40pxDefaultSize ) {\n\t\tsizes.default = sizes.compact;\n\t}\n\n\treturn sizes[ size as Size ] || sizes.default;\n};\n\nconst sizeStyles = ( props: InputProps ) => {\n\treturn css( getSizeConfig( props ) );\n};\n\nconst customPaddings = ( {\n\tpaddingInlineStart,\n\tpaddingInlineEnd,\n}: InputProps ) => {\n\treturn css( { paddingInlineStart, paddingInlineEnd } );\n};\n\nconst dragStyles = ( { isDragging, dragCursor }: InputProps ) => {\n\tlet defaultArrowStyles: SerializedStyles | undefined;\n\tlet activeDragCursorStyles: SerializedStyles | undefined;\n\n\tif ( isDragging ) {\n\t\tdefaultArrowStyles = css`\n\t\t\tcursor: ${ dragCursor };\n\t\t\tuser-select: none;\n\n\t\t\t&::-webkit-outer-spin-button,\n\t\t\t&::-webkit-inner-spin-button {\n\t\t\t\t-webkit-appearance: none !important;\n\t\t\t\tmargin: 0 !important;\n\t\t\t}\n\t\t`;\n\t}\n\n\tif ( isDragging && dragCursor ) {\n\t\tactiveDragCursorStyles = css`\n\t\t\t&:active {\n\t\t\t\tcursor: ${ dragCursor };\n\t\t\t}\n\t\t`;\n\t}\n\n\treturn css`\n\t\t${ defaultArrowStyles }\n\t\t${ activeDragCursorStyles }\n\t`;\n};\n\n// TODO: Resolve need to use &&& to increase specificity\n// https://github.com/WordPress/gutenberg/issues/18483\n\nexport const Input = styled.input< InputProps >`\n\t&&& {\n\t\tbackground-color: transparent;\n\t\tbox-sizing: border-box;\n\t\tborder: none;\n\t\tbox-shadow: none !important;\n\t\tcolor: ${ COLORS.gray[ 900 ] };\n\t\tdisplay: block;\n\t\tfont-family: inherit;\n\t\tmargin: 0;\n\t\toutline: none;\n\t\twidth: 100%;\n\n\t\t${ dragStyles }\n\t\t${ disabledStyles }\n\t\t${ fontSizeStyles }\n\t\t${ sizeStyles }\n\t\t${ customPaddings }\n\n\t\t&::-webkit-input-placeholder {\n\t\t\tline-height: normal;\n\t\t}\n\t}\n`;\n\nconst BaseLabel = styled( Text )< { labelPosition?: LabelPosition } >`\n\t&&& {\n\t\t${ baseLabelTypography };\n\n\t\tbox-sizing: border-box;\n\t\tdisplay: block;\n\t\tpadding-top: 0;\n\t\tpadding-bottom: 0;\n\t\tmax-width: 100%;\n\t\tz-index: 1;\n\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t}\n`;\n\nexport const Label = (\n\tprops: WordPressComponentProps<\n\t\t{ labelPosition?: LabelPosition; children: ReactNode },\n\t\t'label',\n\t\tfalse\n\t>\n) => <BaseLabel { ...props } as=\"label\" />;\n\nexport const LabelWrapper = styled( FlexItem )`\n\tmax-width: calc( 100% - 10px );\n`;\n\ntype BackdropProps = {\n\tdisabled?: boolean;\n\tisFocused?: boolean;\n};\n\nconst backdropFocusedStyles = ( {\n\tdisabled,\n\tisFocused,\n}: BackdropProps ): SerializedStyles => {\n\tlet borderColor = isFocused ? COLORS.ui.borderFocus : COLORS.ui.border;\n\n\tlet boxShadow;\n\tlet outline;\n\tlet outlineOffset;\n\n\tif ( isFocused ) {\n\t\tboxShadow = CONFIG.controlBoxShadowFocus;\n\t\t// Windows High Contrast mode will show this outline, but not the box-shadow.\n\t\toutline = `2px solid transparent`;\n\t\toutlineOffset = `-2px`;\n\t}\n\n\tif ( disabled ) {\n\t\tborderColor = COLORS.ui.borderDisabled;\n\t}\n\n\treturn css( {\n\t\tboxShadow,\n\t\tborderColor,\n\t\tborderStyle: 'solid',\n\t\tborderWidth: 1,\n\t\toutline,\n\t\toutlineOffset,\n\t} );\n};\n\nexport const BackdropUI = styled.div< BackdropProps >`\n\t&&& {\n\t\tbox-sizing: border-box;\n\t\tborder-radius: inherit;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpointer-events: none;\n\t\tposition: absolute;\n\t\tright: 0;\n\t\ttop: 0;\n\n\t\t${ backdropFocusedStyles }\n\t\t${ rtl( { paddingLeft: 2 } ) }\n\t}\n`;\n\nexport const Prefix = styled.span`\n\tbox-sizing: border-box;\n\tdisplay: block;\n`;\n\nexport const Suffix = styled.span`\n\talign-items: center;\n\talign-self: stretch;\n\tbox-sizing: border-box;\n\tdisplay: flex;\n`;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["@wordpress/components/src/input-control/types.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type {\n\tCSSProperties,\n\tReactNode,\n\tSyntheticEvent,\n\tHTMLInputTypeAttribute,\n} from 'react';\nimport type { useDrag } from '@use-gesture/react';\n\n/**\n * Internal dependencies\n */\nimport type { StateReducer } from './reducer/state';\nimport type { WordPressComponentProps } from '../context';\nimport type { FlexProps } from '../flex/types';\nimport type { BaseControlProps } from '../base-control/types';\n\nexport type LabelPosition = 'top' | 'bottom' | 'side' | 'edge';\n\nexport type DragDirection = 'n' | 's' | 'e' | 'w';\n\nexport type DragProps = Parameters< Parameters< typeof useDrag >[ 0 ] >[ 0 ];\n\nexport type Size = 'default' | 'small' | '__unstable-large';\n\ninterface BaseProps {\n\t/**\n\t * Deprecated. Use `__next40pxDefaultSize` instead.\n\t *\n\t * @default false\n\t * @deprecated\n\t */\n\t__next36pxDefaultSize?: boolean;\n\t/**\n\t * Start opting into the larger default height that will become the default size in a future version.\n\t *\n\t * @default false\n\t */\n\t__next40pxDefaultSize?: boolean;\n\t__unstableInputWidth?: CSSProperties[ 'width' ];\n\t/**\n\t * If true, the label will only be visible to screen readers.\n\t *\n\t * @default false\n\t */\n\thideLabelFromVision?: boolean;\n\t/**\n\t * Whether the component should be in a focused state.\n\t * Used to coordinate focus states when the actual focused element and the component handling\n\t * visual focus are separate.\n\t *\n\t * @default false\n\t */\n\tisFocused: boolean;\n\t/**\n\t * The position of the label.\n\t *\n\t * @default 'top'\n\t */\n\tlabelPosition?: LabelPosition;\n\t/**\n\t * Adjusts the size of the input.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: Size;\n}\n\nexport type InputChangeCallback< P = {} > = (\n\tnextValue: string | undefined,\n\textra: { event: SyntheticEvent } & P\n) => void;\n\nexport interface InputFieldProps\n\textends Omit< BaseProps, '__next36pxDefaultSize' > {\n\t/**\n\t * Determines the drag axis.\n\t *\n\t * @default 'n'\n\t */\n\tdragDirection?: DragDirection;\n\t/**\n\t * If `isDragEnabled` is true, this controls the amount of `px` to have been dragged before\n\t * the drag gesture is actually triggered.\n\t *\n\t * @default 10\n\t */\n\tdragThreshold?: number;\n\t/**\n\t * If true, enables mouse drag gestures.\n\t *\n\t * @default false\n\t */\n\tisDragEnabled?: boolean;\n\t/**\n\t * If true, the `ENTER` key press is required in order to trigger an `onChange`.\n\t * If enabled, a change is also triggered when tabbing away (`onBlur`).\n\t *\n\t * @default false\n\t */\n\tisPressEnterToChange?: boolean;\n\t/**\n\t * A function that receives the value of the input.\n\t */\n\tonChange?: InputChangeCallback;\n\tonValidate?: (\n\t\tnextValue: string,\n\t\tevent?: SyntheticEvent< HTMLInputElement >\n\t) => void;\n\tpaddingInlineStart?: CSSProperties[ 'paddingInlineStart' ];\n\tpaddingInlineEnd?: CSSProperties[ 'paddingInlineEnd' ];\n\tsetIsFocused: ( isFocused: boolean ) => void;\n\tstateReducer?: StateReducer;\n\t/**\n\t * The current value of the input.\n\t */\n\tvalue?: string;\n\tonDragEnd?: ( dragProps: DragProps ) => void;\n\tonDragStart?: ( dragProps: DragProps ) => void;\n\tonDrag?: ( dragProps: DragProps ) => void;\n\t/**\n\t * Type of the input element to render.\n\t *\n\t * @default 'text'\n\t */\n\ttype?: HTMLInputTypeAttribute;\n}\n\nexport interface InputBaseProps extends BaseProps, FlexProps {\n\tchildren: ReactNode;\n\t/**\n\t * Renders an element on the left side of the input.\n\t *\n\t * By default, the prefix is aligned with the edge of the input border, with no padding.\n\t * If you want to apply standard padding in accordance with the size variant, wrap the element in\n\t * the provided `<InputControlPrefixWrapper>` component.\n\t *\n\t * @example\n\t * import {\n\t * __experimentalInputControl as InputControl,\n\t * __experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\t * } from '@wordpress/components';\n\t *\n\t * <InputControl\n\t * prefix={<InputControlPrefixWrapper>@</InputControlPrefixWrapper>}\n\t * />\n\t */\n\tprefix?: ReactNode;\n\t/**\n\t * Renders an element on the right side of the input.\n\t *\n\t * By default, the suffix is aligned with the edge of the input border, with no padding.\n\t * If you want to apply standard padding in accordance with the size variant, wrap the element in\n\t * the provided `<InputControlSuffixWrapper>` component.\n\t *\n\t * @example\n\t * import {\n\t * __experimentalInputControl as InputControl,\n\t * __experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,\n\t * } from '@wordpress/components';\n\t *\n\t * <InputControl\n\t * suffix={<InputControlSuffixWrapper>%</InputControlSuffixWrapper>}\n\t * />\n\t */\n\tsuffix?: ReactNode;\n\t/**\n\t * If true, the `input` will be disabled.\n\t *\n\t * @default false\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * If this property is added, a label will be generated using label property as the content.\n\t */\n\tlabel?: ReactNode;\n}\n\nexport interface InputControlProps\n\textends Omit< InputBaseProps, 'children' | 'isFocused' | keyof FlexProps >,\n\t\tPick< BaseControlProps, 'help' >,\n\t\t/**\n\t\t * The `prefix` prop in `WordPressComponentProps< InputFieldProps, 'input', false >` comes from the\n\t\t * `HTMLInputAttributes` and clashes with the one from `InputBaseProps`. So we have to omit it from\n\t\t * `WordPressComponentProps< InputFieldProps, 'input', false >` in order that `InputBaseProps[ 'prefix' ]`\n\t\t * be the only prefix prop. Otherwise it tries to do a union of the two prefix properties and you end up\n\t\t * with an unresolvable type.\n\t\t *\n\t\t * `isFocused`, `setIsFocused`, `paddingInlineStart`, and `paddingInlineEnd` are managed internally by\n\t\t * the InputControl, but the rest of the props for InputField are passed through.\n\t\t */\n\t\tOmit<\n\t\t\tWordPressComponentProps< InputFieldProps, 'input', false >,\n\t\t\t| 'stateReducer'\n\t\t\t| 'prefix'\n\t\t\t| 'isFocused'\n\t\t\t| 'setIsFocused'\n\t\t\t| 'paddingInlineStart'\n\t\t\t| 'paddingInlineEnd'\n\t\t> {\n\t__unstableStateReducer?: InputFieldProps[ 'stateReducer' ];\n}\n\nexport interface InputControlLabelProps {\n\tchildren: ReactNode;\n\thideLabelFromVision?: BaseProps[ 'hideLabelFromVision' ];\n\tlabelPosition?: BaseProps[ 'labelPosition' ];\n\tsize?: BaseProps[ 'size' ];\n}\n\nexport type InputControlPrefixWrapperProps = {\n\t/**\n\t * The prefix to be inserted.\n\t */\n\tchildren: ReactNode;\n};\n\nexport type InputControlSuffixWrapperProps = {\n\t/**\n\t * The suffix to be inserted.\n\t */\n\tchildren: ReactNode;\n};\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["@wordpress/components/src/input-control/types.ts"],"sourcesContent":["/**\n * External dependencies\n */\nimport type {\n\tCSSProperties,\n\tReactNode,\n\tSyntheticEvent,\n\tHTMLInputTypeAttribute,\n} from 'react';\nimport type { useDrag } from '@use-gesture/react';\n\n/**\n * Internal dependencies\n */\nimport type { StateReducer } from './reducer/state';\nimport type { WordPressComponentProps } from '../context';\nimport type { FlexProps } from '../flex/types';\nimport type { BaseControlProps } from '../base-control/types';\n\nexport type LabelPosition = 'top' | 'bottom' | 'side' | 'edge';\n\nexport type DragDirection = 'n' | 's' | 'e' | 'w';\n\nexport type DragProps = Parameters< Parameters< typeof useDrag >[ 0 ] >[ 0 ];\n\nexport type Size = 'default' | 'small' | 'compact' | '__unstable-large';\n\ninterface BaseProps {\n\t/**\n\t * Deprecated. Use `__next40pxDefaultSize` instead.\n\t *\n\t * @default false\n\t * @deprecated\n\t */\n\t__next36pxDefaultSize?: boolean;\n\t/**\n\t * Start opting into the larger default height that will become the default size in a future version.\n\t *\n\t * @default false\n\t */\n\t__next40pxDefaultSize?: boolean;\n\t__unstableInputWidth?: CSSProperties[ 'width' ];\n\t/**\n\t * If true, the label will only be visible to screen readers.\n\t *\n\t * @default false\n\t */\n\thideLabelFromVision?: boolean;\n\t/**\n\t * Whether the component should be in a focused state.\n\t * Used to coordinate focus states when the actual focused element and the component handling\n\t * visual focus are separate.\n\t *\n\t * @default false\n\t */\n\tisFocused: boolean;\n\t/**\n\t * The position of the label.\n\t *\n\t * @default 'top'\n\t */\n\tlabelPosition?: LabelPosition;\n\t/**\n\t * Adjusts the size of the input.\n\t *\n\t * @default 'default'\n\t */\n\tsize?: Size;\n}\n\nexport type InputChangeCallback< P = {} > = (\n\tnextValue: string | undefined,\n\textra: { event: SyntheticEvent } & P\n) => void;\n\nexport interface InputFieldProps\n\textends Omit< BaseProps, '__next36pxDefaultSize' > {\n\t/**\n\t * Determines the drag axis.\n\t *\n\t * @default 'n'\n\t */\n\tdragDirection?: DragDirection;\n\t/**\n\t * If `isDragEnabled` is true, this controls the amount of `px` to have been dragged before\n\t * the drag gesture is actually triggered.\n\t *\n\t * @default 10\n\t */\n\tdragThreshold?: number;\n\t/**\n\t * If true, enables mouse drag gestures.\n\t *\n\t * @default false\n\t */\n\tisDragEnabled?: boolean;\n\t/**\n\t * If true, the `ENTER` key press is required in order to trigger an `onChange`.\n\t * If enabled, a change is also triggered when tabbing away (`onBlur`).\n\t *\n\t * @default false\n\t */\n\tisPressEnterToChange?: boolean;\n\t/**\n\t * A function that receives the value of the input.\n\t */\n\tonChange?: InputChangeCallback;\n\tonValidate?: (\n\t\tnextValue: string,\n\t\tevent?: SyntheticEvent< HTMLInputElement >\n\t) => void;\n\tpaddingInlineStart?: CSSProperties[ 'paddingInlineStart' ];\n\tpaddingInlineEnd?: CSSProperties[ 'paddingInlineEnd' ];\n\tsetIsFocused: ( isFocused: boolean ) => void;\n\tstateReducer?: StateReducer;\n\t/**\n\t * The current value of the input.\n\t */\n\tvalue?: string;\n\tonDragEnd?: ( dragProps: DragProps ) => void;\n\tonDragStart?: ( dragProps: DragProps ) => void;\n\tonDrag?: ( dragProps: DragProps ) => void;\n\t/**\n\t * Type of the input element to render.\n\t *\n\t * @default 'text'\n\t */\n\ttype?: HTMLInputTypeAttribute;\n}\n\nexport interface InputBaseProps extends BaseProps, FlexProps {\n\tchildren: ReactNode;\n\t/**\n\t * Renders an element on the left side of the input.\n\t *\n\t * By default, the prefix is aligned with the edge of the input border, with no padding.\n\t * If you want to apply standard padding in accordance with the size variant, wrap the element in\n\t * the provided `<InputControlPrefixWrapper>` component.\n\t *\n\t * @example\n\t * import {\n\t * __experimentalInputControl as InputControl,\n\t * __experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\t * } from '@wordpress/components';\n\t *\n\t * <InputControl\n\t * prefix={<InputControlPrefixWrapper>@</InputControlPrefixWrapper>}\n\t * />\n\t */\n\tprefix?: ReactNode;\n\t/**\n\t * Renders an element on the right side of the input.\n\t *\n\t * By default, the suffix is aligned with the edge of the input border, with no padding.\n\t * If you want to apply standard padding in accordance with the size variant, wrap the element in\n\t * the provided `<InputControlSuffixWrapper>` component.\n\t *\n\t * @example\n\t * import {\n\t * __experimentalInputControl as InputControl,\n\t * __experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,\n\t * } from '@wordpress/components';\n\t *\n\t * <InputControl\n\t * suffix={<InputControlSuffixWrapper>%</InputControlSuffixWrapper>}\n\t * />\n\t */\n\tsuffix?: ReactNode;\n\t/**\n\t * If true, the `input` will be disabled.\n\t *\n\t * @default false\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * If this property is added, a label will be generated using label property as the content.\n\t */\n\tlabel?: ReactNode;\n}\n\nexport interface InputControlProps\n\textends Omit< InputBaseProps, 'children' | 'isFocused' | keyof FlexProps >,\n\t\tPick< BaseControlProps, 'help' >,\n\t\t/**\n\t\t * The `prefix` prop in `WordPressComponentProps< InputFieldProps, 'input', false >` comes from the\n\t\t * `HTMLInputAttributes` and clashes with the one from `InputBaseProps`. So we have to omit it from\n\t\t * `WordPressComponentProps< InputFieldProps, 'input', false >` in order that `InputBaseProps[ 'prefix' ]`\n\t\t * be the only prefix prop. Otherwise it tries to do a union of the two prefix properties and you end up\n\t\t * with an unresolvable type.\n\t\t *\n\t\t * `isFocused`, `setIsFocused`, `paddingInlineStart`, and `paddingInlineEnd` are managed internally by\n\t\t * the InputControl, but the rest of the props for InputField are passed through.\n\t\t */\n\t\tOmit<\n\t\t\tWordPressComponentProps< InputFieldProps, 'input', false >,\n\t\t\t| 'stateReducer'\n\t\t\t| 'prefix'\n\t\t\t| 'isFocused'\n\t\t\t| 'setIsFocused'\n\t\t\t| 'paddingInlineStart'\n\t\t\t| 'paddingInlineEnd'\n\t\t> {\n\t__unstableStateReducer?: InputFieldProps[ 'stateReducer' ];\n}\n\nexport interface InputControlLabelProps {\n\tchildren: ReactNode;\n\thideLabelFromVision?: BaseProps[ 'hideLabelFromVision' ];\n\tlabelPosition?: BaseProps[ 'labelPosition' ];\n\tsize?: BaseProps[ 'size' ];\n}\n\nexport type InputControlPrefixWrapperProps = {\n\t/**\n\t * The prefix to be inserted.\n\t */\n\tchildren: ReactNode;\n};\n\nexport type InputControlSuffixWrapperProps = {\n\t/**\n\t * The suffix to be inserted.\n\t */\n\tchildren: ReactNode;\n};\n"],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.unlock = exports.lock = void 0;
|
|
7
|
+
var _privateApis = require("@wordpress/private-apis");
|
|
8
|
+
/**
|
|
9
|
+
* WordPress dependencies
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
const {
|
|
13
|
+
lock,
|
|
14
|
+
unlock
|
|
15
|
+
} = (0, _privateApis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)('I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.', '@wordpress/components');
|
|
16
|
+
exports.unlock = unlock;
|
|
17
|
+
exports.lock = lock;
|
|
18
|
+
//# sourceMappingURL=lock-unlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_privateApis","require","lock","unlock","__dangerousOptInToUnstableAPIsOnlyForCoreModules","exports"],"sources":["@wordpress/components/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\n\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.',\n\t\t'@wordpress/components'\n\t);\n"],"mappings":";;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5B,IAAAC,6DAAgD,EAC/C,iHAAiH,EACjH,uBACD,CAAC;AAACC,OAAA,CAAAF,MAAA,GAAAA,MAAA;AAAAE,OAAA,CAAAH,IAAA,GAAAA,IAAA"}
|
|
@@ -175,6 +175,9 @@ class BottomSheet extends _element.Component {
|
|
|
175
175
|
if (this.androidModalClosedSubscription) {
|
|
176
176
|
this.androidModalClosedSubscription.remove();
|
|
177
177
|
}
|
|
178
|
+
if (this.props.isVisible) {
|
|
179
|
+
(0, _reactNativeBridge.showAndroidSoftKeyboard)();
|
|
180
|
+
}
|
|
178
181
|
if (this.safeAreaEventSubscription === null) {
|
|
179
182
|
return;
|
|
180
183
|
}
|
|
@@ -275,6 +278,9 @@ class BottomSheet extends _element.Component {
|
|
|
275
278
|
const {
|
|
276
279
|
onDismiss
|
|
277
280
|
} = this.props;
|
|
281
|
+
|
|
282
|
+
// Restore Keyboard Visibility
|
|
283
|
+
(0, _reactNativeBridge.showAndroidSoftKeyboard)();
|
|
278
284
|
if (onDismiss) {
|
|
279
285
|
onDismiss();
|
|
280
286
|
}
|
|
@@ -474,6 +480,8 @@ class BottomSheet extends _element.Component {
|
|
|
474
480
|
onMoveShouldSetResponderCapture: scrollEnabled && panResponder.panHandlers.onMoveShouldSetResponderCapture,
|
|
475
481
|
onAccessibilityEscape: this.onCloseBottomSheet,
|
|
476
482
|
testID: "bottom-sheet",
|
|
483
|
+
hardwareAccelerated: true,
|
|
484
|
+
useNativeDriverForBackdrop: true,
|
|
477
485
|
...rest
|
|
478
486
|
}, (0, _react.createElement)(_keyboardAvoidingView.default, {
|
|
479
487
|
behavior: _reactNative.Platform.OS === 'ios' && 'padding',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_reactNativeModal","_interopRequireDefault","_reactNativeSafeArea","_reactNativeBridge","_element","_compose","_styles","_button","_cell","_cyclePickerCell","_pickerCell","_switchCell","_rangeCell","_colorCell","_linkCell","_linkSuggestionItemCell","_radioCell","_navigationScreen","_navigationContainer","_keyboardAvoidingView","_subSheet","_navBar","_bottomSheetContext","DEFAULT_LAYOUT_ANIMATION","LayoutAnimation","Presets","easeInEaseOut","BottomSheet","Component","constructor","arguments","onSafeAreaInsetsUpdate","bind","onScroll","isScrolling","onShouldEnableScroll","onDismiss","onShouldSetBottomSheetMaxHeight","setIsFullScreen","onDimensionsChange","onHeaderLayout","onCloseBottomSheet","onHandleClosingBottomSheet","onHardwareButtonPress","onHandleHardwareButtonPress","keyboardShow","keyboardHide","headerHeight","keyboardHeight","lastLayoutAnimation","lastLayoutAnimationFinished","state","safeAreaBottomInset","safeAreaTopInset","bounces","maxHeight","scrollEnabled","handleClosingBottomSheet","handleHardwareButtonPress","isMaxHeightSet","isFullScreen","props","e","isVisible","height","endCoordinates","performKeyboardLayoutAnimation","onSetMaxHeight","onKeyboardShow","onKeyboardHide","event","duration","easing","animationConfig","type","Types","layoutAnimation","update","create","property","Properties","opacity","delete","configureNext","performRegularLayoutAnimation","useLastLayoutAnimation","Platform","OS","componentDidMount","SafeArea","getSafeAreaInsetsForRootView","then","androidModalClosedSubscription","subscribeAndroidModalClosed","onClose","dimensionsChangeSubscription","Dimensions","addEventListener","keyboardShowListener","Keyboard","addListener","keyboardHideListener","safeAreaEventSubscription","componentWillUnmount","remove","result","safeAreaInsets","bottom","top","setState","width","get","statusBarHeight","StatusBar","currentHeight","maxHeightWithOpenKeyboard","Math","min","nativeEvent","layout","round","isCloseToBottom","layoutMeasurement","contentOffset","contentSize","y","isCloseToTop","value","action","getContentStyle","paddingBottom","styles","scrollableContent","render","title","leftButton","rightButton","header","hideHeader","style","contentStyle","getStylesFromColorScheme","children","withHeaderSeparator","hasNavigation","rest","panResponder","PanResponder","onMoveShouldSetPanResponder","evt","gestureState","dy","backgroundStyle","background","backgroundDark","bottomSheetHeaderTitleStyle","bottomSheetHeaderTitle","bottomSheetHeaderTitleDark","listStyle","flexGrow","flexShrink","setMinHeightToMaxHeight","minHeight","listProps","disableScrollViewPanResponder","onScrollBeginDrag","onScrollEndDrag","scrollEventThrottle","contentContainerStyle","content","emptyHeader","automaticallyAdjustContentInsets","WrapperView","View","ScrollView","getHeader","_react","createElement","Fragment","bottomSheetHeader","flex","Text","maxFontSizeMultiplier","separator","showDragIndicator","allowDragIndicator","default","bottomModal","animationInTiming","animationOutTiming","backdropTransitionInTiming","backdropTransitionOutTiming","backdropOpacity","onBackdropPress","onBackButtonPress","onSwipeComplete","undefined","onModalHide","swipeDirection","onMoveShouldSetResponder","panHandlers","onMoveShouldSetResponderCapture","onAccessibilityEscape","testID","behavior","borderColor","marginTop","backgroundFullScreen","keyboardVerticalOffset","onLayout","dragIndicator","BottomSheetProvider","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","isBottomSheetContentScrolling","TouchableHighlight","accessible","getWidth","maxWidth","ThemedBottomSheet","withPreferredColorScheme","Button","Cell","SubSheet","BottomSheetSubSheet","NavBar","CyclePickerCell","PickerCell","SwitchCell","RangeCell","ColorCell","LinkCell","LinkSuggestionItemCell","RadioCell","NavigationScreen","NavigationContainer","_default","exports"],"sources":["@wordpress/components/src/mobile/bottom-sheet/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tDimensions,\n\tKeyboard,\n\tLayoutAnimation,\n\tPanResponder,\n\tPlatform,\n\tScrollView,\n\tStatusBar,\n\tText,\n\tTouchableHighlight,\n\tView,\n} from 'react-native';\nimport Modal from 'react-native-modal';\nimport SafeArea from 'react-native-safe-area';\n\n/**\n * WordPress dependencies\n */\nimport { subscribeAndroidModalClosed } from '@wordpress/react-native-bridge';\nimport { Component } from '@wordpress/element';\nimport { withPreferredColorScheme } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport Button from './button';\nimport Cell from './cell';\nimport CyclePickerCell from './cycle-picker-cell';\nimport PickerCell from './picker-cell';\nimport SwitchCell from './switch-cell';\nimport RangeCell from './range-cell';\nimport ColorCell from './color-cell';\nimport LinkCell from './link-cell';\nimport LinkSuggestionItemCell from './link-suggestion-item-cell';\nimport RadioCell from './radio-cell';\nimport NavigationScreen from './bottom-sheet-navigation/navigation-screen';\nimport NavigationContainer from './bottom-sheet-navigation/navigation-container';\nimport KeyboardAvoidingView from './keyboard-avoiding-view';\nimport BottomSheetSubSheet from './sub-sheet';\nimport NavBar from './nav-bar';\nimport { BottomSheetProvider } from './bottom-sheet-context';\n\nconst DEFAULT_LAYOUT_ANIMATION = LayoutAnimation.Presets.easeInEaseOut;\n\nclass BottomSheet extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSafeAreaInsetsUpdate = this.onSafeAreaInsetsUpdate.bind( this );\n\t\tthis.onScroll = this.onScroll.bind( this );\n\t\tthis.isScrolling = this.isScrolling.bind( this );\n\t\tthis.onShouldEnableScroll = this.onShouldEnableScroll.bind( this );\n\t\tthis.onDismiss = this.onDismiss.bind( this );\n\t\tthis.onShouldSetBottomSheetMaxHeight =\n\t\t\tthis.onShouldSetBottomSheetMaxHeight.bind( this );\n\n\t\tthis.setIsFullScreen = this.setIsFullScreen.bind( this );\n\n\t\tthis.onDimensionsChange = this.onDimensionsChange.bind( this );\n\t\tthis.onHeaderLayout = this.onHeaderLayout.bind( this );\n\t\tthis.onCloseBottomSheet = this.onCloseBottomSheet.bind( this );\n\t\tthis.onHandleClosingBottomSheet =\n\t\t\tthis.onHandleClosingBottomSheet.bind( this );\n\t\tthis.onHardwareButtonPress = this.onHardwareButtonPress.bind( this );\n\t\tthis.onHandleHardwareButtonPress =\n\t\t\tthis.onHandleHardwareButtonPress.bind( this );\n\t\tthis.keyboardShow = this.keyboardShow.bind( this );\n\t\tthis.keyboardHide = this.keyboardHide.bind( this );\n\n\t\tthis.headerHeight = 0;\n\t\tthis.keyboardHeight = 0;\n\t\tthis.lastLayoutAnimation = null;\n\t\tthis.lastLayoutAnimationFinished = false;\n\n\t\tthis.state = {\n\t\t\tsafeAreaBottomInset: 0,\n\t\t\tsafeAreaTopInset: 0,\n\t\t\tbounces: false,\n\t\t\tmaxHeight: 0,\n\t\t\tscrollEnabled: true,\n\t\t\tisScrolling: false,\n\t\t\thandleClosingBottomSheet: null,\n\t\t\thandleHardwareButtonPress: null,\n\t\t\tisMaxHeightSet: true,\n\t\t\tisFullScreen: this.props.isFullScreen || false,\n\t\t};\n\t}\n\n\tkeyboardShow( e ) {\n\t\tif ( ! this.props.isVisible ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { height } = e.endCoordinates;\n\t\tthis.keyboardHeight = height;\n\t\tthis.performKeyboardLayoutAnimation( e );\n\t\tthis.onSetMaxHeight();\n\t\tthis.props.onKeyboardShow?.();\n\t}\n\n\tkeyboardHide( e ) {\n\t\tif ( ! this.props.isVisible ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.keyboardHeight = 0;\n\t\tthis.performKeyboardLayoutAnimation( e );\n\t\tthis.onSetMaxHeight();\n\t\tthis.props.onKeyboardHide?.();\n\t}\n\n\tperformKeyboardLayoutAnimation( event ) {\n\t\tconst { duration, easing } = event;\n\n\t\tif ( duration && easing ) {\n\t\t\t// This layout animation is the same as the React Native's KeyboardAvoidingView component.\n\t\t\t// Reference: https://github.com/facebook/react-native/blob/266b21baf35e052ff28120f79c06c4f6dddc51a9/Libraries/Components/Keyboard/KeyboardAvoidingView.js#L119-L128.\n\t\t\tconst animationConfig = {\n\t\t\t\t// We have to pass the duration equal to minimal accepted duration defined here: RCTLayoutAnimation.m.\n\t\t\t\tduration: duration > 10 ? duration : 10,\n\t\t\t\ttype: LayoutAnimation.Types[ easing ] || 'keyboard',\n\t\t\t};\n\t\t\tconst layoutAnimation = {\n\t\t\t\tduration: animationConfig.duration,\n\t\t\t\tupdate: animationConfig,\n\t\t\t\tcreate: {\n\t\t\t\t\t...animationConfig,\n\t\t\t\t\tproperty: LayoutAnimation.Properties.opacity,\n\t\t\t\t},\n\t\t\t\tdelete: {\n\t\t\t\t\t...animationConfig,\n\t\t\t\t\tproperty: LayoutAnimation.Properties.opacity,\n\t\t\t\t},\n\t\t\t};\n\t\t\tthis.lastLayoutAnimationFinished = false;\n\t\t\tLayoutAnimation.configureNext( layoutAnimation, () => {\n\t\t\t\tthis.lastLayoutAnimationFinished = true;\n\t\t\t} );\n\t\t\tthis.lastLayoutAnimation = layoutAnimation;\n\t\t} else {\n\t\t\t// TODO: Reinstate animations, possibly replacing `LayoutAnimation` with\n\t\t\t// more nuanced `Animated` usage or replacing our custom `BottomSheet`\n\t\t\t// with `@gorhom/bottom-sheet`. This animation was disabled to avoid a\n\t\t\t// preexisting bug: https://github.com/WordPress/gutenberg/issues/30562\n\t\t\t// this.performRegularLayoutAnimation( {\n\t\t\t// \tuseLastLayoutAnimation: false,\n\t\t\t// } );.\n\t\t}\n\t}\n\n\tperformRegularLayoutAnimation( { useLastLayoutAnimation } ) {\n\t\t// On Android, we should prevent triggering multiple layout animations at the same time because it can produce visual glitches.\n\t\tif (\n\t\t\tPlatform.OS === 'android' &&\n\t\t\tthis.lastLayoutAnimation &&\n\t\t\t! this.lastLayoutAnimationFinished\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst layoutAnimation = useLastLayoutAnimation\n\t\t\t? this.lastLayoutAnimation || DEFAULT_LAYOUT_ANIMATION\n\t\t\t: DEFAULT_LAYOUT_ANIMATION;\n\n\t\tthis.lastLayoutAnimationFinished = false;\n\t\tLayoutAnimation.configureNext( layoutAnimation, () => {\n\t\t\tthis.lastLayoutAnimationFinished = true;\n\t\t} );\n\t\tthis.lastLayoutAnimation = layoutAnimation;\n\t}\n\n\tcomponentDidMount() {\n\t\tSafeArea.getSafeAreaInsetsForRootView().then(\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\n\t\tif ( Platform.OS === 'android' ) {\n\t\t\tthis.androidModalClosedSubscription = subscribeAndroidModalClosed(\n\t\t\t\t() => {\n\t\t\t\t\tthis.props.onClose();\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tthis.dimensionsChangeSubscription = Dimensions.addEventListener(\n\t\t\t'change',\n\t\t\tthis.onDimensionsChange\n\t\t);\n\n\t\t// 'Will' keyboard events are not available on Android.\n\t\t// Reference: https://reactnative.dev/docs/0.61/keyboard#addlistener.\n\t\tthis.keyboardShowListener = Keyboard.addListener(\n\t\t\tPlatform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow',\n\t\t\tthis.keyboardShow\n\t\t);\n\t\tthis.keyboardHideListener = Keyboard.addListener(\n\t\t\tPlatform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide',\n\t\t\tthis.keyboardHide\n\t\t);\n\n\t\tthis.safeAreaEventSubscription = SafeArea.addEventListener(\n\t\t\t'safeAreaInsetsForRootViewDidChange',\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t\tthis.onSetMaxHeight();\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.dimensionsChangeSubscription.remove();\n\t\tthis.keyboardShowListener.remove();\n\t\tthis.keyboardHideListener.remove();\n\t\tif ( this.androidModalClosedSubscription ) {\n\t\t\tthis.androidModalClosedSubscription.remove();\n\t\t}\n\t\tif ( this.safeAreaEventSubscription === null ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.safeAreaEventSubscription.remove();\n\t\tthis.safeAreaEventSubscription = null;\n\t}\n\n\tonSafeAreaInsetsUpdate( result ) {\n\t\tconst { safeAreaBottomInset, safeAreaTopInset } = this.state;\n\t\tif ( this.safeAreaEventSubscription === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { safeAreaInsets } = result;\n\t\tif (\n\t\t\tsafeAreaBottomInset !== safeAreaInsets.bottom ||\n\t\t\tsafeAreaTopInset !== safeAreaInsets.top\n\t\t) {\n\t\t\tthis.setState( {\n\t\t\t\tsafeAreaBottomInset: safeAreaInsets.bottom,\n\t\t\t\tsafeAreaTopInset: safeAreaInsets.top,\n\t\t\t} );\n\t\t}\n\t}\n\n\tonSetMaxHeight() {\n\t\tconst { height, width } = Dimensions.get( 'window' );\n\t\tconst { safeAreaBottomInset } = this.state;\n\t\tconst statusBarHeight =\n\t\t\tPlatform.OS === 'android' ? StatusBar.currentHeight : 0;\n\n\t\t// `maxHeight` when modal is opened along with a keyboard.\n\t\tconst maxHeightWithOpenKeyboard =\n\t\t\t0.95 *\n\t\t\t( Dimensions.get( 'window' ).height -\n\t\t\t\tthis.keyboardHeight -\n\t\t\t\tstatusBarHeight -\n\t\t\t\tthis.headerHeight );\n\n\t\t// In landscape orientation, set `maxHeight` to ~96% of the height.\n\t\tif ( width > height ) {\n\t\t\tthis.setState( {\n\t\t\t\tmaxHeight: Math.min(\n\t\t\t\t\t0.96 * height - this.headerHeight,\n\t\t\t\t\tmaxHeightWithOpenKeyboard\n\t\t\t\t),\n\t\t\t} );\n\t\t\t// In portrait orientation, set `maxHeight` to ~59% of the height.\n\t\t} else {\n\t\t\tthis.setState( {\n\t\t\t\tmaxHeight: Math.min(\n\t\t\t\t\theight * 0.59 - safeAreaBottomInset - this.headerHeight,\n\t\t\t\t\tmaxHeightWithOpenKeyboard\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t}\n\n\tonDimensionsChange() {\n\t\tthis.onSetMaxHeight();\n\t\tthis.setState( { bounces: false } );\n\t}\n\n\tonHeaderLayout( { nativeEvent } ) {\n\t\tconst { height } = nativeEvent.layout;\n\t\t// The layout animation should only be triggered if the header\n\t\t// height has changed after being mounted.\n\t\tif (\n\t\t\tthis.headerHeight !== 0 &&\n\t\t\tMath.round( height ) !== Math.round( this.headerHeight )\n\t\t) {\n\t\t\tthis.performRegularLayoutAnimation( {\n\t\t\t\tuseLastLayoutAnimation: true,\n\t\t\t} );\n\t\t}\n\t\tthis.headerHeight = height;\n\t\tthis.onSetMaxHeight();\n\t}\n\n\tisCloseToBottom( { layoutMeasurement, contentOffset, contentSize } ) {\n\t\treturn (\n\t\t\tlayoutMeasurement.height + contentOffset.y >=\n\t\t\tcontentSize.height - contentOffset.y\n\t\t);\n\t}\n\n\tisCloseToTop( { contentOffset } ) {\n\t\treturn contentOffset.y < 10;\n\t}\n\n\tonScroll( { nativeEvent } ) {\n\t\tif ( this.isCloseToTop( nativeEvent ) ) {\n\t\t\tthis.setState( { bounces: false } );\n\t\t} else {\n\t\t\tthis.setState( { bounces: true } );\n\t\t}\n\t}\n\n\tonDismiss() {\n\t\tconst { onDismiss } = this.props;\n\n\t\tif ( onDismiss ) {\n\t\t\tonDismiss();\n\t\t}\n\n\t\tthis.onCloseBottomSheet();\n\t}\n\n\tonShouldEnableScroll( value ) {\n\t\tthis.setState( { scrollEnabled: value } );\n\t}\n\n\tonShouldSetBottomSheetMaxHeight( value ) {\n\t\tthis.setState( { isMaxHeightSet: value } );\n\t}\n\n\tisScrolling( value ) {\n\t\tthis.setState( { isScrolling: value } );\n\t}\n\n\tonHandleClosingBottomSheet( action ) {\n\t\tthis.setState( { handleClosingBottomSheet: action } );\n\t}\n\n\tonHandleHardwareButtonPress( action ) {\n\t\tthis.setState( { handleHardwareButtonPress: action } );\n\t}\n\n\tonCloseBottomSheet() {\n\t\tconst { onClose } = this.props;\n\t\tconst { handleClosingBottomSheet } = this.state;\n\t\tif ( handleClosingBottomSheet ) {\n\t\t\thandleClosingBottomSheet();\n\t\t\tthis.onHandleClosingBottomSheet( null );\n\t\t}\n\t\tif ( onClose ) {\n\t\t\tonClose();\n\t\t}\n\t\tthis.onShouldSetBottomSheetMaxHeight( true );\n\t}\n\n\tsetIsFullScreen( isFullScreen ) {\n\t\tif ( isFullScreen !== this.state.isFullScreen ) {\n\t\t\tif ( isFullScreen ) {\n\t\t\t\tthis.setState( { isFullScreen, isMaxHeightSet: false } );\n\t\t\t} else {\n\t\t\t\tthis.setState( { isFullScreen, isMaxHeightSet: true } );\n\t\t\t}\n\t\t}\n\t}\n\n\tonHardwareButtonPress() {\n\t\tconst { onClose } = this.props;\n\t\tconst { handleHardwareButtonPress } = this.state;\n\t\tif ( handleHardwareButtonPress && handleHardwareButtonPress() ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( onClose ) {\n\t\t\treturn onClose();\n\t\t}\n\t}\n\n\tgetContentStyle() {\n\t\tconst { safeAreaBottomInset } = this.state;\n\t\treturn {\n\t\t\tpaddingBottom:\n\t\t\t\t( safeAreaBottomInset || 0 ) +\n\t\t\t\tstyles.scrollableContent.paddingBottom,\n\t\t};\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\ttitle = '',\n\t\t\tisVisible,\n\t\t\tleftButton,\n\t\t\trightButton,\n\t\t\theader,\n\t\t\thideHeader,\n\t\t\tstyle = {},\n\t\t\tcontentStyle = {},\n\t\t\tgetStylesFromColorScheme,\n\t\t\tchildren,\n\t\t\twithHeaderSeparator = false,\n\t\t\thasNavigation,\n\t\t\tonDismiss,\n\t\t\t...rest\n\t\t} = this.props;\n\t\tconst {\n\t\t\tmaxHeight,\n\t\t\tbounces,\n\t\t\tsafeAreaBottomInset,\n\t\t\tsafeAreaTopInset,\n\t\t\tisScrolling,\n\t\t\tscrollEnabled,\n\t\t\tisMaxHeightSet,\n\t\t\tisFullScreen,\n\t\t} = this.state;\n\n\t\tconst panResponder = PanResponder.create( {\n\t\t\tonMoveShouldSetPanResponder: ( evt, gestureState ) => {\n\t\t\t\t// 'swiping-to-close' option is temporarily and partially disabled\n\t\t\t\t// on Android ( swipe / drag is still available in the top most area - near drag indicator).\n\t\t\t\tif ( Platform.OS === 'ios' ) {\n\t\t\t\t\t// Activates swipe down over child Touchables if the swipe is long enough.\n\t\t\t\t\t// With this we can adjust sensibility on the swipe vs tap gestures.\n\t\t\t\t\tif ( gestureState.dy > 3 && ! bounces ) {\n\t\t\t\t\t\tgestureState.dy = 0;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t},\n\t\t} );\n\n\t\tconst backgroundStyle = getStylesFromColorScheme(\n\t\t\tstyles.background,\n\t\t\tstyles.backgroundDark\n\t\t);\n\n\t\tconst bottomSheetHeaderTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.bottomSheetHeaderTitle,\n\t\t\tstyles.bottomSheetHeaderTitleDark\n\t\t);\n\n\t\tlet listStyle = {};\n\t\tif ( isFullScreen ) {\n\t\t\tlistStyle = { flexGrow: 1, flexShrink: 1 };\n\t\t} else if ( isMaxHeightSet ) {\n\t\t\tlistStyle = { maxHeight };\n\n\t\t\t// Allow setting a \"static\" height of the bottom sheet\n\t\t\t// by setting the min height to the max height.\n\t\t\tif ( this.props.setMinHeightToMaxHeight ) {\n\t\t\t\tlistStyle.minHeight = maxHeight;\n\t\t\t}\n\t\t}\n\n\t\tconst listProps = {\n\t\t\tdisableScrollViewPanResponder: true,\n\t\t\tbounces,\n\t\t\tonScroll: this.onScroll,\n\t\t\tonScrollBeginDrag: this.onScrollBeginDrag,\n\t\t\tonScrollEndDrag: this.onScrollEndDrag,\n\t\t\tscrollEventThrottle: 16,\n\t\t\tcontentContainerStyle: [\n\t\t\t\tstyles.content,\n\t\t\t\thideHeader && styles.emptyHeader,\n\t\t\t\tcontentStyle,\n\t\t\t\tisFullScreen && { flexGrow: 1 },\n\t\t\t],\n\t\t\tstyle: listStyle,\n\t\t\tsafeAreaBottomInset,\n\t\t\tscrollEnabled,\n\t\t\tautomaticallyAdjustContentInsets: false,\n\t\t};\n\n\t\tconst WrapperView = hasNavigation ? View : ScrollView;\n\n\t\tconst getHeader = () => (\n\t\t\t<>\n\t\t\t\t{ header || (\n\t\t\t\t\t<View style={ styles.bottomSheetHeader }>\n\t\t\t\t\t\t<View style={ styles.flex }>{ leftButton }</View>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={ bottomSheetHeaderTitleStyle }\n\t\t\t\t\t\t\tmaxFontSizeMultiplier={ 3 }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<View style={ styles.flex }>{ rightButton }</View>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t\t{ withHeaderSeparator && <View style={ styles.separator } /> }\n\t\t\t</>\n\t\t);\n\n\t\tconst showDragIndicator = () => {\n\t\t\t// If iOS or not fullscreen show the drag indicator.\n\t\t\tif ( Platform.OS === 'ios' || ! this.state.isFullScreen ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// Otherwise check the allowDragIndicator.\n\t\t\treturn this.props.allowDragIndicator;\n\t\t};\n\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tisVisible={ isVisible }\n\t\t\t\tstyle={ styles.bottomModal }\n\t\t\t\tanimationInTiming={ 400 }\n\t\t\t\tanimationOutTiming={ 300 }\n\t\t\t\tbackdropTransitionInTiming={ 50 }\n\t\t\t\tbackdropTransitionOutTiming={ 50 }\n\t\t\t\tbackdropOpacity={ 0.2 }\n\t\t\t\tonBackdropPress={ this.onCloseBottomSheet }\n\t\t\t\tonBackButtonPress={ this.onHardwareButtonPress }\n\t\t\t\tonSwipeComplete={ this.onCloseBottomSheet }\n\t\t\t\tonDismiss={ Platform.OS === 'ios' ? this.onDismiss : undefined }\n\t\t\t\tonModalHide={\n\t\t\t\t\tPlatform.OS === 'android' ? this.onDismiss : undefined\n\t\t\t\t}\n\t\t\t\tswipeDirection=\"down\"\n\t\t\t\tonMoveShouldSetResponder={\n\t\t\t\t\tscrollEnabled &&\n\t\t\t\t\tpanResponder.panHandlers.onMoveShouldSetResponder\n\t\t\t\t}\n\t\t\t\tonMoveShouldSetResponderCapture={\n\t\t\t\t\tscrollEnabled &&\n\t\t\t\t\tpanResponder.panHandlers.onMoveShouldSetResponderCapture\n\t\t\t\t}\n\t\t\t\tonAccessibilityEscape={ this.onCloseBottomSheet }\n\t\t\t\ttestID=\"bottom-sheet\"\n\t\t\t\t{ ...rest }\n\t\t\t>\n\t\t\t\t<KeyboardAvoidingView\n\t\t\t\t\tbehavior={ Platform.OS === 'ios' && 'padding' }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...backgroundStyle,\n\t\t\t\t\t\tborderColor: 'rgba(0, 0, 0, 0.1)',\n\t\t\t\t\t\tmarginTop:\n\t\t\t\t\t\t\tPlatform.OS === 'ios' && isFullScreen\n\t\t\t\t\t\t\t\t? safeAreaTopInset\n\t\t\t\t\t\t\t\t: 0,\n\t\t\t\t\t\tflex: isFullScreen ? 1 : undefined,\n\t\t\t\t\t\t...( Platform.OS === 'android' && isFullScreen\n\t\t\t\t\t\t\t? styles.backgroundFullScreen\n\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t...style,\n\t\t\t\t\t} }\n\t\t\t\t\tkeyboardVerticalOffset={ -safeAreaBottomInset }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.header }\n\t\t\t\t\t\tonLayout={ this.onHeaderLayout }\n\t\t\t\t\t\ttestID={ `${ rest.testID || 'bottom-sheet' }-header` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showDragIndicator() && (\n\t\t\t\t\t\t\t<View style={ styles.dragIndicator } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! hideHeader && getHeader() }\n\t\t\t\t\t</View>\n\t\t\t\t\t<WrapperView\n\t\t\t\t\t\t{ ...( hasNavigation\n\t\t\t\t\t\t\t? { style: listProps.style }\n\t\t\t\t\t\t\t: listProps ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetProvider\n\t\t\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll:\n\t\t\t\t\t\t\t\t\tthis.onShouldEnableScroll,\n\t\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight:\n\t\t\t\t\t\t\t\t\tthis.onShouldSetBottomSheetMaxHeight,\n\t\t\t\t\t\t\t\tisBottomSheetContentScrolling: isScrolling,\n\t\t\t\t\t\t\t\tonHandleClosingBottomSheet:\n\t\t\t\t\t\t\t\t\tthis.onHandleClosingBottomSheet,\n\t\t\t\t\t\t\t\tonHandleHardwareButtonPress:\n\t\t\t\t\t\t\t\t\tthis.onHandleHardwareButtonPress,\n\t\t\t\t\t\t\t\tlistProps,\n\t\t\t\t\t\t\t\tsetIsFullScreen: this.setIsFullScreen,\n\t\t\t\t\t\t\t\tsafeAreaBottomInset,\n\t\t\t\t\t\t\t\tmaxHeight,\n\t\t\t\t\t\t\t\tisMaxHeightSet,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasNavigation ? (\n\t\t\t\t\t\t\t\t<>{ children }</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<TouchableHighlight accessible={ false }>\n\t\t\t\t\t\t\t\t\t<>{ children }</>\n\t\t\t\t\t\t\t\t</TouchableHighlight>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetProvider>\n\t\t\t\t\t\t{ ! hasNavigation && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t\t\t\tsafeAreaBottomInset ||\n\t\t\t\t\t\t\t\t\t\tstyles.scrollableContent.paddingBottom,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</WrapperView>\n\t\t\t\t</KeyboardAvoidingView>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nfunction getWidth() {\n\treturn Math.min(\n\t\tDimensions.get( 'window' ).width,\n\t\tstyles.background.maxWidth\n\t);\n}\n\nconst ThemedBottomSheet = withPreferredColorScheme( BottomSheet );\n\nThemedBottomSheet.getWidth = getWidth;\nThemedBottomSheet.Button = Button;\nThemedBottomSheet.Cell = Cell;\nThemedBottomSheet.SubSheet = BottomSheetSubSheet;\nThemedBottomSheet.NavBar = NavBar;\nThemedBottomSheet.CyclePickerCell = CyclePickerCell;\nThemedBottomSheet.PickerCell = PickerCell;\nThemedBottomSheet.SwitchCell = SwitchCell;\nThemedBottomSheet.RangeCell = RangeCell;\nThemedBottomSheet.ColorCell = ColorCell;\nThemedBottomSheet.LinkCell = LinkCell;\nThemedBottomSheet.LinkSuggestionItemCell = LinkSuggestionItemCell;\nThemedBottomSheet.RadioCell = RadioCell;\nThemedBottomSheet.NavigationScreen = NavigationScreen;\nThemedBottomSheet.NavigationContainer = NavigationContainer;\n\nexport default ThemedBottomSheet;\n"],"mappings":";;;;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAYA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAKA,IAAAI,kBAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AAKA,IAAAO,OAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,OAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,KAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,gBAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,WAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,WAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,UAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,UAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,SAAA,GAAAb,sBAAA,CAAAF,OAAA;AACA,IAAAgB,uBAAA,GAAAd,sBAAA,CAAAF,OAAA;AACA,IAAAiB,UAAA,GAAAf,sBAAA,CAAAF,OAAA;AACA,IAAAkB,iBAAA,GAAAhB,sBAAA,CAAAF,OAAA;AACA,IAAAmB,oBAAA,GAAAjB,sBAAA,CAAAF,OAAA;AACA,IAAAoB,qBAAA,GAAAlB,sBAAA,CAAAF,OAAA;AACA,IAAAqB,SAAA,GAAAnB,sBAAA,CAAAF,OAAA;AACA,IAAAsB,OAAA,GAAApB,sBAAA,CAAAF,OAAA;AACA,IAAAuB,mBAAA,GAAAvB,OAAA;AA5CA;AACA;AACA;;AAgBA;AACA;AACA;;AAKA;AACA;AACA;;AAmBA,MAAMwB,wBAAwB,GAAGC,4BAAe,CAACC,OAAO,CAACC,aAAa;AAEtE,MAAMC,WAAW,SAASC,kBAAS,CAAC;EACnCC,WAAWA,CAAA,EAAG;IACb,KAAK,CAAE,GAAGC,SAAU,CAAC;IACrB,IAAI,CAACC,sBAAsB,GAAG,IAAI,CAACA,sBAAsB,CAACC,IAAI,CAAE,IAAK,CAAC;IACtE,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACA,QAAQ,CAACD,IAAI,CAAE,IAAK,CAAC;IAC1C,IAAI,CAACE,WAAW,GAAG,IAAI,CAACA,WAAW,CAACF,IAAI,CAAE,IAAK,CAAC;IAChD,IAAI,CAACG,oBAAoB,GAAG,IAAI,CAACA,oBAAoB,CAACH,IAAI,CAAE,IAAK,CAAC;IAClE,IAAI,CAACI,SAAS,GAAG,IAAI,CAACA,SAAS,CAACJ,IAAI,CAAE,IAAK,CAAC;IAC5C,IAAI,CAACK,+BAA+B,GACnC,IAAI,CAACA,+BAA+B,CAACL,IAAI,CAAE,IAAK,CAAC;IAElD,IAAI,CAACM,eAAe,GAAG,IAAI,CAACA,eAAe,CAACN,IAAI,CAAE,IAAK,CAAC;IAExD,IAAI,CAACO,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAACP,IAAI,CAAE,IAAK,CAAC;IAC9D,IAAI,CAACQ,cAAc,GAAG,IAAI,CAACA,cAAc,CAACR,IAAI,CAAE,IAAK,CAAC;IACtD,IAAI,CAACS,kBAAkB,GAAG,IAAI,CAACA,kBAAkB,CAACT,IAAI,CAAE,IAAK,CAAC;IAC9D,IAAI,CAACU,0BAA0B,GAC9B,IAAI,CAACA,0BAA0B,CAACV,IAAI,CAAE,IAAK,CAAC;IAC7C,IAAI,CAACW,qBAAqB,GAAG,IAAI,CAACA,qBAAqB,CAACX,IAAI,CAAE,IAAK,CAAC;IACpE,IAAI,CAACY,2BAA2B,GAC/B,IAAI,CAACA,2BAA2B,CAACZ,IAAI,CAAE,IAAK,CAAC;IAC9C,IAAI,CAACa,YAAY,GAAG,IAAI,CAACA,YAAY,CAACb,IAAI,CAAE,IAAK,CAAC;IAClD,IAAI,CAACc,YAAY,GAAG,IAAI,CAACA,YAAY,CAACd,IAAI,CAAE,IAAK,CAAC;IAElD,IAAI,CAACe,YAAY,GAAG,CAAC;IACrB,IAAI,CAACC,cAAc,GAAG,CAAC;IACvB,IAAI,CAACC,mBAAmB,GAAG,IAAI;IAC/B,IAAI,CAACC,2BAA2B,GAAG,KAAK;IAExC,IAAI,CAACC,KAAK,GAAG;MACZC,mBAAmB,EAAE,CAAC;MACtBC,gBAAgB,EAAE,CAAC;MACnBC,OAAO,EAAE,KAAK;MACdC,SAAS,EAAE,CAAC;MACZC,aAAa,EAAE,IAAI;MACnBtB,WAAW,EAAE,KAAK;MAClBuB,wBAAwB,EAAE,IAAI;MAC9BC,yBAAyB,EAAE,IAAI;MAC/BC,cAAc,EAAE,IAAI;MACpBC,YAAY,EAAE,IAAI,CAACC,KAAK,CAACD,YAAY,IAAI;IAC1C,CAAC;EACF;EAEAf,YAAYA,CAAEiB,CAAC,EAAG;IACjB,IAAK,CAAE,IAAI,CAACD,KAAK,CAACE,SAAS,EAAG;MAC7B;IACD;IAEA,MAAM;MAAEC;IAAO,CAAC,GAAGF,CAAC,CAACG,cAAc;IACnC,IAAI,CAACjB,cAAc,GAAGgB,MAAM;IAC5B,IAAI,CAACE,8BAA8B,CAAEJ,CAAE,CAAC;IACxC,IAAI,CAACK,cAAc,CAAC,CAAC;IACrB,IAAI,CAACN,KAAK,CAACO,cAAc,GAAG,CAAC;EAC9B;EAEAtB,YAAYA,CAAEgB,CAAC,EAAG;IACjB,IAAK,CAAE,IAAI,CAACD,KAAK,CAACE,SAAS,EAAG;MAC7B;IACD;IAEA,IAAI,CAACf,cAAc,GAAG,CAAC;IACvB,IAAI,CAACkB,8BAA8B,CAAEJ,CAAE,CAAC;IACxC,IAAI,CAACK,cAAc,CAAC,CAAC;IACrB,IAAI,CAACN,KAAK,CAACQ,cAAc,GAAG,CAAC;EAC9B;EAEAH,8BAA8BA,CAAEI,KAAK,EAAG;IACvC,MAAM;MAAEC,QAAQ;MAAEC;IAAO,CAAC,GAAGF,KAAK;IAElC,IAAKC,QAAQ,IAAIC,MAAM,EAAG;MACzB;MACA;MACA,MAAMC,eAAe,GAAG;QACvB;QACAF,QAAQ,EAAEA,QAAQ,GAAG,EAAE,GAAGA,QAAQ,GAAG,EAAE;QACvCG,IAAI,EAAElD,4BAAe,CAACmD,KAAK,CAAEH,MAAM,CAAE,IAAI;MAC1C,CAAC;MACD,MAAMI,eAAe,GAAG;QACvBL,QAAQ,EAAEE,eAAe,CAACF,QAAQ;QAClCM,MAAM,EAAEJ,eAAe;QACvBK,MAAM,EAAE;UACP,GAAGL,eAAe;UAClBM,QAAQ,EAAEvD,4BAAe,CAACwD,UAAU,CAACC;QACtC,CAAC;QACDC,MAAM,EAAE;UACP,GAAGT,eAAe;UAClBM,QAAQ,EAAEvD,4BAAe,CAACwD,UAAU,CAACC;QACtC;MACD,CAAC;MACD,IAAI,CAAC/B,2BAA2B,GAAG,KAAK;MACxC1B,4BAAe,CAAC2D,aAAa,CAAEP,eAAe,EAAE,MAAM;QACrD,IAAI,CAAC1B,2BAA2B,GAAG,IAAI;MACxC,CAAE,CAAC;MACH,IAAI,CAACD,mBAAmB,GAAG2B,eAAe;IAC3C,CAAC,MAAM;MACN;MACA;MACA;MACA;MACA;MACA;MACA;IAAA;EAEF;EAEAQ,6BAA6BA,CAAE;IAAEC;EAAuB,CAAC,EAAG;IAC3D;IACA,IACCC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IACzB,IAAI,CAACtC,mBAAmB,IACxB,CAAE,IAAI,CAACC,2BAA2B,EACjC;MACD;IACD;IAEA,MAAM0B,eAAe,GAAGS,sBAAsB,GAC3C,IAAI,CAACpC,mBAAmB,IAAI1B,wBAAwB,GACpDA,wBAAwB;IAE3B,IAAI,CAAC2B,2BAA2B,GAAG,KAAK;IACxC1B,4BAAe,CAAC2D,aAAa,CAAEP,eAAe,EAAE,MAAM;MACrD,IAAI,CAAC1B,2BAA2B,GAAG,IAAI;IACxC,CAAE,CAAC;IACH,IAAI,CAACD,mBAAmB,GAAG2B,eAAe;EAC3C;EAEAY,iBAAiBA,CAAA,EAAG;IACnBC,4BAAQ,CAACC,4BAA4B,CAAC,CAAC,CAACC,IAAI,CAC3C,IAAI,CAAC5D,sBACN,CAAC;IAED,IAAKuD,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAG;MAChC,IAAI,CAACK,8BAA8B,GAAG,IAAAC,8CAA2B,EAChE,MAAM;QACL,IAAI,CAAChC,KAAK,CAACiC,OAAO,CAAC,CAAC;MACrB,CACD,CAAC;IACF;IAEA,IAAI,CAACC,4BAA4B,GAAGC,uBAAU,CAACC,gBAAgB,CAC9D,QAAQ,EACR,IAAI,CAAC1D,kBACN,CAAC;;IAED;IACA;IACA,IAAI,CAAC2D,oBAAoB,GAAGC,qBAAQ,CAACC,WAAW,CAC/Cd,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,kBAAkB,GAAG,iBAAiB,EAC9D,IAAI,CAAC1C,YACN,CAAC;IACD,IAAI,CAACwD,oBAAoB,GAAGF,qBAAQ,CAACC,WAAW,CAC/Cd,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,kBAAkB,GAAG,iBAAiB,EAC9D,IAAI,CAACzC,YACN,CAAC;IAED,IAAI,CAACwD,yBAAyB,GAAGb,4BAAQ,CAACQ,gBAAgB,CACzD,oCAAoC,EACpC,IAAI,CAAClE,sBACN,CAAC;IACD,IAAI,CAACoC,cAAc,CAAC,CAAC;EACtB;EAEAoC,oBAAoBA,CAAA,EAAG;IACtB,IAAI,CAACR,4BAA4B,CAACS,MAAM,CAAC,CAAC;IAC1C,IAAI,CAACN,oBAAoB,CAACM,MAAM,CAAC,CAAC;IAClC,IAAI,CAACH,oBAAoB,CAACG,MAAM,CAAC,CAAC;IAClC,IAAK,IAAI,CAACZ,8BAA8B,EAAG;MAC1C,IAAI,CAACA,8BAA8B,CAACY,MAAM,CAAC,CAAC;IAC7C;IACA,IAAK,IAAI,CAACF,yBAAyB,KAAK,IAAI,EAAG;MAC9C;IACD;IACA,IAAI,CAACA,yBAAyB,CAACE,MAAM,CAAC,CAAC;IACvC,IAAI,CAACF,yBAAyB,GAAG,IAAI;EACtC;EAEAvE,sBAAsBA,CAAE0E,MAAM,EAAG;IAChC,MAAM;MAAErD,mBAAmB;MAAEC;IAAiB,CAAC,GAAG,IAAI,CAACF,KAAK;IAC5D,IAAK,IAAI,CAACmD,yBAAyB,KAAK,IAAI,EAAG;MAC9C;IACD;IACA,MAAM;MAAEI;IAAe,CAAC,GAAGD,MAAM;IACjC,IACCrD,mBAAmB,KAAKsD,cAAc,CAACC,MAAM,IAC7CtD,gBAAgB,KAAKqD,cAAc,CAACE,GAAG,EACtC;MACD,IAAI,CAACC,QAAQ,CAAE;QACdzD,mBAAmB,EAAEsD,cAAc,CAACC,MAAM;QAC1CtD,gBAAgB,EAAEqD,cAAc,CAACE;MAClC,CAAE,CAAC;IACJ;EACD;EAEAzC,cAAcA,CAAA,EAAG;IAChB,MAAM;MAAEH,MAAM;MAAE8C;IAAM,CAAC,GAAGd,uBAAU,CAACe,GAAG,CAAE,QAAS,CAAC;IACpD,MAAM;MAAE3D;IAAoB,CAAC,GAAG,IAAI,CAACD,KAAK;IAC1C,MAAM6D,eAAe,GACpB1B,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAG0B,sBAAS,CAACC,aAAa,GAAG,CAAC;;IAExD;IACA,MAAMC,yBAAyB,GAC9B,IAAI,IACFnB,uBAAU,CAACe,GAAG,CAAE,QAAS,CAAC,CAAC/C,MAAM,GAClC,IAAI,CAAChB,cAAc,GACnBgE,eAAe,GACf,IAAI,CAACjE,YAAY,CAAE;;IAErB;IACA,IAAK+D,KAAK,GAAG9C,MAAM,EAAG;MACrB,IAAI,CAAC6C,QAAQ,CAAE;QACdtD,SAAS,EAAE6D,IAAI,CAACC,GAAG,CAClB,IAAI,GAAGrD,MAAM,GAAG,IAAI,CAACjB,YAAY,EACjCoE,yBACD;MACD,CAAE,CAAC;MACH;IACD,CAAC,MAAM;MACN,IAAI,CAACN,QAAQ,CAAE;QACdtD,SAAS,EAAE6D,IAAI,CAACC,GAAG,CAClBrD,MAAM,GAAG,IAAI,GAAGZ,mBAAmB,GAAG,IAAI,CAACL,YAAY,EACvDoE,yBACD;MACD,CAAE,CAAC;IACJ;EACD;EAEA5E,kBAAkBA,CAAA,EAAG;IACpB,IAAI,CAAC4B,cAAc,CAAC,CAAC;IACrB,IAAI,CAAC0C,QAAQ,CAAE;MAAEvD,OAAO,EAAE;IAAM,CAAE,CAAC;EACpC;EAEAd,cAAcA,CAAE;IAAE8E;EAAY,CAAC,EAAG;IACjC,MAAM;MAAEtD;IAAO,CAAC,GAAGsD,WAAW,CAACC,MAAM;IACrC;IACA;IACA,IACC,IAAI,CAACxE,YAAY,KAAK,CAAC,IACvBqE,IAAI,CAACI,KAAK,CAAExD,MAAO,CAAC,KAAKoD,IAAI,CAACI,KAAK,CAAE,IAAI,CAACzE,YAAa,CAAC,EACvD;MACD,IAAI,CAACqC,6BAA6B,CAAE;QACnCC,sBAAsB,EAAE;MACzB,CAAE,CAAC;IACJ;IACA,IAAI,CAACtC,YAAY,GAAGiB,MAAM;IAC1B,IAAI,CAACG,cAAc,CAAC,CAAC;EACtB;EAEAsD,eAAeA,CAAE;IAAEC,iBAAiB;IAAEC,aAAa;IAAEC;EAAY,CAAC,EAAG;IACpE,OACCF,iBAAiB,CAAC1D,MAAM,GAAG2D,aAAa,CAACE,CAAC,IAC1CD,WAAW,CAAC5D,MAAM,GAAG2D,aAAa,CAACE,CAAC;EAEtC;EAEAC,YAAYA,CAAE;IAAEH;EAAc,CAAC,EAAG;IACjC,OAAOA,aAAa,CAACE,CAAC,GAAG,EAAE;EAC5B;EAEA5F,QAAQA,CAAE;IAAEqF;EAAY,CAAC,EAAG;IAC3B,IAAK,IAAI,CAACQ,YAAY,CAAER,WAAY,CAAC,EAAG;MACvC,IAAI,CAACT,QAAQ,CAAE;QAAEvD,OAAO,EAAE;MAAM,CAAE,CAAC;IACpC,CAAC,MAAM;MACN,IAAI,CAACuD,QAAQ,CAAE;QAAEvD,OAAO,EAAE;MAAK,CAAE,CAAC;IACnC;EACD;EAEAlB,SAASA,CAAA,EAAG;IACX,MAAM;MAAEA;IAAU,CAAC,GAAG,IAAI,CAACyB,KAAK;IAEhC,IAAKzB,SAAS,EAAG;MAChBA,SAAS,CAAC,CAAC;IACZ;IAEA,IAAI,CAACK,kBAAkB,CAAC,CAAC;EAC1B;EAEAN,oBAAoBA,CAAE4F,KAAK,EAAG;IAC7B,IAAI,CAAClB,QAAQ,CAAE;MAAErD,aAAa,EAAEuE;IAAM,CAAE,CAAC;EAC1C;EAEA1F,+BAA+BA,CAAE0F,KAAK,EAAG;IACxC,IAAI,CAAClB,QAAQ,CAAE;MAAElD,cAAc,EAAEoE;IAAM,CAAE,CAAC;EAC3C;EAEA7F,WAAWA,CAAE6F,KAAK,EAAG;IACpB,IAAI,CAAClB,QAAQ,CAAE;MAAE3E,WAAW,EAAE6F;IAAM,CAAE,CAAC;EACxC;EAEArF,0BAA0BA,CAAEsF,MAAM,EAAG;IACpC,IAAI,CAACnB,QAAQ,CAAE;MAAEpD,wBAAwB,EAAEuE;IAAO,CAAE,CAAC;EACtD;EAEApF,2BAA2BA,CAAEoF,MAAM,EAAG;IACrC,IAAI,CAACnB,QAAQ,CAAE;MAAEnD,yBAAyB,EAAEsE;IAAO,CAAE,CAAC;EACvD;EAEAvF,kBAAkBA,CAAA,EAAG;IACpB,MAAM;MAAEqD;IAAQ,CAAC,GAAG,IAAI,CAACjC,KAAK;IAC9B,MAAM;MAAEJ;IAAyB,CAAC,GAAG,IAAI,CAACN,KAAK;IAC/C,IAAKM,wBAAwB,EAAG;MAC/BA,wBAAwB,CAAC,CAAC;MAC1B,IAAI,CAACf,0BAA0B,CAAE,IAAK,CAAC;IACxC;IACA,IAAKoD,OAAO,EAAG;MACdA,OAAO,CAAC,CAAC;IACV;IACA,IAAI,CAACzD,+BAA+B,CAAE,IAAK,CAAC;EAC7C;EAEAC,eAAeA,CAAEsB,YAAY,EAAG;IAC/B,IAAKA,YAAY,KAAK,IAAI,CAACT,KAAK,CAACS,YAAY,EAAG;MAC/C,IAAKA,YAAY,EAAG;QACnB,IAAI,CAACiD,QAAQ,CAAE;UAAEjD,YAAY;UAAED,cAAc,EAAE;QAAM,CAAE,CAAC;MACzD,CAAC,MAAM;QACN,IAAI,CAACkD,QAAQ,CAAE;UAAEjD,YAAY;UAAED,cAAc,EAAE;QAAK,CAAE,CAAC;MACxD;IACD;EACD;EAEAhB,qBAAqBA,CAAA,EAAG;IACvB,MAAM;MAAEmD;IAAQ,CAAC,GAAG,IAAI,CAACjC,KAAK;IAC9B,MAAM;MAAEH;IAA0B,CAAC,GAAG,IAAI,CAACP,KAAK;IAChD,IAAKO,yBAAyB,IAAIA,yBAAyB,CAAC,CAAC,EAAG;MAC/D;IACD;IACA,IAAKoC,OAAO,EAAG;MACd,OAAOA,OAAO,CAAC,CAAC;IACjB;EACD;EAEAmC,eAAeA,CAAA,EAAG;IACjB,MAAM;MAAE7E;IAAoB,CAAC,GAAG,IAAI,CAACD,KAAK;IAC1C,OAAO;MACN+E,aAAa,EACZ,CAAE9E,mBAAmB,IAAI,CAAC,IAC1B+E,eAAM,CAACC,iBAAiB,CAACF;IAC3B,CAAC;EACF;EAEAG,MAAMA,CAAA,EAAG;IACR,MAAM;MACLC,KAAK,GAAG,EAAE;MACVvE,SAAS;MACTwE,UAAU;MACVC,WAAW;MACXC,MAAM;MACNC,UAAU;MACVC,KAAK,GAAG,CAAC,CAAC;MACVC,YAAY,GAAG,CAAC,CAAC;MACjBC,wBAAwB;MACxBC,QAAQ;MACRC,mBAAmB,GAAG,KAAK;MAC3BC,aAAa;MACb5G,SAAS;MACT,GAAG6G;IACJ,CAAC,GAAG,IAAI,CAACpF,KAAK;IACd,MAAM;MACLN,SAAS;MACTD,OAAO;MACPF,mBAAmB;MACnBC,gBAAgB;MAChBnB,WAAW;MACXsB,aAAa;MACbG,cAAc;MACdC;IACD,CAAC,GAAG,IAAI,CAACT,KAAK;IAEd,MAAM+F,YAAY,GAAGC,yBAAY,CAACrE,MAAM,CAAE;MACzCsE,2BAA2B,EAAEA,CAAEC,GAAG,EAAEC,YAAY,KAAM;QACrD;QACA;QACA,IAAKhE,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAG;UAC5B;UACA;UACA,IAAK+D,YAAY,CAACC,EAAE,GAAG,CAAC,IAAI,CAAEjG,OAAO,EAAG;YACvCgG,YAAY,CAACC,EAAE,GAAG,CAAC;YACnB,OAAO,IAAI;UACZ;QACD;QACA,OAAO,KAAK;MACb;IACD,CAAE,CAAC;IAEH,MAAMC,eAAe,GAAGX,wBAAwB,CAC/CV,eAAM,CAACsB,UAAU,EACjBtB,eAAM,CAACuB,cACR,CAAC;IAED,MAAMC,2BAA2B,GAAGd,wBAAwB,CAC3DV,eAAM,CAACyB,sBAAsB,EAC7BzB,eAAM,CAAC0B,0BACR,CAAC;IAED,IAAIC,SAAS,GAAG,CAAC,CAAC;IAClB,IAAKlG,YAAY,EAAG;MACnBkG,SAAS,GAAG;QAAEC,QAAQ,EAAE,CAAC;QAAEC,UAAU,EAAE;MAAE,CAAC;IAC3C,CAAC,MAAM,IAAKrG,cAAc,EAAG;MAC5BmG,SAAS,GAAG;QAAEvG;MAAU,CAAC;;MAEzB;MACA;MACA,IAAK,IAAI,CAACM,KAAK,CAACoG,uBAAuB,EAAG;QACzCH,SAAS,CAACI,SAAS,GAAG3G,SAAS;MAChC;IACD;IAEA,MAAM4G,SAAS,GAAG;MACjBC,6BAA6B,EAAE,IAAI;MACnC9G,OAAO;MACPrB,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBoI,iBAAiB,EAAE,IAAI,CAACA,iBAAiB;MACzCC,eAAe,EAAE,IAAI,CAACA,eAAe;MACrCC,mBAAmB,EAAE,EAAE;MACvBC,qBAAqB,EAAE,CACtBrC,eAAM,CAACsC,OAAO,EACd/B,UAAU,IAAIP,eAAM,CAACuC,WAAW,EAChC9B,YAAY,EACZhF,YAAY,IAAI;QAAEmG,QAAQ,EAAE;MAAE,CAAC,CAC/B;MACDpB,KAAK,EAAEmB,SAAS;MAChB1G,mBAAmB;MACnBI,aAAa;MACbmH,gCAAgC,EAAE;IACnC,CAAC;IAED,MAAMC,WAAW,GAAG5B,aAAa,GAAG6B,iBAAI,GAAGC,uBAAU;IAErD,MAAMC,SAAS,GAAGA,CAAA,KACjB,IAAAC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACGzC,MAAM,IACP,IAAAuC,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MAAClC,KAAK,EAAGR,eAAM,CAACgD;IAAmB,GACvC,IAAAH,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MAAClC,KAAK,EAAGR,eAAM,CAACiD;IAAM,GAAG7C,UAAkB,CAAC,EACjD,IAAAyC,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAAuL,IAAI;MACJ1C,KAAK,EAAGgB,2BAA6B;MACrC2B,qBAAqB,EAAG;IAAG,GAEzBhD,KACG,CAAC,EACP,IAAA0C,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MAAClC,KAAK,EAAGR,eAAM,CAACiD;IAAM,GAAG5C,WAAmB,CAC5C,CACN,EACCO,mBAAmB,IAAI,IAAAiC,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MAAClC,KAAK,EAAGR,eAAM,CAACoD;IAAW,CAAE,CAC1D,CACF;IAED,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;MAC/B;MACA,IAAKlG,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,CAAE,IAAI,CAACpC,KAAK,CAACS,YAAY,EAAG;QACzD,OAAO,IAAI;MACZ;;MAEA;MACA,OAAO,IAAI,CAACC,KAAK,CAAC4H,kBAAkB;IACrC,CAAC;IAED,OACC,IAAAT,MAAA,CAAAC,aAAA,EAACjL,iBAAA,CAAA0L,OAAK;MACL3H,SAAS,EAAGA,SAAW;MACvB4E,KAAK,EAAGR,eAAM,CAACwD,WAAa;MAC5BC,iBAAiB,EAAG,GAAK;MACzBC,kBAAkB,EAAG,GAAK;MAC1BC,0BAA0B,EAAG,EAAI;MACjCC,2BAA2B,EAAG,EAAI;MAClCC,eAAe,EAAG,GAAK;MACvBC,eAAe,EAAG,IAAI,CAACxJ,kBAAoB;MAC3CyJ,iBAAiB,EAAG,IAAI,CAACvJ,qBAAuB;MAChDwJ,eAAe,EAAG,IAAI,CAAC1J,kBAAoB;MAC3CL,SAAS,EAAGkD,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,IAAI,CAACnD,SAAS,GAAGgK,SAAW;MAChEC,WAAW,EACV/G,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAG,IAAI,CAACnD,SAAS,GAAGgK,SAC7C;MACDE,cAAc,EAAC,MAAM;MACrBC,wBAAwB,EACvB/I,aAAa,IACb0F,YAAY,CAACsD,WAAW,CAACD,wBACzB;MACDE,+BAA+B,EAC9BjJ,aAAa,IACb0F,YAAY,CAACsD,WAAW,CAACC,+BACzB;MACDC,qBAAqB,EAAG,IAAI,CAACjK,kBAAoB;MACjDkK,MAAM,EAAC,cAAc;MAAA,GAChB1D;IAAI,GAET,IAAA+B,MAAA,CAAAC,aAAA,EAAC9J,qBAAA,CAAAuK,OAAoB;MACpBkB,QAAQ,EAAGtH,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,SAAW;MAC/CoD,KAAK,EAAG;QACP,GAAGa,eAAe;QAClBqD,WAAW,EAAE,oBAAoB;QACjCC,SAAS,EACRxH,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI3B,YAAY,GAClCP,gBAAgB,GAChB,CAAC;QACL+H,IAAI,EAAExH,YAAY,GAAG,CAAC,GAAGwI,SAAS;QAClC,IAAK9G,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI3B,YAAY,GAC3CuE,eAAM,CAAC4E,oBAAoB,GAC3B,CAAC,CAAC,CAAE;QACP,GAAGpE;MACJ,CAAG;MACHqE,sBAAsB,EAAG,CAAC5J;IAAqB,GAE/C,IAAA4H,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MACJlC,KAAK,EAAGR,eAAM,CAACM,MAAQ;MACvBwE,QAAQ,EAAG,IAAI,CAACzK,cAAgB;MAChCmK,MAAM,EAAI,GAAG1D,IAAI,CAAC0D,MAAM,IAAI,cAAgB;IAAU,GAEpDnB,iBAAiB,CAAC,CAAC,IACpB,IAAAR,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MAAClC,KAAK,EAAGR,eAAM,CAAC+E;IAAe,CAAE,CACtC,EACC,CAAExE,UAAU,IAAIqC,SAAS,CAAC,CACvB,CAAC,EACP,IAAAC,MAAA,CAAAC,aAAA,EAACL,WAAW;MAAA,IACJ5B,aAAa,GACjB;QAAEL,KAAK,EAAEwB,SAAS,CAACxB;MAAM,CAAC,GAC1BwB,SAAS;IAAA,GAEZ,IAAAa,MAAA,CAAAC,aAAA,EAAC3J,mBAAA,CAAA6L,mBAAmB;MACnBpF,KAAK,EAAG;QACPqF,6BAA6B,EAC5B,IAAI,CAACjL,oBAAoB;QAC1BkL,gCAAgC,EAC/B,IAAI,CAAChL,+BAA+B;QACrCiL,6BAA6B,EAAEpL,WAAW;QAC1CQ,0BAA0B,EACzB,IAAI,CAACA,0BAA0B;QAChCE,2BAA2B,EAC1B,IAAI,CAACA,2BAA2B;QACjCuH,SAAS;QACT7H,eAAe,EAAE,IAAI,CAACA,eAAe;QACrCc,mBAAmB;QACnBG,SAAS;QACTI;MACD;IAAG,GAEDqF,aAAa,GACd,IAAAgC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QAAIpC,QAAY,CAAC,GAEjB,IAAAkC,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAAyN,kBAAkB;MAACC,UAAU,EAAG;IAAO,GACvC,IAAAxC,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QAAIpC,QAAY,CACG,CAED,CAAC,EACpB,CAAEE,aAAa,IAChB,IAAAgC,MAAA,CAAAC,aAAA,EAACnL,YAAA,CAAA+K,IAAI;MACJlC,KAAK,EAAG;QACP3E,MAAM,EACLZ,mBAAmB,IACnB+E,eAAM,CAACC,iBAAiB,CAACF;MAC3B;IAAG,CACH,CAEU,CACQ,CAChB,CAAC;EAEV;AACD;AAEA,SAASuF,QAAQA,CAAA,EAAG;EACnB,OAAOrG,IAAI,CAACC,GAAG,CACdrB,uBAAU,CAACe,GAAG,CAAE,QAAS,CAAC,CAACD,KAAK,EAChCqB,eAAM,CAACsB,UAAU,CAACiE,QACnB,CAAC;AACF;AAEA,MAAMC,iBAAiB,GAAG,IAAAC,iCAAwB,EAAEjM,WAAY,CAAC;AAEjEgM,iBAAiB,CAACF,QAAQ,GAAGA,QAAQ;AACrCE,iBAAiB,CAACE,MAAM,GAAGA,eAAM;AACjCF,iBAAiB,CAACG,IAAI,GAAGA,aAAI;AAC7BH,iBAAiB,CAACI,QAAQ,GAAGC,iBAAmB;AAChDL,iBAAiB,CAACM,MAAM,GAAGA,eAAM;AACjCN,iBAAiB,CAACO,eAAe,GAAGA,wBAAe;AACnDP,iBAAiB,CAACQ,UAAU,GAAGA,mBAAU;AACzCR,iBAAiB,CAACS,UAAU,GAAGA,mBAAU;AACzCT,iBAAiB,CAACU,SAAS,GAAGA,kBAAS;AACvCV,iBAAiB,CAACW,SAAS,GAAGA,kBAAS;AACvCX,iBAAiB,CAACY,QAAQ,GAAGA,iBAAQ;AACrCZ,iBAAiB,CAACa,sBAAsB,GAAGA,+BAAsB;AACjEb,iBAAiB,CAACc,SAAS,GAAGA,kBAAS;AACvCd,iBAAiB,CAACe,gBAAgB,GAAGA,yBAAgB;AACrDf,iBAAiB,CAACgB,mBAAmB,GAAGA,4BAAmB;AAAC,IAAAC,QAAA,GAE7CjB,iBAAiB;AAAAkB,OAAA,CAAAnD,OAAA,GAAAkD,QAAA"}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeModal","_interopRequireDefault","_reactNativeSafeArea","_reactNativeBridge","_element","_compose","_styles","_button","_cell","_cyclePickerCell","_pickerCell","_switchCell","_rangeCell","_colorCell","_linkCell","_linkSuggestionItemCell","_radioCell","_navigationScreen","_navigationContainer","_keyboardAvoidingView","_subSheet","_navBar","_bottomSheetContext","DEFAULT_LAYOUT_ANIMATION","LayoutAnimation","Presets","easeInEaseOut","BottomSheet","Component","constructor","arguments","onSafeAreaInsetsUpdate","bind","onScroll","isScrolling","onShouldEnableScroll","onDismiss","onShouldSetBottomSheetMaxHeight","setIsFullScreen","onDimensionsChange","onHeaderLayout","onCloseBottomSheet","onHandleClosingBottomSheet","onHardwareButtonPress","onHandleHardwareButtonPress","keyboardShow","keyboardHide","headerHeight","keyboardHeight","lastLayoutAnimation","lastLayoutAnimationFinished","state","safeAreaBottomInset","safeAreaTopInset","bounces","maxHeight","scrollEnabled","handleClosingBottomSheet","handleHardwareButtonPress","isMaxHeightSet","isFullScreen","props","e","isVisible","height","endCoordinates","performKeyboardLayoutAnimation","onSetMaxHeight","onKeyboardShow","onKeyboardHide","event","duration","easing","animationConfig","type","Types","layoutAnimation","update","create","property","Properties","opacity","delete","configureNext","performRegularLayoutAnimation","useLastLayoutAnimation","Platform","OS","componentDidMount","SafeArea","getSafeAreaInsetsForRootView","then","androidModalClosedSubscription","subscribeAndroidModalClosed","onClose","dimensionsChangeSubscription","Dimensions","addEventListener","keyboardShowListener","Keyboard","addListener","keyboardHideListener","safeAreaEventSubscription","componentWillUnmount","remove","showAndroidSoftKeyboard","result","safeAreaInsets","bottom","top","setState","width","get","statusBarHeight","StatusBar","currentHeight","maxHeightWithOpenKeyboard","Math","min","nativeEvent","layout","round","isCloseToBottom","layoutMeasurement","contentOffset","contentSize","y","isCloseToTop","value","action","getContentStyle","paddingBottom","styles","scrollableContent","render","title","leftButton","rightButton","header","hideHeader","style","contentStyle","getStylesFromColorScheme","children","withHeaderSeparator","hasNavigation","rest","panResponder","PanResponder","onMoveShouldSetPanResponder","evt","gestureState","dy","backgroundStyle","background","backgroundDark","bottomSheetHeaderTitleStyle","bottomSheetHeaderTitle","bottomSheetHeaderTitleDark","listStyle","flexGrow","flexShrink","setMinHeightToMaxHeight","minHeight","listProps","disableScrollViewPanResponder","onScrollBeginDrag","onScrollEndDrag","scrollEventThrottle","contentContainerStyle","content","emptyHeader","automaticallyAdjustContentInsets","WrapperView","View","ScrollView","getHeader","_react","createElement","Fragment","bottomSheetHeader","flex","Text","maxFontSizeMultiplier","separator","showDragIndicator","allowDragIndicator","default","bottomModal","animationInTiming","animationOutTiming","backdropTransitionInTiming","backdropTransitionOutTiming","backdropOpacity","onBackdropPress","onBackButtonPress","onSwipeComplete","undefined","onModalHide","swipeDirection","onMoveShouldSetResponder","panHandlers","onMoveShouldSetResponderCapture","onAccessibilityEscape","testID","hardwareAccelerated","useNativeDriverForBackdrop","behavior","borderColor","marginTop","backgroundFullScreen","keyboardVerticalOffset","onLayout","dragIndicator","BottomSheetProvider","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","isBottomSheetContentScrolling","TouchableHighlight","accessible","getWidth","maxWidth","ThemedBottomSheet","withPreferredColorScheme","Button","Cell","SubSheet","BottomSheetSubSheet","NavBar","CyclePickerCell","PickerCell","SwitchCell","RangeCell","ColorCell","LinkCell","LinkSuggestionItemCell","RadioCell","NavigationScreen","NavigationContainer","_default","exports"],"sources":["@wordpress/components/src/mobile/bottom-sheet/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tDimensions,\n\tKeyboard,\n\tLayoutAnimation,\n\tPanResponder,\n\tPlatform,\n\tScrollView,\n\tStatusBar,\n\tText,\n\tTouchableHighlight,\n\tView,\n} from 'react-native';\nimport Modal from 'react-native-modal';\nimport SafeArea from 'react-native-safe-area';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tsubscribeAndroidModalClosed,\n\tshowAndroidSoftKeyboard,\n} from '@wordpress/react-native-bridge';\nimport { Component } from '@wordpress/element';\nimport { withPreferredColorScheme } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport styles from './styles.scss';\nimport Button from './button';\nimport Cell from './cell';\nimport CyclePickerCell from './cycle-picker-cell';\nimport PickerCell from './picker-cell';\nimport SwitchCell from './switch-cell';\nimport RangeCell from './range-cell';\nimport ColorCell from './color-cell';\nimport LinkCell from './link-cell';\nimport LinkSuggestionItemCell from './link-suggestion-item-cell';\nimport RadioCell from './radio-cell';\nimport NavigationScreen from './bottom-sheet-navigation/navigation-screen';\nimport NavigationContainer from './bottom-sheet-navigation/navigation-container';\nimport KeyboardAvoidingView from './keyboard-avoiding-view';\nimport BottomSheetSubSheet from './sub-sheet';\nimport NavBar from './nav-bar';\nimport { BottomSheetProvider } from './bottom-sheet-context';\n\nconst DEFAULT_LAYOUT_ANIMATION = LayoutAnimation.Presets.easeInEaseOut;\n\nclass BottomSheet extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\t\tthis.onSafeAreaInsetsUpdate = this.onSafeAreaInsetsUpdate.bind( this );\n\t\tthis.onScroll = this.onScroll.bind( this );\n\t\tthis.isScrolling = this.isScrolling.bind( this );\n\t\tthis.onShouldEnableScroll = this.onShouldEnableScroll.bind( this );\n\t\tthis.onDismiss = this.onDismiss.bind( this );\n\t\tthis.onShouldSetBottomSheetMaxHeight =\n\t\t\tthis.onShouldSetBottomSheetMaxHeight.bind( this );\n\n\t\tthis.setIsFullScreen = this.setIsFullScreen.bind( this );\n\n\t\tthis.onDimensionsChange = this.onDimensionsChange.bind( this );\n\t\tthis.onHeaderLayout = this.onHeaderLayout.bind( this );\n\t\tthis.onCloseBottomSheet = this.onCloseBottomSheet.bind( this );\n\t\tthis.onHandleClosingBottomSheet =\n\t\t\tthis.onHandleClosingBottomSheet.bind( this );\n\t\tthis.onHardwareButtonPress = this.onHardwareButtonPress.bind( this );\n\t\tthis.onHandleHardwareButtonPress =\n\t\t\tthis.onHandleHardwareButtonPress.bind( this );\n\t\tthis.keyboardShow = this.keyboardShow.bind( this );\n\t\tthis.keyboardHide = this.keyboardHide.bind( this );\n\n\t\tthis.headerHeight = 0;\n\t\tthis.keyboardHeight = 0;\n\t\tthis.lastLayoutAnimation = null;\n\t\tthis.lastLayoutAnimationFinished = false;\n\n\t\tthis.state = {\n\t\t\tsafeAreaBottomInset: 0,\n\t\t\tsafeAreaTopInset: 0,\n\t\t\tbounces: false,\n\t\t\tmaxHeight: 0,\n\t\t\tscrollEnabled: true,\n\t\t\tisScrolling: false,\n\t\t\thandleClosingBottomSheet: null,\n\t\t\thandleHardwareButtonPress: null,\n\t\t\tisMaxHeightSet: true,\n\t\t\tisFullScreen: this.props.isFullScreen || false,\n\t\t};\n\t}\n\n\tkeyboardShow( e ) {\n\t\tif ( ! this.props.isVisible ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { height } = e.endCoordinates;\n\t\tthis.keyboardHeight = height;\n\t\tthis.performKeyboardLayoutAnimation( e );\n\t\tthis.onSetMaxHeight();\n\t\tthis.props.onKeyboardShow?.();\n\t}\n\n\tkeyboardHide( e ) {\n\t\tif ( ! this.props.isVisible ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.keyboardHeight = 0;\n\t\tthis.performKeyboardLayoutAnimation( e );\n\t\tthis.onSetMaxHeight();\n\t\tthis.props.onKeyboardHide?.();\n\t}\n\n\tperformKeyboardLayoutAnimation( event ) {\n\t\tconst { duration, easing } = event;\n\n\t\tif ( duration && easing ) {\n\t\t\t// This layout animation is the same as the React Native's KeyboardAvoidingView component.\n\t\t\t// Reference: https://github.com/facebook/react-native/blob/266b21baf35e052ff28120f79c06c4f6dddc51a9/Libraries/Components/Keyboard/KeyboardAvoidingView.js#L119-L128.\n\t\t\tconst animationConfig = {\n\t\t\t\t// We have to pass the duration equal to minimal accepted duration defined here: RCTLayoutAnimation.m.\n\t\t\t\tduration: duration > 10 ? duration : 10,\n\t\t\t\ttype: LayoutAnimation.Types[ easing ] || 'keyboard',\n\t\t\t};\n\t\t\tconst layoutAnimation = {\n\t\t\t\tduration: animationConfig.duration,\n\t\t\t\tupdate: animationConfig,\n\t\t\t\tcreate: {\n\t\t\t\t\t...animationConfig,\n\t\t\t\t\tproperty: LayoutAnimation.Properties.opacity,\n\t\t\t\t},\n\t\t\t\tdelete: {\n\t\t\t\t\t...animationConfig,\n\t\t\t\t\tproperty: LayoutAnimation.Properties.opacity,\n\t\t\t\t},\n\t\t\t};\n\t\t\tthis.lastLayoutAnimationFinished = false;\n\t\t\tLayoutAnimation.configureNext( layoutAnimation, () => {\n\t\t\t\tthis.lastLayoutAnimationFinished = true;\n\t\t\t} );\n\t\t\tthis.lastLayoutAnimation = layoutAnimation;\n\t\t} else {\n\t\t\t// TODO: Reinstate animations, possibly replacing `LayoutAnimation` with\n\t\t\t// more nuanced `Animated` usage or replacing our custom `BottomSheet`\n\t\t\t// with `@gorhom/bottom-sheet`. This animation was disabled to avoid a\n\t\t\t// preexisting bug: https://github.com/WordPress/gutenberg/issues/30562\n\t\t\t// this.performRegularLayoutAnimation( {\n\t\t\t// \tuseLastLayoutAnimation: false,\n\t\t\t// } );.\n\t\t}\n\t}\n\n\tperformRegularLayoutAnimation( { useLastLayoutAnimation } ) {\n\t\t// On Android, we should prevent triggering multiple layout animations at the same time because it can produce visual glitches.\n\t\tif (\n\t\t\tPlatform.OS === 'android' &&\n\t\t\tthis.lastLayoutAnimation &&\n\t\t\t! this.lastLayoutAnimationFinished\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst layoutAnimation = useLastLayoutAnimation\n\t\t\t? this.lastLayoutAnimation || DEFAULT_LAYOUT_ANIMATION\n\t\t\t: DEFAULT_LAYOUT_ANIMATION;\n\n\t\tthis.lastLayoutAnimationFinished = false;\n\t\tLayoutAnimation.configureNext( layoutAnimation, () => {\n\t\t\tthis.lastLayoutAnimationFinished = true;\n\t\t} );\n\t\tthis.lastLayoutAnimation = layoutAnimation;\n\t}\n\n\tcomponentDidMount() {\n\t\tSafeArea.getSafeAreaInsetsForRootView().then(\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\n\t\tif ( Platform.OS === 'android' ) {\n\t\t\tthis.androidModalClosedSubscription = subscribeAndroidModalClosed(\n\t\t\t\t() => {\n\t\t\t\t\tthis.props.onClose();\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tthis.dimensionsChangeSubscription = Dimensions.addEventListener(\n\t\t\t'change',\n\t\t\tthis.onDimensionsChange\n\t\t);\n\n\t\t// 'Will' keyboard events are not available on Android.\n\t\t// Reference: https://reactnative.dev/docs/0.61/keyboard#addlistener.\n\t\tthis.keyboardShowListener = Keyboard.addListener(\n\t\t\tPlatform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow',\n\t\t\tthis.keyboardShow\n\t\t);\n\t\tthis.keyboardHideListener = Keyboard.addListener(\n\t\t\tPlatform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide',\n\t\t\tthis.keyboardHide\n\t\t);\n\n\t\tthis.safeAreaEventSubscription = SafeArea.addEventListener(\n\t\t\t'safeAreaInsetsForRootViewDidChange',\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t\tthis.onSetMaxHeight();\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.dimensionsChangeSubscription.remove();\n\t\tthis.keyboardShowListener.remove();\n\t\tthis.keyboardHideListener.remove();\n\t\tif ( this.androidModalClosedSubscription ) {\n\t\t\tthis.androidModalClosedSubscription.remove();\n\t\t}\n\n\t\tif ( this.props.isVisible ) {\n\t\t\tshowAndroidSoftKeyboard();\n\t\t}\n\n\t\tif ( this.safeAreaEventSubscription === null ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.safeAreaEventSubscription.remove();\n\t\tthis.safeAreaEventSubscription = null;\n\t}\n\n\tonSafeAreaInsetsUpdate( result ) {\n\t\tconst { safeAreaBottomInset, safeAreaTopInset } = this.state;\n\t\tif ( this.safeAreaEventSubscription === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { safeAreaInsets } = result;\n\t\tif (\n\t\t\tsafeAreaBottomInset !== safeAreaInsets.bottom ||\n\t\t\tsafeAreaTopInset !== safeAreaInsets.top\n\t\t) {\n\t\t\tthis.setState( {\n\t\t\t\tsafeAreaBottomInset: safeAreaInsets.bottom,\n\t\t\t\tsafeAreaTopInset: safeAreaInsets.top,\n\t\t\t} );\n\t\t}\n\t}\n\n\tonSetMaxHeight() {\n\t\tconst { height, width } = Dimensions.get( 'window' );\n\t\tconst { safeAreaBottomInset } = this.state;\n\t\tconst statusBarHeight =\n\t\t\tPlatform.OS === 'android' ? StatusBar.currentHeight : 0;\n\n\t\t// `maxHeight` when modal is opened along with a keyboard.\n\t\tconst maxHeightWithOpenKeyboard =\n\t\t\t0.95 *\n\t\t\t( Dimensions.get( 'window' ).height -\n\t\t\t\tthis.keyboardHeight -\n\t\t\t\tstatusBarHeight -\n\t\t\t\tthis.headerHeight );\n\n\t\t// In landscape orientation, set `maxHeight` to ~96% of the height.\n\t\tif ( width > height ) {\n\t\t\tthis.setState( {\n\t\t\t\tmaxHeight: Math.min(\n\t\t\t\t\t0.96 * height - this.headerHeight,\n\t\t\t\t\tmaxHeightWithOpenKeyboard\n\t\t\t\t),\n\t\t\t} );\n\t\t\t// In portrait orientation, set `maxHeight` to ~59% of the height.\n\t\t} else {\n\t\t\tthis.setState( {\n\t\t\t\tmaxHeight: Math.min(\n\t\t\t\t\theight * 0.59 - safeAreaBottomInset - this.headerHeight,\n\t\t\t\t\tmaxHeightWithOpenKeyboard\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t}\n\n\tonDimensionsChange() {\n\t\tthis.onSetMaxHeight();\n\t\tthis.setState( { bounces: false } );\n\t}\n\n\tonHeaderLayout( { nativeEvent } ) {\n\t\tconst { height } = nativeEvent.layout;\n\t\t// The layout animation should only be triggered if the header\n\t\t// height has changed after being mounted.\n\t\tif (\n\t\t\tthis.headerHeight !== 0 &&\n\t\t\tMath.round( height ) !== Math.round( this.headerHeight )\n\t\t) {\n\t\t\tthis.performRegularLayoutAnimation( {\n\t\t\t\tuseLastLayoutAnimation: true,\n\t\t\t} );\n\t\t}\n\t\tthis.headerHeight = height;\n\t\tthis.onSetMaxHeight();\n\t}\n\n\tisCloseToBottom( { layoutMeasurement, contentOffset, contentSize } ) {\n\t\treturn (\n\t\t\tlayoutMeasurement.height + contentOffset.y >=\n\t\t\tcontentSize.height - contentOffset.y\n\t\t);\n\t}\n\n\tisCloseToTop( { contentOffset } ) {\n\t\treturn contentOffset.y < 10;\n\t}\n\n\tonScroll( { nativeEvent } ) {\n\t\tif ( this.isCloseToTop( nativeEvent ) ) {\n\t\t\tthis.setState( { bounces: false } );\n\t\t} else {\n\t\t\tthis.setState( { bounces: true } );\n\t\t}\n\t}\n\n\tonDismiss() {\n\t\tconst { onDismiss } = this.props;\n\n\t\t// Restore Keyboard Visibility\n\t\tshowAndroidSoftKeyboard();\n\n\t\tif ( onDismiss ) {\n\t\t\tonDismiss();\n\t\t}\n\n\t\tthis.onCloseBottomSheet();\n\t}\n\n\tonShouldEnableScroll( value ) {\n\t\tthis.setState( { scrollEnabled: value } );\n\t}\n\n\tonShouldSetBottomSheetMaxHeight( value ) {\n\t\tthis.setState( { isMaxHeightSet: value } );\n\t}\n\n\tisScrolling( value ) {\n\t\tthis.setState( { isScrolling: value } );\n\t}\n\n\tonHandleClosingBottomSheet( action ) {\n\t\tthis.setState( { handleClosingBottomSheet: action } );\n\t}\n\n\tonHandleHardwareButtonPress( action ) {\n\t\tthis.setState( { handleHardwareButtonPress: action } );\n\t}\n\n\tonCloseBottomSheet() {\n\t\tconst { onClose } = this.props;\n\t\tconst { handleClosingBottomSheet } = this.state;\n\t\tif ( handleClosingBottomSheet ) {\n\t\t\thandleClosingBottomSheet();\n\t\t\tthis.onHandleClosingBottomSheet( null );\n\t\t}\n\t\tif ( onClose ) {\n\t\t\tonClose();\n\t\t}\n\t\tthis.onShouldSetBottomSheetMaxHeight( true );\n\t}\n\n\tsetIsFullScreen( isFullScreen ) {\n\t\tif ( isFullScreen !== this.state.isFullScreen ) {\n\t\t\tif ( isFullScreen ) {\n\t\t\t\tthis.setState( { isFullScreen, isMaxHeightSet: false } );\n\t\t\t} else {\n\t\t\t\tthis.setState( { isFullScreen, isMaxHeightSet: true } );\n\t\t\t}\n\t\t}\n\t}\n\n\tonHardwareButtonPress() {\n\t\tconst { onClose } = this.props;\n\t\tconst { handleHardwareButtonPress } = this.state;\n\n\t\tif ( handleHardwareButtonPress && handleHardwareButtonPress() ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( onClose ) {\n\t\t\treturn onClose();\n\t\t}\n\t}\n\n\tgetContentStyle() {\n\t\tconst { safeAreaBottomInset } = this.state;\n\t\treturn {\n\t\t\tpaddingBottom:\n\t\t\t\t( safeAreaBottomInset || 0 ) +\n\t\t\t\tstyles.scrollableContent.paddingBottom,\n\t\t};\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\ttitle = '',\n\t\t\tisVisible,\n\t\t\tleftButton,\n\t\t\trightButton,\n\t\t\theader,\n\t\t\thideHeader,\n\t\t\tstyle = {},\n\t\t\tcontentStyle = {},\n\t\t\tgetStylesFromColorScheme,\n\t\t\tchildren,\n\t\t\twithHeaderSeparator = false,\n\t\t\thasNavigation,\n\t\t\tonDismiss,\n\t\t\t...rest\n\t\t} = this.props;\n\t\tconst {\n\t\t\tmaxHeight,\n\t\t\tbounces,\n\t\t\tsafeAreaBottomInset,\n\t\t\tsafeAreaTopInset,\n\t\t\tisScrolling,\n\t\t\tscrollEnabled,\n\t\t\tisMaxHeightSet,\n\t\t\tisFullScreen,\n\t\t} = this.state;\n\n\t\tconst panResponder = PanResponder.create( {\n\t\t\tonMoveShouldSetPanResponder: ( evt, gestureState ) => {\n\t\t\t\t// 'swiping-to-close' option is temporarily and partially disabled\n\t\t\t\t// on Android ( swipe / drag is still available in the top most area - near drag indicator).\n\t\t\t\tif ( Platform.OS === 'ios' ) {\n\t\t\t\t\t// Activates swipe down over child Touchables if the swipe is long enough.\n\t\t\t\t\t// With this we can adjust sensibility on the swipe vs tap gestures.\n\t\t\t\t\tif ( gestureState.dy > 3 && ! bounces ) {\n\t\t\t\t\t\tgestureState.dy = 0;\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t},\n\t\t} );\n\n\t\tconst backgroundStyle = getStylesFromColorScheme(\n\t\t\tstyles.background,\n\t\t\tstyles.backgroundDark\n\t\t);\n\n\t\tconst bottomSheetHeaderTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.bottomSheetHeaderTitle,\n\t\t\tstyles.bottomSheetHeaderTitleDark\n\t\t);\n\n\t\tlet listStyle = {};\n\t\tif ( isFullScreen ) {\n\t\t\tlistStyle = { flexGrow: 1, flexShrink: 1 };\n\t\t} else if ( isMaxHeightSet ) {\n\t\t\tlistStyle = { maxHeight };\n\n\t\t\t// Allow setting a \"static\" height of the bottom sheet\n\t\t\t// by setting the min height to the max height.\n\t\t\tif ( this.props.setMinHeightToMaxHeight ) {\n\t\t\t\tlistStyle.minHeight = maxHeight;\n\t\t\t}\n\t\t}\n\n\t\tconst listProps = {\n\t\t\tdisableScrollViewPanResponder: true,\n\t\t\tbounces,\n\t\t\tonScroll: this.onScroll,\n\t\t\tonScrollBeginDrag: this.onScrollBeginDrag,\n\t\t\tonScrollEndDrag: this.onScrollEndDrag,\n\t\t\tscrollEventThrottle: 16,\n\t\t\tcontentContainerStyle: [\n\t\t\t\tstyles.content,\n\t\t\t\thideHeader && styles.emptyHeader,\n\t\t\t\tcontentStyle,\n\t\t\t\tisFullScreen && { flexGrow: 1 },\n\t\t\t],\n\t\t\tstyle: listStyle,\n\t\t\tsafeAreaBottomInset,\n\t\t\tscrollEnabled,\n\t\t\tautomaticallyAdjustContentInsets: false,\n\t\t};\n\n\t\tconst WrapperView = hasNavigation ? View : ScrollView;\n\n\t\tconst getHeader = () => (\n\t\t\t<>\n\t\t\t\t{ header || (\n\t\t\t\t\t<View style={ styles.bottomSheetHeader }>\n\t\t\t\t\t\t<View style={ styles.flex }>{ leftButton }</View>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tstyle={ bottomSheetHeaderTitleStyle }\n\t\t\t\t\t\t\tmaxFontSizeMultiplier={ 3 }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<View style={ styles.flex }>{ rightButton }</View>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\t\t\t\t{ withHeaderSeparator && <View style={ styles.separator } /> }\n\t\t\t</>\n\t\t);\n\n\t\tconst showDragIndicator = () => {\n\t\t\t// If iOS or not fullscreen show the drag indicator.\n\t\t\tif ( Platform.OS === 'ios' || ! this.state.isFullScreen ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t// Otherwise check the allowDragIndicator.\n\t\t\treturn this.props.allowDragIndicator;\n\t\t};\n\n\t\treturn (\n\t\t\t<Modal\n\t\t\t\tisVisible={ isVisible }\n\t\t\t\tstyle={ styles.bottomModal }\n\t\t\t\tanimationInTiming={ 400 }\n\t\t\t\tanimationOutTiming={ 300 }\n\t\t\t\tbackdropTransitionInTiming={ 50 }\n\t\t\t\tbackdropTransitionOutTiming={ 50 }\n\t\t\t\tbackdropOpacity={ 0.2 }\n\t\t\t\tonBackdropPress={ this.onCloseBottomSheet }\n\t\t\t\tonBackButtonPress={ this.onHardwareButtonPress }\n\t\t\t\tonSwipeComplete={ this.onCloseBottomSheet }\n\t\t\t\tonDismiss={ Platform.OS === 'ios' ? this.onDismiss : undefined }\n\t\t\t\tonModalHide={\n\t\t\t\t\tPlatform.OS === 'android' ? this.onDismiss : undefined\n\t\t\t\t}\n\t\t\t\tswipeDirection=\"down\"\n\t\t\t\tonMoveShouldSetResponder={\n\t\t\t\t\tscrollEnabled &&\n\t\t\t\t\tpanResponder.panHandlers.onMoveShouldSetResponder\n\t\t\t\t}\n\t\t\t\tonMoveShouldSetResponderCapture={\n\t\t\t\t\tscrollEnabled &&\n\t\t\t\t\tpanResponder.panHandlers.onMoveShouldSetResponderCapture\n\t\t\t\t}\n\t\t\t\tonAccessibilityEscape={ this.onCloseBottomSheet }\n\t\t\t\ttestID=\"bottom-sheet\"\n\t\t\t\thardwareAccelerated={ true }\n\t\t\t\tuseNativeDriverForBackdrop={ true }\n\t\t\t\t{ ...rest }\n\t\t\t>\n\t\t\t\t<KeyboardAvoidingView\n\t\t\t\t\tbehavior={ Platform.OS === 'ios' && 'padding' }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...backgroundStyle,\n\t\t\t\t\t\tborderColor: 'rgba(0, 0, 0, 0.1)',\n\t\t\t\t\t\tmarginTop:\n\t\t\t\t\t\t\tPlatform.OS === 'ios' && isFullScreen\n\t\t\t\t\t\t\t\t? safeAreaTopInset\n\t\t\t\t\t\t\t\t: 0,\n\t\t\t\t\t\tflex: isFullScreen ? 1 : undefined,\n\t\t\t\t\t\t...( Platform.OS === 'android' && isFullScreen\n\t\t\t\t\t\t\t? styles.backgroundFullScreen\n\t\t\t\t\t\t\t: {} ),\n\t\t\t\t\t\t...style,\n\t\t\t\t\t} }\n\t\t\t\t\tkeyboardVerticalOffset={ -safeAreaBottomInset }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.header }\n\t\t\t\t\t\tonLayout={ this.onHeaderLayout }\n\t\t\t\t\t\ttestID={ `${ rest.testID || 'bottom-sheet' }-header` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showDragIndicator() && (\n\t\t\t\t\t\t\t<View style={ styles.dragIndicator } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! hideHeader && getHeader() }\n\t\t\t\t\t</View>\n\t\t\t\t\t<WrapperView\n\t\t\t\t\t\t{ ...( hasNavigation\n\t\t\t\t\t\t\t? { style: listProps.style }\n\t\t\t\t\t\t\t: listProps ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetProvider\n\t\t\t\t\t\t\tvalue={ {\n\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll:\n\t\t\t\t\t\t\t\t\tthis.onShouldEnableScroll,\n\t\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight:\n\t\t\t\t\t\t\t\t\tthis.onShouldSetBottomSheetMaxHeight,\n\t\t\t\t\t\t\t\tisBottomSheetContentScrolling: isScrolling,\n\t\t\t\t\t\t\t\tonHandleClosingBottomSheet:\n\t\t\t\t\t\t\t\t\tthis.onHandleClosingBottomSheet,\n\t\t\t\t\t\t\t\tonHandleHardwareButtonPress:\n\t\t\t\t\t\t\t\t\tthis.onHandleHardwareButtonPress,\n\t\t\t\t\t\t\t\tlistProps,\n\t\t\t\t\t\t\t\tsetIsFullScreen: this.setIsFullScreen,\n\t\t\t\t\t\t\t\tsafeAreaBottomInset,\n\t\t\t\t\t\t\t\tmaxHeight,\n\t\t\t\t\t\t\t\tisMaxHeightSet,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ hasNavigation ? (\n\t\t\t\t\t\t\t\t<>{ children }</>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<TouchableHighlight accessible={ false }>\n\t\t\t\t\t\t\t\t\t<>{ children }</>\n\t\t\t\t\t\t\t\t</TouchableHighlight>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetProvider>\n\t\t\t\t\t\t{ ! hasNavigation && (\n\t\t\t\t\t\t\t<View\n\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t\t\t\tsafeAreaBottomInset ||\n\t\t\t\t\t\t\t\t\t\tstyles.scrollableContent.paddingBottom,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</WrapperView>\n\t\t\t\t</KeyboardAvoidingView>\n\t\t\t</Modal>\n\t\t);\n\t}\n}\n\nfunction getWidth() {\n\treturn Math.min(\n\t\tDimensions.get( 'window' ).width,\n\t\tstyles.background.maxWidth\n\t);\n}\n\nconst ThemedBottomSheet = withPreferredColorScheme( BottomSheet );\n\nThemedBottomSheet.getWidth = getWidth;\nThemedBottomSheet.Button = Button;\nThemedBottomSheet.Cell = Cell;\nThemedBottomSheet.SubSheet = BottomSheetSubSheet;\nThemedBottomSheet.NavBar = NavBar;\nThemedBottomSheet.CyclePickerCell = CyclePickerCell;\nThemedBottomSheet.PickerCell = PickerCell;\nThemedBottomSheet.SwitchCell = SwitchCell;\nThemedBottomSheet.RangeCell = RangeCell;\nThemedBottomSheet.ColorCell = ColorCell;\nThemedBottomSheet.LinkCell = LinkCell;\nThemedBottomSheet.LinkSuggestionItemCell = LinkSuggestionItemCell;\nThemedBottomSheet.RadioCell = RadioCell;\nThemedBottomSheet.NavigationScreen = NavigationScreen;\nThemedBottomSheet.NavigationContainer = NavigationContainer;\n\nexport default ThemedBottomSheet;\n"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -18,6 +19,7 @@ var _reactNative = require("react-native");
|
|
|
18
19
|
var _colord = require("colord");
|
|
19
20
|
var _blockEditor = require("@wordpress/block-editor");
|
|
20
21
|
var _compose = require("@wordpress/compose");
|
|
22
|
+
var _getPxFromCssUnit = _interopRequireDefault(require("../utils/get-px-from-css-unit"));
|
|
21
23
|
var _index = require("./index.native");
|
|
22
24
|
/**
|
|
23
25
|
* External dependencies
|
|
@@ -241,7 +243,7 @@ function parseStylesVariables(styles, mappedValues, customValues) {
|
|
|
241
243
|
height
|
|
242
244
|
} = _reactNative.Dimensions.get('window');
|
|
243
245
|
stylesBase = stylesBase.replace(fontSizeRegex, (_$1, $2) => {
|
|
244
|
-
const parsedFontSize = (0,
|
|
246
|
+
const parsedFontSize = (0, _getPxFromCssUnit.default)($2, {
|
|
245
247
|
width,
|
|
246
248
|
height,
|
|
247
249
|
fontSize: DEFAULT_FONT_SIZE
|
|
@@ -279,23 +281,34 @@ function getMappedValues(features, palette) {
|
|
|
279
281
|
* @return {Object} normalized sizes.
|
|
280
282
|
*/
|
|
281
283
|
function normalizeFontSizes(fontSizes) {
|
|
282
|
-
// Adds normalized PX values for each of the different keys.
|
|
283
284
|
if (!fontSizes) {
|
|
284
285
|
return fontSizes;
|
|
285
286
|
}
|
|
286
|
-
const normalizedFontSizes = {};
|
|
287
287
|
const dimensions = _reactNative.Dimensions.get('window');
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
288
|
+
const normalizedFontSizes = {};
|
|
289
|
+
const keysToProcess = [];
|
|
290
|
+
|
|
291
|
+
// Check if 'theme' or 'custom' keys exist and add them to keysToProcess array
|
|
292
|
+
if (fontSizes?.theme) {
|
|
293
|
+
keysToProcess.push('theme');
|
|
294
|
+
}
|
|
295
|
+
if (fontSizes?.custom) {
|
|
296
|
+
keysToProcess.push('custom');
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// If neither 'theme' nor 'custom' exist, add 'default' if it exists
|
|
300
|
+
if (keysToProcess.length === 0 && fontSizes?.default) {
|
|
301
|
+
keysToProcess.push('default');
|
|
302
|
+
}
|
|
303
|
+
keysToProcess.forEach(key => {
|
|
304
|
+
normalizedFontSizes[key] = fontSizes[key].map(fontSizeObject => {
|
|
305
|
+
fontSizeObject.sizePx = (0, _getPxFromCssUnit.default)(fontSizeObject.size, {
|
|
306
|
+
width: dimensions.width,
|
|
307
|
+
height: dimensions.height,
|
|
308
|
+
fontSize: DEFAULT_FONT_SIZE
|
|
297
309
|
});
|
|
298
|
-
|
|
310
|
+
return fontSizeObject;
|
|
311
|
+
});
|
|
299
312
|
});
|
|
300
313
|
return normalizedFontSizes;
|
|
301
314
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_changeCase","require","_reactNative","_colord","_blockEditor","_compose","_index","BLOCK_STYLE_ATTRIBUTES","exports","BLOCK_STYLE_ATTRIBUTES_MAPPING","textColor","text","background","link","placeholder","PADDING","UNKNOWN_VALUE","DEFAULT_FONT_SIZE","getBlockPaddings","mergedStyle","wrapperPropsStyle","blockStyleAttributes","blockColors","blockPaddings","padding","backgroundColor","undefined","getBlockColors","defaultColors","blockName","baseGlobalStyles","blockStyles","customBlockStyles","style","color","blockGlobalStyles","blocks","Object","entries","forEach","key","value","styleKey","_customBlockStyles$ke","styles","elements","linkColor","isCustomColor","startsWith","mappedColor","values","find","slug","getBlockTypography","fontSizes","typographyStyles","typography","parsedFontSizes","fontSize","lineHeight","parseInt","mappedFontSize","size","getValueFromObjectPath","object","path","fieldName","parseStylesVariables","mappedValues","customValues","stylesBase","variables","variable","regex","RegExp","varRegex","fontSizeRegex","replace","_$1","$2","split","mappedPresetValue","_mappedPresetValue$va","matchedValue","customValuesData","JSON","parse","colorKey","length","reduce","prev","curr","slice","camelCase","width","height","Dimensions","get","parsedFontSize","getPxFromCssUnit","getMappedValues","features","palette","colors","theme","custom","default","normalizeFontSizes","normalizedFontSizes","dimensions","map","fontSizeObject","sizePx","useMobileGlobalStylesColors","type","colorGradientSettings","useMultipleOriginColorsAndGradients","availableThemeColors","origin","concat","defaultPaletteSetting","defaultPaletteValue","useSettings","defaultPalette","SETTINGS_DEFAULTS","getColorsAndGradients","defaultEditorColors","defaultEditorGradients","rawFeatures","__experimentalGlobalStylesBaseStyles","__experimentalFeatures","gradients","defaultGradients","getGlobalStyles","rawStyles","_features$color$text","_features$color$backg","_features$color$defau","_features$color$defau2","stringify","globalStyles","customLineHeight","spacing","useEditorColorScheme","baseStyle","darkStyle","useGlobalStyles","deviceColorScheme","usePreferredColorSchemeStyle","editorColors","baseColors","editorBackgroundColor","isBackgroundColorDefined","isEditorBackgroundDark","colord","isDark"],"sources":["@wordpress/components/src/mobile/global-styles-context/utils.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { camelCase } from 'change-case';\nimport { Dimensions } from 'react-native';\nimport { colord } from 'colord';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetPxFromCssUnit,\n\tuseSettings,\n\tuseMultipleOriginColorsAndGradients,\n\tSETTINGS_DEFAULTS,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useGlobalStyles } from './index.native';\n\nexport const BLOCK_STYLE_ATTRIBUTES = [\n\t'textColor',\n\t'backgroundColor',\n\t'style',\n\t'color',\n\t'fontSize',\n];\n\n// Mapping style properties name to native.\nconst BLOCK_STYLE_ATTRIBUTES_MAPPING = {\n\ttextColor: 'color',\n\ttext: 'color',\n\tbackground: 'backgroundColor',\n\tlink: 'linkColor',\n\tplaceholder: 'placeholderColor',\n};\n\nconst PADDING = 12; // $solid-border-space\nconst UNKNOWN_VALUE = 'undefined';\nconst DEFAULT_FONT_SIZE = 16;\n\nexport function getBlockPaddings(\n\tmergedStyle,\n\twrapperPropsStyle,\n\tblockStyleAttributes,\n\tblockColors\n) {\n\tconst blockPaddings = {};\n\n\tif (\n\t\t! mergedStyle.padding &&\n\t\t( wrapperPropsStyle?.backgroundColor ||\n\t\t\tblockStyleAttributes?.backgroundColor ||\n\t\t\tblockColors?.backgroundColor )\n\t) {\n\t\tblockPaddings.padding = PADDING;\n\t\treturn blockPaddings;\n\t}\n\n\t// Prevent adding extra paddings to inner blocks without background colors.\n\tif (\n\t\tmergedStyle?.padding &&\n\t\t! wrapperPropsStyle?.backgroundColor &&\n\t\t! blockStyleAttributes?.backgroundColor &&\n\t\t! blockColors?.backgroundColor\n\t) {\n\t\tblockPaddings.padding = undefined;\n\t}\n\n\treturn blockPaddings;\n}\n\nexport function getBlockColors(\n\tblockStyleAttributes,\n\tdefaultColors,\n\tblockName,\n\tbaseGlobalStyles\n) {\n\tconst blockStyles = {};\n\tconst customBlockStyles = blockStyleAttributes?.style?.color || {};\n\tconst blockGlobalStyles = baseGlobalStyles?.blocks?.[ blockName ];\n\n\t// Global styles colors.\n\tif ( blockGlobalStyles?.color ) {\n\t\tObject.entries( blockGlobalStyles.color ).forEach(\n\t\t\t( [ key, value ] ) => {\n\t\t\t\tconst styleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING[ key ];\n\n\t\t\t\tif ( styleKey && value !== UNKNOWN_VALUE ) {\n\t\t\t\t\tconst color = customBlockStyles[ key ] ?? value;\n\t\t\t\t\tblockStyles[ styleKey ] = color;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t} else if ( baseGlobalStyles?.styles?.color?.text ) {\n\t\tblockStyles[ BLOCK_STYLE_ATTRIBUTES_MAPPING.text ] =\n\t\t\tbaseGlobalStyles?.styles?.color?.text;\n\t}\n\n\t// Global styles elements.\n\tif ( blockGlobalStyles?.elements ) {\n\t\tconst linkColor = blockGlobalStyles.elements?.link?.color?.text;\n\t\tconst styleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING.link;\n\n\t\tif ( styleKey && linkColor && linkColor !== UNKNOWN_VALUE ) {\n\t\t\tblockStyles[ styleKey ] = linkColor;\n\t\t}\n\t}\n\n\t// Custom colors.\n\tObject.entries( blockStyleAttributes ).forEach( ( [ key, value ] ) => {\n\t\tconst isCustomColor = value?.startsWith?.( '#' );\n\t\tlet styleKey = key;\n\n\t\tif ( BLOCK_STYLE_ATTRIBUTES_MAPPING[ styleKey ] ) {\n\t\t\tstyleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING[ styleKey ];\n\t\t}\n\n\t\tif ( ! isCustomColor ) {\n\t\t\tconst mappedColor = Object.values( defaultColors ?? {} ).find(\n\t\t\t\t( { slug } ) => slug === value\n\t\t\t);\n\n\t\t\tif ( mappedColor ) {\n\t\t\t\tblockStyles[ styleKey ] = mappedColor.color;\n\t\t\t}\n\t\t} else {\n\t\t\tblockStyles[ styleKey ] = value;\n\t\t}\n\t} );\n\n\t// Color placeholder.\n\tif ( blockStyles?.color ) {\n\t\tblockStyles[ BLOCK_STYLE_ATTRIBUTES_MAPPING.placeholder ] =\n\t\t\tblockStyles.color;\n\t}\n\n\treturn blockStyles;\n}\n\nexport function getBlockTypography(\n\tblockStyleAttributes,\n\tfontSizes,\n\tblockName,\n\tbaseGlobalStyles\n) {\n\tconst typographyStyles = {};\n\tconst customBlockStyles = blockStyleAttributes?.style?.typography || {};\n\tconst blockGlobalStyles = baseGlobalStyles?.blocks?.[ blockName ];\n\tconst parsedFontSizes = Object.values( fontSizes ?? {} );\n\n\t// Global styles.\n\tif ( blockGlobalStyles?.typography ) {\n\t\tconst fontSize = blockGlobalStyles?.typography?.fontSize;\n\t\tconst lineHeight = blockGlobalStyles?.typography?.lineHeight;\n\n\t\tif ( fontSize ) {\n\t\t\tif ( parseInt( fontSize, 10 ) ) {\n\t\t\t\ttypographyStyles.fontSize = fontSize;\n\t\t\t} else {\n\t\t\t\tconst mappedFontSize = parsedFontSizes.find(\n\t\t\t\t\t( { slug } ) => slug === fontSize\n\t\t\t\t);\n\n\t\t\t\tif ( mappedFontSize ) {\n\t\t\t\t\ttypographyStyles.fontSize = mappedFontSize?.size;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif ( lineHeight ) {\n\t\t\ttypographyStyles.lineHeight = lineHeight;\n\t\t}\n\t}\n\n\tif ( blockStyleAttributes?.fontSize && baseGlobalStyles ) {\n\t\tconst mappedFontSize = parsedFontSizes.find(\n\t\t\t( { slug } ) => slug === blockStyleAttributes?.fontSize\n\t\t);\n\n\t\tif ( mappedFontSize ) {\n\t\t\ttypographyStyles.fontSize = mappedFontSize?.size;\n\t\t}\n\t}\n\n\t// Custom styles.\n\tif ( customBlockStyles?.fontSize ) {\n\t\ttypographyStyles.fontSize = customBlockStyles?.fontSize;\n\t}\n\n\tif ( customBlockStyles?.lineHeight ) {\n\t\ttypographyStyles.lineHeight = customBlockStyles?.lineHeight;\n\t}\n\n\treturn typographyStyles;\n}\n\n/**\n * Return a value from a certain path of the object.\n * Path is specified as an array of properties, like: [ 'parent', 'child' ].\n *\n * @param {Object} object Input object.\n * @param {Array} path Path to the object property.\n * @return {*} Value of the object property at the specified path.\n */\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nexport function parseStylesVariables( styles, mappedValues, customValues ) {\n\tlet stylesBase = styles;\n\tconst variables = [ 'preset', 'custom', 'var', 'fontSize' ];\n\n\tif ( ! stylesBase ) {\n\t\treturn styles;\n\t}\n\n\tvariables.forEach( ( variable ) => {\n\t\t// Examples\n\t\t// var(--wp--preset--color--gray)\n\t\t// var(--wp--custom--body--typography--font-family)\n\t\t// var:preset|color|custom-color-2\n\t\tconst regex = new RegExp( `var\\\\(--wp--${ variable }--(.*?)\\\\)`, 'g' );\n\t\tconst varRegex = /\\\"var:preset\\|color\\|(.*?)\\\"/gm;\n\t\tconst fontSizeRegex = /\"fontSize\":\"(.*?)\"/gm;\n\n\t\tif ( variable === 'preset' ) {\n\t\t\tstylesBase = stylesBase.replace( regex, ( _$1, $2 ) => {\n\t\t\t\tconst path = $2.split( '--' );\n\t\t\t\tconst mappedPresetValue = mappedValues[ path[ 0 ] ];\n\t\t\t\tif ( mappedPresetValue && mappedPresetValue.slug ) {\n\t\t\t\t\tconst matchedValue = Object.values(\n\t\t\t\t\t\tmappedPresetValue.values ?? {}\n\t\t\t\t\t).find( ( { slug } ) => slug === path[ 1 ] );\n\t\t\t\t\treturn matchedValue?.[ mappedPresetValue.slug ];\n\t\t\t\t}\n\t\t\t\treturn UNKNOWN_VALUE;\n\t\t\t} );\n\t\t}\n\t\tif ( variable === 'custom' ) {\n\t\t\tconst customValuesData = customValues ?? JSON.parse( stylesBase );\n\t\t\tstylesBase = stylesBase.replace( regex, ( _$1, $2 ) => {\n\t\t\t\tconst path = $2.split( '--' );\n\n\t\t\t\t// Supports cases for variables like var(--wp--custom--color--background)\n\t\t\t\tif ( path[ 0 ] === 'color' ) {\n\t\t\t\t\tconst colorKey = path[ path.length - 1 ];\n\t\t\t\t\tif ( mappedValues?.color ) {\n\t\t\t\t\t\tconst matchedValue = mappedValues.color?.values?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === colorKey\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( matchedValue ) {\n\t\t\t\t\t\t\treturn `${ matchedValue?.color }`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tpath.reduce(\n\t\t\t\t\t\t( prev, curr ) => prev && prev[ curr ],\n\t\t\t\t\t\tcustomValuesData\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn getValueFromObjectPath( customValuesData, path );\n\t\t\t\t}\n\n\t\t\t\t// Check for camelcase properties.\n\t\t\t\treturn getValueFromObjectPath( customValuesData, [\n\t\t\t\t\t...path.slice( 0, path.length - 1 ),\n\t\t\t\t\tcamelCase( path[ path.length - 1 ] ),\n\t\t\t\t] );\n\t\t\t} );\n\t\t}\n\n\t\tif ( variable === 'var' ) {\n\t\t\tstylesBase = stylesBase.replace( varRegex, ( _$1, $2 ) => {\n\t\t\t\tif ( mappedValues?.color ) {\n\t\t\t\t\tconst matchedValue = mappedValues.color?.values?.find(\n\t\t\t\t\t\t( { slug } ) => slug === $2\n\t\t\t\t\t);\n\t\t\t\t\treturn `\"${ matchedValue?.color }\"`;\n\t\t\t\t}\n\t\t\t\treturn UNKNOWN_VALUE;\n\t\t\t} );\n\t\t}\n\n\t\tif ( variable === 'fontSize' ) {\n\t\t\tconst { width, height } = Dimensions.get( 'window' );\n\n\t\t\tstylesBase = stylesBase.replace( fontSizeRegex, ( _$1, $2 ) => {\n\t\t\t\tconst parsedFontSize =\n\t\t\t\t\tgetPxFromCssUnit( $2, {\n\t\t\t\t\t\twidth,\n\t\t\t\t\t\theight,\n\t\t\t\t\t\tfontSize: DEFAULT_FONT_SIZE,\n\t\t\t\t\t} ) || `${ DEFAULT_FONT_SIZE }px`;\n\n\t\t\t\treturn `\"fontSize\":\"${ parsedFontSize }\"`;\n\t\t\t} );\n\t\t}\n\t} );\n\n\treturn JSON.parse( stylesBase );\n}\n\nexport function getMappedValues( features, palette ) {\n\tconst typography = features?.typography;\n\tconst colors = [\n\t\t...( palette?.theme || [] ),\n\t\t...( palette?.custom || [] ),\n\t\t...( palette?.default || [] ),\n\t];\n\n\tconst fontSizes = {\n\t\t...typography?.fontSizes?.theme,\n\t\t...typography?.fontSizes?.custom,\n\t};\n\tconst mappedValues = {\n\t\tcolor: {\n\t\t\tvalues: colors,\n\t\t\tslug: 'color',\n\t\t},\n\t\t'font-size': {\n\t\t\tvalues: fontSizes,\n\t\t\tslug: 'size',\n\t\t},\n\t};\n\treturn mappedValues;\n}\n\n/**\n * Returns the normalized fontSizes to include the sizePx value for each of the different sizes.\n *\n * @param {Object} fontSizes found in global styles.\n * @return {Object} normalized sizes.\n */\nfunction normalizeFontSizes( fontSizes ) {\n\t// Adds normalized PX values for each of the different keys.\n\tif ( ! fontSizes ) {\n\t\treturn fontSizes;\n\t}\n\tconst normalizedFontSizes = {};\n\tconst dimensions = Dimensions.get( 'window' );\n\n\t[ 'default', 'theme', 'custom' ].forEach( ( key ) => {\n\t\tif ( fontSizes[ key ] ) {\n\t\t\tnormalizedFontSizes[ key ] = fontSizes[ key ]?.map(\n\t\t\t\t( fontSizeObject ) => {\n\t\t\t\t\tfontSizeObject.sizePx = getPxFromCssUnit(\n\t\t\t\t\t\tfontSizeObject.size,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: dimensions.width,\n\t\t\t\t\t\t\theight: dimensions.height,\n\t\t\t\t\t\t\tfontSize: DEFAULT_FONT_SIZE,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t\treturn fontSizeObject;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t} );\n\n\treturn normalizedFontSizes;\n}\n\nexport function useMobileGlobalStylesColors( type = 'colors' ) {\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst availableThemeColors = colorGradientSettings?.[ type ]?.reduce(\n\t\t( colors, origin ) => colors.concat( origin?.[ type ] ),\n\t\t[]\n\t);\n\t// Default editor colors/gradients if it's not a block-based theme.\n\tconst defaultPaletteSetting =\n\t\ttype === 'colors' ? 'color.palette' : 'color.gradients';\n\tconst [ defaultPaletteValue ] = useSettings( defaultPaletteSetting );\n\t// In edge cases, the default palette might be undefined. To avoid\n\t// exceptions across the editor in that case, we explicitly return\n\t// the default editor colors.\n\tconst defaultPalette = defaultPaletteValue ?? SETTINGS_DEFAULTS.colors;\n\n\treturn availableThemeColors.length >= 1\n\t\t? availableThemeColors\n\t\t: defaultPalette;\n}\n\nexport function getColorsAndGradients(\n\tdefaultEditorColors = [],\n\tdefaultEditorGradients = [],\n\trawFeatures\n) {\n\tconst features = rawFeatures ? JSON.parse( rawFeatures ) : {};\n\n\treturn {\n\t\t__experimentalGlobalStylesBaseStyles: null,\n\t\t__experimentalFeatures: {\n\t\t\tcolor: {\n\t\t\t\t...( ! features?.color\n\t\t\t\t\t? {\n\t\t\t\t\t\t\ttext: true,\n\t\t\t\t\t\t\tbackground: true,\n\t\t\t\t\t\t\tpalette: {\n\t\t\t\t\t\t\t\tdefault: defaultEditorColors,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgradients: {\n\t\t\t\t\t\t\t\tdefault: defaultEditorGradients,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t }\n\t\t\t\t\t: features?.color ),\n\t\t\t\tdefaultPalette: defaultEditorColors?.length > 0,\n\t\t\t\tdefaultGradients: defaultEditorGradients?.length > 0,\n\t\t\t},\n\t\t},\n\t};\n}\n\nexport function getGlobalStyles( rawStyles, rawFeatures ) {\n\tconst features = rawFeatures ? JSON.parse( rawFeatures ) : {};\n\tconst mappedValues = getMappedValues( features, features?.color?.palette );\n\tconst colors = parseStylesVariables(\n\t\tJSON.stringify( features?.color ),\n\t\tmappedValues\n\t);\n\tconst gradients = parseStylesVariables(\n\t\tJSON.stringify( features?.color?.gradients ),\n\t\tmappedValues\n\t);\n\tconst customValues = parseStylesVariables(\n\t\tJSON.stringify( features?.custom ),\n\t\tmappedValues\n\t);\n\tconst globalStyles = parseStylesVariables(\n\t\trawStyles,\n\t\tmappedValues,\n\t\tcustomValues\n\t);\n\n\tconst fontSizes = normalizeFontSizes( features?.typography?.fontSizes );\n\n\treturn {\n\t\t__experimentalFeatures: {\n\t\t\tcolor: {\n\t\t\t\tpalette: colors?.palette,\n\t\t\t\tgradients,\n\t\t\t\ttext: features?.color?.text ?? true,\n\t\t\t\tbackground: features?.color?.background ?? true,\n\t\t\t\tdefaultPalette: features?.color?.defaultPalette ?? true,\n\t\t\t\tdefaultGradients: features?.color?.defaultGradients ?? true,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontSizes,\n\t\t\t\tcustomLineHeight: features?.custom?.[ 'line-height' ],\n\t\t\t},\n\t\t\tspacing: features?.spacing,\n\t\t},\n\t\t__experimentalGlobalStylesBaseStyles: globalStyles,\n\t};\n}\n\n/**\n * Determine and apply appropriate color scheme based on global styles or device's light/dark mode.\n *\n * The function first attempts to retrieve the editor's background color from global styles.\n * If the detected background color is light, light styles are applied, and dark styles otherwise.\n * If no custom background color is defined, styles are applied using the device's dark/light setting.\n *\n * @param {Object} baseStyle - An object representing the base (light theme) styles for the editor.\n * @param {Object} darkStyle - An object representing the additional styles to apply when the editor is in dark mode.\n *\n * @return {Object} - The combined style object that should be applied to the editor.\n */\nexport const useEditorColorScheme = ( baseStyle, darkStyle ) => {\n\tconst globalStyles = useGlobalStyles();\n\n\tconst deviceColorScheme = usePreferredColorSchemeStyle(\n\t\tbaseStyle,\n\t\tdarkStyle\n\t);\n\n\tconst editorColors = globalStyles?.baseColors?.color;\n\tconst editorBackgroundColor = editorColors?.background;\n\n\tconst isBackgroundColorDefined =\n\t\ttypeof editorBackgroundColor !== 'undefined' &&\n\t\teditorBackgroundColor !== 'undefined';\n\n\tif ( isBackgroundColorDefined ) {\n\t\tconst isEditorBackgroundDark = colord( editorBackgroundColor ).isDark();\n\t\treturn isEditorBackgroundDark\n\t\t\t? { ...baseStyle, ...darkStyle }\n\t\t\t: baseStyle;\n\t}\n\n\treturn deviceColorScheme;\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_changeCase","require","_reactNative","_colord","_blockEditor","_compose","_getPxFromCssUnit","_interopRequireDefault","_index","BLOCK_STYLE_ATTRIBUTES","exports","BLOCK_STYLE_ATTRIBUTES_MAPPING","textColor","text","background","link","placeholder","PADDING","UNKNOWN_VALUE","DEFAULT_FONT_SIZE","getBlockPaddings","mergedStyle","wrapperPropsStyle","blockStyleAttributes","blockColors","blockPaddings","padding","backgroundColor","undefined","getBlockColors","defaultColors","blockName","baseGlobalStyles","blockStyles","customBlockStyles","style","color","blockGlobalStyles","blocks","Object","entries","forEach","key","value","styleKey","_customBlockStyles$ke","styles","elements","linkColor","isCustomColor","startsWith","mappedColor","values","find","slug","getBlockTypography","fontSizes","typographyStyles","typography","parsedFontSizes","fontSize","lineHeight","parseInt","mappedFontSize","size","getValueFromObjectPath","object","path","fieldName","parseStylesVariables","mappedValues","customValues","stylesBase","variables","variable","regex","RegExp","varRegex","fontSizeRegex","replace","_$1","$2","split","mappedPresetValue","_mappedPresetValue$va","matchedValue","customValuesData","JSON","parse","colorKey","length","reduce","prev","curr","slice","camelCase","width","height","Dimensions","get","parsedFontSize","getPxFromCssUnit","getMappedValues","features","palette","colors","theme","custom","default","normalizeFontSizes","dimensions","normalizedFontSizes","keysToProcess","push","map","fontSizeObject","sizePx","useMobileGlobalStylesColors","type","colorGradientSettings","useMultipleOriginColorsAndGradients","availableThemeColors","origin","concat","defaultPaletteSetting","defaultPaletteValue","useSettings","defaultPalette","SETTINGS_DEFAULTS","getColorsAndGradients","defaultEditorColors","defaultEditorGradients","rawFeatures","__experimentalGlobalStylesBaseStyles","__experimentalFeatures","gradients","defaultGradients","getGlobalStyles","rawStyles","_features$color$text","_features$color$backg","_features$color$defau","_features$color$defau2","stringify","globalStyles","customLineHeight","spacing","useEditorColorScheme","baseStyle","darkStyle","useGlobalStyles","deviceColorScheme","usePreferredColorSchemeStyle","editorColors","baseColors","editorBackgroundColor","isBackgroundColorDefined","isEditorBackgroundDark","colord","isDark"],"sources":["@wordpress/components/src/mobile/global-styles-context/utils.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { camelCase } from 'change-case';\nimport { Dimensions } from 'react-native';\nimport { colord } from 'colord';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseSettings,\n\tuseMultipleOriginColorsAndGradients,\n\tSETTINGS_DEFAULTS,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { default as getPxFromCssUnit } from '../utils/get-px-from-css-unit';\nimport { useGlobalStyles } from './index.native';\n\nexport const BLOCK_STYLE_ATTRIBUTES = [\n\t'textColor',\n\t'backgroundColor',\n\t'style',\n\t'color',\n\t'fontSize',\n];\n\n// Mapping style properties name to native.\nconst BLOCK_STYLE_ATTRIBUTES_MAPPING = {\n\ttextColor: 'color',\n\ttext: 'color',\n\tbackground: 'backgroundColor',\n\tlink: 'linkColor',\n\tplaceholder: 'placeholderColor',\n};\n\nconst PADDING = 12; // $solid-border-space\nconst UNKNOWN_VALUE = 'undefined';\nconst DEFAULT_FONT_SIZE = 16;\n\nexport function getBlockPaddings(\n\tmergedStyle,\n\twrapperPropsStyle,\n\tblockStyleAttributes,\n\tblockColors\n) {\n\tconst blockPaddings = {};\n\n\tif (\n\t\t! mergedStyle.padding &&\n\t\t( wrapperPropsStyle?.backgroundColor ||\n\t\t\tblockStyleAttributes?.backgroundColor ||\n\t\t\tblockColors?.backgroundColor )\n\t) {\n\t\tblockPaddings.padding = PADDING;\n\t\treturn blockPaddings;\n\t}\n\n\t// Prevent adding extra paddings to inner blocks without background colors.\n\tif (\n\t\tmergedStyle?.padding &&\n\t\t! wrapperPropsStyle?.backgroundColor &&\n\t\t! blockStyleAttributes?.backgroundColor &&\n\t\t! blockColors?.backgroundColor\n\t) {\n\t\tblockPaddings.padding = undefined;\n\t}\n\n\treturn blockPaddings;\n}\n\nexport function getBlockColors(\n\tblockStyleAttributes,\n\tdefaultColors,\n\tblockName,\n\tbaseGlobalStyles\n) {\n\tconst blockStyles = {};\n\tconst customBlockStyles = blockStyleAttributes?.style?.color || {};\n\tconst blockGlobalStyles = baseGlobalStyles?.blocks?.[ blockName ];\n\n\t// Global styles colors.\n\tif ( blockGlobalStyles?.color ) {\n\t\tObject.entries( blockGlobalStyles.color ).forEach(\n\t\t\t( [ key, value ] ) => {\n\t\t\t\tconst styleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING[ key ];\n\n\t\t\t\tif ( styleKey && value !== UNKNOWN_VALUE ) {\n\t\t\t\t\tconst color = customBlockStyles[ key ] ?? value;\n\t\t\t\t\tblockStyles[ styleKey ] = color;\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t} else if ( baseGlobalStyles?.styles?.color?.text ) {\n\t\tblockStyles[ BLOCK_STYLE_ATTRIBUTES_MAPPING.text ] =\n\t\t\tbaseGlobalStyles?.styles?.color?.text;\n\t}\n\n\t// Global styles elements.\n\tif ( blockGlobalStyles?.elements ) {\n\t\tconst linkColor = blockGlobalStyles.elements?.link?.color?.text;\n\t\tconst styleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING.link;\n\n\t\tif ( styleKey && linkColor && linkColor !== UNKNOWN_VALUE ) {\n\t\t\tblockStyles[ styleKey ] = linkColor;\n\t\t}\n\t}\n\n\t// Custom colors.\n\tObject.entries( blockStyleAttributes ).forEach( ( [ key, value ] ) => {\n\t\tconst isCustomColor = value?.startsWith?.( '#' );\n\t\tlet styleKey = key;\n\n\t\tif ( BLOCK_STYLE_ATTRIBUTES_MAPPING[ styleKey ] ) {\n\t\t\tstyleKey = BLOCK_STYLE_ATTRIBUTES_MAPPING[ styleKey ];\n\t\t}\n\n\t\tif ( ! isCustomColor ) {\n\t\t\tconst mappedColor = Object.values( defaultColors ?? {} ).find(\n\t\t\t\t( { slug } ) => slug === value\n\t\t\t);\n\n\t\t\tif ( mappedColor ) {\n\t\t\t\tblockStyles[ styleKey ] = mappedColor.color;\n\t\t\t}\n\t\t} else {\n\t\t\tblockStyles[ styleKey ] = value;\n\t\t}\n\t} );\n\n\t// Color placeholder.\n\tif ( blockStyles?.color ) {\n\t\tblockStyles[ BLOCK_STYLE_ATTRIBUTES_MAPPING.placeholder ] =\n\t\t\tblockStyles.color;\n\t}\n\n\treturn blockStyles;\n}\n\nexport function getBlockTypography(\n\tblockStyleAttributes,\n\tfontSizes,\n\tblockName,\n\tbaseGlobalStyles\n) {\n\tconst typographyStyles = {};\n\tconst customBlockStyles = blockStyleAttributes?.style?.typography || {};\n\tconst blockGlobalStyles = baseGlobalStyles?.blocks?.[ blockName ];\n\tconst parsedFontSizes = Object.values( fontSizes ?? {} );\n\n\t// Global styles.\n\tif ( blockGlobalStyles?.typography ) {\n\t\tconst fontSize = blockGlobalStyles?.typography?.fontSize;\n\t\tconst lineHeight = blockGlobalStyles?.typography?.lineHeight;\n\n\t\tif ( fontSize ) {\n\t\t\tif ( parseInt( fontSize, 10 ) ) {\n\t\t\t\ttypographyStyles.fontSize = fontSize;\n\t\t\t} else {\n\t\t\t\tconst mappedFontSize = parsedFontSizes.find(\n\t\t\t\t\t( { slug } ) => slug === fontSize\n\t\t\t\t);\n\n\t\t\t\tif ( mappedFontSize ) {\n\t\t\t\t\ttypographyStyles.fontSize = mappedFontSize?.size;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif ( lineHeight ) {\n\t\t\ttypographyStyles.lineHeight = lineHeight;\n\t\t}\n\t}\n\n\tif ( blockStyleAttributes?.fontSize && baseGlobalStyles ) {\n\t\tconst mappedFontSize = parsedFontSizes.find(\n\t\t\t( { slug } ) => slug === blockStyleAttributes?.fontSize\n\t\t);\n\n\t\tif ( mappedFontSize ) {\n\t\t\ttypographyStyles.fontSize = mappedFontSize?.size;\n\t\t}\n\t}\n\n\t// Custom styles.\n\tif ( customBlockStyles?.fontSize ) {\n\t\ttypographyStyles.fontSize = customBlockStyles?.fontSize;\n\t}\n\n\tif ( customBlockStyles?.lineHeight ) {\n\t\ttypographyStyles.lineHeight = customBlockStyles?.lineHeight;\n\t}\n\n\treturn typographyStyles;\n}\n\n/**\n * Return a value from a certain path of the object.\n * Path is specified as an array of properties, like: [ 'parent', 'child' ].\n *\n * @param {Object} object Input object.\n * @param {Array} path Path to the object property.\n * @return {*} Value of the object property at the specified path.\n */\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nexport function parseStylesVariables( styles, mappedValues, customValues ) {\n\tlet stylesBase = styles;\n\tconst variables = [ 'preset', 'custom', 'var', 'fontSize' ];\n\n\tif ( ! stylesBase ) {\n\t\treturn styles;\n\t}\n\n\tvariables.forEach( ( variable ) => {\n\t\t// Examples\n\t\t// var(--wp--preset--color--gray)\n\t\t// var(--wp--custom--body--typography--font-family)\n\t\t// var:preset|color|custom-color-2\n\t\tconst regex = new RegExp( `var\\\\(--wp--${ variable }--(.*?)\\\\)`, 'g' );\n\t\tconst varRegex = /\\\"var:preset\\|color\\|(.*?)\\\"/gm;\n\t\tconst fontSizeRegex = /\"fontSize\":\"(.*?)\"/gm;\n\n\t\tif ( variable === 'preset' ) {\n\t\t\tstylesBase = stylesBase.replace( regex, ( _$1, $2 ) => {\n\t\t\t\tconst path = $2.split( '--' );\n\t\t\t\tconst mappedPresetValue = mappedValues[ path[ 0 ] ];\n\t\t\t\tif ( mappedPresetValue && mappedPresetValue.slug ) {\n\t\t\t\t\tconst matchedValue = Object.values(\n\t\t\t\t\t\tmappedPresetValue.values ?? {}\n\t\t\t\t\t).find( ( { slug } ) => slug === path[ 1 ] );\n\t\t\t\t\treturn matchedValue?.[ mappedPresetValue.slug ];\n\t\t\t\t}\n\t\t\t\treturn UNKNOWN_VALUE;\n\t\t\t} );\n\t\t}\n\t\tif ( variable === 'custom' ) {\n\t\t\tconst customValuesData = customValues ?? JSON.parse( stylesBase );\n\t\t\tstylesBase = stylesBase.replace( regex, ( _$1, $2 ) => {\n\t\t\t\tconst path = $2.split( '--' );\n\n\t\t\t\t// Supports cases for variables like var(--wp--custom--color--background)\n\t\t\t\tif ( path[ 0 ] === 'color' ) {\n\t\t\t\t\tconst colorKey = path[ path.length - 1 ];\n\t\t\t\t\tif ( mappedValues?.color ) {\n\t\t\t\t\t\tconst matchedValue = mappedValues.color?.values?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === colorKey\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( matchedValue ) {\n\t\t\t\t\t\t\treturn `${ matchedValue?.color }`;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tpath.reduce(\n\t\t\t\t\t\t( prev, curr ) => prev && prev[ curr ],\n\t\t\t\t\t\tcustomValuesData\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn getValueFromObjectPath( customValuesData, path );\n\t\t\t\t}\n\n\t\t\t\t// Check for camelcase properties.\n\t\t\t\treturn getValueFromObjectPath( customValuesData, [\n\t\t\t\t\t...path.slice( 0, path.length - 1 ),\n\t\t\t\t\tcamelCase( path[ path.length - 1 ] ),\n\t\t\t\t] );\n\t\t\t} );\n\t\t}\n\n\t\tif ( variable === 'var' ) {\n\t\t\tstylesBase = stylesBase.replace( varRegex, ( _$1, $2 ) => {\n\t\t\t\tif ( mappedValues?.color ) {\n\t\t\t\t\tconst matchedValue = mappedValues.color?.values?.find(\n\t\t\t\t\t\t( { slug } ) => slug === $2\n\t\t\t\t\t);\n\t\t\t\t\treturn `\"${ matchedValue?.color }\"`;\n\t\t\t\t}\n\t\t\t\treturn UNKNOWN_VALUE;\n\t\t\t} );\n\t\t}\n\n\t\tif ( variable === 'fontSize' ) {\n\t\t\tconst { width, height } = Dimensions.get( 'window' );\n\n\t\t\tstylesBase = stylesBase.replace( fontSizeRegex, ( _$1, $2 ) => {\n\t\t\t\tconst parsedFontSize =\n\t\t\t\t\tgetPxFromCssUnit( $2, {\n\t\t\t\t\t\twidth,\n\t\t\t\t\t\theight,\n\t\t\t\t\t\tfontSize: DEFAULT_FONT_SIZE,\n\t\t\t\t\t} ) || `${ DEFAULT_FONT_SIZE }px`;\n\n\t\t\t\treturn `\"fontSize\":\"${ parsedFontSize }\"`;\n\t\t\t} );\n\t\t}\n\t} );\n\n\treturn JSON.parse( stylesBase );\n}\n\nexport function getMappedValues( features, palette ) {\n\tconst typography = features?.typography;\n\tconst colors = [\n\t\t...( palette?.theme || [] ),\n\t\t...( palette?.custom || [] ),\n\t\t...( palette?.default || [] ),\n\t];\n\n\tconst fontSizes = {\n\t\t...typography?.fontSizes?.theme,\n\t\t...typography?.fontSizes?.custom,\n\t};\n\tconst mappedValues = {\n\t\tcolor: {\n\t\t\tvalues: colors,\n\t\t\tslug: 'color',\n\t\t},\n\t\t'font-size': {\n\t\t\tvalues: fontSizes,\n\t\t\tslug: 'size',\n\t\t},\n\t};\n\treturn mappedValues;\n}\n\n/**\n * Returns the normalized fontSizes to include the sizePx value for each of the different sizes.\n *\n * @param {Object} fontSizes found in global styles.\n * @return {Object} normalized sizes.\n */\nfunction normalizeFontSizes( fontSizes ) {\n\tif ( ! fontSizes ) {\n\t\treturn fontSizes;\n\t}\n\n\tconst dimensions = Dimensions.get( 'window' );\n\tconst normalizedFontSizes = {};\n\tconst keysToProcess = [];\n\n\t// Check if 'theme' or 'custom' keys exist and add them to keysToProcess array\n\tif ( fontSizes?.theme ) {\n\t\tkeysToProcess.push( 'theme' );\n\t}\n\tif ( fontSizes?.custom ) {\n\t\tkeysToProcess.push( 'custom' );\n\t}\n\n\t// If neither 'theme' nor 'custom' exist, add 'default' if it exists\n\tif ( keysToProcess.length === 0 && fontSizes?.default ) {\n\t\tkeysToProcess.push( 'default' );\n\t}\n\n\tkeysToProcess.forEach( ( key ) => {\n\t\tnormalizedFontSizes[ key ] = fontSizes[ key ].map(\n\t\t\t( fontSizeObject ) => {\n\t\t\t\tfontSizeObject.sizePx = getPxFromCssUnit( fontSizeObject.size, {\n\t\t\t\t\twidth: dimensions.width,\n\t\t\t\t\theight: dimensions.height,\n\t\t\t\t\tfontSize: DEFAULT_FONT_SIZE,\n\t\t\t\t} );\n\t\t\t\treturn fontSizeObject;\n\t\t\t}\n\t\t);\n\t} );\n\n\treturn normalizedFontSizes;\n}\n\nexport function useMobileGlobalStylesColors( type = 'colors' ) {\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst availableThemeColors = colorGradientSettings?.[ type ]?.reduce(\n\t\t( colors, origin ) => colors.concat( origin?.[ type ] ),\n\t\t[]\n\t);\n\t// Default editor colors/gradients if it's not a block-based theme.\n\tconst defaultPaletteSetting =\n\t\ttype === 'colors' ? 'color.palette' : 'color.gradients';\n\tconst [ defaultPaletteValue ] = useSettings( defaultPaletteSetting );\n\t// In edge cases, the default palette might be undefined. To avoid\n\t// exceptions across the editor in that case, we explicitly return\n\t// the default editor colors.\n\tconst defaultPalette = defaultPaletteValue ?? SETTINGS_DEFAULTS.colors;\n\n\treturn availableThemeColors.length >= 1\n\t\t? availableThemeColors\n\t\t: defaultPalette;\n}\n\nexport function getColorsAndGradients(\n\tdefaultEditorColors = [],\n\tdefaultEditorGradients = [],\n\trawFeatures\n) {\n\tconst features = rawFeatures ? JSON.parse( rawFeatures ) : {};\n\n\treturn {\n\t\t__experimentalGlobalStylesBaseStyles: null,\n\t\t__experimentalFeatures: {\n\t\t\tcolor: {\n\t\t\t\t...( ! features?.color\n\t\t\t\t\t? {\n\t\t\t\t\t\t\ttext: true,\n\t\t\t\t\t\t\tbackground: true,\n\t\t\t\t\t\t\tpalette: {\n\t\t\t\t\t\t\t\tdefault: defaultEditorColors,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgradients: {\n\t\t\t\t\t\t\t\tdefault: defaultEditorGradients,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t }\n\t\t\t\t\t: features?.color ),\n\t\t\t\tdefaultPalette: defaultEditorColors?.length > 0,\n\t\t\t\tdefaultGradients: defaultEditorGradients?.length > 0,\n\t\t\t},\n\t\t},\n\t};\n}\n\nexport function getGlobalStyles( rawStyles, rawFeatures ) {\n\tconst features = rawFeatures ? JSON.parse( rawFeatures ) : {};\n\tconst mappedValues = getMappedValues( features, features?.color?.palette );\n\tconst colors = parseStylesVariables(\n\t\tJSON.stringify( features?.color ),\n\t\tmappedValues\n\t);\n\tconst gradients = parseStylesVariables(\n\t\tJSON.stringify( features?.color?.gradients ),\n\t\tmappedValues\n\t);\n\tconst customValues = parseStylesVariables(\n\t\tJSON.stringify( features?.custom ),\n\t\tmappedValues\n\t);\n\tconst globalStyles = parseStylesVariables(\n\t\trawStyles,\n\t\tmappedValues,\n\t\tcustomValues\n\t);\n\n\tconst fontSizes = normalizeFontSizes( features?.typography?.fontSizes );\n\n\treturn {\n\t\t__experimentalFeatures: {\n\t\t\tcolor: {\n\t\t\t\tpalette: colors?.palette,\n\t\t\t\tgradients,\n\t\t\t\ttext: features?.color?.text ?? true,\n\t\t\t\tbackground: features?.color?.background ?? true,\n\t\t\t\tdefaultPalette: features?.color?.defaultPalette ?? true,\n\t\t\t\tdefaultGradients: features?.color?.defaultGradients ?? true,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontSizes,\n\t\t\t\tcustomLineHeight: features?.custom?.[ 'line-height' ],\n\t\t\t},\n\t\t\tspacing: features?.spacing,\n\t\t},\n\t\t__experimentalGlobalStylesBaseStyles: globalStyles,\n\t};\n}\n\n/**\n * Determine and apply appropriate color scheme based on global styles or device's light/dark mode.\n *\n * The function first attempts to retrieve the editor's background color from global styles.\n * If the detected background color is light, light styles are applied, and dark styles otherwise.\n * If no custom background color is defined, styles are applied using the device's dark/light setting.\n *\n * @param {Object} baseStyle - An object representing the base (light theme) styles for the editor.\n * @param {Object} darkStyle - An object representing the additional styles to apply when the editor is in dark mode.\n *\n * @return {Object} - The combined style object that should be applied to the editor.\n */\nexport const useEditorColorScheme = ( baseStyle, darkStyle ) => {\n\tconst globalStyles = useGlobalStyles();\n\n\tconst deviceColorScheme = usePreferredColorSchemeStyle(\n\t\tbaseStyle,\n\t\tdarkStyle\n\t);\n\n\tconst editorColors = globalStyles?.baseColors?.color;\n\tconst editorBackgroundColor = editorColors?.background;\n\n\tconst isBackgroundColorDefined =\n\t\ttypeof editorBackgroundColor !== 'undefined' &&\n\t\teditorBackgroundColor !== 'undefined';\n\n\tif ( isBackgroundColorDefined ) {\n\t\tconst isEditorBackgroundDark = colord( editorBackgroundColor ).isDark();\n\t\treturn isEditorBackgroundDark\n\t\t\t? { ...baseStyle, ...darkStyle }\n\t\t\t: baseStyle;\n\t}\n\n\treturn deviceColorScheme;\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.IMAGE_DEFAULT_FOCAL_POINT = void 0;
|
|
7
|
+
const IMAGE_DEFAULT_FOCAL_POINT = {
|
|
8
|
+
x: 0.5,
|
|
9
|
+
y: 0.5
|
|
10
|
+
};
|
|
11
|
+
exports.IMAGE_DEFAULT_FOCAL_POINT = IMAGE_DEFAULT_FOCAL_POINT;
|
|
12
|
+
//# sourceMappingURL=constants.js.map
|