@wordpress/block-editor 13.1.0 → 13.3.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 +21 -17
- package/README.md +1 -2
- package/build/components/block-breadcrumb/index.js +12 -1
- package/build/components/block-breadcrumb/index.js.map +1 -1
- package/build/components/block-lock/modal.js +67 -67
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-lock/toolbar.js +0 -1
- package/build/components/block-lock/toolbar.js.map +1 -1
- package/build/components/block-mover/button.js +1 -1
- package/build/components/block-mover/button.js.map +1 -1
- package/build/components/block-mover/index.js +12 -6
- package/build/components/block-mover/index.js.map +1 -1
- package/build/components/block-pattern-setup/setup-toolbar.js +2 -2
- package/build/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build/components/block-patterns-paging/index.js +5 -7
- package/build/components/block-patterns-paging/index.js.map +1 -1
- package/build/components/block-quick-navigation/index.js +20 -17
- package/build/components/block-quick-navigation/index.js.map +1 -1
- package/build/components/block-rename/modal.js +4 -12
- package/build/components/block-rename/modal.js.map +1 -1
- package/build/components/block-toolbar/shuffle.js +4 -1
- package/build/components/block-toolbar/shuffle.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +7 -58
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/block-toolbar-breadcrumb.js +9 -2
- package/build/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
- package/build/components/block-tools/index.js +14 -1
- package/build/components/block-tools/index.js.map +1 -1
- package/build/components/block-tools/use-show-block-tools.js +4 -2
- package/build/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build/components/block-tools/zoom-out-mode-inserters.js +5 -4
- package/build/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build/components/block-tools/zoom-out-popover.js +57 -0
- package/build/components/block-tools/zoom-out-popover.js.map +1 -0
- package/build/components/block-tools/zoom-out-toolbar.js +138 -0
- package/build/components/block-tools/zoom-out-toolbar.js.map +1 -0
- package/build/components/button-block-appender/index.js +3 -1
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/child-layout-control/index.js +193 -127
- package/build/components/child-layout-control/index.js.map +1 -1
- package/build/components/date-format-picker/index.js +10 -1
- package/build/components/date-format-picker/index.js.map +1 -1
- package/build/components/dimensions-tool/index.js +6 -4
- package/build/components/dimensions-tool/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +26 -61
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/global-styles/background-panel.js +178 -116
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/border-panel.js +2 -1
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/color-panel.js +2 -1
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +2 -1
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +2 -1
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/hooks.js +8 -0
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/image-settings-panel.js +2 -1
- package/build/components/global-styles/image-settings-panel.js.map +1 -1
- package/build/components/global-styles/typography-panel.js +50 -12
- package/build/components/global-styles/typography-panel.js.map +1 -1
- package/build/components/global-styles/typography-utils.js +50 -0
- package/build/components/global-styles/typography-utils.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +25 -9
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/global-styles/utils.js +17 -7
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/grid/grid-item-movers.js +94 -0
- package/build/components/grid/grid-item-movers.js.map +1 -0
- package/build/components/{grid-visualizer → grid}/grid-item-resizer.js +18 -56
- package/build/components/grid/grid-item-resizer.js.map +1 -0
- package/build/components/grid/grid-visualizer.js +305 -0
- package/build/components/grid/grid-visualizer.js.map +1 -0
- package/build/components/{grid-visualizer → grid}/index.js +14 -0
- package/build/components/grid/index.js.map +1 -0
- package/build/components/grid/use-get-number-of-blocks-before-cell.js +40 -0
- package/build/components/grid/use-get-number-of-blocks-before-cell.js.map +1 -0
- package/build/components/grid/use-grid-layout-sync.js +169 -0
- package/build/components/grid/use-grid-layout-sync.js.map +1 -0
- package/build/components/grid/utils.js +145 -0
- package/build/components/grid/utils.js.map +1 -0
- package/build/components/image-editor/aspect-ratio-dropdown.js +0 -1
- package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build/components/inner-blocks/index.js +1 -1
- package/build/components/inner-blocks/index.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -19
- package/build/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
- package/build/components/inserter/menu.js +26 -4
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/quick-inserter.js +2 -1
- package/build/components/inserter/quick-inserter.js.map +1 -1
- package/build/components/inspector-controls/block-support-tools-panel.js +2 -1
- package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build/components/link-control/link-preview.js +1 -1
- package/build/components/link-control/link-preview.js.map +1 -1
- package/build/components/media-placeholder/index.js +19 -23
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/navigable-toolbar/index.js +3 -1
- package/build/components/navigable-toolbar/index.js.map +1 -1
- package/build/components/rich-text/event-listeners/input-rules.js +1 -0
- package/build/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build/components/rich-text/index.native.js +10 -4
- package/build/components/rich-text/index.native.js.map +1 -1
- package/build/components/rich-text/native/index.native.js +14 -0
- package/build/components/rich-text/native/index.native.js.map +1 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -1
- package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build/components/tabbed-sidebar/index.js +66 -0
- package/build/components/tabbed-sidebar/index.js.map +1 -0
- package/build/components/url-popover/index.js +3 -0
- package/build/components/url-popover/index.js.map +1 -1
- package/build/hooks/background.js +26 -4
- package/build/hooks/background.js.map +1 -1
- package/build/hooks/block-hooks.js +11 -17
- package/build/hooks/block-hooks.js.map +1 -1
- package/build/hooks/block-style-variation.js +195 -11
- package/build/hooks/block-style-variation.js.map +1 -1
- package/build/hooks/duotone.js +16 -11
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/grid-visualizer.js +65 -0
- package/build/hooks/grid-visualizer.js.map +1 -0
- package/build/hooks/index.js +15 -2
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/layout-child.js +65 -40
- package/build/hooks/layout-child.js.map +1 -1
- package/build/hooks/position.js +2 -9
- package/build/hooks/position.js.map +1 -1
- package/build/hooks/use-bindings-attributes.js +16 -6
- package/build/hooks/use-bindings-attributes.js.map +1 -1
- package/build/hooks/utils.js +5 -2
- package/build/hooks/utils.js.map +1 -1
- package/build/layouts/constrained.js +44 -2
- package/build/layouts/constrained.js.map +1 -1
- package/build/layouts/grid.js +92 -76
- package/build/layouts/grid.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/private-apis.js +6 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/actions.js +17 -1
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +0 -2
- package/build/store/defaults.js.map +1 -1
- package/build/store/defaults.native.js +0 -3
- package/build/store/defaults.native.js.map +1 -1
- package/build/store/private-keys.js +2 -1
- package/build/store/private-keys.js.map +1 -1
- package/build/utils/format-font-style.js +45 -0
- package/build/utils/format-font-style.js.map +1 -0
- package/build/utils/format-font-weight.js +68 -0
- package/build/utils/format-font-weight.js.map +1 -0
- package/build/utils/get-editor-region.js +34 -0
- package/build/utils/get-editor-region.js.map +1 -0
- package/build/utils/get-font-styles-and-weights.js +167 -0
- package/build/utils/get-font-styles-and-weights.js.map +1 -0
- package/build/utils/pasting.js +5 -13
- package/build/utils/pasting.js.map +1 -1
- package/build-module/components/block-breadcrumb/index.js +12 -1
- package/build-module/components/block-breadcrumb/index.js.map +1 -1
- package/build-module/components/block-lock/modal.js +67 -67
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-lock/toolbar.js +0 -1
- package/build-module/components/block-lock/toolbar.js.map +1 -1
- package/build-module/components/block-mover/button.js +1 -1
- package/build-module/components/block-mover/button.js.map +1 -1
- package/build-module/components/block-mover/index.js +12 -6
- package/build-module/components/block-mover/index.js.map +1 -1
- package/build-module/components/block-pattern-setup/setup-toolbar.js +2 -2
- package/build-module/components/block-pattern-setup/setup-toolbar.js.map +1 -1
- package/build-module/components/block-patterns-paging/index.js +5 -7
- package/build-module/components/block-patterns-paging/index.js.map +1 -1
- package/build-module/components/block-quick-navigation/index.js +20 -17
- package/build-module/components/block-quick-navigation/index.js.map +1 -1
- package/build-module/components/block-rename/modal.js +5 -13
- package/build-module/components/block-rename/modal.js.map +1 -1
- package/build-module/components/block-toolbar/shuffle.js +4 -1
- package/build-module/components/block-toolbar/shuffle.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +10 -61
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/block-toolbar-breadcrumb.js +9 -2
- package/build-module/components/block-tools/block-toolbar-breadcrumb.js.map +1 -1
- package/build-module/components/block-tools/index.js +14 -1
- package/build-module/components/block-tools/index.js.map +1 -1
- package/build-module/components/block-tools/use-show-block-tools.js +4 -2
- package/build-module/components/block-tools/use-show-block-tools.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-mode-inserters.js +5 -4
- package/build-module/components/block-tools/zoom-out-mode-inserters.js.map +1 -1
- package/build-module/components/block-tools/zoom-out-popover.js +48 -0
- package/build-module/components/block-tools/zoom-out-popover.js.map +1 -0
- package/build-module/components/block-tools/zoom-out-toolbar.js +131 -0
- package/build-module/components/block-tools/zoom-out-toolbar.js.map +1 -0
- package/build-module/components/button-block-appender/index.js +3 -1
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/child-layout-control/index.js +194 -128
- package/build-module/components/child-layout-control/index.js.map +1 -1
- package/build-module/components/date-format-picker/index.js +11 -3
- package/build-module/components/date-format-picker/index.js.map +1 -1
- package/build-module/components/dimensions-tool/index.js +6 -4
- package/build-module/components/dimensions-tool/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +28 -63
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +181 -119
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +3 -2
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +3 -2
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +3 -2
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +3 -2
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +8 -0
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/image-settings-panel.js +3 -2
- package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
- package/build-module/components/global-styles/typography-panel.js +52 -14
- package/build-module/components/global-styles/typography-panel.js.map +1 -1
- package/build-module/components/global-styles/typography-utils.js +48 -0
- package/build-module/components/global-styles/typography-utils.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +25 -9
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/global-styles/utils.js +15 -6
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/grid/grid-item-movers.js +87 -0
- package/build-module/components/grid/grid-item-movers.js.map +1 -0
- package/build-module/components/{grid-visualizer → grid}/grid-item-resizer.js +13 -51
- package/build-module/components/grid/grid-item-resizer.js.map +1 -0
- package/build-module/components/grid/grid-visualizer.js +297 -0
- package/build-module/components/grid/grid-visualizer.js.map +1 -0
- package/build-module/components/grid/index.js +5 -0
- package/build-module/components/grid/index.js.map +1 -0
- package/build-module/components/grid/use-get-number-of-blocks-before-cell.js +33 -0
- package/build-module/components/grid/use-get-number-of-blocks-before-cell.js.map +1 -0
- package/build-module/components/grid/use-grid-layout-sync.js +162 -0
- package/build-module/components/grid/use-grid-layout-sync.js.map +1 -0
- package/build-module/components/grid/utils.js +131 -0
- package/build-module/components/grid/utils.js.map +1 -0
- package/build-module/components/image-editor/aspect-ratio-dropdown.js +0 -1
- package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
- package/build-module/components/inner-blocks/index.js +1 -1
- package/build-module/components/inner-blocks/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -19
- package/build-module/components/inserter/block-patterns-tab/pattern-category-preview-panel.js.map +1 -1
- package/build-module/components/inserter/menu.js +26 -4
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/quick-inserter.js +2 -1
- package/build-module/components/inserter/quick-inserter.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-tools-panel.js +3 -2
- package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build-module/components/link-control/link-preview.js +1 -1
- package/build-module/components/link-control/link-preview.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +19 -23
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/navigable-toolbar/index.js +3 -1
- package/build-module/components/navigable-toolbar/index.js.map +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js +1 -1
- package/build-module/components/rich-text/event-listeners/input-rules.js.map +1 -1
- package/build-module/components/rich-text/index.native.js +11 -5
- package/build-module/components/rich-text/index.native.js.map +1 -1
- package/build-module/components/rich-text/native/index.native.js +14 -0
- package/build-module/components/rich-text/native/index.native.js.map +1 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +5 -1
- package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
- package/build-module/components/tabbed-sidebar/index.js +60 -0
- package/build-module/components/tabbed-sidebar/index.js.map +1 -0
- package/build-module/components/url-popover/index.js +3 -0
- package/build-module/components/url-popover/index.js.map +1 -1
- package/build-module/hooks/background.js +26 -4
- package/build-module/hooks/background.js.map +1 -1
- package/build-module/hooks/block-hooks.js +11 -17
- package/build-module/hooks/block-hooks.js.map +1 -1
- package/build-module/hooks/block-style-variation.js +193 -11
- package/build-module/hooks/block-style-variation.js.map +1 -1
- package/build-module/hooks/duotone.js +16 -11
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/grid-visualizer.js +64 -0
- package/build-module/hooks/grid-visualizer.js.map +1 -0
- package/build-module/hooks/index.js +3 -0
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/layout-child.js +63 -38
- package/build-module/hooks/layout-child.js.map +1 -1
- package/build-module/hooks/position.js +2 -9
- package/build-module/hooks/position.js.map +1 -1
- package/build-module/hooks/use-bindings-attributes.js +16 -6
- package/build-module/hooks/use-bindings-attributes.js.map +1 -1
- package/build-module/hooks/utils.js +5 -2
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/layouts/constrained.js +44 -2
- package/build-module/layouts/constrained.js.map +1 -1
- package/build-module/layouts/grid.js +92 -76
- package/build-module/layouts/grid.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/private-apis.js +8 -3
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/actions.js +17 -1
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +0 -2
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/store/defaults.native.js +0 -3
- package/build-module/store/defaults.native.js.map +1 -1
- package/build-module/store/private-keys.js +1 -0
- package/build-module/store/private-keys.js.map +1 -1
- package/build-module/utils/format-font-style.js +39 -0
- package/build-module/utils/format-font-style.js.map +1 -0
- package/build-module/utils/format-font-weight.js +62 -0
- package/build-module/utils/format-font-weight.js.map +1 -0
- package/build-module/utils/get-editor-region.js +28 -0
- package/build-module/utils/get-editor-region.js.map +1 -0
- package/build-module/utils/get-font-styles-and-weights.js +160 -0
- package/build-module/utils/get-font-styles-and-weights.js.map +1 -0
- package/build-module/utils/pasting.js +5 -13
- package/build-module/utils/pasting.js.map +1 -1
- package/build-style/content-rtl.css +1 -0
- package/build-style/content.css +1 -0
- package/build-style/style-rtl.css +238 -106
- package/build-style/style.css +238 -106
- package/package.json +32 -32
- package/src/components/block-breadcrumb/index.js +16 -1
- package/src/components/block-lock/modal.js +95 -82
- package/src/components/block-lock/style.scss +11 -1
- package/src/components/block-lock/toolbar.js +0 -1
- package/src/components/block-mover/button.js +1 -1
- package/src/components/block-mover/index.js +37 -24
- package/src/components/block-pattern-setup/setup-toolbar.js +2 -2
- package/src/components/block-patterns-paging/index.js +8 -11
- package/src/components/block-patterns-paging/style.scss +18 -0
- package/src/components/block-quick-navigation/index.js +21 -28
- package/src/components/block-rename/modal.js +2 -8
- package/src/components/block-switcher/test/index.js +6 -6
- package/src/components/block-toolbar/shuffle.js +4 -1
- package/src/components/block-toolbar/style.scss +1 -11
- package/src/components/block-tools/block-selection-button.js +11 -83
- package/src/components/block-tools/block-toolbar-breadcrumb.js +9 -4
- package/src/components/block-tools/index.js +21 -1
- package/src/components/block-tools/style.scss +15 -0
- package/src/components/block-tools/use-show-block-tools.js +14 -6
- package/src/components/block-tools/zoom-out-mode-inserters.js +5 -4
- package/src/components/block-tools/zoom-out-popover.js +49 -0
- package/src/components/block-tools/zoom-out-toolbar.js +140 -0
- package/src/components/button-block-appender/index.js +2 -1
- package/src/components/child-layout-control/index.js +243 -160
- package/src/components/date-format-picker/index.js +10 -1
- package/src/components/date-format-picker/style.scss +0 -9
- package/src/components/dimensions-tool/index.js +97 -89
- package/src/components/font-appearance-control/index.js +29 -83
- package/src/components/font-appearance-control/style.scss +3 -5
- package/src/components/global-styles/background-panel.js +249 -170
- package/src/components/global-styles/border-panel.js +3 -2
- package/src/components/global-styles/color-panel.js +3 -2
- package/src/components/global-styles/dimensions-panel.js +3 -2
- package/src/components/global-styles/filters-panel.js +3 -2
- package/src/components/global-styles/hooks.js +9 -0
- package/src/components/global-styles/image-settings-panel.js +3 -2
- package/src/components/global-styles/style.scss +105 -20
- package/src/components/global-styles/test/typography-utils.js +269 -0
- package/src/components/global-styles/test/use-global-styles-output.js +38 -3
- package/src/components/global-styles/typography-panel.js +49 -12
- package/src/components/global-styles/typography-utils.js +63 -0
- package/src/components/global-styles/use-global-styles-output.js +25 -9
- package/src/components/global-styles/utils.js +17 -6
- package/src/components/grid/grid-item-movers.js +112 -0
- package/src/components/{grid-visualizer → grid}/grid-item-resizer.js +15 -52
- package/src/components/grid/grid-visualizer.js +384 -0
- package/src/components/grid/index.js +4 -0
- package/src/components/grid/style.scss +98 -0
- package/src/components/grid/use-get-number-of-blocks-before-cell.js +30 -0
- package/src/components/grid/use-grid-layout-sync.js +170 -0
- package/src/components/grid/utils.js +178 -0
- package/src/components/iframe/content.scss +1 -0
- package/src/components/image-editor/aspect-ratio-dropdown.js +0 -1
- package/src/components/inner-blocks/index.js +4 -1
- package/src/components/inserter/block-patterns-tab/pattern-category-preview-panel.js +1 -16
- package/src/components/inserter/menu.js +47 -13
- package/src/components/inserter/quick-inserter.js +6 -1
- package/src/components/inserter/style.scss +1 -49
- package/src/components/inspector-controls/block-support-tools-panel.js +3 -3
- package/src/components/link-control/link-preview.js +1 -1
- package/src/components/media-placeholder/index.js +22 -32
- package/src/components/navigable-toolbar/index.js +3 -1
- package/src/components/rich-text/event-listeners/input-rules.js +1 -1
- package/src/components/rich-text/index.native.js +10 -8
- package/src/components/rich-text/native/index.native.js +17 -0
- package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +6 -1
- package/src/components/tabbed-sidebar/README.md +76 -0
- package/src/components/tabbed-sidebar/index.js +70 -0
- package/src/components/tabbed-sidebar/style.scss +53 -0
- package/src/components/url-popover/index.js +3 -0
- package/src/hooks/background.js +25 -10
- package/src/hooks/block-hooks.js +9 -16
- package/src/hooks/block-style-variation.js +226 -9
- package/src/hooks/duotone.js +16 -12
- package/src/hooks/grid-visualizer.js +64 -0
- package/src/hooks/index.js +3 -0
- package/src/hooks/layout-child.js +75 -39
- package/src/hooks/position.js +3 -10
- package/src/hooks/test/get-variation-styles-with-ref-values.js +91 -0
- package/src/hooks/use-bindings-attributes.js +18 -4
- package/src/hooks/utils.js +5 -1
- package/src/layouts/constrained.js +43 -2
- package/src/layouts/grid.js +175 -88
- package/src/lock-unlock.js +1 -1
- package/src/private-apis.js +12 -1
- package/src/store/actions.js +21 -1
- package/src/store/defaults.js +0 -2
- package/src/store/defaults.native.js +0 -3
- package/src/store/private-keys.js +1 -0
- package/src/style.scss +2 -2
- package/src/utils/format-font-style.js +40 -0
- package/src/utils/format-font-weight.js +63 -0
- package/src/utils/get-editor-region.js +31 -0
- package/src/utils/get-font-styles-and-weights.js +191 -0
- package/src/utils/pasting.js +5 -12
- package/src/utils/test/format-font-style.js +34 -0
- package/src/utils/test/format-font-weight.js +66 -0
- package/src/utils/test/get-font-styles-and-weights.js +513 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/grid-visualizer/grid-item-resizer.js.map +0 -1
- package/build/components/grid-visualizer/grid-visualizer.js +0 -92
- package/build/components/grid-visualizer/grid-visualizer.js.map +0 -1
- package/build/components/grid-visualizer/index.js.map +0 -1
- package/build/components/grid-visualizer/utils.js +0 -10
- package/build/components/grid-visualizer/utils.js.map +0 -1
- package/build-module/components/grid-visualizer/grid-item-resizer.js.map +0 -1
- package/build-module/components/grid-visualizer/grid-visualizer.js +0 -84
- package/build-module/components/grid-visualizer/grid-visualizer.js.map +0 -1
- package/build-module/components/grid-visualizer/index.js +0 -3
- package/build-module/components/grid-visualizer/index.js.map +0 -1
- package/build-module/components/grid-visualizer/utils.js +0 -4
- package/build-module/components/grid-visualizer/utils.js.map +0 -1
- package/src/components/grid-visualizer/grid-visualizer.js +0 -101
- package/src/components/grid-visualizer/index.js +0 -2
- package/src/components/grid-visualizer/style.scss +0 -34
- package/src/components/grid-visualizer/utils.js +0 -5
- package/src/hooks/position.scss +0 -18
- /package/src/components/font-sizes/{README.MD → README.md} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_data","_blocks","_compose","_richText","_url","_autocomplete","_blockEdit","_removeBrowserShortcuts","_filePasteHandler","_formatToolbarContainer","_store","_utils","_embedHandlerPicker","_content","_native","_withDeprecations","_jsxRuntime","_shortcut","_toolbarButton","_inputEvent","classes","RichTextWrapper","children","tagName","start","reversed","value","originalValue","onChange","originalOnChange","isSelected","originalIsSelected","inlineToolbar","wrapperClassName","autocompleters","onReplace","placeholder","allowedFormats","withoutInteractiveFormatting","onRemove","onMerge","onSplit","__unstableOnSplitAtEnd","onSplitAtEnd","__unstableOnSplitMiddle","onSplitMiddle","__unstableOnSplitAtDoubleLineEnd","onSplitAtDoubleLineEnd","identifier","preserveWhiteSpace","__unstablePastePlainText","pastePlainText","__unstableEmbedURLOnPaste","__unstableDisableFormats","disableFormats","disableLineBreaks","unstableOnFocus","__unstableAllowPrefixTransformations","__unstableUseSplitSelection","__unstableMobileNoFocusOnMount","deleteEnter","placeholderTextColor","textAlign","selectionColor","tagsToEliminate","disableEditingMenu","fontSize","fontFamily","fontWeight","fontStyle","minWidth","maxWidth","onBlur","disableSuggestions","disableAutocorrection","containerWidth","onEnter","onCustomEnter","props","providedRef","instanceId","useInstanceId","fallbackRef","useRef","clientId","blockIsSelected","useBlockEditContext","embedHandlerPickerRef","selector","select","getSelectionStart","getSelectionEnd","getSettings","didAutomaticChange","getBlock","isMultiSelecting","hasMultiSelection","getSelectedBlockClientId","blockEditorStore","selectionStart","selectionEnd","__experimentalUndo","undo","undefined","attributeKey","extraProps","Platform","OS","block","shouldBlurOnUnmount","isUnmodifiedDefaultBlock","offset","disabled","useSelect","__unstableMarkLastChangeAsPersistent","enterFormattedText","exitFormattedText","selectionChange","__unstableMarkAutomaticChange","__unstableSplitSelection","clearSelectedBlock","useDispatch","adjustedAllowedFormats","getAllowedFormats","hasFormats","length","adjustedValue","adjustedOnChange","Array","isArray","childrenSource","toHTML","newValue","fromDOM","__unstableCreateElement","document","childNodes","onSelectionChange","useCallback","selectionChangeStart","selectionChangeEnd","clearCurrentSelectionOnUnmount","onDelete","isReverse","isEmpty","splitValue","record","pastedBlocks","blocks","before","after","split","hasPastedBlocks","lastPastedBlockIndex","isAfterOriginal","push","toHTMLString","indexToSelect","initialPosition","shiftKey","canSplit","transforms","getBlockTransforms","filter","type","transformation","findTransform","item","regExp","test","text","transform","content","splitStart","end","splitEnd","canSplitAtEnd","insert","slice","remove","onPaste","html","plainText","isInternal","files","activeFormats","pastedValue","create","addActiveFormats","pasteHandler","HTML","filePasteHandler","mode","window","console","log","isPastedURL","isURL","trim","presentEmbedHandlerPicker","current","presentPicker","createEmbed","createLink","createLinkInParagraph","valueToInsert","canPasteEmbed","name","source","inputRule","valueToFormat","startPosition","characterBefore","trimmedTextBefore","prefixTransforms","prefix","mergedRef","useMergeRefs","jsx","default","nativeEditorRef","__unstableIsSelected","__unstableInputRule","__unstableOnEnterFormattedText","__unstableOnExitFormattedText","__unstableOnCreateUndoLevel","__unstableDidAutomaticChange","__unstableUndo","id","style","nestedIsSelected","onFocus","editableProps","editableTagName","TagName","jsxs","Fragment","inline","anchorRef","RemoveBrowserShortcuts","completers","contentRef","listBoxId","activeId","onKeyDown","className","clsx","event","ref","PrivateRichText","exports","withDeprecations","forwardRef","Content","defaultProps","format","Raw","_default"],"sources":["@wordpress/block-editor/src/components/rich-text/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Platform, useRef, useCallback, forwardRef } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tpasteHandler,\n\tchildren as childrenSource,\n\tgetBlockTransforms,\n\tfindTransform,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\nimport {\n\t__unstableCreateElement,\n\tisEmpty,\n\tinsert,\n\tremove,\n\tcreate,\n\tsplit,\n\ttoHTMLString,\n\tslice,\n} from '@wordpress/rich-text';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Autocomplete from '../autocomplete';\nimport { useBlockEditContext } from '../block-edit';\nimport { RemoveBrowserShortcuts } from './remove-browser-shortcuts';\nimport { filePasteHandler } from './file-paste-handler';\nimport FormatToolbarContainer from './format-toolbar-container';\nimport { store as blockEditorStore } from '../../store';\nimport {\n\taddActiveFormats,\n\tgetAllowedFormats,\n\tcreateLinkInParagraph,\n} from './utils';\nimport EmbedHandlerPicker from './embed-handler-picker';\nimport { Content } from './content';\nimport RichText from './native';\nimport { withDeprecations } from './with-deprecations';\n\nconst classes = 'block-editor-rich-text__editable';\n\nexport function RichTextWrapper(\n\t{\n\t\tchildren,\n\t\ttagName,\n\t\tstart,\n\t\treversed,\n\t\tvalue: originalValue,\n\t\tonChange: originalOnChange,\n\t\tisSelected: originalIsSelected,\n\t\tinlineToolbar,\n\t\twrapperClassName,\n\t\tautocompleters,\n\t\tonReplace,\n\t\tplaceholder,\n\t\tallowedFormats,\n\t\twithoutInteractiveFormatting,\n\t\tonRemove,\n\t\tonMerge,\n\t\tonSplit,\n\t\t__unstableOnSplitAtEnd: onSplitAtEnd,\n\t\t__unstableOnSplitMiddle: onSplitMiddle,\n\t\t__unstableOnSplitAtDoubleLineEnd: onSplitAtDoubleLineEnd,\n\t\tidentifier,\n\t\tpreserveWhiteSpace,\n\t\t__unstablePastePlainText: pastePlainText,\n\t\t__unstableEmbedURLOnPaste,\n\t\t__unstableDisableFormats: disableFormats,\n\t\tdisableLineBreaks,\n\t\tunstableOnFocus,\n\t\t__unstableAllowPrefixTransformations,\n\t\t// Native props.\n\t\t__unstableUseSplitSelection,\n\t\t__unstableMobileNoFocusOnMount,\n\t\tdeleteEnter,\n\t\tplaceholderTextColor,\n\t\ttextAlign,\n\t\tselectionColor,\n\t\ttagsToEliminate,\n\t\tdisableEditingMenu,\n\t\tfontSize,\n\t\tfontFamily,\n\t\tfontWeight,\n\t\tfontStyle,\n\t\tminWidth,\n\t\tmaxWidth,\n\t\tonBlur,\n\t\tdisableSuggestions,\n\t\tdisableAutocorrection,\n\t\tcontainerWidth,\n\t\tonEnter: onCustomEnter,\n\t\t...props\n\t},\n\tprovidedRef\n) {\n\tconst instanceId = useInstanceId( RichTextWrapper );\n\n\tidentifier = identifier || instanceId;\n\n\tconst fallbackRef = useRef();\n\tconst { clientId, isSelected: blockIsSelected } = useBlockEditContext();\n\tconst embedHandlerPickerRef = useRef();\n\tconst selector = ( select ) => {\n\t\tconst {\n\t\t\tgetSelectionStart,\n\t\t\tgetSelectionEnd,\n\t\t\tgetSettings,\n\t\t\tdidAutomaticChange,\n\t\t\tgetBlock,\n\t\t\tisMultiSelecting,\n\t\t\thasMultiSelection,\n\t\t\tgetSelectedBlockClientId,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\tconst { __experimentalUndo: undo } = getSettings();\n\n\t\tlet isSelected;\n\n\t\tif ( originalIsSelected === undefined ) {\n\t\t\tisSelected =\n\t\t\t\tselectionStart.clientId === clientId &&\n\t\t\t\tselectionStart.attributeKey === identifier;\n\t\t} else if ( originalIsSelected ) {\n\t\t\tisSelected = selectionStart.clientId === clientId;\n\t\t}\n\n\t\tlet extraProps = {};\n\t\tif ( Platform.OS === 'native' ) {\n\t\t\t// If the block of this RichText is unmodified then it's a candidate for replacing when adding a new block.\n\t\t\t// In order to fix https://github.com/wordpress-mobile/gutenberg-mobile/issues/1126, let's blur on unmount in that case.\n\t\t\t// This apparently assumes functionality the BlockHlder actually.\n\t\t\tconst block = clientId && getBlock( clientId );\n\t\t\tconst shouldBlurOnUnmount =\n\t\t\t\tblock && isSelected && isUnmodifiedDefaultBlock( block );\n\t\t\textraProps = {\n\t\t\t\tshouldBlurOnUnmount,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tselectionStart: isSelected ? selectionStart.offset : undefined,\n\t\t\tselectionEnd: isSelected ? selectionEnd.offset : undefined,\n\t\t\tisSelected,\n\t\t\tdidAutomaticChange: didAutomaticChange(),\n\t\t\tdisabled: isMultiSelecting() || hasMultiSelection(),\n\t\t\tundo,\n\t\t\tgetSelectedBlockClientId,\n\t\t\t...extraProps,\n\t\t};\n\t};\n\t// This selector must run on every render so the right selection state is\n\t// retrieved from the store on merge.\n\t// To do: fix this somehow.\n\tconst {\n\t\tselectionStart,\n\t\tselectionEnd,\n\t\tisSelected,\n\t\tgetSelectedBlockClientId,\n\t\tdidAutomaticChange,\n\t\tdisabled,\n\t\tundo,\n\t\tshouldBlurOnUnmount,\n\t} = useSelect( selector );\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tenterFormattedText,\n\t\texitFormattedText,\n\t\tselectionChange,\n\t\t__unstableMarkAutomaticChange,\n\t\t__unstableSplitSelection,\n\t\tclearSelectedBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst adjustedAllowedFormats = getAllowedFormats( {\n\t\tallowedFormats,\n\t\tdisableFormats,\n\t} );\n\tconst hasFormats =\n\t\t! adjustedAllowedFormats || adjustedAllowedFormats.length > 0;\n\tlet adjustedValue = originalValue;\n\tlet adjustedOnChange = originalOnChange;\n\n\t// Handle deprecated format.\n\tif ( Array.isArray( originalValue ) ) {\n\t\tadjustedValue = childrenSource.toHTML( originalValue );\n\t\tadjustedOnChange = ( newValue ) =>\n\t\t\toriginalOnChange(\n\t\t\t\tchildrenSource.fromDOM(\n\t\t\t\t\t__unstableCreateElement( document, newValue ).childNodes\n\t\t\t\t)\n\t\t\t);\n\t}\n\n\tconst onSelectionChange = useCallback(\n\t\t( selectionChangeStart, selectionChangeEnd ) => {\n\t\t\tselectionChange(\n\t\t\t\tclientId,\n\t\t\t\tidentifier,\n\t\t\t\tselectionChangeStart,\n\t\t\t\tselectionChangeEnd\n\t\t\t);\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ clientId, identifier ]\n\t);\n\n\tconst clearCurrentSelectionOnUnmount = useCallback( () => {\n\t\tif ( getSelectedBlockClientId() === clientId ) {\n\t\t\tclearSelectedBlock();\n\t\t}\n\t}, [ clearSelectedBlock, clientId, getSelectedBlockClientId ] );\n\n\tconst onDelete = useCallback(\n\t\t( { value, isReverse } ) => {\n\t\t\tif ( onMerge ) {\n\t\t\t\tonMerge( ! isReverse );\n\t\t\t}\n\n\t\t\t// Only handle remove on Backspace. This serves dual-purpose of being\n\t\t\t// an intentional user interaction distinguishing between Backspace and\n\t\t\t// Delete to remove the empty field, but also to avoid merge & remove\n\t\t\t// causing destruction of two fields (merge, then removed merged).\n\t\t\telse if ( onRemove && isEmpty( value ) && isReverse ) {\n\t\t\t\tonRemove( ! isReverse );\n\t\t\t}\n\t\t},\n\t\t[ onMerge, onRemove ]\n\t);\n\n\t/**\n\t * Signals to the RichText owner that the block can be replaced with two\n\t * blocks as a result of splitting the block by pressing enter, or with\n\t * blocks as a result of splitting the block by pasting block content in the\n\t * instance.\n\t *\n\t * @param {Object} record The rich text value to split.\n\t * @param {Array} pastedBlocks The pasted blocks to insert, if any.\n\t */\n\tconst splitValue = useCallback(\n\t\t( record, pastedBlocks = [] ) => {\n\t\t\tif ( ! onReplace || ! onSplit ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst blocks = [];\n\t\t\tconst [ before, after ] = split( record );\n\t\t\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\t\t\tlet lastPastedBlockIndex = -1;\n\n\t\t\t// Consider the after value to be the original it is not empty and\n\t\t\t// the before value *is* empty.\n\t\t\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t\t\t// Create a block with the content before the caret if there's no pasted\n\t\t\t// blocks, or if there are pasted blocks and the value is not empty.\n\t\t\t// We do not want a leading empty block on paste, but we do if split\n\t\t\t// with e.g. the enter key.\n\t\t\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( { value: before } ),\n\t\t\t\t\t\t! isAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tlastPastedBlockIndex += 1;\n\t\t\t}\n\n\t\t\tif ( hasPastedBlocks ) {\n\t\t\t\tblocks.push( ...pastedBlocks );\n\t\t\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t\t\t} else if ( onSplitMiddle ) {\n\t\t\t\tblocks.push( onSplitMiddle() );\n\t\t\t}\n\n\t\t\t// If there's pasted blocks, append a block with non empty content\n\t\t\t// after the caret. Otherwise, do append an empty block if there\n\t\t\t// is no `onSplitMiddle` prop, but if there is and the content is\n\t\t\t// empty, the middle block is enough to set focus in.\n\t\t\tif (\n\t\t\t\thasPastedBlocks\n\t\t\t\t\t? ! isEmpty( after )\n\t\t\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t\t\t) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit( toHTMLString( { value: after } ), isAfterOriginal )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// If there are pasted blocks, set the selection to the last one.\n\t\t\t// Otherwise, set the selection to the second block.\n\t\t\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t\t\t// If there are pasted blocks, move the caret to the end of the selected block\n\t\t\t// Otherwise, retain the default value.\n\t\t\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\t\t\tonReplace( blocks, indexToSelect, initialPosition );\n\t\t},\n\t\t[ onReplace, onSplit, onSplitMiddle ]\n\t);\n\n\tconst onEnter = useCallback(\n\t\t( { value, onChange, shiftKey } ) => {\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( { content: value.text } ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( onCustomEnter ) {\n\t\t\t\tonCustomEnter();\n\t\t\t}\n\n\t\t\tconst { text, start: splitStart, end: splitEnd } = value;\n\t\t\tconst canSplitAtEnd =\n\t\t\t\tonSplitAtEnd &&\n\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\tsplitEnd === text.length;\n\n\t\t\tif ( shiftKey ) {\n\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t}\n\t\t\t} else if ( canSplit ) {\n\t\t\t\tsplitValue( value );\n\t\t\t} else if ( __unstableUseSplitSelection ) {\n\t\t\t\t__unstableSplitSelection();\n\t\t\t} else if ( canSplitAtEnd ) {\n\t\t\t\tonSplitAtEnd();\n\t\t\t} else if (\n\t\t\t\t// For some blocks it's desirable to split at the end of the\n\t\t\t\t// block when there are two line breaks at the end of the\n\t\t\t\t// block, so triple Enter exits the block.\n\t\t\t\tonSplitAtDoubleLineEnd &&\n\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\tsplitEnd === text.length &&\n\t\t\t\ttext.slice( -2 ) === '\\n\\n'\n\t\t\t) {\n\t\t\t\tvalue.start = value.end - 2;\n\t\t\t\tonChange( remove( value ) );\n\t\t\t\tonSplitAtDoubleLineEnd();\n\t\t\t} else if ( ! disableLineBreaks ) {\n\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\t__unstableMarkAutomaticChange,\n\t\t\tsplitValue,\n\t\t\tonSplitAtEnd,\n\t\t]\n\t);\n\n\tconst onPaste = useCallback(\n\t\t( {\n\t\t\tvalue,\n\t\t\tonChange,\n\t\t\thtml,\n\t\t\tplainText,\n\t\t\tisInternal,\n\t\t\tfiles,\n\t\t\tactiveFormats,\n\t\t} ) => {\n\t\t\t// If the data comes from a rich text instance, we can directly use it\n\t\t\t// without filtering the data. The filters are only meant for externally\n\t\t\t// pasted content and remove inline styles.\n\t\t\tif ( isInternal ) {\n\t\t\t\tconst pastedValue = create( {\n\t\t\t\t\thtml,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\t\t\t\taddActiveFormats( pastedValue, activeFormats );\n\t\t\t\tonChange( insert( value, pastedValue ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( pastePlainText ) {\n\t\t\t\tonChange( insert( value, create( { text: plainText } ) ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Only process file if no HTML is present.\n\t\t\t// Note: a pasted file may have the URL as plain text.\n\t\t\tif ( files && files.length && ! html ) {\n\t\t\t\tconst content = pasteHandler( {\n\t\t\t\t\tHTML: filePasteHandler( files ),\n\t\t\t\t\tmode: 'BLOCKS',\n\t\t\t\t\ttagName,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\n\t\t\t\t// Allows us to ask for this information when we get a report.\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\twindow.console.log( 'Received items:\\n\\n', files );\n\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tonReplace( content );\n\t\t\t\t} else {\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet mode = onReplace && onSplit ? 'AUTO' : 'INLINE';\n\n\t\t\tconst isPastedURL = isURL( plainText.trim() );\n\t\t\tconst presentEmbedHandlerPicker = () =>\n\t\t\t\tembedHandlerPickerRef.current?.presentPicker( {\n\t\t\t\t\tcreateEmbed: () =>\n\t\t\t\t\t\tonReplace( content, content.length - 1, -1 ),\n\t\t\t\t\tcreateLink: () =>\n\t\t\t\t\t\tcreateLinkInParagraph( plainText.trim(), onReplace ),\n\t\t\t\t} );\n\n\t\t\tif (\n\t\t\t\t__unstableEmbedURLOnPaste &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisPastedURL\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst content = pasteHandler( {\n\t\t\t\tHTML: html,\n\t\t\t\tplainText,\n\t\t\t\tmode,\n\t\t\t\ttagName,\n\t\t\t\tpreserveWhiteSpace,\n\t\t\t} );\n\n\t\t\tif ( typeof content === 'string' ) {\n\t\t\t\tconst valueToInsert = create( { html: content } );\n\t\t\t\taddActiveFormats( valueToInsert, activeFormats );\n\t\t\t\tonChange( insert( value, valueToInsert ) );\n\t\t\t} else if ( content.length > 0 ) {\n\t\t\t\t// When an URL is pasted in an empty paragraph then the EmbedHandlerPicker should showcase options allowing the transformation of that URL\n\t\t\t\t// into either an Embed block or a link within the target paragraph. If the paragraph is non-empty, the URL is pasted as text.\n\t\t\t\tconst canPasteEmbed =\n\t\t\t\t\tisPastedURL &&\n\t\t\t\t\tcontent.length === 1 &&\n\t\t\t\t\tcontent[ 0 ].name === 'core/embed';\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( __unstableEmbedURLOnPaste ) {\n\t\t\t\t\t\t\tpresentEmbedHandlerPicker();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonReplace( content, content.length - 1, -1, {\n\t\t\t\t\t\tsource: 'clipboard',\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\ttagName,\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\tsplitValue,\n\t\t\t__unstableEmbedURLOnPaste,\n\t\t\tpreserveWhiteSpace,\n\t\t\tpastePlainText,\n\t\t]\n\t);\n\n\tconst inputRule = useCallback(\n\t\t( value, valueToFormat ) => {\n\t\t\tif ( ! onReplace ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { start: startPosition, text } = value;\n\t\t\tconst characterBefore = text.slice(\n\t\t\t\tstartPosition - 1,\n\t\t\t\tstartPosition\n\t\t\t);\n\n\t\t\t// The character right before the caret must be a plain space.\n\t\t\tif ( characterBefore !== ' ' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst trimmedTextBefore = text.slice( 0, startPosition ).trim();\n\t\t\tconst prefixTransforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t( { type } ) => type === 'prefix'\n\t\t\t);\n\t\t\tconst transformation = findTransform(\n\t\t\t\tprefixTransforms,\n\t\t\t\t( { prefix } ) => {\n\t\t\t\t\treturn trimmedTextBefore === prefix;\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( ! transformation ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst content = valueToFormat(\n\t\t\t\tslice( value, startPosition, text.length )\n\t\t\t);\n\t\t\tconst block = transformation.transform( content );\n\n\t\t\tonReplace( [ block ] );\n\t\t\t__unstableMarkAutomaticChange();\n\t\t},\n\t\t[ onReplace, __unstableMarkAutomaticChange ]\n\t);\n\n\tconst mergedRef = useMergeRefs( [ providedRef, fallbackRef ] );\n\n\treturn (\n\t\t<RichText\n\t\t\tclientId={ clientId }\n\t\t\tidentifier={ identifier }\n\t\t\tnativeEditorRef={ mergedRef }\n\t\t\tvalue={ adjustedValue }\n\t\t\tonChange={ adjustedOnChange }\n\t\t\tselectionStart={ selectionStart }\n\t\t\tselectionEnd={ selectionEnd }\n\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\ttagName={ tagName }\n\t\t\tstart={ start }\n\t\t\treversed={ reversed }\n\t\t\tplaceholder={ placeholder }\n\t\t\tallowedFormats={ adjustedAllowedFormats }\n\t\t\twithoutInteractiveFormatting={ withoutInteractiveFormatting }\n\t\t\tonEnter={ onEnter }\n\t\t\tonDelete={ onDelete }\n\t\t\tonPaste={ onPaste }\n\t\t\t__unstableIsSelected={ isSelected }\n\t\t\t__unstableInputRule={ inputRule }\n\t\t\t__unstableOnEnterFormattedText={ enterFormattedText }\n\t\t\t__unstableOnExitFormattedText={ exitFormattedText }\n\t\t\t__unstableOnCreateUndoLevel={ __unstableMarkLastChangeAsPersistent }\n\t\t\t__unstableMarkAutomaticChange={ __unstableMarkAutomaticChange }\n\t\t\t__unstableDidAutomaticChange={ didAutomaticChange }\n\t\t\t__unstableUndo={ undo }\n\t\t\t__unstableDisableFormats={ disableFormats }\n\t\t\tpreserveWhiteSpace={ preserveWhiteSpace }\n\t\t\tdisabled={ disabled }\n\t\t\tunstableOnFocus={ unstableOnFocus }\n\t\t\t__unstableAllowPrefixTransformations={\n\t\t\t\t__unstableAllowPrefixTransformations\n\t\t\t}\n\t\t\t// Native props.\n\t\t\tblockIsSelected={\n\t\t\t\toriginalIsSelected !== undefined\n\t\t\t\t\t? originalIsSelected\n\t\t\t\t\t: blockIsSelected\n\t\t\t}\n\t\t\tshouldBlurOnUnmount={ shouldBlurOnUnmount }\n\t\t\t__unstableMobileNoFocusOnMount={ __unstableMobileNoFocusOnMount }\n\t\t\tdeleteEnter={ deleteEnter }\n\t\t\tplaceholderTextColor={ placeholderTextColor }\n\t\t\ttextAlign={ textAlign }\n\t\t\tselectionColor={ selectionColor }\n\t\t\ttagsToEliminate={ tagsToEliminate }\n\t\t\tdisableEditingMenu={ disableEditingMenu }\n\t\t\tfontSize={ fontSize }\n\t\t\tfontFamily={ fontFamily }\n\t\t\tfontWeight={ fontWeight }\n\t\t\tfontStyle={ fontStyle }\n\t\t\tminWidth={ minWidth }\n\t\t\tmaxWidth={ maxWidth }\n\t\t\tonBlur={ onBlur }\n\t\t\tdisableSuggestions={ disableSuggestions }\n\t\t\tdisableAutocorrection={ disableAutocorrection }\n\t\t\tcontainerWidth={ containerWidth }\n\t\t\tclearCurrentSelectionOnUnmount={ clearCurrentSelectionOnUnmount }\n\t\t\t// Props to be set on the editable container are destructured on the\n\t\t\t// element itself for web (see below), but passed through rich text\n\t\t\t// for native.\n\t\t\tid={ props.id }\n\t\t\tstyle={ props.style }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tisSelected: nestedIsSelected,\n\t\t\t\tvalue,\n\t\t\t\tonChange,\n\t\t\t\tonFocus,\n\t\t\t\teditableProps,\n\t\t\t\teditableTagName: TagName,\n\t\t\t} ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ children && children( { value, onChange, onFocus } ) }\n\t\t\t\t\t{ nestedIsSelected && hasFormats && (\n\t\t\t\t\t\t<FormatToolbarContainer\n\t\t\t\t\t\t\tinline={ inlineToolbar }\n\t\t\t\t\t\t\tanchorRef={ fallbackRef.current }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ nestedIsSelected && <RemoveBrowserShortcuts /> }\n\t\t\t\t\t<Autocomplete\n\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\tcompleters={ autocompleters }\n\t\t\t\t\t\trecord={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisSelected={ nestedIsSelected }\n\t\t\t\t\t\tcontentRef={ fallbackRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { listBoxId, activeId, onKeyDown } ) => (\n\t\t\t\t\t\t\t<TagName\n\t\t\t\t\t\t\t\t{ ...editableProps }\n\t\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tprops.style\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t...props.style,\n\t\t\t\t\t\t\t\t\t\t\t\t...editableProps.style,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: editableProps.style\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t\tprops.className,\n\t\t\t\t\t\t\t\t\teditableProps.className\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taria-autocomplete={\n\t\t\t\t\t\t\t\t\tlistBoxId ? 'list' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-owns={ listBoxId }\n\t\t\t\t\t\t\t\taria-activedescendant={ activeId }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tonKeyDown( event );\n\t\t\t\t\t\t\t\t\teditableProps.onKeyDown( event );\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</Autocomplete>\n\t\t\t\t\t<EmbedHandlerPicker ref={ embedHandlerPickerRef } />\n\t\t\t\t</>\n\t\t\t) }\n\t\t</RichText>\n\t);\n}\n\n// This export does not actually implement a private API, but was exported\n// under this name for interoperability with the web version of the RichText\n// component.\nexport const PrivateRichText = withDeprecations(\n\tforwardRef( RichTextWrapper )\n);\n\nPrivateRichText.Content = Content;\n\nPrivateRichText.isEmpty = ( value ) => {\n\treturn ! value || value.length === 0;\n};\n\nPrivateRichText.Content.defaultProps = {\n\tformat: 'string',\n\tvalue: '',\n};\n\nPrivateRichText.Raw = forwardRef( ( props, ref ) => (\n\t<RichText { ...props } nativeEditorRef={ ref } />\n) );\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/rich-text/README.md\n */\nexport default PrivateRichText;\nexport { RichTextShortcut } from './shortcut';\nexport { RichTextToolbarButton } from './toolbar-button';\nexport { __unstableRichTextInputEvent } from './input-event';\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_data","_blocks","_compose","_richText","_url","_autocomplete","_blockEdit","_removeBrowserShortcuts","_filePasteHandler","_formatToolbarContainer","_store","_utils","_embedHandlerPicker","_content","_native","_withDeprecations","_inputRules","_selection","_jsxRuntime","_shortcut","_toolbarButton","_inputEvent","classes","RichTextWrapper","children","tagName","start","reversed","value","originalValue","onChange","originalOnChange","isSelected","originalIsSelected","inlineToolbar","wrapperClassName","autocompleters","onReplace","placeholder","allowedFormats","withoutInteractiveFormatting","onRemove","onMerge","onSplit","__unstableOnSplitAtEnd","onSplitAtEnd","__unstableOnSplitMiddle","onSplitMiddle","__unstableOnSplitAtDoubleLineEnd","onSplitAtDoubleLineEnd","identifier","preserveWhiteSpace","__unstablePastePlainText","pastePlainText","__unstableEmbedURLOnPaste","__unstableDisableFormats","disableFormats","disableLineBreaks","unstableOnFocus","__unstableAllowPrefixTransformations","__unstableUseSplitSelection","__unstableMobileNoFocusOnMount","deleteEnter","placeholderTextColor","textAlign","selectionColor","tagsToEliminate","disableEditingMenu","fontSize","fontFamily","fontWeight","fontStyle","minWidth","maxWidth","onBlur","disableSuggestions","disableAutocorrection","containerWidth","onEnter","onCustomEnter","props","providedRef","instanceId","useInstanceId","fallbackRef","useRef","clientId","blockIsSelected","useBlockEditContext","embedHandlerPickerRef","selector","select","getSelectionStart","getSelectionEnd","getSettings","didAutomaticChange","getBlock","isMultiSelecting","hasMultiSelection","getSelectedBlockClientId","blockEditorStore","selectionStart","selectionEnd","__experimentalUndo","undo","undefined","attributeKey","extraProps","Platform","OS","block","shouldBlurOnUnmount","isUnmodifiedDefaultBlock","offset","disabled","useSelect","__unstableMarkLastChangeAsPersistent","enterFormattedText","exitFormattedText","selectionChange","__unstableMarkAutomaticChange","__unstableSplitSelection","clearSelectedBlock","useDispatch","adjustedAllowedFormats","getAllowedFormats","hasFormats","length","adjustedValue","adjustedOnChange","Array","isArray","childrenSource","toHTML","newValue","fromDOM","__unstableCreateElement","document","childNodes","onSelectionChange","useCallback","selectionChangeStart","selectionChangeEnd","clearCurrentSelectionOnUnmount","onDelete","isReverse","isEmpty","splitValue","record","pastedBlocks","blocks","before","after","split","hasPastedBlocks","lastPastedBlockIndex","isAfterOriginal","push","toHTMLString","indexToSelect","initialPosition","shiftKey","canSplit","transforms","getBlockTransforms","filter","type","transformation","findTransform","item","regExp","test","text","transform","content","splitStart","end","splitEnd","canSplitAtEnd","insert","slice","remove","onPaste","html","plainText","isInternal","files","activeFormats","pastedValue","create","addActiveFormats","pasteHandler","HTML","filePasteHandler","mode","window","console","log","isPastedURL","isURL","trim","presentEmbedHandlerPicker","current","presentPicker","createEmbed","createLink","createLinkInParagraph","valueToInsert","canPasteEmbed","name","source","inputRule","startPosition","characterBefore","trimmedTextBefore","prefixTransforms","prefix","START_OF_SELECTED_AREA","currentSelection","findSelection","mergedRef","useMergeRefs","jsx","default","nativeEditorRef","__unstableIsSelected","__unstableInputRule","__unstableOnEnterFormattedText","__unstableOnExitFormattedText","__unstableOnCreateUndoLevel","__unstableDidAutomaticChange","__unstableUndo","id","style","nestedIsSelected","onFocus","editableProps","editableTagName","TagName","jsxs","Fragment","inline","anchorRef","RemoveBrowserShortcuts","completers","contentRef","listBoxId","activeId","onKeyDown","className","clsx","event","ref","PrivateRichText","exports","withDeprecations","forwardRef","Content","defaultProps","format","Raw","_default"],"sources":["@wordpress/block-editor/src/components/rich-text/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Platform, useRef, useCallback, forwardRef } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tpasteHandler,\n\tchildren as childrenSource,\n\tgetBlockTransforms,\n\tfindTransform,\n\tisUnmodifiedDefaultBlock,\n} from '@wordpress/blocks';\nimport { useInstanceId, useMergeRefs } from '@wordpress/compose';\nimport {\n\t__unstableCreateElement,\n\tisEmpty,\n\tinsert,\n\tremove,\n\tcreate,\n\tsplit,\n\ttoHTMLString,\n} from '@wordpress/rich-text';\nimport { isURL } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Autocomplete from '../autocomplete';\nimport { useBlockEditContext } from '../block-edit';\nimport { RemoveBrowserShortcuts } from './remove-browser-shortcuts';\nimport { filePasteHandler } from './file-paste-handler';\nimport FormatToolbarContainer from './format-toolbar-container';\nimport { store as blockEditorStore } from '../../store';\nimport {\n\taddActiveFormats,\n\tgetAllowedFormats,\n\tcreateLinkInParagraph,\n} from './utils';\nimport EmbedHandlerPicker from './embed-handler-picker';\nimport { Content } from './content';\nimport RichText from './native';\nimport { withDeprecations } from './with-deprecations';\nimport { findSelection } from './event-listeners/input-rules';\nimport { START_OF_SELECTED_AREA } from '../../utils/selection';\n\nconst classes = 'block-editor-rich-text__editable';\n\nexport function RichTextWrapper(\n\t{\n\t\tchildren,\n\t\ttagName,\n\t\tstart,\n\t\treversed,\n\t\tvalue: originalValue,\n\t\tonChange: originalOnChange,\n\t\tisSelected: originalIsSelected,\n\t\tinlineToolbar,\n\t\twrapperClassName,\n\t\tautocompleters,\n\t\tonReplace,\n\t\tplaceholder,\n\t\tallowedFormats,\n\t\twithoutInteractiveFormatting,\n\t\tonRemove,\n\t\tonMerge,\n\t\tonSplit,\n\t\t__unstableOnSplitAtEnd: onSplitAtEnd,\n\t\t__unstableOnSplitMiddle: onSplitMiddle,\n\t\t__unstableOnSplitAtDoubleLineEnd: onSplitAtDoubleLineEnd,\n\t\tidentifier,\n\t\tpreserveWhiteSpace,\n\t\t__unstablePastePlainText: pastePlainText,\n\t\t__unstableEmbedURLOnPaste,\n\t\t__unstableDisableFormats: disableFormats,\n\t\tdisableLineBreaks,\n\t\tunstableOnFocus,\n\t\t__unstableAllowPrefixTransformations,\n\t\t// Native props.\n\t\t__unstableUseSplitSelection,\n\t\t__unstableMobileNoFocusOnMount,\n\t\tdeleteEnter,\n\t\tplaceholderTextColor,\n\t\ttextAlign,\n\t\tselectionColor,\n\t\ttagsToEliminate,\n\t\tdisableEditingMenu,\n\t\tfontSize,\n\t\tfontFamily,\n\t\tfontWeight,\n\t\tfontStyle,\n\t\tminWidth,\n\t\tmaxWidth,\n\t\tonBlur,\n\t\tdisableSuggestions,\n\t\tdisableAutocorrection,\n\t\tcontainerWidth,\n\t\tonEnter: onCustomEnter,\n\t\t...props\n\t},\n\tprovidedRef\n) {\n\tconst instanceId = useInstanceId( RichTextWrapper );\n\n\tidentifier = identifier || instanceId;\n\n\tconst fallbackRef = useRef();\n\tconst { clientId, isSelected: blockIsSelected } = useBlockEditContext();\n\tconst embedHandlerPickerRef = useRef();\n\tconst selector = ( select ) => {\n\t\tconst {\n\t\t\tgetSelectionStart,\n\t\t\tgetSelectionEnd,\n\t\t\tgetSettings,\n\t\t\tdidAutomaticChange,\n\t\t\tgetBlock,\n\t\t\tisMultiSelecting,\n\t\t\thasMultiSelection,\n\t\t\tgetSelectedBlockClientId,\n\t\t} = select( blockEditorStore );\n\n\t\tconst selectionStart = getSelectionStart();\n\t\tconst selectionEnd = getSelectionEnd();\n\t\tconst { __experimentalUndo: undo } = getSettings();\n\n\t\tlet isSelected;\n\n\t\tif ( originalIsSelected === undefined ) {\n\t\t\tisSelected =\n\t\t\t\tselectionStart.clientId === clientId &&\n\t\t\t\tselectionStart.attributeKey === identifier;\n\t\t} else if ( originalIsSelected ) {\n\t\t\tisSelected = selectionStart.clientId === clientId;\n\t\t}\n\n\t\tlet extraProps = {};\n\t\tif ( Platform.OS === 'native' ) {\n\t\t\t// If the block of this RichText is unmodified then it's a candidate for replacing when adding a new block.\n\t\t\t// In order to fix https://github.com/wordpress-mobile/gutenberg-mobile/issues/1126, let's blur on unmount in that case.\n\t\t\t// This apparently assumes functionality the BlockHlder actually.\n\t\t\tconst block = clientId && getBlock( clientId );\n\t\t\tconst shouldBlurOnUnmount =\n\t\t\t\tblock && isSelected && isUnmodifiedDefaultBlock( block );\n\t\t\textraProps = {\n\t\t\t\tshouldBlurOnUnmount,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tselectionStart: isSelected ? selectionStart.offset : undefined,\n\t\t\tselectionEnd: isSelected ? selectionEnd.offset : undefined,\n\t\t\tisSelected,\n\t\t\tdidAutomaticChange: didAutomaticChange(),\n\t\t\tdisabled: isMultiSelecting() || hasMultiSelection(),\n\t\t\tundo,\n\t\t\tgetSelectedBlockClientId,\n\t\t\t...extraProps,\n\t\t};\n\t};\n\t// This selector must run on every render so the right selection state is\n\t// retrieved from the store on merge.\n\t// To do: fix this somehow.\n\tconst {\n\t\tselectionStart,\n\t\tselectionEnd,\n\t\tisSelected,\n\t\tgetSelectedBlockClientId,\n\t\tdidAutomaticChange,\n\t\tdisabled,\n\t\tundo,\n\t\tshouldBlurOnUnmount,\n\t} = useSelect( selector );\n\tconst {\n\t\t__unstableMarkLastChangeAsPersistent,\n\t\tenterFormattedText,\n\t\texitFormattedText,\n\t\tselectionChange,\n\t\t__unstableMarkAutomaticChange,\n\t\t__unstableSplitSelection,\n\t\tclearSelectedBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst adjustedAllowedFormats = getAllowedFormats( {\n\t\tallowedFormats,\n\t\tdisableFormats,\n\t} );\n\tconst hasFormats =\n\t\t! adjustedAllowedFormats || adjustedAllowedFormats.length > 0;\n\tlet adjustedValue = originalValue;\n\tlet adjustedOnChange = originalOnChange;\n\n\t// Handle deprecated format.\n\tif ( Array.isArray( originalValue ) ) {\n\t\tadjustedValue = childrenSource.toHTML( originalValue );\n\t\tadjustedOnChange = ( newValue ) =>\n\t\t\toriginalOnChange(\n\t\t\t\tchildrenSource.fromDOM(\n\t\t\t\t\t__unstableCreateElement( document, newValue ).childNodes\n\t\t\t\t)\n\t\t\t);\n\t}\n\n\tconst onSelectionChange = useCallback(\n\t\t( selectionChangeStart, selectionChangeEnd ) => {\n\t\t\tselectionChange(\n\t\t\t\tclientId,\n\t\t\t\tidentifier,\n\t\t\t\tselectionChangeStart,\n\t\t\t\tselectionChangeEnd\n\t\t\t);\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[ clientId, identifier ]\n\t);\n\n\tconst clearCurrentSelectionOnUnmount = useCallback( () => {\n\t\tif ( getSelectedBlockClientId() === clientId ) {\n\t\t\tclearSelectedBlock();\n\t\t}\n\t}, [ clearSelectedBlock, clientId, getSelectedBlockClientId ] );\n\n\tconst onDelete = useCallback(\n\t\t( { value, isReverse } ) => {\n\t\t\tif ( onMerge ) {\n\t\t\t\tonMerge( ! isReverse );\n\t\t\t}\n\n\t\t\t// Only handle remove on Backspace. This serves dual-purpose of being\n\t\t\t// an intentional user interaction distinguishing between Backspace and\n\t\t\t// Delete to remove the empty field, but also to avoid merge & remove\n\t\t\t// causing destruction of two fields (merge, then removed merged).\n\t\t\telse if ( onRemove && isEmpty( value ) && isReverse ) {\n\t\t\t\tonRemove( ! isReverse );\n\t\t\t}\n\t\t},\n\t\t[ onMerge, onRemove ]\n\t);\n\n\t/**\n\t * Signals to the RichText owner that the block can be replaced with two\n\t * blocks as a result of splitting the block by pressing enter, or with\n\t * blocks as a result of splitting the block by pasting block content in the\n\t * instance.\n\t *\n\t * @param {Object} record The rich text value to split.\n\t * @param {Array} pastedBlocks The pasted blocks to insert, if any.\n\t */\n\tconst splitValue = useCallback(\n\t\t( record, pastedBlocks = [] ) => {\n\t\t\tif ( ! onReplace || ! onSplit ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst blocks = [];\n\t\t\tconst [ before, after ] = split( record );\n\t\t\tconst hasPastedBlocks = pastedBlocks.length > 0;\n\t\t\tlet lastPastedBlockIndex = -1;\n\n\t\t\t// Consider the after value to be the original it is not empty and\n\t\t\t// the before value *is* empty.\n\t\t\tconst isAfterOriginal = isEmpty( before ) && ! isEmpty( after );\n\n\t\t\t// Create a block with the content before the caret if there's no pasted\n\t\t\t// blocks, or if there are pasted blocks and the value is not empty.\n\t\t\t// We do not want a leading empty block on paste, but we do if split\n\t\t\t// with e.g. the enter key.\n\t\t\tif ( ! hasPastedBlocks || ! isEmpty( before ) ) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit(\n\t\t\t\t\t\ttoHTMLString( { value: before } ),\n\t\t\t\t\t\t! isAfterOriginal\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tlastPastedBlockIndex += 1;\n\t\t\t}\n\n\t\t\tif ( hasPastedBlocks ) {\n\t\t\t\tblocks.push( ...pastedBlocks );\n\t\t\t\tlastPastedBlockIndex += pastedBlocks.length;\n\t\t\t} else if ( onSplitMiddle ) {\n\t\t\t\tblocks.push( onSplitMiddle() );\n\t\t\t}\n\n\t\t\t// If there's pasted blocks, append a block with non empty content\n\t\t\t// after the caret. Otherwise, do append an empty block if there\n\t\t\t// is no `onSplitMiddle` prop, but if there is and the content is\n\t\t\t// empty, the middle block is enough to set focus in.\n\t\t\tif (\n\t\t\t\thasPastedBlocks\n\t\t\t\t\t? ! isEmpty( after )\n\t\t\t\t\t: ! onSplitMiddle || ! isEmpty( after )\n\t\t\t) {\n\t\t\t\tblocks.push(\n\t\t\t\t\tonSplit( toHTMLString( { value: after } ), isAfterOriginal )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// If there are pasted blocks, set the selection to the last one.\n\t\t\t// Otherwise, set the selection to the second block.\n\t\t\tconst indexToSelect = hasPastedBlocks ? lastPastedBlockIndex : 1;\n\n\t\t\t// If there are pasted blocks, move the caret to the end of the selected block\n\t\t\t// Otherwise, retain the default value.\n\t\t\tconst initialPosition = hasPastedBlocks ? -1 : 0;\n\n\t\t\tonReplace( blocks, indexToSelect, initialPosition );\n\t\t},\n\t\t[ onReplace, onSplit, onSplitMiddle ]\n\t);\n\n\tconst onEnter = useCallback(\n\t\t( { value, onChange, shiftKey } ) => {\n\t\t\tconst canSplit = onReplace && onSplit;\n\n\t\t\tif ( onReplace ) {\n\t\t\t\tconst transforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t\t( { type } ) => type === 'enter'\n\t\t\t\t);\n\t\t\t\tconst transformation = findTransform( transforms, ( item ) => {\n\t\t\t\t\treturn item.regExp.test( value.text );\n\t\t\t\t} );\n\n\t\t\t\tif ( transformation ) {\n\t\t\t\t\tonReplace( [\n\t\t\t\t\t\ttransformation.transform( { content: value.text } ),\n\t\t\t\t\t] );\n\t\t\t\t\t__unstableMarkAutomaticChange();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( onCustomEnter ) {\n\t\t\t\tonCustomEnter();\n\t\t\t}\n\n\t\t\tconst { text, start: splitStart, end: splitEnd } = value;\n\t\t\tconst canSplitAtEnd =\n\t\t\t\tonSplitAtEnd &&\n\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\tsplitEnd === text.length;\n\n\t\t\tif ( shiftKey ) {\n\t\t\t\tif ( ! disableLineBreaks ) {\n\t\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t\t}\n\t\t\t} else if ( canSplit ) {\n\t\t\t\tsplitValue( value );\n\t\t\t} else if ( __unstableUseSplitSelection ) {\n\t\t\t\t__unstableSplitSelection();\n\t\t\t} else if ( canSplitAtEnd ) {\n\t\t\t\tonSplitAtEnd();\n\t\t\t} else if (\n\t\t\t\t// For some blocks it's desirable to split at the end of the\n\t\t\t\t// block when there are two line breaks at the end of the\n\t\t\t\t// block, so triple Enter exits the block.\n\t\t\t\tonSplitAtDoubleLineEnd &&\n\t\t\t\tsplitStart === splitEnd &&\n\t\t\t\tsplitEnd === text.length &&\n\t\t\t\ttext.slice( -2 ) === '\\n\\n'\n\t\t\t) {\n\t\t\t\tvalue.start = value.end - 2;\n\t\t\t\tonChange( remove( value ) );\n\t\t\t\tonSplitAtDoubleLineEnd();\n\t\t\t} else if ( ! disableLineBreaks ) {\n\t\t\t\tonChange( insert( value, '\\n' ) );\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\t__unstableMarkAutomaticChange,\n\t\t\tsplitValue,\n\t\t\tonSplitAtEnd,\n\t\t]\n\t);\n\n\tconst onPaste = useCallback(\n\t\t( {\n\t\t\tvalue,\n\t\t\tonChange,\n\t\t\thtml,\n\t\t\tplainText,\n\t\t\tisInternal,\n\t\t\tfiles,\n\t\t\tactiveFormats,\n\t\t} ) => {\n\t\t\t// If the data comes from a rich text instance, we can directly use it\n\t\t\t// without filtering the data. The filters are only meant for externally\n\t\t\t// pasted content and remove inline styles.\n\t\t\tif ( isInternal ) {\n\t\t\t\tconst pastedValue = create( {\n\t\t\t\t\thtml,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\t\t\t\taddActiveFormats( pastedValue, activeFormats );\n\t\t\t\tonChange( insert( value, pastedValue ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( pastePlainText ) {\n\t\t\t\tonChange( insert( value, create( { text: plainText } ) ) );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Only process file if no HTML is present.\n\t\t\t// Note: a pasted file may have the URL as plain text.\n\t\t\tif ( files && files.length && ! html ) {\n\t\t\t\tconst content = pasteHandler( {\n\t\t\t\t\tHTML: filePasteHandler( files ),\n\t\t\t\t\tmode: 'BLOCKS',\n\t\t\t\t\ttagName,\n\t\t\t\t\tpreserveWhiteSpace,\n\t\t\t\t} );\n\n\t\t\t\t// Allows us to ask for this information when we get a report.\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\twindow.console.log( 'Received items:\\n\\n', files );\n\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tonReplace( content );\n\t\t\t\t} else {\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet mode = onReplace && onSplit ? 'AUTO' : 'INLINE';\n\n\t\t\tconst isPastedURL = isURL( plainText.trim() );\n\t\t\tconst presentEmbedHandlerPicker = () =>\n\t\t\t\tembedHandlerPickerRef.current?.presentPicker( {\n\t\t\t\t\tcreateEmbed: () =>\n\t\t\t\t\t\tonReplace( content, content.length - 1, -1 ),\n\t\t\t\t\tcreateLink: () =>\n\t\t\t\t\t\tcreateLinkInParagraph( plainText.trim(), onReplace ),\n\t\t\t\t} );\n\n\t\t\tif (\n\t\t\t\t__unstableEmbedURLOnPaste &&\n\t\t\t\tisEmpty( value ) &&\n\t\t\t\tisPastedURL\n\t\t\t) {\n\t\t\t\tmode = 'BLOCKS';\n\t\t\t}\n\n\t\t\tconst content = pasteHandler( {\n\t\t\t\tHTML: html,\n\t\t\t\tplainText,\n\t\t\t\tmode,\n\t\t\t\ttagName,\n\t\t\t\tpreserveWhiteSpace,\n\t\t\t} );\n\n\t\t\tif ( typeof content === 'string' ) {\n\t\t\t\tconst valueToInsert = create( { html: content } );\n\t\t\t\taddActiveFormats( valueToInsert, activeFormats );\n\t\t\t\tonChange( insert( value, valueToInsert ) );\n\t\t\t} else if ( content.length > 0 ) {\n\t\t\t\t// When an URL is pasted in an empty paragraph then the EmbedHandlerPicker should showcase options allowing the transformation of that URL\n\t\t\t\t// into either an Embed block or a link within the target paragraph. If the paragraph is non-empty, the URL is pasted as text.\n\t\t\t\tconst canPasteEmbed =\n\t\t\t\t\tisPastedURL &&\n\t\t\t\t\tcontent.length === 1 &&\n\t\t\t\t\tcontent[ 0 ].name === 'core/embed';\n\t\t\t\tif ( onReplace && isEmpty( value ) ) {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( __unstableEmbedURLOnPaste ) {\n\t\t\t\t\t\t\tpresentEmbedHandlerPicker();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tonReplace( content, content.length - 1, -1, {\n\t\t\t\t\t\tsource: 'clipboard',\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tif ( canPasteEmbed ) {\n\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\tinsert( value, create( { text: plainText } ) )\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsplitValue( value, content );\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[\n\t\t\ttagName,\n\t\t\tonReplace,\n\t\t\tonSplit,\n\t\t\tsplitValue,\n\t\t\t__unstableEmbedURLOnPaste,\n\t\t\tpreserveWhiteSpace,\n\t\t\tpastePlainText,\n\t\t]\n\t);\n\n\tconst inputRule = useCallback(\n\t\t( value ) => {\n\t\t\tif ( ! onReplace ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst { start: startPosition, text } = value;\n\t\t\tconst characterBefore = text.slice(\n\t\t\t\tstartPosition - 1,\n\t\t\t\tstartPosition\n\t\t\t);\n\n\t\t\t// The character right before the caret must be a plain space.\n\t\t\tif ( characterBefore !== ' ' ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst trimmedTextBefore = text.slice( 0, start ).trim();\n\t\t\tconst prefixTransforms = getBlockTransforms( 'from' ).filter(\n\t\t\t\t( { type } ) => type === 'prefix'\n\t\t\t);\n\t\t\tconst transformation = findTransform(\n\t\t\t\tprefixTransforms,\n\t\t\t\t( { prefix } ) => {\n\t\t\t\t\treturn trimmedTextBefore === prefix;\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tif ( ! transformation ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst content = toHTMLString( {\n\t\t\t\tvalue: insert( value, START_OF_SELECTED_AREA, 0, start ),\n\t\t\t} );\n\t\t\tconst block = transformation.transform( content );\n\t\t\tconst currentSelection = findSelection( [ block ] );\n\t\t\tonReplace( [ block ] );\n\t\t\tselectionChange( ...currentSelection );\n\t\t\t__unstableMarkAutomaticChange();\n\t\t},\n\t\t[ onReplace, start, selectionChange, __unstableMarkAutomaticChange ]\n\t);\n\n\tconst mergedRef = useMergeRefs( [ providedRef, fallbackRef ] );\n\n\treturn (\n\t\t<RichText\n\t\t\tclientId={ clientId }\n\t\t\tidentifier={ identifier }\n\t\t\tnativeEditorRef={ mergedRef }\n\t\t\tvalue={ adjustedValue }\n\t\t\tonChange={ adjustedOnChange }\n\t\t\tselectionStart={ selectionStart }\n\t\t\tselectionEnd={ selectionEnd }\n\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\ttagName={ tagName }\n\t\t\tstart={ start }\n\t\t\treversed={ reversed }\n\t\t\tplaceholder={ placeholder }\n\t\t\tallowedFormats={ adjustedAllowedFormats }\n\t\t\twithoutInteractiveFormatting={ withoutInteractiveFormatting }\n\t\t\tonEnter={ onEnter }\n\t\t\tonDelete={ onDelete }\n\t\t\tonPaste={ onPaste }\n\t\t\t__unstableIsSelected={ isSelected }\n\t\t\t__unstableInputRule={ inputRule }\n\t\t\t__unstableOnEnterFormattedText={ enterFormattedText }\n\t\t\t__unstableOnExitFormattedText={ exitFormattedText }\n\t\t\t__unstableOnCreateUndoLevel={ __unstableMarkLastChangeAsPersistent }\n\t\t\t__unstableMarkAutomaticChange={ __unstableMarkAutomaticChange }\n\t\t\t__unstableDidAutomaticChange={ didAutomaticChange }\n\t\t\t__unstableUndo={ undo }\n\t\t\t__unstableDisableFormats={ disableFormats }\n\t\t\tpreserveWhiteSpace={ preserveWhiteSpace }\n\t\t\tdisabled={ disabled }\n\t\t\tunstableOnFocus={ unstableOnFocus }\n\t\t\t__unstableAllowPrefixTransformations={\n\t\t\t\t__unstableAllowPrefixTransformations\n\t\t\t}\n\t\t\t// Native props.\n\t\t\tblockIsSelected={\n\t\t\t\toriginalIsSelected !== undefined\n\t\t\t\t\t? originalIsSelected\n\t\t\t\t\t: blockIsSelected\n\t\t\t}\n\t\t\tshouldBlurOnUnmount={ shouldBlurOnUnmount }\n\t\t\t__unstableMobileNoFocusOnMount={ __unstableMobileNoFocusOnMount }\n\t\t\tdeleteEnter={ deleteEnter }\n\t\t\tplaceholderTextColor={ placeholderTextColor }\n\t\t\ttextAlign={ textAlign }\n\t\t\tselectionColor={ selectionColor }\n\t\t\ttagsToEliminate={ tagsToEliminate }\n\t\t\tdisableEditingMenu={ disableEditingMenu }\n\t\t\tfontSize={ fontSize }\n\t\t\tfontFamily={ fontFamily }\n\t\t\tfontWeight={ fontWeight }\n\t\t\tfontStyle={ fontStyle }\n\t\t\tminWidth={ minWidth }\n\t\t\tmaxWidth={ maxWidth }\n\t\t\tonBlur={ onBlur }\n\t\t\tdisableSuggestions={ disableSuggestions }\n\t\t\tdisableAutocorrection={ disableAutocorrection }\n\t\t\tcontainerWidth={ containerWidth }\n\t\t\tclearCurrentSelectionOnUnmount={ clearCurrentSelectionOnUnmount }\n\t\t\t// Props to be set on the editable container are destructured on the\n\t\t\t// element itself for web (see below), but passed through rich text\n\t\t\t// for native.\n\t\t\tid={ props.id }\n\t\t\tstyle={ props.style }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tisSelected: nestedIsSelected,\n\t\t\t\tvalue,\n\t\t\t\tonChange,\n\t\t\t\tonFocus,\n\t\t\t\teditableProps,\n\t\t\t\teditableTagName: TagName,\n\t\t\t} ) => (\n\t\t\t\t<>\n\t\t\t\t\t{ children && children( { value, onChange, onFocus } ) }\n\t\t\t\t\t{ nestedIsSelected && hasFormats && (\n\t\t\t\t\t\t<FormatToolbarContainer\n\t\t\t\t\t\t\tinline={ inlineToolbar }\n\t\t\t\t\t\t\tanchorRef={ fallbackRef.current }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ nestedIsSelected && <RemoveBrowserShortcuts /> }\n\t\t\t\t\t<Autocomplete\n\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\tcompleters={ autocompleters }\n\t\t\t\t\t\trecord={ value }\n\t\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\t\tisSelected={ nestedIsSelected }\n\t\t\t\t\t\tcontentRef={ fallbackRef }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { listBoxId, activeId, onKeyDown } ) => (\n\t\t\t\t\t\t\t<TagName\n\t\t\t\t\t\t\t\t{ ...editableProps }\n\t\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\tprops.style\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t...props.style,\n\t\t\t\t\t\t\t\t\t\t\t\t...editableProps.style,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: editableProps.style\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t\tprops.className,\n\t\t\t\t\t\t\t\t\teditableProps.className\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taria-autocomplete={\n\t\t\t\t\t\t\t\t\tlistBoxId ? 'list' : undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-owns={ listBoxId }\n\t\t\t\t\t\t\t\taria-activedescendant={ activeId }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tonKeyDown( event );\n\t\t\t\t\t\t\t\t\teditableProps.onKeyDown( event );\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</Autocomplete>\n\t\t\t\t\t<EmbedHandlerPicker ref={ embedHandlerPickerRef } />\n\t\t\t\t</>\n\t\t\t) }\n\t\t</RichText>\n\t);\n}\n\n// This export does not actually implement a private API, but was exported\n// under this name for interoperability with the web version of the RichText\n// component.\nexport const PrivateRichText = withDeprecations(\n\tforwardRef( RichTextWrapper )\n);\n\nPrivateRichText.Content = Content;\n\nPrivateRichText.isEmpty = ( value ) => {\n\treturn ! value || value.length === 0;\n};\n\nPrivateRichText.Content.defaultProps = {\n\tformat: 'string',\n\tvalue: '',\n};\n\nPrivateRichText.Raw = forwardRef( ( props, ref ) => (\n\t<RichText { ...props } nativeEditorRef={ ref } />\n) );\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/rich-text/README.md\n */\nexport default PrivateRichText;\nexport { RichTextShortcut } from './shortcut';\nexport { RichTextToolbarButton } from './toolbar-button';\nexport { __unstableRichTextInputEvent } from './input-event';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAOA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AASA,IAAAM,IAAA,GAAAN,OAAA;AAKA,IAAAO,aAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,uBAAA,GAAAT,OAAA;AACA,IAAAU,iBAAA,GAAAV,OAAA;AACA,IAAAW,uBAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,MAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AAKA,IAAAc,mBAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,QAAA,GAAAf,OAAA;AACA,IAAAgB,OAAA,GAAAjB,sBAAA,CAAAC,OAAA;AACA,IAAAiB,iBAAA,GAAAjB,OAAA;AACA,IAAAkB,WAAA,GAAAlB,OAAA;AACA,IAAAmB,UAAA,GAAAnB,OAAA;AAA+D,IAAAoB,WAAA,GAAApB,OAAA;AA8oB/D,IAAAqB,SAAA,GAAArB,OAAA;AACA,IAAAsB,cAAA,GAAAtB,OAAA;AACA,IAAAuB,WAAA,GAAAvB,OAAA;AAhsBA;AACA;AACA;;AAGA;AACA;AACA;;AAsBA;AACA;AACA;;AAmBA,MAAMwB,OAAO,GAAG,kCAAkC;AAE3C,SAASC,eAAeA,CAC9B;EACCC,QAAQ;EACRC,OAAO;EACPC,KAAK;EACLC,QAAQ;EACRC,KAAK,EAAEC,aAAa;EACpBC,QAAQ,EAAEC,gBAAgB;EAC1BC,UAAU,EAAEC,kBAAkB;EAC9BC,aAAa;EACbC,gBAAgB;EAChBC,cAAc;EACdC,SAAS;EACTC,WAAW;EACXC,cAAc;EACdC,4BAA4B;EAC5BC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC,sBAAsB,EAAEC,YAAY;EACpCC,uBAAuB,EAAEC,aAAa;EACtCC,gCAAgC,EAAEC,sBAAsB;EACxDC,UAAU;EACVC,kBAAkB;EAClBC,wBAAwB,EAAEC,cAAc;EACxCC,yBAAyB;EACzBC,wBAAwB,EAAEC,cAAc;EACxCC,iBAAiB;EACjBC,eAAe;EACfC,oCAAoC;EACpC;EACAC,2BAA2B;EAC3BC,8BAA8B;EAC9BC,WAAW;EACXC,oBAAoB;EACpBC,SAAS;EACTC,cAAc;EACdC,eAAe;EACfC,kBAAkB;EAClBC,QAAQ;EACRC,UAAU;EACVC,UAAU;EACVC,SAAS;EACTC,QAAQ;EACRC,QAAQ;EACRC,MAAM;EACNC,kBAAkB;EAClBC,qBAAqB;EACrBC,cAAc;EACdC,OAAO,EAAEC,aAAa;EACtB,GAAGC;AACJ,CAAC,EACDC,WAAW,EACV;EACD,MAAMC,UAAU,GAAG,IAAAC,sBAAa,EAAE5D,eAAgB,CAAC;EAEnD2B,UAAU,GAAGA,UAAU,IAAIgC,UAAU;EAErC,MAAME,WAAW,GAAG,IAAAC,eAAM,EAAC,CAAC;EAC5B,MAAM;IAAEC,QAAQ;IAAEtD,UAAU,EAAEuD;EAAgB,CAAC,GAAG,IAAAC,8BAAmB,EAAC,CAAC;EACvE,MAAMC,qBAAqB,GAAG,IAAAJ,eAAM,EAAC,CAAC;EACtC,MAAMK,QAAQ,GAAKC,MAAM,IAAM;IAC9B,MAAM;MACLC,iBAAiB;MACjBC,eAAe;MACfC,WAAW;MACXC,kBAAkB;MAClBC,QAAQ;MACRC,gBAAgB;MAChBC,iBAAiB;MACjBC;IACD,CAAC,GAAGR,MAAM,CAAES,YAAiB,CAAC;IAE9B,MAAMC,cAAc,GAAGT,iBAAiB,CAAC,CAAC;IAC1C,MAAMU,YAAY,GAAGT,eAAe,CAAC,CAAC;IACtC,MAAM;MAAEU,kBAAkB,EAAEC;IAAK,CAAC,GAAGV,WAAW,CAAC,CAAC;IAElD,IAAI9D,UAAU;IAEd,IAAKC,kBAAkB,KAAKwE,SAAS,EAAG;MACvCzE,UAAU,GACTqE,cAAc,CAACf,QAAQ,KAAKA,QAAQ,IACpCe,cAAc,CAACK,YAAY,KAAKxD,UAAU;IAC5C,CAAC,MAAM,IAAKjB,kBAAkB,EAAG;MAChCD,UAAU,GAAGqE,cAAc,CAACf,QAAQ,KAAKA,QAAQ;IAClD;IAEA,IAAIqB,UAAU,GAAG,CAAC,CAAC;IACnB,IAAKC,iBAAQ,CAACC,EAAE,KAAK,QAAQ,EAAG;MAC/B;MACA;MACA;MACA,MAAMC,KAAK,GAAGxB,QAAQ,IAAIU,QAAQ,CAAEV,QAAS,CAAC;MAC9C,MAAMyB,mBAAmB,GACxBD,KAAK,IAAI9E,UAAU,IAAI,IAAAgF,gCAAwB,EAAEF,KAAM,CAAC;MACzDH,UAAU,GAAG;QACZI;MACD,CAAC;IACF;IAEA,OAAO;MACNV,cAAc,EAAErE,UAAU,GAAGqE,cAAc,CAACY,MAAM,GAAGR,SAAS;MAC9DH,YAAY,EAAEtE,UAAU,GAAGsE,YAAY,CAACW,MAAM,GAAGR,SAAS;MAC1DzE,UAAU;MACV+D,kBAAkB,EAAEA,kBAAkB,CAAC,CAAC;MACxCmB,QAAQ,EAAEjB,gBAAgB,CAAC,CAAC,IAAIC,iBAAiB,CAAC,CAAC;MACnDM,IAAI;MACJL,wBAAwB;MACxB,GAAGQ;IACJ,CAAC;EACF,CAAC;EACD;EACA;EACA;EACA,MAAM;IACLN,cAAc;IACdC,YAAY;IACZtE,UAAU;IACVmE,wBAAwB;IACxBJ,kBAAkB;IAClBmB,QAAQ;IACRV,IAAI;IACJO;EACD,CAAC,GAAG,IAAAI,eAAS,EAAEzB,QAAS,CAAC;EACzB,MAAM;IACL0B,oCAAoC;IACpCC,kBAAkB;IAClBC,iBAAiB;IACjBC,eAAe;IACfC,6BAA6B;IAC7BC,wBAAwB;IACxBC;EACD,CAAC,GAAG,IAAAC,iBAAW,EAAEvB,YAAiB,CAAC;EACnC,MAAMwB,sBAAsB,GAAG,IAAAC,wBAAiB,EAAE;IACjDtF,cAAc;IACdiB;EACD,CAAE,CAAC;EACH,MAAMsE,UAAU,GACf,CAAEF,sBAAsB,IAAIA,sBAAsB,CAACG,MAAM,GAAG,CAAC;EAC9D,IAAIC,aAAa,GAAGnG,aAAa;EACjC,IAAIoG,gBAAgB,GAAGlG,gBAAgB;;EAEvC;EACA,IAAKmG,KAAK,CAACC,OAAO,CAAEtG,aAAc,CAAC,EAAG;IACrCmG,aAAa,GAAGI,gBAAc,CAACC,MAAM,CAAExG,aAAc,CAAC;IACtDoG,gBAAgB,GAAKK,QAAQ,IAC5BvG,gBAAgB,CACfqG,gBAAc,CAACG,OAAO,CACrB,IAAAC,iCAAuB,EAAEC,QAAQ,EAAEH,QAAS,CAAC,CAACI,UAC/C,CACD,CAAC;EACH;EAEA,MAAMC,iBAAiB,GAAG,IAAAC,oBAAW,EACpC,CAAEC,oBAAoB,EAAEC,kBAAkB,KAAM;IAC/CvB,eAAe,CACdjC,QAAQ,EACRpC,UAAU,EACV2F,oBAAoB,EACpBC,kBACD,CAAC;EACF,CAAC;EACD;EACA,CAAExD,QAAQ,EAAEpC,UAAU,CACvB,CAAC;EAED,MAAM6F,8BAA8B,GAAG,IAAAH,oBAAW,EAAE,MAAM;IACzD,IAAKzC,wBAAwB,CAAC,CAAC,KAAKb,QAAQ,EAAG;MAC9CoC,kBAAkB,CAAC,CAAC;IACrB;EACD,CAAC,EAAE,CAAEA,kBAAkB,EAAEpC,QAAQ,EAAEa,wBAAwB,CAAG,CAAC;EAE/D,MAAM6C,QAAQ,GAAG,IAAAJ,oBAAW,EAC3B,CAAE;IAAEhH,KAAK;IAAEqH;EAAU,CAAC,KAAM;IAC3B,IAAKvG,OAAO,EAAG;MACdA,OAAO,CAAE,CAAEuG,SAAU,CAAC;IACvB;;IAEA;IACA;IACA;IACA;IAAA,KACK,IAAKxG,QAAQ,IAAI,IAAAyG,iBAAO,EAAEtH,KAAM,CAAC,IAAIqH,SAAS,EAAG;MACrDxG,QAAQ,CAAE,CAAEwG,SAAU,CAAC;IACxB;EACD,CAAC,EACD,CAAEvG,OAAO,EAAED,QAAQ,CACpB,CAAC;;EAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACC,MAAM0G,UAAU,GAAG,IAAAP,oBAAW,EAC7B,CAAEQ,MAAM,EAAEC,YAAY,GAAG,EAAE,KAAM;IAChC,IAAK,CAAEhH,SAAS,IAAI,CAAEM,OAAO,EAAG;MAC/B;IACD;IAEA,MAAM2G,MAAM,GAAG,EAAE;IACjB,MAAM,CAAEC,MAAM,EAAEC,KAAK,CAAE,GAAG,IAAAC,eAAK,EAAEL,MAAO,CAAC;IACzC,MAAMM,eAAe,GAAGL,YAAY,CAACtB,MAAM,GAAG,CAAC;IAC/C,IAAI4B,oBAAoB,GAAG,CAAC,CAAC;;IAE7B;IACA;IACA,MAAMC,eAAe,GAAG,IAAAV,iBAAO,EAAEK,MAAO,CAAC,IAAI,CAAE,IAAAL,iBAAO,EAAEM,KAAM,CAAC;;IAE/D;IACA;IACA;IACA;IACA,IAAK,CAAEE,eAAe,IAAI,CAAE,IAAAR,iBAAO,EAAEK,MAAO,CAAC,EAAG;MAC/CD,MAAM,CAACO,IAAI,CACVlH,OAAO,CACN,IAAAmH,sBAAY,EAAE;QAAElI,KAAK,EAAE2H;MAAO,CAAE,CAAC,EACjC,CAAEK,eACH,CACD,CAAC;MACDD,oBAAoB,IAAI,CAAC;IAC1B;IAEA,IAAKD,eAAe,EAAG;MACtBJ,MAAM,CAACO,IAAI,CAAE,GAAGR,YAAa,CAAC;MAC9BM,oBAAoB,IAAIN,YAAY,CAACtB,MAAM;IAC5C,CAAC,MAAM,IAAKhF,aAAa,EAAG;MAC3BuG,MAAM,CAACO,IAAI,CAAE9G,aAAa,CAAC,CAAE,CAAC;IAC/B;;IAEA;IACA;IACA;IACA;IACA,IACC2G,eAAe,GACZ,CAAE,IAAAR,iBAAO,EAAEM,KAAM,CAAC,GAClB,CAAEzG,aAAa,IAAI,CAAE,IAAAmG,iBAAO,EAAEM,KAAM,CAAC,EACvC;MACDF,MAAM,CAACO,IAAI,CACVlH,OAAO,CAAE,IAAAmH,sBAAY,EAAE;QAAElI,KAAK,EAAE4H;MAAM,CAAE,CAAC,EAAEI,eAAgB,CAC5D,CAAC;IACF;;IAEA;IACA;IACA,MAAMG,aAAa,GAAGL,eAAe,GAAGC,oBAAoB,GAAG,CAAC;;IAEhE;IACA;IACA,MAAMK,eAAe,GAAGN,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC;IAEhDrH,SAAS,CAAEiH,MAAM,EAAES,aAAa,EAAEC,eAAgB,CAAC;EACpD,CAAC,EACD,CAAE3H,SAAS,EAAEM,OAAO,EAAEI,aAAa,CACpC,CAAC;EAED,MAAM+B,OAAO,GAAG,IAAA8D,oBAAW,EAC1B,CAAE;IAAEhH,KAAK;IAAEE,QAAQ;IAAEmI;EAAS,CAAC,KAAM;IACpC,MAAMC,QAAQ,GAAG7H,SAAS,IAAIM,OAAO;IAErC,IAAKN,SAAS,EAAG;MAChB,MAAM8H,UAAU,GAAG,IAAAC,0BAAkB,EAAE,MAAO,CAAC,CAACC,MAAM,CACrD,CAAE;QAAEC;MAAK,CAAC,KAAMA,IAAI,KAAK,OAC1B,CAAC;MACD,MAAMC,cAAc,GAAG,IAAAC,qBAAa,EAAEL,UAAU,EAAIM,IAAI,IAAM;QAC7D,OAAOA,IAAI,CAACC,MAAM,CAACC,IAAI,CAAE/I,KAAK,CAACgJ,IAAK,CAAC;MACtC,CAAE,CAAC;MAEH,IAAKL,cAAc,EAAG;QACrBlI,SAAS,CAAE,CACVkI,cAAc,CAACM,SAAS,CAAE;UAAEC,OAAO,EAAElJ,KAAK,CAACgJ;QAAK,CAAE,CAAC,CAClD,CAAC;QACHpD,6BAA6B,CAAC,CAAC;QAC/B;MACD;IACD;IAEA,IAAKzC,aAAa,EAAG;MACpBA,aAAa,CAAC,CAAC;IAChB;IAEA,MAAM;MAAE6F,IAAI;MAAElJ,KAAK,EAAEqJ,UAAU;MAAEC,GAAG,EAAEC;IAAS,CAAC,GAAGrJ,KAAK;IACxD,MAAMsJ,aAAa,GAClBrI,YAAY,IACZkI,UAAU,KAAKE,QAAQ,IACvBA,QAAQ,KAAKL,IAAI,CAAC7C,MAAM;IAEzB,IAAKkC,QAAQ,EAAG;MACf,IAAK,CAAExG,iBAAiB,EAAG;QAC1B3B,QAAQ,CAAE,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAE,IAAK,CAAE,CAAC;MAClC;IACD,CAAC,MAAM,IAAKsI,QAAQ,EAAG;MACtBf,UAAU,CAAEvH,KAAM,CAAC;IACpB,CAAC,MAAM,IAAKgC,2BAA2B,EAAG;MACzC6D,wBAAwB,CAAC,CAAC;IAC3B,CAAC,MAAM,IAAKyD,aAAa,EAAG;MAC3BrI,YAAY,CAAC,CAAC;IACf,CAAC,MAAM;IACN;IACA;IACA;IACAI,sBAAsB,IACtB8H,UAAU,KAAKE,QAAQ,IACvBA,QAAQ,KAAKL,IAAI,CAAC7C,MAAM,IACxB6C,IAAI,CAACQ,KAAK,CAAE,CAAC,CAAE,CAAC,KAAK,MAAM,EAC1B;MACDxJ,KAAK,CAACF,KAAK,GAAGE,KAAK,CAACoJ,GAAG,GAAG,CAAC;MAC3BlJ,QAAQ,CAAE,IAAAuJ,gBAAM,EAAEzJ,KAAM,CAAE,CAAC;MAC3BqB,sBAAsB,CAAC,CAAC;IACzB,CAAC,MAAM,IAAK,CAAEQ,iBAAiB,EAAG;MACjC3B,QAAQ,CAAE,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAE,IAAK,CAAE,CAAC;IAClC;EACD,CAAC;EACD;EACA,CACCS,SAAS,EACTM,OAAO,EACP6E,6BAA6B,EAC7B2B,UAAU,EACVtG,YAAY,CAEd,CAAC;EAED,MAAMyI,OAAO,GAAG,IAAA1C,oBAAW,EAC1B,CAAE;IACDhH,KAAK;IACLE,QAAQ;IACRyJ,IAAI;IACJC,SAAS;IACTC,UAAU;IACVC,KAAK;IACLC;EACD,CAAC,KAAM;IACN;IACA;IACA;IACA,IAAKF,UAAU,EAAG;MACjB,MAAMG,WAAW,GAAG,IAAAC,gBAAM,EAAE;QAC3BN,IAAI;QACJpI;MACD,CAAE,CAAC;MACH,IAAA2I,uBAAgB,EAAEF,WAAW,EAAED,aAAc,CAAC;MAC9C7J,QAAQ,CAAE,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAEgK,WAAY,CAAE,CAAC;MACxC;IACD;IAEA,IAAKvI,cAAc,EAAG;MACrBvB,QAAQ,CAAE,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAE,IAAAiK,gBAAM,EAAE;QAAEjB,IAAI,EAAEY;MAAU,CAAE,CAAE,CAAE,CAAC;MAC1D;IACD;;IAEA;IACA;IACA,IAAKE,KAAK,IAAIA,KAAK,CAAC3D,MAAM,IAAI,CAAEwD,IAAI,EAAG;MACtC,MAAMT,OAAO,GAAG,IAAAiB,oBAAY,EAAE;QAC7BC,IAAI,EAAE,IAAAC,kCAAgB,EAAEP,KAAM,CAAC;QAC/BQ,IAAI,EAAE,QAAQ;QACdzK,OAAO;QACP0B;MACD,CAAE,CAAC;;MAEH;MACA;MACAgJ,MAAM,CAACC,OAAO,CAACC,GAAG,CAAE,qBAAqB,EAAEX,KAAM,CAAC;MAElD,IAAKrJ,SAAS,IAAI,IAAA6G,iBAAO,EAAEtH,KAAM,CAAC,EAAG;QACpCS,SAAS,CAAEyI,OAAQ,CAAC;MACrB,CAAC,MAAM;QACN3B,UAAU,CAAEvH,KAAK,EAAEkJ,OAAQ,CAAC;MAC7B;MAEA;IACD;IAEA,IAAIoB,IAAI,GAAG7J,SAAS,IAAIM,OAAO,GAAG,MAAM,GAAG,QAAQ;IAEnD,MAAM2J,WAAW,GAAG,IAAAC,UAAK,EAAEf,SAAS,CAACgB,IAAI,CAAC,CAAE,CAAC;IAC7C,MAAMC,yBAAyB,GAAGA,CAAA,KACjChH,qBAAqB,CAACiH,OAAO,EAAEC,aAAa,CAAE;MAC7CC,WAAW,EAAEA,CAAA,KACZvK,SAAS,CAAEyI,OAAO,EAAEA,OAAO,CAAC/C,MAAM,GAAG,CAAC,EAAE,CAAC,CAAE,CAAC;MAC7C8E,UAAU,EAAEA,CAAA,KACX,IAAAC,4BAAqB,EAAEtB,SAAS,CAACgB,IAAI,CAAC,CAAC,EAAEnK,SAAU;IACrD,CAAE,CAAC;IAEJ,IACCiB,yBAAyB,IACzB,IAAA4F,iBAAO,EAAEtH,KAAM,CAAC,IAChB0K,WAAW,EACV;MACDJ,IAAI,GAAG,QAAQ;IAChB;IAEA,MAAMpB,OAAO,GAAG,IAAAiB,oBAAY,EAAE;MAC7BC,IAAI,EAAET,IAAI;MACVC,SAAS;MACTU,IAAI;MACJzK,OAAO;MACP0B;IACD,CAAE,CAAC;IAEH,IAAK,OAAO2H,OAAO,KAAK,QAAQ,EAAG;MAClC,MAAMiC,aAAa,GAAG,IAAAlB,gBAAM,EAAE;QAAEN,IAAI,EAAET;MAAQ,CAAE,CAAC;MACjD,IAAAgB,uBAAgB,EAAEiB,aAAa,EAAEpB,aAAc,CAAC;MAChD7J,QAAQ,CAAE,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAEmL,aAAc,CAAE,CAAC;IAC3C,CAAC,MAAM,IAAKjC,OAAO,CAAC/C,MAAM,GAAG,CAAC,EAAG;MAChC;MACA;MACA,MAAMiF,aAAa,GAClBV,WAAW,IACXxB,OAAO,CAAC/C,MAAM,KAAK,CAAC,IACpB+C,OAAO,CAAE,CAAC,CAAE,CAACmC,IAAI,KAAK,YAAY;MACnC,IAAK5K,SAAS,IAAI,IAAA6G,iBAAO,EAAEtH,KAAM,CAAC,EAAG;QACpC,IAAKoL,aAAa,EAAG;UACpBlL,QAAQ,CACP,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAE,IAAAiK,gBAAM,EAAE;YAAEjB,IAAI,EAAEY;UAAU,CAAE,CAAE,CAC9C,CAAC;UACD,IAAKlI,yBAAyB,EAAG;YAChCmJ,yBAAyB,CAAC,CAAC;UAC5B;UACA;QACD;QACApK,SAAS,CAAEyI,OAAO,EAAEA,OAAO,CAAC/C,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE;UAC3CmF,MAAM,EAAE;QACT,CAAE,CAAC;MACJ,CAAC,MAAM;QACN,IAAKF,aAAa,EAAG;UACpBlL,QAAQ,CACP,IAAAqJ,gBAAM,EAAEvJ,KAAK,EAAE,IAAAiK,gBAAM,EAAE;YAAEjB,IAAI,EAAEY;UAAU,CAAE,CAAE,CAC9C,CAAC;UACD;QACD;QACArC,UAAU,CAAEvH,KAAK,EAAEkJ,OAAQ,CAAC;MAC7B;IACD;EACD,CAAC,EACD,CACCrJ,OAAO,EACPY,SAAS,EACTM,OAAO,EACPwG,UAAU,EACV7F,yBAAyB,EACzBH,kBAAkB,EAClBE,cAAc,CAEhB,CAAC;EAED,MAAM8J,SAAS,GAAG,IAAAvE,oBAAW,EAC1BhH,KAAK,IAAM;IACZ,IAAK,CAAES,SAAS,EAAG;MAClB;IACD;IAEA,MAAM;MAAEX,KAAK,EAAE0L,aAAa;MAAExC;IAAK,CAAC,GAAGhJ,KAAK;IAC5C,MAAMyL,eAAe,GAAGzC,IAAI,CAACQ,KAAK,CACjCgC,aAAa,GAAG,CAAC,EACjBA,aACD,CAAC;;IAED;IACA,IAAKC,eAAe,KAAK,GAAG,EAAG;MAC9B;IACD;IAEA,MAAMC,iBAAiB,GAAG1C,IAAI,CAACQ,KAAK,CAAE,CAAC,EAAE1J,KAAM,CAAC,CAAC8K,IAAI,CAAC,CAAC;IACvD,MAAMe,gBAAgB,GAAG,IAAAnD,0BAAkB,EAAE,MAAO,CAAC,CAACC,MAAM,CAC3D,CAAE;MAAEC;IAAK,CAAC,KAAMA,IAAI,KAAK,QAC1B,CAAC;IACD,MAAMC,cAAc,GAAG,IAAAC,qBAAa,EACnC+C,gBAAgB,EAChB,CAAE;MAAEC;IAAO,CAAC,KAAM;MACjB,OAAOF,iBAAiB,KAAKE,MAAM;IACpC,CACD,CAAC;IAED,IAAK,CAAEjD,cAAc,EAAG;MACvB;IACD;IAEA,MAAMO,OAAO,GAAG,IAAAhB,sBAAY,EAAE;MAC7BlI,KAAK,EAAE,IAAAuJ,gBAAM,EAAEvJ,KAAK,EAAE6L,iCAAsB,EAAE,CAAC,EAAE/L,KAAM;IACxD,CAAE,CAAC;IACH,MAAMoF,KAAK,GAAGyD,cAAc,CAACM,SAAS,CAAEC,OAAQ,CAAC;IACjD,MAAM4C,gBAAgB,GAAG,IAAAC,yBAAa,EAAE,CAAE7G,KAAK,CAAG,CAAC;IACnDzE,SAAS,CAAE,CAAEyE,KAAK,CAAG,CAAC;IACtBS,eAAe,CAAE,GAAGmG,gBAAiB,CAAC;IACtClG,6BAA6B,CAAC,CAAC;EAChC,CAAC,EACD,CAAEnF,SAAS,EAAEX,KAAK,EAAE6F,eAAe,EAAEC,6BAA6B,CACnE,CAAC;EAED,MAAMoG,SAAS,GAAG,IAAAC,qBAAY,EAAE,CAAE5I,WAAW,EAAEG,WAAW,CAAG,CAAC;EAE9D,oBACC,IAAAlE,WAAA,CAAA4M,GAAA,EAAChN,OAAA,CAAAiN,OAAQ;IACRzI,QAAQ,EAAGA,QAAU;IACrBpC,UAAU,EAAGA,UAAY;IACzB8K,eAAe,EAAGJ,SAAW;IAC7BhM,KAAK,EAAGoG,aAAe;IACvBlG,QAAQ,EAAGmG,gBAAkB;IAC7B5B,cAAc,EAAGA,cAAgB;IACjCC,YAAY,EAAGA,YAAc;IAC7BqC,iBAAiB,EAAGA,iBAAmB;IACvClH,OAAO,EAAGA,OAAS;IACnBC,KAAK,EAAGA,KAAO;IACfC,QAAQ,EAAGA,QAAU;IACrBW,WAAW,EAAGA,WAAa;IAC3BC,cAAc,EAAGqF,sBAAwB;IACzCpF,4BAA4B,EAAGA,4BAA8B;IAC7DsC,OAAO,EAAGA,OAAS;IACnBkE,QAAQ,EAAGA,QAAU;IACrBsC,OAAO,EAAGA,OAAS;IACnB2C,oBAAoB,EAAGjM,UAAY;IACnCkM,mBAAmB,EAAGf,SAAW;IACjCgB,8BAA8B,EAAG9G,kBAAoB;IACrD+G,6BAA6B,EAAG9G,iBAAmB;IACnD+G,2BAA2B,EAAGjH,oCAAsC;IACpEI,6BAA6B,EAAGA,6BAA+B;IAC/D8G,4BAA4B,EAAGvI,kBAAoB;IACnDwI,cAAc,EAAG/H,IAAM;IACvBjD,wBAAwB,EAAGC,cAAgB;IAC3CL,kBAAkB,EAAGA,kBAAoB;IACzC+D,QAAQ,EAAGA,QAAU;IACrBxD,eAAe,EAAGA,eAAiB;IACnCC,oCAAoC,EACnCA;IAED;IAAA;IACA4B,eAAe,EACdtD,kBAAkB,KAAKwE,SAAS,GAC7BxE,kBAAkB,GAClBsD,eACH;IACDwB,mBAAmB,EAAGA,mBAAqB;IAC3ClD,8BAA8B,EAAGA,8BAAgC;IACjEC,WAAW,EAAGA,WAAa;IAC3BC,oBAAoB,EAAGA,oBAAsB;IAC7CC,SAAS,EAAGA,SAAW;IACvBC,cAAc,EAAGA,cAAgB;IACjCC,eAAe,EAAGA,eAAiB;IACnCC,kBAAkB,EAAGA,kBAAoB;IACzCC,QAAQ,EAAGA,QAAU;IACrBC,UAAU,EAAGA,UAAY;IACzBC,UAAU,EAAGA,UAAY;IACzBC,SAAS,EAAGA,SAAW;IACvBC,QAAQ,EAAGA,QAAU;IACrBC,QAAQ,EAAGA,QAAU;IACrBC,MAAM,EAAGA,MAAQ;IACjBC,kBAAkB,EAAGA,kBAAoB;IACzCC,qBAAqB,EAAGA,qBAAuB;IAC/CC,cAAc,EAAGA,cAAgB;IACjCkE,8BAA8B,EAAGA;IACjC;IACA;IACA;IAAA;IACAyF,EAAE,EAAGxJ,KAAK,CAACwJ,EAAI;IACfC,KAAK,EAAGzJ,KAAK,CAACyJ,KAAO;IAAAjN,QAAA,EAEnBA,CAAE;MACHQ,UAAU,EAAE0M,gBAAgB;MAC5B9M,KAAK;MACLE,QAAQ;MACR6M,OAAO;MACPC,aAAa;MACbC,eAAe,EAAEC;IAClB,CAAC,kBACA,IAAA5N,WAAA,CAAA6N,IAAA,EAAA7N,WAAA,CAAA8N,QAAA;MAAAxN,QAAA,GACGA,QAAQ,IAAIA,QAAQ,CAAE;QAAEI,KAAK;QAAEE,QAAQ;QAAE6M;MAAQ,CAAE,CAAC,EACpDD,gBAAgB,IAAI5G,UAAU,iBAC/B,IAAA5G,WAAA,CAAA4M,GAAA,EAACrN,uBAAA,CAAAsN,OAAsB;QACtBkB,MAAM,EAAG/M,aAAe;QACxBgN,SAAS,EAAG9J,WAAW,CAACsH;MAAS,CACjC,CACD,EACCgC,gBAAgB,iBAAI,IAAAxN,WAAA,CAAA4M,GAAA,EAACvN,uBAAA,CAAA4O,sBAAsB,IAAE,CAAC,eAChD,IAAAjO,WAAA,CAAA4M,GAAA,EAACzN,aAAA,CAAA0N,OAAY;QACZ1L,SAAS,EAAGA,SAAW;QACvB+M,UAAU,EAAGhN,cAAgB;QAC7BgH,MAAM,EAAGxH,KAAO;QAChBE,QAAQ,EAAGA,QAAU;QACrBE,UAAU,EAAG0M,gBAAkB;QAC/BW,UAAU,EAAGjK,WAAa;QAAA5D,QAAA,EAExBA,CAAE;UAAE8N,SAAS;UAAEC,QAAQ;UAAEC;QAAU,CAAC,kBACrC,IAAAtO,WAAA,CAAA4M,GAAA,EAACgB,OAAO;UAAA,GACFF,aAAa;UAAA,GACb5J,KAAK;UACVyJ,KAAK,EACJzJ,KAAK,CAACyJ,KAAK,GACR;YACA,GAAGzJ,KAAK,CAACyJ,KAAK;YACd,GAAGG,aAAa,CAACH;UACjB,CAAC,GACDG,aAAa,CAACH,KACjB;UACDgB,SAAS,EAAG,IAAAC,aAAI,EACfpO,OAAO,EACP0D,KAAK,CAACyK,SAAS,EACfb,aAAa,CAACa,SACf,CAAG;UACH,qBACCH,SAAS,GAAG,MAAM,GAAG7I,SACrB;UACD,aAAY6I,SAAW;UACvB,yBAAwBC,QAAU;UAClCC,SAAS,EAAKG,KAAK,IAAM;YACxBH,SAAS,CAAEG,KAAM,CAAC;YAClBf,aAAa,CAACY,SAAS,CAAEG,KAAM,CAAC;UACjC;QAAG,CACH;MACD,CACY,CAAC,eACf,IAAAzO,WAAA,CAAA4M,GAAA,EAAClN,mBAAA,CAAAmN,OAAkB;QAAC6B,GAAG,EAAGnK;MAAuB,CAAE,CAAC;IAAA,CACnD;EACF,CACQ,CAAC;AAEb;;AAEA;AACA;AACA;AACO,MAAMoK,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,IAAAE,kCAAgB,EAC9C,IAAAC,mBAAU,EAAEzO,eAAgB,CAC7B,CAAC;AAEDsO,eAAe,CAACI,OAAO,GAAGA,gBAAO;AAEjCJ,eAAe,CAAC3G,OAAO,GAAKtH,KAAK,IAAM;EACtC,OAAO,CAAEA,KAAK,IAAIA,KAAK,CAACmG,MAAM,KAAK,CAAC;AACrC,CAAC;AAED8H,eAAe,CAACI,OAAO,CAACC,YAAY,GAAG;EACtCC,MAAM,EAAE,QAAQ;EAChBvO,KAAK,EAAE;AACR,CAAC;AAEDiO,eAAe,CAACO,GAAG,GAAG,IAAAJ,mBAAU,EAAE,CAAEhL,KAAK,EAAE4K,GAAG,kBAC7C,IAAA1O,WAAA,CAAA4M,GAAA,EAAChN,OAAA,CAAAiN,OAAQ;EAAA,GAAM/I,KAAK;EAAGgJ,eAAe,EAAG4B;AAAK,CAAE,CAC/C,CAAC;;AAEH;AACA;AACA;AAFA,IAAAS,QAAA,GAAAP,OAAA,CAAA/B,OAAA,GAGe8B,eAAe","ignoreList":[]}
|
|
@@ -273,6 +273,20 @@ class RichText extends _element.Component {
|
|
|
273
273
|
return;
|
|
274
274
|
}
|
|
275
275
|
const contentWithoutRootTag = this.removeRootTagsProducedByAztec(event.nativeEvent.text);
|
|
276
|
+
const {
|
|
277
|
+
__unstableInputRule
|
|
278
|
+
} = this.props;
|
|
279
|
+
const currentValuePosition = {
|
|
280
|
+
end: this.isIOS ? this.selectionEnd : this.selectionEnd + 1,
|
|
281
|
+
start: this.isIOS ? this.selectionStart : this.selectionStart + 1
|
|
282
|
+
};
|
|
283
|
+
if (__unstableInputRule && __unstableInputRule({
|
|
284
|
+
...currentValuePosition,
|
|
285
|
+
...this.formatToValue(contentWithoutRootTag)
|
|
286
|
+
})) {
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
|
|
276
290
|
// On iOS, onChange can be triggered after selection changes, even though there are no content changes.
|
|
277
291
|
if (contentWithoutRootTag === this.value?.toString()) {
|
|
278
292
|
return;
|