@wordpress/block-editor 8.0.13 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/LICENSE.md +1 -1
- package/README.md +12 -1
- package/build/components/block-caption/index.native.js +14 -3
- package/build/components/block-caption/index.native.js.map +1 -1
- package/build/components/block-edit/index.js +9 -0
- package/build/components/block-edit/index.js.map +1 -1
- package/build/components/block-inspector/index.js +8 -20
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-list-appender/index.js +3 -11
- package/build/components/block-list-appender/index.js.map +1 -1
- package/build/components/block-media-update-progress/index.native.js +2 -1
- package/build/components/block-media-update-progress/index.native.js.map +1 -1
- package/build/components/block-preview/auto.js +30 -6
- package/build/components/block-preview/auto.js.map +1 -1
- package/build/components/block-settings/container.native.js +2 -1
- package/build/components/block-settings/container.native.js.map +1 -1
- package/build/components/block-styles/index.js +110 -134
- package/build/components/block-styles/index.js.map +1 -1
- package/build/components/block-styles/menu-items.js +63 -0
- package/build/components/block-styles/menu-items.js.map +1 -0
- package/build/components/block-styles/preview-panel.js +45 -0
- package/build/components/block-styles/preview-panel.js.map +1 -0
- package/build/components/block-styles/preview.native.js +2 -2
- package/build/components/block-styles/preview.native.js.map +1 -1
- package/build/components/block-styles/use-styles-for-block.js +119 -0
- package/build/components/block-styles/use-styles-for-block.js.map +1 -0
- package/build/components/block-styles/utils.js +39 -0
- package/build/components/block-styles/utils.js.map +1 -1
- package/build/components/block-switcher/block-styles-menu.js +3 -23
- package/build/components/block-switcher/block-styles-menu.js.map +1 -1
- package/build/components/block-tools/back-compat.js +2 -1
- package/build/components/block-tools/back-compat.js.map +1 -1
- package/build/components/block-tools/block-selection-button.js +5 -1
- package/build/components/block-tools/block-selection-button.js.map +1 -1
- package/build/components/block-tools/insertion-point.js +11 -1
- package/build/components/block-tools/insertion-point.js.map +1 -1
- package/build/components/block-types-list/index.native.js +2 -2
- package/build/components/block-types-list/index.native.js.map +1 -1
- package/build/components/button-block-appender/index.js +2 -1
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +88 -0
- package/build/components/colors-gradients/dropdown.js.map +1 -0
- package/build/components/colors-gradients/panel-color-gradient-settings.js +6 -5
- package/build/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build/components/colors-gradients/panel-color-gradient-settings.native.js +6 -3
- package/build/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build/components/contrast-checker/index.js +34 -9
- package/build/components/contrast-checker/index.js.map +1 -1
- package/build/components/contrast-checker/index.native.js +108 -0
- package/build/components/contrast-checker/index.native.js.map +1 -0
- package/build/components/default-block-appender/index.js +16 -19
- package/build/components/default-block-appender/index.js.map +1 -1
- package/build/components/default-style-picker/index.js +18 -3
- package/build/components/default-style-picker/index.js.map +1 -1
- package/build/components/font-appearance-control/index.js +11 -11
- package/build/components/font-appearance-control/index.js.map +1 -1
- package/build/components/iframe/index.js +6 -9
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/index.js +18 -9
- package/build/components/index.js.map +1 -1
- package/build/components/index.native.js +9 -0
- package/build/components/index.native.js.map +1 -1
- package/build/components/inner-blocks/default-block-appender.js +2 -4
- package/build/components/inner-blocks/default-block-appender.js.map +1 -1
- package/build/components/inner-blocks/use-nested-settings-update.js +16 -14
- package/build/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build/components/inserter/index.js +61 -3
- package/build/components/inserter/index.js.map +1 -1
- package/build/components/inserter/index.native.js +1 -1
- package/build/components/inserter/index.native.js.map +1 -1
- package/build/components/inserter/library.js +5 -3
- package/build/components/inserter/library.js.map +1 -1
- package/build/components/inserter/menu.js +11 -3
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inserter/tabs.native.js +7 -4
- package/build/components/inserter/tabs.native.js.map +1 -1
- package/build/components/inspector-controls/block-support-slot-container.js +2 -1
- package/build/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build/components/inspector-controls/block-support-tools-panel.js +11 -43
- package/build/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build/components/inspector-controls/fill.native.js +3 -5
- package/build/components/inspector-controls/fill.native.js.map +1 -1
- package/build/components/inspector-controls/groups.js +2 -0
- package/build/components/inspector-controls/groups.js.map +1 -1
- package/build/components/inspector-controls/slot.js +1 -3
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/letter-spacing-control/index.js +6 -6
- package/build/components/letter-spacing-control/index.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/link-control/search-item.js +11 -1
- package/build/components/link-control/search-item.js.map +1 -1
- package/build/components/link-control/search-results.js +2 -1
- package/build/components/link-control/search-results.js.map +1 -1
- package/build/components/link-control/use-search-handler.js +18 -5
- package/build/components/link-control/use-search-handler.js.map +1 -1
- package/build/components/list-view/block-select-button.js +23 -3
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/list-view/block.js +8 -0
- package/build/components/list-view/block.js.map +1 -1
- package/build/components/media-placeholder/index.js +2 -0
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/media-replace-flow/index.js +32 -6
- package/build/components/media-replace-flow/index.js.map +1 -1
- package/build/components/media-upload-progress/index.native.js +2 -1
- package/build/components/media-upload-progress/index.native.js.map +1 -1
- package/build/components/panel-color-settings/index.js +7 -3
- package/build/components/panel-color-settings/index.js.map +1 -1
- package/build/components/provider/block-refs-provider.js +4 -1
- package/build/components/provider/block-refs-provider.js.map +1 -1
- package/build/components/rich-text/file-paste-handler.js +1 -1
- package/build/components/rich-text/file-paste-handler.js.map +1 -1
- package/build/components/rich-text/prevent-event-discovery.js +33 -0
- package/build/components/rich-text/prevent-event-discovery.js.map +1 -0
- package/build/components/rich-text/use-input-rules.js +3 -1
- package/build/components/rich-text/use-input-rules.js.map +1 -1
- package/build/components/selection-scroll-into-view/index.js +2 -1
- package/build/components/selection-scroll-into-view/index.js.map +1 -1
- package/build/components/use-display-block-controls/index.native.js +45 -0
- package/build/components/use-display-block-controls/index.native.js.map +1 -0
- package/build/components/use-on-block-drop/index.js +7 -3
- package/build/components/use-on-block-drop/index.js.map +1 -1
- package/build/components/writing-flow/use-multi-selection.js +3 -1
- package/build/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build/hooks/border-color.js +74 -10
- package/build/hooks/border-color.js.map +1 -1
- package/build/hooks/border-radius.js +47 -0
- package/build/hooks/border-radius.js.map +1 -1
- package/build/hooks/border-style.js +41 -0
- package/build/hooks/border-style.js.map +1 -1
- package/build/hooks/border-width.js +70 -31
- package/build/hooks/border-width.js.map +1 -1
- package/build/hooks/border.js +81 -11
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color-panel.js +4 -1
- package/build/hooks/color-panel.js.map +1 -1
- package/build/hooks/color-panel.native.js +77 -0
- package/build/hooks/color-panel.native.js.map +1 -0
- package/build/hooks/color.js +6 -5
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/index.native.js +2 -0
- package/build/hooks/index.native.js.map +1 -1
- package/build/hooks/layout.native.js +20 -0
- package/build/hooks/layout.native.js.map +1 -0
- package/build/hooks/letter-spacing.js +1 -1
- package/build/hooks/letter-spacing.js.map +1 -1
- package/build/hooks/typography.js +1 -1
- package/build/hooks/typography.js.map +1 -1
- package/build/store/actions.js +1 -2
- package/build/store/actions.js.map +1 -1
- package/build/store/defaults.js +5 -1
- package/build/store/defaults.js.map +1 -1
- package/build/store/defaults.native.js +2 -6
- package/build/store/defaults.native.js.map +1 -1
- package/build/store/selectors.js +10 -5
- package/build/store/selectors.js.map +1 -1
- package/build/utils/get-paste-event-data.js +1 -1
- package/build/utils/get-paste-event-data.js.map +1 -1
- package/build/utils/parse-css-unit-to-px.js +1 -1
- package/build/utils/parse-css-unit-to-px.js.map +1 -1
- package/build-module/components/block-caption/index.native.js +13 -3
- package/build-module/components/block-caption/index.native.js.map +1 -1
- package/build-module/components/block-edit/index.js +9 -0
- package/build-module/components/block-edit/index.js.map +1 -1
- package/build-module/components/block-inspector/index.js +8 -20
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-list-appender/index.js +3 -10
- package/build-module/components/block-list-appender/index.js.map +1 -1
- package/build-module/components/block-media-update-progress/index.native.js +2 -1
- package/build-module/components/block-media-update-progress/index.native.js.map +1 -1
- package/build-module/components/block-preview/auto.js +31 -6
- package/build-module/components/block-preview/auto.js.map +1 -1
- package/build-module/components/block-settings/container.native.js +2 -1
- package/build-module/components/block-settings/container.native.js.map +1 -1
- package/build-module/components/block-styles/index.js +112 -133
- package/build-module/components/block-styles/index.js.map +1 -1
- package/build-module/components/block-styles/menu-items.js +50 -0
- package/build-module/components/block-styles/menu-items.js.map +1 -0
- package/build-module/components/block-styles/preview-panel.js +35 -0
- package/build-module/components/block-styles/preview-panel.js.map +1 -0
- package/build-module/components/block-styles/preview.native.js +2 -2
- package/build-module/components/block-styles/preview.native.js.map +1 -1
- package/build-module/components/block-styles/use-styles-for-block.js +107 -0
- package/build-module/components/block-styles/use-styles-for-block.js.map +1 -0
- package/build-module/components/block-styles/utils.js +34 -0
- package/build-module/components/block-styles/utils.js.map +1 -1
- package/build-module/components/block-switcher/block-styles-menu.js +3 -21
- package/build-module/components/block-switcher/block-styles-menu.js.map +1 -1
- package/build-module/components/block-tools/back-compat.js +2 -1
- package/build-module/components/block-tools/back-compat.js.map +1 -1
- package/build-module/components/block-tools/block-selection-button.js +5 -1
- package/build-module/components/block-tools/block-selection-button.js.map +1 -1
- package/build-module/components/block-tools/insertion-point.js +11 -1
- package/build-module/components/block-tools/insertion-point.js.map +1 -1
- package/build-module/components/block-types-list/index.native.js +2 -2
- package/build-module/components/block-types-list/index.native.js.map +1 -1
- package/build-module/components/button-block-appender/index.js +2 -1
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +75 -0
- package/build-module/components/colors-gradients/dropdown.js.map +1 -0
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js +8 -7
- package/build-module/components/colors-gradients/panel-color-gradient-settings.js.map +1 -1
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js +7 -4
- package/build-module/components/colors-gradients/panel-color-gradient-settings.native.js.map +1 -1
- package/build-module/components/contrast-checker/index.js +34 -9
- package/build-module/components/contrast-checker/index.js.map +1 -1
- package/build-module/components/contrast-checker/index.native.js +90 -0
- package/build-module/components/contrast-checker/index.native.js.map +1 -0
- package/build-module/components/default-block-appender/index.js +15 -18
- package/build-module/components/default-block-appender/index.js.map +1 -1
- package/build-module/components/default-style-picker/index.js +17 -3
- package/build-module/components/default-style-picker/index.js.map +1 -1
- package/build-module/components/font-appearance-control/index.js +12 -12
- package/build-module/components/font-appearance-control/index.js.map +1 -1
- package/build-module/components/iframe/index.js +6 -9
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/index.js +2 -1
- package/build-module/components/index.js.map +1 -1
- package/build-module/components/index.native.js +1 -0
- package/build-module/components/index.native.js.map +1 -1
- package/build-module/components/inner-blocks/default-block-appender.js +2 -4
- package/build-module/components/inner-blocks/default-block-appender.js.map +1 -1
- package/build-module/components/inner-blocks/use-nested-settings-update.js +16 -14
- package/build-module/components/inner-blocks/use-nested-settings-update.js.map +1 -1
- package/build-module/components/inserter/index.js +61 -3
- package/build-module/components/inserter/index.js.map +1 -1
- package/build-module/components/inserter/index.native.js +2 -2
- package/build-module/components/inserter/index.native.js.map +1 -1
- package/build-module/components/inserter/library.js +5 -3
- package/build-module/components/inserter/library.js.map +1 -1
- package/build-module/components/inserter/menu.js +11 -4
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inserter/tabs.native.js +7 -4
- package/build-module/components/inserter/tabs.native.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-slot-container.js +2 -1
- package/build-module/components/inspector-controls/block-support-slot-container.js.map +1 -1
- package/build-module/components/inspector-controls/block-support-tools-panel.js +12 -43
- package/build-module/components/inspector-controls/block-support-tools-panel.js.map +1 -1
- package/build-module/components/inspector-controls/fill.native.js +3 -5
- package/build-module/components/inspector-controls/fill.native.js.map +1 -1
- package/build-module/components/inspector-controls/groups.js +2 -0
- package/build-module/components/inspector-controls/groups.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js +1 -3
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/letter-spacing-control/index.js +6 -6
- package/build-module/components/letter-spacing-control/index.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/link-control/search-item.js +11 -1
- package/build-module/components/link-control/search-item.js.map +1 -1
- package/build-module/components/link-control/search-results.js +2 -1
- package/build-module/components/link-control/search-results.js.map +1 -1
- package/build-module/components/link-control/use-search-handler.js +18 -5
- package/build-module/components/link-control/use-search-handler.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +22 -3
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/list-view/block.js +6 -0
- package/build-module/components/list-view/block.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +2 -0
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/media-replace-flow/index.js +32 -6
- package/build-module/components/media-replace-flow/index.js.map +1 -1
- package/build-module/components/media-upload-progress/index.native.js +2 -1
- package/build-module/components/media-upload-progress/index.native.js.map +1 -1
- package/build-module/components/panel-color-settings/index.js +7 -3
- package/build-module/components/panel-color-settings/index.js.map +1 -1
- package/build-module/components/provider/block-refs-provider.js +4 -1
- package/build-module/components/provider/block-refs-provider.js.map +1 -1
- package/build-module/components/rich-text/file-paste-handler.js +1 -1
- package/build-module/components/rich-text/file-paste-handler.js.map +1 -1
- package/build-module/components/rich-text/prevent-event-discovery.js +25 -0
- package/build-module/components/rich-text/prevent-event-discovery.js.map +1 -0
- package/build-module/components/rich-text/use-input-rules.js +2 -1
- package/build-module/components/rich-text/use-input-rules.js.map +1 -1
- package/build-module/components/selection-scroll-into-view/index.js +2 -1
- package/build-module/components/selection-scroll-into-view/index.js.map +1 -1
- package/build-module/components/use-display-block-controls/index.native.js +34 -0
- package/build-module/components/use-display-block-controls/index.native.js.map +1 -0
- package/build-module/components/use-on-block-drop/index.js +7 -3
- package/build-module/components/use-on-block-drop/index.js.map +1 -1
- package/build-module/components/writing-flow/use-multi-selection.js +3 -4
- package/build-module/components/writing-flow/use-multi-selection.js.map +1 -1
- package/build-module/hooks/border-color.js +72 -12
- package/build-module/hooks/border-color.js.map +1 -1
- package/build-module/hooks/border-radius.js +42 -0
- package/build-module/hooks/border-radius.js.map +1 -1
- package/build-module/hooks/border-style.js +36 -0
- package/build-module/hooks/border-style.js.map +1 -1
- package/build-module/hooks/border-width.js +66 -32
- package/build-module/hooks/border-width.js.map +1 -1
- package/build-module/hooks/border.js +80 -12
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color-panel.js +4 -1
- package/build-module/hooks/color-panel.js.map +1 -1
- package/build-module/hooks/color-panel.native.js +62 -0
- package/build-module/hooks/color-panel.native.js.map +1 -0
- package/build-module/hooks/color.js +6 -5
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/index.native.js +1 -0
- package/build-module/hooks/index.native.js.map +1 -1
- package/build-module/hooks/layout.native.js +16 -0
- package/build-module/hooks/layout.native.js.map +1 -0
- package/build-module/hooks/letter-spacing.js +1 -1
- package/build-module/hooks/letter-spacing.js.map +1 -1
- package/build-module/hooks/typography.js +1 -1
- package/build-module/hooks/typography.js.map +1 -1
- package/build-module/store/actions.js +1 -2
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/defaults.js +5 -1
- package/build-module/store/defaults.js.map +1 -1
- package/build-module/store/defaults.native.js +2 -5
- package/build-module/store/defaults.native.js.map +1 -1
- package/build-module/store/selectors.js +10 -5
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/get-paste-event-data.js +1 -1
- package/build-module/utils/get-paste-event-data.js.map +1 -1
- package/build-module/utils/parse-css-unit-to-px.js +1 -1
- package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
- package/build-style/style-rtl.css +226 -181
- package/build-style/style.css +226 -181
- package/package.json +31 -27
- package/src/components/block-caption/index.native.js +22 -4
- package/src/components/block-card/README.md +1 -1
- package/src/components/block-edit/index.js +8 -0
- package/src/components/block-edit/test/edit.native.js +10 -9
- package/src/components/block-inspector/index.js +9 -16
- package/src/components/block-list-appender/index.js +5 -21
- package/src/components/block-media-update-progress/index.native.js +1 -1
- package/src/components/block-media-update-progress/test/index.native.js +136 -93
- package/src/components/block-mover/test/__snapshots__/index.native.js.snap +108 -47
- package/src/components/block-mover/test/index.native.js +5 -5
- package/src/components/block-preview/README.md +14 -26
- package/src/components/block-preview/auto.js +33 -3
- package/src/components/block-preview/test/index.js +2 -0
- package/src/components/block-settings/container.native.js +1 -0
- package/src/components/block-styles/index.js +125 -145
- package/src/components/block-styles/menu-items.js +49 -0
- package/src/components/block-styles/preview-panel.js +36 -0
- package/src/components/block-styles/preview.native.js +5 -2
- package/src/components/block-styles/style.scss +59 -51
- package/src/components/block-styles/test/{index.js → utils.js} +60 -1
- package/src/components/block-styles/use-styles-for-block.js +99 -0
- package/src/components/block-styles/utils.js +39 -0
- package/src/components/block-switcher/block-styles-menu.js +3 -38
- package/src/components/block-tools/back-compat.js +1 -0
- package/src/components/block-tools/block-selection-button.js +7 -1
- package/src/components/block-tools/insertion-point.js +10 -1
- package/src/components/block-types-list/index.native.js +5 -2
- package/src/components/border-radius-control/style.scss +1 -1
- package/src/components/border-style-control/style.scss +0 -1
- package/src/components/button-block-appender/index.js +1 -0
- package/src/components/color-palette/test/__snapshots__/control.js.snap +9 -4
- package/src/components/colors-gradients/dropdown.js +96 -0
- package/src/components/colors-gradients/panel-color-gradient-settings.js +23 -19
- package/src/components/colors-gradients/panel-color-gradient-settings.native.js +13 -2
- package/src/components/colors-gradients/style.scss +59 -5
- package/src/components/contrast-checker/README.md +3 -1
- package/src/components/contrast-checker/index.js +48 -20
- package/src/components/contrast-checker/index.native.js +113 -0
- package/src/components/contrast-checker/style.native.scss +26 -0
- package/src/components/contrast-checker/test/index.js +65 -0
- package/src/components/default-block-appender/index.js +17 -24
- package/src/components/default-block-appender/style.scss +4 -0
- package/src/components/default-block-appender/test/__snapshots__/index.js.snap +12 -24
- package/src/components/default-block-appender/test/index.js +4 -14
- package/src/components/default-style-picker/index.js +18 -6
- package/src/components/font-appearance-control/index.js +12 -12
- package/src/components/iframe/index.js +10 -10
- package/src/components/index.js +2 -1
- package/src/components/index.native.js +1 -0
- package/src/components/inner-blocks/README.md +2 -0
- package/src/components/inner-blocks/default-block-appender.js +2 -7
- package/src/components/inner-blocks/use-nested-settings-update.js +16 -14
- package/src/components/inserter/index.js +77 -5
- package/src/components/inserter/index.native.js +2 -2
- package/src/components/inserter/library.js +17 -12
- package/src/components/inserter/menu.js +31 -13
- package/src/components/inserter/tabs.native.js +5 -4
- package/src/components/inserter/test/block-types-tab.native.js +9 -10
- package/src/components/inserter/test/index.native.js +3 -7
- package/src/components/inserter/test/reusable-blocks-tab.native.js +8 -10
- package/src/components/inspector-controls/block-support-slot-container.js +3 -1
- package/src/components/inspector-controls/block-support-tools-panel.js +39 -58
- package/src/components/inspector-controls/fill.native.js +4 -3
- package/src/components/inspector-controls/groups.js +2 -0
- package/src/components/inspector-controls/slot.js +2 -7
- package/src/components/letter-spacing-control/index.js +6 -6
- package/src/components/link-control/README.md +1 -1
- package/src/components/link-control/link-preview.js +1 -1
- package/src/components/link-control/search-item.js +11 -2
- package/src/components/link-control/search-results.js +1 -0
- package/src/components/link-control/style.scss +2 -1
- package/src/components/link-control/test/index.js +4 -0
- package/src/components/link-control/use-search-handler.js +25 -4
- package/src/components/list-view/block-select-button.js +20 -1
- package/src/components/list-view/block.js +10 -0
- package/src/components/media-placeholder/index.js +2 -0
- package/src/components/media-replace-flow/index.js +35 -5
- package/src/components/media-upload/test/index.native.js +28 -47
- package/src/components/media-upload-progress/index.native.js +1 -0
- package/src/components/media-upload-progress/test/index.native.js +60 -47
- package/src/components/panel-color-settings/index.js +8 -4
- package/src/components/provider/block-refs-provider.js +4 -1
- package/src/components/rich-text/file-paste-handler.js +3 -1
- package/src/components/rich-text/prevent-event-discovery.js +23 -0
- package/src/components/rich-text/use-input-rules.js +2 -1
- package/src/components/selection-scroll-into-view/index.js +1 -0
- package/src/components/url-input/README.md +5 -0
- package/src/components/use-display-block-controls/index.native.js +38 -0
- package/src/components/use-on-block-drop/index.js +7 -3
- package/src/components/writing-flow/test/use-multi-selection.js +36 -0
- package/src/components/writing-flow/use-multi-selection.js +12 -9
- package/src/hooks/border-color.js +69 -9
- package/src/hooks/border-radius.js +32 -0
- package/src/hooks/border-style.js +26 -0
- package/src/hooks/border-width.js +56 -32
- package/src/hooks/border.js +115 -20
- package/src/hooks/border.scss +3 -17
- package/src/hooks/color-panel.js +3 -0
- package/src/hooks/color-panel.native.js +63 -0
- package/src/hooks/color.js +8 -7
- package/src/hooks/dimensions.scss +5 -0
- package/src/hooks/index.native.js +1 -0
- package/src/hooks/layout.native.js +23 -0
- package/src/hooks/letter-spacing.js +1 -1
- package/src/hooks/typography.js +1 -1
- package/src/store/actions.js +1 -2
- package/src/store/defaults.js +2 -0
- package/src/store/defaults.native.js +2 -6
- package/src/store/selectors.js +10 -5
- package/src/style.scss +4 -3
- package/src/utils/get-paste-event-data.js +1 -1
- package/src/utils/parse-css-unit-to-px.js +1 -1
- package/src/utils/test/parse-css-unit-to-px.js +3 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/build/components/use-canvas-click-redirect/index.js +0 -66
- package/build/components/use-canvas-click-redirect/index.js.map +0 -1
- package/build-module/components/use-canvas-click-redirect/index.js +0 -54
- package/build-module/components/use-canvas-click-redirect/index.js.map +0 -1
- package/src/components/use-canvas-click-redirect/index.js +0 -57
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/font-appearance-control/index.js"],"names":["FONT_STYLES","name","value","FONT_WEIGHTS","getFontAppearanceLabel","hasFontStyles","hasFontWeights","FontAppearanceControl","props","onChange","fontStyle","fontWeight","hasStylesOrWeights","label","defaultOption","key","style","undefined","combineOptions","combinedOptions","forEach","styleName","styleValue","weightName","weightValue","optionName","push","styleOptions","weightOptions","selectOptions","options","currentSelection","find","option","getDescribedBy","selectedItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CustomSelectControl } from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: __( 'Italic' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: __( 'Thin' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: __( 'Extra Light' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: __( 'Light' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: __( 'Regular' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: __( 'Medium' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: __( 'Semi Bold' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: __( 'Bold' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: __( 'Extra Bold' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: __( 'Black' ),\n\t\tvalue: '900',\n\t},\n];\n\n/**\n * Adjusts font appearance field label in case either font styles or weights\n * are disabled.\n *\n * @param {boolean} hasFontStyles Whether font styles are enabled and present.\n * @param {boolean} hasFontWeights Whether font weights are enabled and present.\n * @return {string} A label representing what font appearance is being edited.\n */\nexport const getFontAppearanceLabel = ( hasFontStyles, hasFontWeights ) => {\n\tif ( ! hasFontStyles ) {\n\t\treturn __( 'Font weight' );\n\t}\n\n\tif ( ! hasFontWeights ) {\n\t\treturn __( 'Font style' );\n\t}\n\n\treturn __( 'Appearance' );\n};\n\n/**\n * Control to display unified font style and weight options.\n *\n * @param {Object} props Component props.\n *\n * @return {WPElement} Font appearance control.\n */\nexport default function FontAppearanceControl( props ) {\n\tconst {\n\t\tonChange,\n\t\thasFontStyles = true,\n\t\thasFontWeights = true,\n\t\tvalue: { fontStyle, fontWeight },\n\t} = props;\n\tconst hasStylesOrWeights = hasFontStyles || hasFontWeights;\n\tconst label = getFontAppearanceLabel( hasFontStyles, hasFontWeights );\n\tconst defaultOption = {\n\t\tkey: 'default',\n\t\tname: __( 'Default' ),\n\t\tstyle: { fontStyle: undefined, fontWeight: undefined },\n\t};\n\n\t// Combines both font style and weight options into a single dropdown.\n\tconst combineOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\n\t\tFONT_STYLES.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\t\tFONT_WEIGHTS.forEach(\n\t\t\t\t( { name: weightName, value: weightValue } ) => {\n\t\t\t\t\tconst optionName =\n\t\t\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t\t\t? weightName\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcombinedOptions.push( {\n\t\t\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\t\t\tname: optionName,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font styles only.\n\tconst styleOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_STYLES.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: value, fontWeight: undefined },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font weights only.\n\tconst weightOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_WEIGHTS.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: undefined, fontWeight: value },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Map font styles and weights to select options.\n\tconst selectOptions = useMemo( () => {\n\t\tif ( hasFontStyles && hasFontWeights ) {\n\t\t\treturn combineOptions();\n\t\t}\n\n\t\treturn hasFontStyles ? styleOptions() : weightOptions();\n\t}, [ props.options ] );\n\n\t// Find current selection by comparing font style & weight against options,\n\t// and fall back to the Default option if there is no matching option.\n\tconst currentSelection =\n\t\tselectOptions.find(\n\t\t\t( option ) =>\n\t\t\t\toption.style.fontStyle === fontStyle &&\n\t\t\t\toption.style.fontWeight === fontWeight\n\t\t) || selectOptions[ 0 ];\n\n\t// Adjusts screen reader description based on styles or weights.\n\tconst getDescribedBy = () => {\n\t\tif ( ! currentSelection ) {\n\t\t\treturn __( 'No selected font appearance' );\n\t\t}\n\n\t\tif ( ! hasFontStyles ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font weight.\n\t\t\t\t__( 'Currently selected font weight: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\tif ( ! hasFontWeights ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font style.\n\t\t\t\t__( 'Currently selected font style: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\treturn sprintf(\n\t\t\t// translators: %s: Currently selected font appearance.\n\t\t\t__( 'Currently selected font appearance: %s' ),\n\t\t\tcurrentSelection.name\n\t\t);\n\t};\n\n\treturn (\n\t\thasStylesOrWeights && (\n\t\t\t<CustomSelectControl\n\t\t\t\tclassName=\"components-font-appearance-control\"\n\t\t\t\tlabel={ label }\n\t\t\t\tdescribedBy={ getDescribedBy() }\n\t\t\t\toptions={ selectOptions }\n\t\t\t\tvalue={ currentSelection }\n\t\t\t\tonChange={ ( { selectedItem } ) =>\n\t\t\t\t\tonChange( selectedItem.style )\n\t\t\t\t}\n\t\t\t/>\n\t\t)\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/font-appearance-control/index.js"],"names":["FONT_STYLES","name","value","FONT_WEIGHTS","getFontAppearanceLabel","hasFontStyles","hasFontWeights","FontAppearanceControl","props","onChange","fontStyle","fontWeight","hasStylesOrWeights","label","defaultOption","key","style","undefined","combineOptions","combinedOptions","forEach","styleName","styleValue","weightName","weightValue","optionName","push","styleOptions","weightOptions","selectOptions","options","currentSelection","find","option","getDescribedBy","selectedItem"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CustomSelectControl } from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\n\nconst FONT_STYLES = [\n\t{\n\t\tname: _x( 'Regular', 'font style' ),\n\t\tvalue: 'normal',\n\t},\n\t{\n\t\tname: _x( 'Italic', 'font style' ),\n\t\tvalue: 'italic',\n\t},\n];\n\nconst FONT_WEIGHTS = [\n\t{\n\t\tname: _x( 'Thin', 'font weight' ),\n\t\tvalue: '100',\n\t},\n\t{\n\t\tname: _x( 'Extra Light', 'font weight' ),\n\t\tvalue: '200',\n\t},\n\t{\n\t\tname: _x( 'Light', 'font weight' ),\n\t\tvalue: '300',\n\t},\n\t{\n\t\tname: _x( 'Regular', 'font weight' ),\n\t\tvalue: '400',\n\t},\n\t{\n\t\tname: _x( 'Medium', 'font weight' ),\n\t\tvalue: '500',\n\t},\n\t{\n\t\tname: _x( 'Semi Bold', 'font weight' ),\n\t\tvalue: '600',\n\t},\n\t{\n\t\tname: _x( 'Bold', 'font weight' ),\n\t\tvalue: '700',\n\t},\n\t{\n\t\tname: _x( 'Extra Bold', 'font weight' ),\n\t\tvalue: '800',\n\t},\n\t{\n\t\tname: _x( 'Black', 'font weight' ),\n\t\tvalue: '900',\n\t},\n];\n\n/**\n * Adjusts font appearance field label in case either font styles or weights\n * are disabled.\n *\n * @param {boolean} hasFontStyles Whether font styles are enabled and present.\n * @param {boolean} hasFontWeights Whether font weights are enabled and present.\n * @return {string} A label representing what font appearance is being edited.\n */\nexport const getFontAppearanceLabel = ( hasFontStyles, hasFontWeights ) => {\n\tif ( ! hasFontStyles ) {\n\t\treturn __( 'Font weight' );\n\t}\n\n\tif ( ! hasFontWeights ) {\n\t\treturn __( 'Font style' );\n\t}\n\n\treturn __( 'Appearance' );\n};\n\n/**\n * Control to display unified font style and weight options.\n *\n * @param {Object} props Component props.\n *\n * @return {WPElement} Font appearance control.\n */\nexport default function FontAppearanceControl( props ) {\n\tconst {\n\t\tonChange,\n\t\thasFontStyles = true,\n\t\thasFontWeights = true,\n\t\tvalue: { fontStyle, fontWeight },\n\t} = props;\n\tconst hasStylesOrWeights = hasFontStyles || hasFontWeights;\n\tconst label = getFontAppearanceLabel( hasFontStyles, hasFontWeights );\n\tconst defaultOption = {\n\t\tkey: 'default',\n\t\tname: __( 'Default' ),\n\t\tstyle: { fontStyle: undefined, fontWeight: undefined },\n\t};\n\n\t// Combines both font style and weight options into a single dropdown.\n\tconst combineOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\n\t\tFONT_STYLES.forEach( ( { name: styleName, value: styleValue } ) => {\n\t\t\tFONT_WEIGHTS.forEach(\n\t\t\t\t( { name: weightName, value: weightValue } ) => {\n\t\t\t\t\tconst optionName =\n\t\t\t\t\t\tstyleValue === 'normal'\n\t\t\t\t\t\t\t? weightName\n\t\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Font weight name. 2: Font style name. */\n\t\t\t\t\t\t\t\t\t__( '%1$s %2$s' ),\n\t\t\t\t\t\t\t\t\tweightName,\n\t\t\t\t\t\t\t\t\tstyleName\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcombinedOptions.push( {\n\t\t\t\t\t\tkey: `${ styleValue }-${ weightValue }`,\n\t\t\t\t\t\tname: optionName,\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tfontStyle: styleValue,\n\t\t\t\t\t\t\tfontWeight: weightValue,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font styles only.\n\tconst styleOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_STYLES.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: value, fontWeight: undefined },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Generates select options for font weights only.\n\tconst weightOptions = () => {\n\t\tconst combinedOptions = [ defaultOption ];\n\t\tFONT_WEIGHTS.forEach( ( { name, value } ) => {\n\t\t\tcombinedOptions.push( {\n\t\t\t\tkey: value,\n\t\t\t\tname,\n\t\t\t\tstyle: { fontStyle: undefined, fontWeight: value },\n\t\t\t} );\n\t\t} );\n\t\treturn combinedOptions;\n\t};\n\n\t// Map font styles and weights to select options.\n\tconst selectOptions = useMemo( () => {\n\t\tif ( hasFontStyles && hasFontWeights ) {\n\t\t\treturn combineOptions();\n\t\t}\n\n\t\treturn hasFontStyles ? styleOptions() : weightOptions();\n\t}, [ props.options ] );\n\n\t// Find current selection by comparing font style & weight against options,\n\t// and fall back to the Default option if there is no matching option.\n\tconst currentSelection =\n\t\tselectOptions.find(\n\t\t\t( option ) =>\n\t\t\t\toption.style.fontStyle === fontStyle &&\n\t\t\t\toption.style.fontWeight === fontWeight\n\t\t) || selectOptions[ 0 ];\n\n\t// Adjusts screen reader description based on styles or weights.\n\tconst getDescribedBy = () => {\n\t\tif ( ! currentSelection ) {\n\t\t\treturn __( 'No selected font appearance' );\n\t\t}\n\n\t\tif ( ! hasFontStyles ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font weight.\n\t\t\t\t__( 'Currently selected font weight: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\tif ( ! hasFontWeights ) {\n\t\t\treturn sprintf(\n\t\t\t\t// translators: %s: Currently selected font style.\n\t\t\t\t__( 'Currently selected font style: %s' ),\n\t\t\t\tcurrentSelection.name\n\t\t\t);\n\t\t}\n\n\t\treturn sprintf(\n\t\t\t// translators: %s: Currently selected font appearance.\n\t\t\t__( 'Currently selected font appearance: %s' ),\n\t\t\tcurrentSelection.name\n\t\t);\n\t};\n\n\treturn (\n\t\thasStylesOrWeights && (\n\t\t\t<CustomSelectControl\n\t\t\t\tclassName=\"components-font-appearance-control\"\n\t\t\t\tlabel={ label }\n\t\t\t\tdescribedBy={ getDescribedBy() }\n\t\t\t\toptions={ selectOptions }\n\t\t\t\tvalue={ currentSelection }\n\t\t\t\tonChange={ ( { selectedItem } ) =>\n\t\t\t\t\tonChange( selectedItem.style )\n\t\t\t\t}\n\t\t\t/>\n\t\t)\n\t);\n}\n"]}
|
|
@@ -88,10 +88,8 @@ function styleSheetsCompat(doc) {
|
|
|
88
88
|
});
|
|
89
89
|
|
|
90
90
|
if (isMatch && !doc.getElementById(ownerNode.id)) {
|
|
91
|
-
//
|
|
92
|
-
|
|
93
|
-
For blocks, use the block API's style (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#style) or editorStyle (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#editor-style).
|
|
94
|
-
For themes, use add_editor_style (https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-support/#editor-styles).`, ownerNode.outerHTML);
|
|
91
|
+
// Display warning once we have a way to add style dependencies to the editor.
|
|
92
|
+
// See: https://github.com/WordPress/gutenberg/pull/37466.
|
|
95
93
|
doc.head.appendChild(ownerNode.cloneNode(true)); // Add inline styles belonging to the stylesheet.
|
|
96
94
|
|
|
97
95
|
const inlineCssId = ownerNode.id.replace('-css', '-inline-css');
|
|
@@ -186,20 +184,19 @@ async function loadScript(head, _ref2) {
|
|
|
186
184
|
}
|
|
187
185
|
|
|
188
186
|
function Iframe(_ref3, ref) {
|
|
189
|
-
var _window$__editorAsset, _window$__editorAsset2;
|
|
190
|
-
|
|
191
187
|
let {
|
|
192
188
|
contentRef,
|
|
193
189
|
children,
|
|
194
190
|
head,
|
|
195
191
|
tabIndex = 0,
|
|
192
|
+
assets,
|
|
196
193
|
...props
|
|
197
194
|
} = _ref3;
|
|
198
195
|
const [, forceRender] = (0, _element.useReducer)(() => ({}));
|
|
199
196
|
const [iframeDocument, setIframeDocument] = (0, _element.useState)();
|
|
200
197
|
const [bodyClasses, setBodyClasses] = (0, _element.useState)([]);
|
|
201
|
-
const styles = useParsedAssets(
|
|
202
|
-
const scripts = useParsedAssets(
|
|
198
|
+
const styles = useParsedAssets(assets === null || assets === void 0 ? void 0 : assets.styles);
|
|
199
|
+
const scripts = useParsedAssets(assets === null || assets === void 0 ? void 0 : assets.scripts);
|
|
203
200
|
const clearerRef = (0, _blockSelectionClearer.useBlockSelectionClearer)();
|
|
204
201
|
const [before, writingFlowRef, after] = (0, _writingFlow.useWritingFlow)();
|
|
205
202
|
const setRef = (0, _compose.useRefEffect)(node => {
|
|
@@ -223,7 +220,7 @@ function Iframe(_ref3, ref) {
|
|
|
223
220
|
// be added in the editor too, which we'll somehow have to get from
|
|
224
221
|
// the server in the future (which will run the PHP filters).
|
|
225
222
|
|
|
226
|
-
setBodyClasses(Array.from(ownerDocument.body.classList).filter(name => name.startsWith('admin-color-') || name === 'wp-embed-responsive'));
|
|
223
|
+
setBodyClasses(Array.from(ownerDocument.body.classList).filter(name => name.startsWith('admin-color-') || name.startsWith('post-type-') || name === 'wp-embed-responsive'));
|
|
227
224
|
contentDocument.dir = ownerDocument.dir;
|
|
228
225
|
documentElement.removeChild(contentDocument.head);
|
|
229
226
|
documentElement.removeChild(contentDocument.body);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/iframe/index.js"],"names":["BODY_CLASS_NAME","BLOCK_PREFIX","styleSheetsCompat","doc","Array","from","document","styleSheets","forEach","styleSheet","cssRules","e","ownerNode","tagName","id","isMatch","find","selectorText","includes","getElementById","console","warn","outerHTML","head","appendChild","cloneNode","inlineCssId","replace","inlineCssElement","bubbleEvents","defaultView","frameElement","bubbleEvent","event","prototype","Object","getPrototypeOf","constructorName","constructor","name","Constructor","window","init","key","MouseEvent","rect","getBoundingClientRect","clientX","left","clientY","top","newEvent","type","cancelled","dispatchEvent","preventDefault","eventTypes","addEventListener","useParsedAssets","html","implementation","createHTMLDocument","body","innerHTML","children","loadScript","src","Promise","resolve","reject","script","ownerDocument","createElement","onload","onerror","Iframe","ref","contentRef","tabIndex","props","forceRender","iframeDocument","setIframeDocument","bodyClasses","setBodyClasses","styles","__editorAssets","scripts","clearerRef","before","writingFlowRef","after","setRef","node","setDocumentIfReady","contentDocument","readyState","documentElement","classList","filter","startsWith","dir","removeChild","headRef","element","reduce","promise","then","finally","bodyRef","map","href","rel","media","textContent","TagName","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tcreatePortal,\n\tforwardRef,\n\tuseEffect,\n\tuseMemo,\n\tuseReducer,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { __experimentalStyleProvider as StyleProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useWritingFlow } from '../writing-flow';\n\nconst BODY_CLASS_NAME = 'editor-styles-wrapper';\nconst BLOCK_PREFIX = 'wp-block';\n\n/**\n * Clones stylesheets targetting the editor canvas to the given document. A\n * stylesheet is considered targetting the editor a canvas if it contains the\n * `editor-styles-wrapper`, `wp-block`, or `wp-block-*` class selectors.\n *\n * Ideally, this hook should be removed in the future and styles should be added\n * explicitly as editor styles.\n *\n * @param {Document} doc The document to append cloned stylesheets to.\n */\nfunction styleSheetsCompat( doc ) {\n\t// Search the document for stylesheets targetting the editor canvas.\n\tArray.from( document.styleSheets ).forEach( ( styleSheet ) => {\n\t\ttry {\n\t\t\t// May fail for external styles.\n\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\tstyleSheet.cssRules;\n\t\t} catch ( e ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerNode, cssRules } = styleSheet;\n\n\t\tif ( ! cssRules ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Generally, ignore inline styles. We add inline styles belonging to a\n\t\t// stylesheet later, which may or may not match the selectors.\n\t\tif ( ownerNode.tagName !== 'LINK' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Don't try to add the reset styles, which were removed as a dependency\n\t\t// from `edit-blocks` for the iframe since we don't need to reset admin\n\t\t// styles.\n\t\tif ( ownerNode.id === 'wp-reset-editor-styles-css' ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isMatch = Array.from( cssRules ).find(\n\t\t\t( { selectorText } ) =>\n\t\t\t\tselectorText &&\n\t\t\t\t( selectorText.includes( `.${ BODY_CLASS_NAME }` ) ||\n\t\t\t\t\tselectorText.includes( `.${ BLOCK_PREFIX }` ) )\n\t\t);\n\n\t\tif ( isMatch && ! doc.getElementById( ownerNode.id ) ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(\n\t\t\t\t`Stylesheet ${ ownerNode.id } was not properly added.\nFor blocks, use the block API's style (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#style) or editorStyle (https://developer.wordpress.org/block-editor/reference-guides/block-api/block-metadata/#editor-style).\nFor themes, use add_editor_style (https://developer.wordpress.org/block-editor/how-to-guides/themes/theme-support/#editor-styles).`,\n\t\t\t\townerNode.outerHTML\n\t\t\t);\n\t\t\tdoc.head.appendChild( ownerNode.cloneNode( true ) );\n\n\t\t\t// Add inline styles belonging to the stylesheet.\n\t\t\tconst inlineCssId = ownerNode.id.replace( '-css', '-inline-css' );\n\t\t\tconst inlineCssElement = document.getElementById( inlineCssId );\n\n\t\t\tif ( inlineCssElement ) {\n\t\t\t\tdoc.head.appendChild( inlineCssElement.cloneNode( true ) );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Bubbles some event types (keydown, keypress, and dragover) to parent document\n * document to ensure that the keyboard shortcuts and drag and drop work.\n *\n * Ideally, we should remove event bubbling in the future. Keyboard shortcuts\n * should be context dependent, e.g. actions on blocks like Cmd+A should not\n * work globally outside the block editor.\n *\n * @param {Document} doc Document to attach listeners to.\n */\nfunction bubbleEvents( doc ) {\n\tconst { defaultView } = doc;\n\tconst { frameElement } = defaultView;\n\n\tfunction bubbleEvent( event ) {\n\t\tconst prototype = Object.getPrototypeOf( event );\n\t\tconst constructorName = prototype.constructor.name;\n\t\tconst Constructor = window[ constructorName ];\n\n\t\tconst init = {};\n\n\t\tfor ( const key in event ) {\n\t\t\tinit[ key ] = event[ key ];\n\t\t}\n\n\t\tif ( event instanceof defaultView.MouseEvent ) {\n\t\t\tconst rect = frameElement.getBoundingClientRect();\n\t\t\tinit.clientX += rect.left;\n\t\t\tinit.clientY += rect.top;\n\t\t}\n\n\t\tconst newEvent = new Constructor( event.type, init );\n\t\tconst cancelled = ! frameElement.dispatchEvent( newEvent );\n\n\t\tif ( cancelled ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tconst eventTypes = [ 'dragover' ];\n\n\tfor ( const name of eventTypes ) {\n\t\tdoc.addEventListener( name, bubbleEvent );\n\t}\n}\n\nfunction useParsedAssets( html ) {\n\treturn useMemo( () => {\n\t\tconst doc = document.implementation.createHTMLDocument( '' );\n\t\tdoc.body.innerHTML = html;\n\t\treturn Array.from( doc.body.children );\n\t}, [ html ] );\n}\n\nasync function loadScript( head, { id, src } ) {\n\treturn new Promise( ( resolve, reject ) => {\n\t\tconst script = head.ownerDocument.createElement( 'script' );\n\t\tscript.id = id;\n\t\tif ( src ) {\n\t\t\tscript.src = src;\n\t\t\tscript.onload = () => resolve();\n\t\t\tscript.onerror = () => reject();\n\t\t} else {\n\t\t\tresolve();\n\t\t}\n\t\thead.appendChild( script );\n\t} );\n}\n\nfunction Iframe( { contentRef, children, head, tabIndex = 0, ...props }, ref ) {\n\tconst [ , forceRender ] = useReducer( () => ( {} ) );\n\tconst [ iframeDocument, setIframeDocument ] = useState();\n\tconst [ bodyClasses, setBodyClasses ] = useState( [] );\n\tconst styles = useParsedAssets( window.__editorAssets?.styles );\n\tconst scripts = useParsedAssets( window.__editorAssets?.scripts );\n\tconst clearerRef = useBlockSelectionClearer();\n\tconst [ before, writingFlowRef, after ] = useWritingFlow();\n\tconst setRef = useRefEffect( ( node ) => {\n\t\tfunction setDocumentIfReady() {\n\t\t\tconst { contentDocument, ownerDocument } = node;\n\t\t\tconst { readyState, documentElement } = contentDocument;\n\n\t\t\tif ( readyState !== 'interactive' && readyState !== 'complete' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tbubbleEvents( contentDocument );\n\t\t\tsetIframeDocument( contentDocument );\n\t\t\tclearerRef( documentElement );\n\n\t\t\t// Ideally ALL classes that are added through get_body_class should\n\t\t\t// be added in the editor too, which we'll somehow have to get from\n\t\t\t// the server in the future (which will run the PHP filters).\n\t\t\tsetBodyClasses(\n\t\t\t\tArray.from( ownerDocument.body.classList ).filter(\n\t\t\t\t\t( name ) =>\n\t\t\t\t\t\tname.startsWith( 'admin-color-' ) ||\n\t\t\t\t\t\tname === 'wp-embed-responsive'\n\t\t\t\t)\n\t\t\t);\n\n\t\t\tcontentDocument.dir = ownerDocument.dir;\n\t\t\tdocumentElement.removeChild( contentDocument.head );\n\t\t\tdocumentElement.removeChild( contentDocument.body );\n\n\t\t\treturn true;\n\t\t}\n\n\t\tif ( setDocumentIfReady() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Document is not immediately loaded in Firefox.\n\t\tnode.addEventListener( 'load', () => {\n\t\t\tsetDocumentIfReady();\n\t\t} );\n\t}, [] );\n\tconst headRef = useRefEffect( ( element ) => {\n\t\tscripts\n\t\t\t.reduce(\n\t\t\t\t( promise, script ) =>\n\t\t\t\t\tpromise.then( () => loadScript( element, script ) ),\n\t\t\t\tPromise.resolve()\n\t\t\t)\n\t\t\t.finally( () => {\n\t\t\t\t// When script are loaded, re-render blocks to allow them\n\t\t\t\t// to initialise.\n\t\t\t\tforceRender();\n\t\t\t} );\n\t}, [] );\n\tconst bodyRef = useMergeRefs( [ contentRef, clearerRef, writingFlowRef ] );\n\n\tuseEffect( () => {\n\t\tif ( iframeDocument ) {\n\t\t\tstyleSheetsCompat( iframeDocument );\n\t\t}\n\t}, [ iframeDocument ] );\n\n\thead = (\n\t\t<>\n\t\t\t<style>{ 'body{margin:0}' }</style>\n\t\t\t{ styles.map(\n\t\t\t\t( { tagName, href, id, rel, media, textContent } ) => {\n\t\t\t\t\tconst TagName = tagName.toLowerCase();\n\n\t\t\t\t\tif ( TagName === 'style' ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TagName { ...{ id } } key={ id }>\n\t\t\t\t\t\t\t\t{ textContent }\n\t\t\t\t\t\t\t</TagName>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TagName { ...{ href, id, rel, media } } key={ id } />\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ head }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ tabIndex >= 0 && before }\n\t\t\t<iframe\n\t\t\t\t{ ...props }\n\t\t\t\tref={ useMergeRefs( [ ref, setRef ] ) }\n\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\ttitle={ __( 'Editor canvas' ) }\n\t\t\t>\n\t\t\t\t{ iframeDocument &&\n\t\t\t\t\tcreatePortal(\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<head ref={ headRef }>{ head }</head>\n\t\t\t\t\t\t\t<body\n\t\t\t\t\t\t\t\tref={ bodyRef }\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tBODY_CLASS_NAME,\n\t\t\t\t\t\t\t\t\t...bodyClasses\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StyleProvider document={ iframeDocument }>\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</StyleProvider>\n\t\t\t\t\t\t\t</body>\n\t\t\t\t\t\t</>,\n\t\t\t\t\t\tiframeDocument.documentElement\n\t\t\t\t\t) }\n\t\t\t</iframe>\n\t\t\t{ tabIndex >= 0 && after }\n\t\t</>\n\t);\n}\n\nexport default forwardRef( Iframe );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/iframe/index.js"],"names":["BODY_CLASS_NAME","BLOCK_PREFIX","styleSheetsCompat","doc","Array","from","document","styleSheets","forEach","styleSheet","cssRules","e","ownerNode","tagName","id","isMatch","find","selectorText","includes","getElementById","head","appendChild","cloneNode","inlineCssId","replace","inlineCssElement","bubbleEvents","defaultView","frameElement","bubbleEvent","event","prototype","Object","getPrototypeOf","constructorName","constructor","name","Constructor","window","init","key","MouseEvent","rect","getBoundingClientRect","clientX","left","clientY","top","newEvent","type","cancelled","dispatchEvent","preventDefault","eventTypes","addEventListener","useParsedAssets","html","implementation","createHTMLDocument","body","innerHTML","children","loadScript","src","Promise","resolve","reject","script","ownerDocument","createElement","onload","onerror","Iframe","ref","contentRef","tabIndex","assets","props","forceRender","iframeDocument","setIframeDocument","bodyClasses","setBodyClasses","styles","scripts","clearerRef","before","writingFlowRef","after","setRef","node","setDocumentIfReady","contentDocument","readyState","documentElement","classList","filter","startsWith","dir","removeChild","headRef","element","reduce","promise","then","finally","bodyRef","map","href","rel","media","textContent","TagName","toLowerCase"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tcreatePortal,\n\tforwardRef,\n\tuseEffect,\n\tuseMemo,\n\tuseReducer,\n} from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { __experimentalStyleProvider as StyleProvider } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useBlockSelectionClearer } from '../block-selection-clearer';\nimport { useWritingFlow } from '../writing-flow';\n\nconst BODY_CLASS_NAME = 'editor-styles-wrapper';\nconst BLOCK_PREFIX = 'wp-block';\n\n/**\n * Clones stylesheets targetting the editor canvas to the given document. A\n * stylesheet is considered targetting the editor a canvas if it contains the\n * `editor-styles-wrapper`, `wp-block`, or `wp-block-*` class selectors.\n *\n * Ideally, this hook should be removed in the future and styles should be added\n * explicitly as editor styles.\n *\n * @param {Document} doc The document to append cloned stylesheets to.\n */\nfunction styleSheetsCompat( doc ) {\n\t// Search the document for stylesheets targetting the editor canvas.\n\tArray.from( document.styleSheets ).forEach( ( styleSheet ) => {\n\t\ttry {\n\t\t\t// May fail for external styles.\n\t\t\t// eslint-disable-next-line no-unused-expressions\n\t\t\tstyleSheet.cssRules;\n\t\t} catch ( e ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { ownerNode, cssRules } = styleSheet;\n\n\t\tif ( ! cssRules ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Generally, ignore inline styles. We add inline styles belonging to a\n\t\t// stylesheet later, which may or may not match the selectors.\n\t\tif ( ownerNode.tagName !== 'LINK' ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Don't try to add the reset styles, which were removed as a dependency\n\t\t// from `edit-blocks` for the iframe since we don't need to reset admin\n\t\t// styles.\n\t\tif ( ownerNode.id === 'wp-reset-editor-styles-css' ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isMatch = Array.from( cssRules ).find(\n\t\t\t( { selectorText } ) =>\n\t\t\t\tselectorText &&\n\t\t\t\t( selectorText.includes( `.${ BODY_CLASS_NAME }` ) ||\n\t\t\t\t\tselectorText.includes( `.${ BLOCK_PREFIX }` ) )\n\t\t);\n\n\t\tif ( isMatch && ! doc.getElementById( ownerNode.id ) ) {\n\t\t\t// Display warning once we have a way to add style dependencies to the editor.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/37466.\n\n\t\t\tdoc.head.appendChild( ownerNode.cloneNode( true ) );\n\n\t\t\t// Add inline styles belonging to the stylesheet.\n\t\t\tconst inlineCssId = ownerNode.id.replace( '-css', '-inline-css' );\n\t\t\tconst inlineCssElement = document.getElementById( inlineCssId );\n\n\t\t\tif ( inlineCssElement ) {\n\t\t\t\tdoc.head.appendChild( inlineCssElement.cloneNode( true ) );\n\t\t\t}\n\t\t}\n\t} );\n}\n\n/**\n * Bubbles some event types (keydown, keypress, and dragover) to parent document\n * document to ensure that the keyboard shortcuts and drag and drop work.\n *\n * Ideally, we should remove event bubbling in the future. Keyboard shortcuts\n * should be context dependent, e.g. actions on blocks like Cmd+A should not\n * work globally outside the block editor.\n *\n * @param {Document} doc Document to attach listeners to.\n */\nfunction bubbleEvents( doc ) {\n\tconst { defaultView } = doc;\n\tconst { frameElement } = defaultView;\n\n\tfunction bubbleEvent( event ) {\n\t\tconst prototype = Object.getPrototypeOf( event );\n\t\tconst constructorName = prototype.constructor.name;\n\t\tconst Constructor = window[ constructorName ];\n\n\t\tconst init = {};\n\n\t\tfor ( const key in event ) {\n\t\t\tinit[ key ] = event[ key ];\n\t\t}\n\n\t\tif ( event instanceof defaultView.MouseEvent ) {\n\t\t\tconst rect = frameElement.getBoundingClientRect();\n\t\t\tinit.clientX += rect.left;\n\t\t\tinit.clientY += rect.top;\n\t\t}\n\n\t\tconst newEvent = new Constructor( event.type, init );\n\t\tconst cancelled = ! frameElement.dispatchEvent( newEvent );\n\n\t\tif ( cancelled ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n\n\tconst eventTypes = [ 'dragover' ];\n\n\tfor ( const name of eventTypes ) {\n\t\tdoc.addEventListener( name, bubbleEvent );\n\t}\n}\n\nfunction useParsedAssets( html ) {\n\treturn useMemo( () => {\n\t\tconst doc = document.implementation.createHTMLDocument( '' );\n\t\tdoc.body.innerHTML = html;\n\t\treturn Array.from( doc.body.children );\n\t}, [ html ] );\n}\n\nasync function loadScript( head, { id, src } ) {\n\treturn new Promise( ( resolve, reject ) => {\n\t\tconst script = head.ownerDocument.createElement( 'script' );\n\t\tscript.id = id;\n\t\tif ( src ) {\n\t\t\tscript.src = src;\n\t\t\tscript.onload = () => resolve();\n\t\t\tscript.onerror = () => reject();\n\t\t} else {\n\t\t\tresolve();\n\t\t}\n\t\thead.appendChild( script );\n\t} );\n}\n\nfunction Iframe(\n\t{ contentRef, children, head, tabIndex = 0, assets, ...props },\n\tref\n) {\n\tconst [ , forceRender ] = useReducer( () => ( {} ) );\n\tconst [ iframeDocument, setIframeDocument ] = useState();\n\tconst [ bodyClasses, setBodyClasses ] = useState( [] );\n\tconst styles = useParsedAssets( assets?.styles );\n\tconst scripts = useParsedAssets( assets?.scripts );\n\tconst clearerRef = useBlockSelectionClearer();\n\tconst [ before, writingFlowRef, after ] = useWritingFlow();\n\tconst setRef = useRefEffect( ( node ) => {\n\t\tfunction setDocumentIfReady() {\n\t\t\tconst { contentDocument, ownerDocument } = node;\n\t\t\tconst { readyState, documentElement } = contentDocument;\n\n\t\t\tif ( readyState !== 'interactive' && readyState !== 'complete' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tbubbleEvents( contentDocument );\n\t\t\tsetIframeDocument( contentDocument );\n\t\t\tclearerRef( documentElement );\n\n\t\t\t// Ideally ALL classes that are added through get_body_class should\n\t\t\t// be added in the editor too, which we'll somehow have to get from\n\t\t\t// the server in the future (which will run the PHP filters).\n\t\t\tsetBodyClasses(\n\t\t\t\tArray.from( ownerDocument.body.classList ).filter(\n\t\t\t\t\t( name ) =>\n\t\t\t\t\t\tname.startsWith( 'admin-color-' ) ||\n\t\t\t\t\t\tname.startsWith( 'post-type-' ) ||\n\t\t\t\t\t\tname === 'wp-embed-responsive'\n\t\t\t\t)\n\t\t\t);\n\n\t\t\tcontentDocument.dir = ownerDocument.dir;\n\t\t\tdocumentElement.removeChild( contentDocument.head );\n\t\t\tdocumentElement.removeChild( contentDocument.body );\n\n\t\t\treturn true;\n\t\t}\n\n\t\tif ( setDocumentIfReady() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Document is not immediately loaded in Firefox.\n\t\tnode.addEventListener( 'load', () => {\n\t\t\tsetDocumentIfReady();\n\t\t} );\n\t}, [] );\n\tconst headRef = useRefEffect( ( element ) => {\n\t\tscripts\n\t\t\t.reduce(\n\t\t\t\t( promise, script ) =>\n\t\t\t\t\tpromise.then( () => loadScript( element, script ) ),\n\t\t\t\tPromise.resolve()\n\t\t\t)\n\t\t\t.finally( () => {\n\t\t\t\t// When script are loaded, re-render blocks to allow them\n\t\t\t\t// to initialise.\n\t\t\t\tforceRender();\n\t\t\t} );\n\t}, [] );\n\tconst bodyRef = useMergeRefs( [ contentRef, clearerRef, writingFlowRef ] );\n\n\tuseEffect( () => {\n\t\tif ( iframeDocument ) {\n\t\t\tstyleSheetsCompat( iframeDocument );\n\t\t}\n\t}, [ iframeDocument ] );\n\n\thead = (\n\t\t<>\n\t\t\t<style>{ 'body{margin:0}' }</style>\n\t\t\t{ styles.map(\n\t\t\t\t( { tagName, href, id, rel, media, textContent } ) => {\n\t\t\t\t\tconst TagName = tagName.toLowerCase();\n\n\t\t\t\t\tif ( TagName === 'style' ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TagName { ...{ id } } key={ id }>\n\t\t\t\t\t\t\t\t{ textContent }\n\t\t\t\t\t\t\t</TagName>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<TagName { ...{ href, id, rel, media } } key={ id } />\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t) }\n\t\t\t{ head }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ tabIndex >= 0 && before }\n\t\t\t<iframe\n\t\t\t\t{ ...props }\n\t\t\t\tref={ useMergeRefs( [ ref, setRef ] ) }\n\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\ttitle={ __( 'Editor canvas' ) }\n\t\t\t>\n\t\t\t\t{ iframeDocument &&\n\t\t\t\t\tcreatePortal(\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<head ref={ headRef }>{ head }</head>\n\t\t\t\t\t\t\t<body\n\t\t\t\t\t\t\t\tref={ bodyRef }\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\tBODY_CLASS_NAME,\n\t\t\t\t\t\t\t\t\t...bodyClasses\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StyleProvider document={ iframeDocument }>\n\t\t\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t\t\t</StyleProvider>\n\t\t\t\t\t\t\t</body>\n\t\t\t\t\t\t</>,\n\t\t\t\t\t\tiframeDocument.documentElement\n\t\t\t\t\t) }\n\t\t\t</iframe>\n\t\t\t{ tabIndex >= 0 && after }\n\t\t</>\n\t);\n}\n\nexport default forwardRef( Iframe );\n"]}
|
|
@@ -23,6 +23,7 @@ var _exportNames = {
|
|
|
23
23
|
useBlockEditContext: true,
|
|
24
24
|
BlockIcon: true,
|
|
25
25
|
BlockNavigationDropdown: true,
|
|
26
|
+
BlockStyles: true,
|
|
26
27
|
__experimentalBlockVariationPicker: true,
|
|
27
28
|
__experimentalBlockPatternSetup: true,
|
|
28
29
|
__experimentalBlockVariationTransforms: true,
|
|
@@ -42,6 +43,7 @@ var _exportNames = {
|
|
|
42
43
|
__experimentalTextDecorationControl: true,
|
|
43
44
|
__experimentalTextTransformControl: true,
|
|
44
45
|
__experimentalColorGradientControl: true,
|
|
46
|
+
__experimentalColorGradientSettingsDropdown: true,
|
|
45
47
|
__experimentalPanelColorGradientSettings: true,
|
|
46
48
|
__experimentalImageEditor: true,
|
|
47
49
|
__experimentalImageEditingProvider: true,
|
|
@@ -112,7 +114,6 @@ var _exportNames = {
|
|
|
112
114
|
__unstableUseTypewriter: true,
|
|
113
115
|
Warning: true,
|
|
114
116
|
WritingFlow: true,
|
|
115
|
-
__unstableUseCanvasClickRedirect: true,
|
|
116
117
|
useBlockDisplayInformation: true,
|
|
117
118
|
__unstableIframe: true,
|
|
118
119
|
__experimentalUseNoRecursiveRenders: true,
|
|
@@ -251,6 +252,12 @@ Object.defineProperty(exports, "BlockSettingsMenuControls", {
|
|
|
251
252
|
return _blockSettingsMenuControls.default;
|
|
252
253
|
}
|
|
253
254
|
});
|
|
255
|
+
Object.defineProperty(exports, "BlockStyles", {
|
|
256
|
+
enumerable: true,
|
|
257
|
+
get: function () {
|
|
258
|
+
return _blockStyles.default;
|
|
259
|
+
}
|
|
260
|
+
});
|
|
254
261
|
Object.defineProperty(exports, "BlockTitle", {
|
|
255
262
|
enumerable: true,
|
|
256
263
|
get: function () {
|
|
@@ -545,6 +552,12 @@ Object.defineProperty(exports, "__experimentalColorGradientControl", {
|
|
|
545
552
|
return _control2.default;
|
|
546
553
|
}
|
|
547
554
|
});
|
|
555
|
+
Object.defineProperty(exports, "__experimentalColorGradientSettingsDropdown", {
|
|
556
|
+
enumerable: true,
|
|
557
|
+
get: function () {
|
|
558
|
+
return _dropdown2.default;
|
|
559
|
+
}
|
|
560
|
+
});
|
|
548
561
|
Object.defineProperty(exports, "__experimentalDuotoneControl", {
|
|
549
562
|
enumerable: true,
|
|
550
563
|
get: function () {
|
|
@@ -725,12 +738,6 @@ Object.defineProperty(exports, "__unstableUseBlockSelectionClearer", {
|
|
|
725
738
|
return _blockSelectionClearer.useBlockSelectionClearer;
|
|
726
739
|
}
|
|
727
740
|
});
|
|
728
|
-
Object.defineProperty(exports, "__unstableUseCanvasClickRedirect", {
|
|
729
|
-
enumerable: true,
|
|
730
|
-
get: function () {
|
|
731
|
-
return _useCanvasClickRedirect.useCanvasClickRedirect;
|
|
732
|
-
}
|
|
733
|
-
});
|
|
734
741
|
Object.defineProperty(exports, "__unstableUseClipboardHandler", {
|
|
735
742
|
enumerable: true,
|
|
736
743
|
get: function () {
|
|
@@ -860,6 +867,8 @@ var _blockIcon = _interopRequireDefault(require("./block-icon"));
|
|
|
860
867
|
|
|
861
868
|
var _dropdown = _interopRequireDefault(require("./block-navigation/dropdown"));
|
|
862
869
|
|
|
870
|
+
var _blockStyles = _interopRequireDefault(require("./block-styles"));
|
|
871
|
+
|
|
863
872
|
var _blockVariationPicker = _interopRequireDefault(require("./block-variation-picker"));
|
|
864
873
|
|
|
865
874
|
var _blockPatternSetup = _interopRequireDefault(require("./block-pattern-setup"));
|
|
@@ -894,6 +903,8 @@ var _textTransformControl = _interopRequireDefault(require("./text-transform-con
|
|
|
894
903
|
|
|
895
904
|
var _control2 = _interopRequireDefault(require("./colors-gradients/control"));
|
|
896
905
|
|
|
906
|
+
var _dropdown2 = _interopRequireDefault(require("./colors-gradients/dropdown"));
|
|
907
|
+
|
|
897
908
|
var _panelColorGradientSettings = _interopRequireDefault(require("./colors-gradients/panel-color-gradient-settings"));
|
|
898
909
|
|
|
899
910
|
var _imageEditor = _interopRequireWildcard(require("./image-editor"));
|
|
@@ -1008,8 +1019,6 @@ var _warning = _interopRequireDefault(require("./warning"));
|
|
|
1008
1019
|
|
|
1009
1020
|
var _writingFlow = _interopRequireDefault(require("./writing-flow"));
|
|
1010
1021
|
|
|
1011
|
-
var _useCanvasClickRedirect = require("./use-canvas-click-redirect");
|
|
1012
|
-
|
|
1013
1022
|
var _useBlockDisplayInformation = _interopRequireDefault(require("./use-block-display-information"));
|
|
1014
1023
|
|
|
1015
1024
|
var _iframe = _interopRequireDefault(require("./iframe"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AAIA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AAMA;;AACA","sourcesContent":["/*\n * Block Creation Components\n */\n\nexport * from './colors';\nexport * from './gradients';\nexport * from './font-sizes';\nexport { AlignmentControl, AlignmentToolbar } from './alignment-control';\nexport { default as Autocomplete } from './autocomplete';\nexport {\n\tBlockAlignmentControl,\n\tBlockAlignmentToolbar,\n} from './block-alignment-control';\nexport { default as __experimentalBlockFullHeightAligmentControl } from './block-full-height-alignment-control';\nexport { default as __experimentalBlockAlignmentMatrixControl } from './block-alignment-matrix-control';\nexport { default as BlockBreadcrumb } from './block-breadcrumb';\nexport { default as __experimentalBlockContentOverlay } from './block-content-overlay';\nexport { BlockContextProvider } from './block-context';\nexport {\n\tdefault as BlockControls,\n\tBlockFormatControls,\n} from './block-controls';\nexport { default as BlockColorsStyleSelector } from './color-style-selector';\nexport { default as BlockEdit, useBlockEditContext } from './block-edit';\nexport { default as BlockIcon } from './block-icon';\nexport { default as BlockNavigationDropdown } from './block-navigation/dropdown';\nexport { default as BlockStyles } from './block-styles';\nexport { default as __experimentalBlockVariationPicker } from './block-variation-picker';\nexport { default as __experimentalBlockPatternSetup } from './block-pattern-setup';\nexport { default as __experimentalBlockVariationTransforms } from './block-variation-transforms';\nexport {\n\tBlockVerticalAlignmentToolbar,\n\tBlockVerticalAlignmentControl,\n} from './block-vertical-alignment-control';\nexport { default as __experimentalBorderRadiusControl } from './border-radius-control';\nexport { default as __experimentalBorderStyleControl } from './border-style-control';\nexport {\n\t// This is a typo, but kept here for back-compat.\n\tButtonBlockerAppender,\n\tdefault as ButtonBlockAppender,\n} from './button-block-appender';\nexport { default as ColorPalette } from './color-palette';\nexport { default as ColorPaletteControl } from './color-palette/control';\nexport { default as ContrastChecker } from './contrast-checker';\nexport { default as __experimentalDuotoneControl } from './duotone-control';\nexport { default as __experimentalFontAppearanceControl } from './font-appearance-control';\nexport { default as __experimentalFontFamilyControl } from './font-family';\nexport { default as __experimentalLetterSpacingControl } from './letter-spacing-control';\nexport { default as __experimentalTextDecorationControl } from './text-decoration-control';\nexport { default as __experimentalTextTransformControl } from './text-transform-control';\nexport { default as __experimentalColorGradientControl } from './colors-gradients/control';\nexport { default as __experimentalColorGradientSettingsDropdown } from './colors-gradients/dropdown';\nexport { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';\nexport {\n\tdefault as __experimentalImageEditor,\n\tImageEditingProvider as __experimentalImageEditingProvider,\n} from './image-editor';\nexport { default as __experimentalImageSizeControl } from './image-size-control';\nexport { default as InnerBlocks, useInnerBlocksProps } from './inner-blocks';\nexport {\n\tdefault as InspectorControls,\n\tInspectorAdvancedControls,\n} from './inspector-controls';\nexport {\n\tJustifyToolbar,\n\tJustifyContentControl,\n} from './justify-content-control';\nexport { default as __experimentalLinkControl } from './link-control';\nexport { default as __experimentalLinkControlSearchInput } from './link-control/search-input';\nexport { default as __experimentalLinkControlSearchResults } from './link-control/search-results';\nexport { default as __experimentalLinkControlSearchItem } from './link-control/search-item';\nexport { default as LineHeightControl } from './line-height-control';\nexport { default as __experimentalListView } from './list-view';\nexport { default as MediaReplaceFlow } from './media-replace-flow';\nexport { default as MediaPlaceholder } from './media-placeholder';\nexport { default as MediaUpload } from './media-upload';\nexport { default as MediaUploadCheck } from './media-upload/check';\nexport { default as PanelColorSettings } from './panel-color-settings';\nexport { default as PlainText } from './plain-text';\nexport { default as __experimentalResponsiveBlockControl } from './responsive-block-control';\nexport {\n\tdefault as RichText,\n\tRichTextShortcut,\n\tRichTextToolbarButton,\n\t__unstableRichTextInputEvent,\n} from './rich-text';\nexport { default as ToolSelector } from './tool-selector';\nexport { default as __experimentalUnitControl } from './unit-control';\nexport { default as URLInput } from './url-input';\nexport { default as URLInputButton } from './url-input/button';\nexport { default as URLPopover } from './url-popover';\nexport { __experimentalImageURLInputUI } from './url-popover/image-url-input-ui';\nexport { default as withColorContext } from './color-palette/with-color-context';\n\n/*\n * Content Related Components\n */\n\nexport { default as __unstableBlockSettingsMenuFirstItem } from './block-settings-menu/block-settings-menu-first-item';\nexport { default as __unstableInserterMenuExtension } from './inserter-menu-extension';\nexport { default as __experimentalPreviewOptions } from './preview-options';\nexport { default as __experimentalUseResizeCanvas } from './use-resize-canvas';\nexport { default as BlockInspector } from './block-inspector';\nexport { default as BlockList } from './block-list';\nexport { useBlockProps } from './block-list/use-block-props';\nexport { LayoutStyle as __experimentalLayoutStyle } from './block-list/layout';\nexport { default as BlockMover } from './block-mover';\nexport {\n\tdefault as BlockPreview,\n\tuseBlockPreview as __experimentalUseBlockPreview,\n} from './block-preview';\nexport {\n\tdefault as BlockSelectionClearer,\n\tuseBlockSelectionClearer as __unstableUseBlockSelectionClearer,\n} from './block-selection-clearer';\nexport { default as BlockSettingsMenu } from './block-settings-menu';\nexport { default as BlockSettingsMenuControls } from './block-settings-menu-controls';\nexport { default as BlockTitle } from './block-title';\nexport { default as BlockToolbar } from './block-toolbar';\nexport { default as BlockTools } from './block-tools';\nexport {\n\tdefault as CopyHandler,\n\tuseClipboardHandler as __unstableUseClipboardHandler,\n} from './copy-handler';\nexport { default as DefaultBlockAppender } from './default-block-appender';\nexport { default as __unstableEditorStyles } from './editor-styles';\nexport { default as Inserter } from './inserter';\nexport { default as __experimentalLibrary } from './inserter/library';\nexport { default as BlockEditorKeyboardShortcuts } from './keyboard-shortcuts';\nexport { MultiSelectScrollIntoView } from './selection-scroll-into-view';\nexport { default as NavigableToolbar } from './navigable-toolbar';\nexport {\n\tdefault as ObserveTyping,\n\tuseTypingObserver as __unstableUseTypingObserver,\n\tuseMouseMoveTypingReset as __unstableUseMouseMoveTypingReset,\n} from './observe-typing';\nexport { default as PreserveScrollInReorder } from './preserve-scroll-in-reorder';\nexport { default as SkipToSelectedBlock } from './skip-to-selected-block';\nexport {\n\tdefault as Typewriter,\n\tuseTypewriter as __unstableUseTypewriter,\n} from './typewriter';\nexport { default as Warning } from './warning';\nexport { default as WritingFlow } from './writing-flow';\nexport { default as useBlockDisplayInformation } from './use-block-display-information';\nexport { default as __unstableIframe } from './iframe';\nexport { default as __experimentalUseNoRecursiveRenders } from './use-no-recursive-renders';\n\n/*\n * State Related Components\n */\n\nexport { default as BlockEditorProvider } from './provider';\nexport { default as useSetting } from './use-setting';\n"]}
|
|
@@ -47,6 +47,7 @@ var _exportNames = {
|
|
|
47
47
|
useSetting: true,
|
|
48
48
|
__experimentalUseNoRecursiveRenders: true,
|
|
49
49
|
Warning: true,
|
|
50
|
+
ContrastChecker: true,
|
|
50
51
|
BottomSheetSettings: true,
|
|
51
52
|
BlockSettingsButton: true,
|
|
52
53
|
blockSettingsScreens: true,
|
|
@@ -202,6 +203,12 @@ Object.defineProperty(exports, "Caption", {
|
|
|
202
203
|
return _caption.default;
|
|
203
204
|
}
|
|
204
205
|
});
|
|
206
|
+
Object.defineProperty(exports, "ContrastChecker", {
|
|
207
|
+
enumerable: true,
|
|
208
|
+
get: function () {
|
|
209
|
+
return _contrastChecker.default;
|
|
210
|
+
}
|
|
211
|
+
});
|
|
205
212
|
Object.defineProperty(exports, "DefaultBlockAppender", {
|
|
206
213
|
enumerable: true,
|
|
207
214
|
get: function () {
|
|
@@ -501,6 +508,8 @@ var _useNoRecursiveRenders = _interopRequireDefault(require("./use-no-recursive-
|
|
|
501
508
|
|
|
502
509
|
var _warning = _interopRequireDefault(require("./warning"));
|
|
503
510
|
|
|
511
|
+
var _contrastChecker = _interopRequireDefault(require("./contrast-checker"));
|
|
512
|
+
|
|
504
513
|
var _blockSettings = require("./block-settings");
|
|
505
514
|
|
|
506
515
|
var _videoPlayer = _interopRequireWildcard(require("./video-player"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/index.native.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/index.native.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAIA;;AACA;;AAIA;;AACA;;AACA;;AAIA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AACA;;AACA;;AAIA;;AAIA;;AACA;;AACA;;AAMA;;AACA;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAKA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA","sourcesContent":["// Block Creation Components\nexport {\n\tBlockAlignmentControl,\n\tBlockAlignmentToolbar,\n} from './block-alignment-control';\nexport { BlockContextProvider } from './block-context';\nexport {\n\tdefault as BlockControls,\n\tBlockFormatControls,\n} from './block-controls';\nexport { default as BlockEdit, useBlockEditContext } from './block-edit';\nexport { default as BlockIcon } from './block-icon';\nexport {\n\tBlockVerticalAlignmentToolbar,\n\tBlockVerticalAlignmentControl,\n} from './block-vertical-alignment-control';\nexport * from './colors';\nexport * from './gradients';\nexport * from './font-sizes';\nexport { AlignmentControl, AlignmentToolbar } from './alignment-control';\nexport { default as InnerBlocks, useInnerBlocksProps } from './inner-blocks';\nexport {\n\tdefault as InspectorControls,\n\tInspectorAdvancedControls,\n} from './inspector-controls';\nexport {\n\tJustifyToolbar,\n\tJustifyContentControl,\n} from './justify-content-control';\nexport { default as LineHeightControl } from './line-height-control';\nexport { default as PlainText } from './plain-text';\nexport {\n\tdefault as RichText,\n\tRichTextShortcut,\n\tRichTextToolbarButton,\n\t__unstableRichTextInputEvent,\n} from './rich-text';\nexport { default as MediaPlaceholder } from './media-placeholder';\nexport {\n\tdefault as MediaUpload,\n\tMEDIA_TYPE_IMAGE,\n\tMEDIA_TYPE_VIDEO,\n\tMEDIA_TYPE_AUDIO,\n\tMEDIA_TYPE_ANY,\n} from './media-upload';\nexport { default as MediaUploadProgress } from './media-upload-progress';\nexport { default as BlockMediaUpdateProgress } from './block-media-update-progress';\nexport { default as URLInput } from './url-input';\nexport { default as BlockInvalidWarning } from './block-list/block-invalid-warning';\nexport { default as BlockCaption } from './block-caption';\nexport { default as Caption } from './caption';\nexport { default as PanelColorSettings } from './panel-color-settings';\nexport { default as __experimentalPanelColorGradientSettings } from './colors-gradients/panel-color-gradient-settings';\nexport { default as useSetting } from './use-setting';\nexport { default as __experimentalUseNoRecursiveRenders } from './use-no-recursive-renders';\nexport { default as Warning } from './warning';\nexport { default as ContrastChecker } from './contrast-checker';\n\nexport {\n\tBottomSheetSettings,\n\tBlockSettingsButton,\n\tblockSettingsScreens,\n} from './block-settings';\nexport { default as VideoPlayer, VIDEO_ASPECT_RATIO } from './video-player';\n\n// Content Related Components\nexport { default as BlockList } from './block-list';\nexport { default as BlockMover } from './block-mover';\nexport { default as BlockToolbar } from './block-toolbar';\nexport { default as BlockVariationPicker } from './block-variation-picker';\nexport { default as BlockStyles } from './block-styles';\nexport { default as DefaultBlockAppender } from './default-block-appender';\nexport { default as __unstableEditorStyles } from './editor-styles';\nexport { default as Inserter } from './inserter';\nexport { useBlockProps } from './block-list/use-block-props';\nexport { default as FloatingToolbar } from './floating-toolbar';\n\n// State Related Components\nexport { default as BlockEditorProvider } from './provider';\n"]}
|
|
@@ -34,12 +34,10 @@ var _store = require("../../store");
|
|
|
34
34
|
*/
|
|
35
35
|
const DefaultBlockAppender = _ref => {
|
|
36
36
|
let {
|
|
37
|
-
clientId
|
|
38
|
-
lastBlockClientId
|
|
37
|
+
clientId
|
|
39
38
|
} = _ref;
|
|
40
39
|
return (0, _element.createElement)(_defaultBlockAppender.default, {
|
|
41
|
-
rootClientId: clientId
|
|
42
|
-
lastBlockClientId: lastBlockClientId
|
|
40
|
+
rootClientId: clientId
|
|
43
41
|
});
|
|
44
42
|
};
|
|
45
43
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/inner-blocks/default-block-appender.js"],"names":["DefaultBlockAppender","clientId","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/inner-blocks/default-block-appender.js"],"names":["DefaultBlockAppender","clientId","withClientId","select","getBlockOrder","blockEditorStore","blockClientIds","lastBlockClientId"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;AAhBA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAKO,MAAMA,oBAAoB,GAAG,QAAoB;AAAA,MAAlB;AAAEC,IAAAA;AAAF,GAAkB;AACvD,SAAO,4BAAC,6BAAD;AAA0B,IAAA,YAAY,EAAGA;AAAzC,IAAP;AACA,CAFM;;;;eAIQ,sBAAS,CACvBC,qBADuB,EAEvB,sBAAY,CAAEC,MAAF,YAA4B;AAAA,MAAlB;AAAEF,IAAAA;AAAF,GAAkB;AACvC,QAAM;AAAEG,IAAAA;AAAF,MAAoBD,MAAM,CAAEE,YAAF,CAAhC;AAEA,QAAMC,cAAc,GAAGF,aAAa,CAAEH,QAAF,CAApC;AAEA,SAAO;AACNM,IAAAA,iBAAiB,EAAE,kBAAMD,cAAN;AADb,GAAP;AAGA,CARD,CAFuB,CAAT,EAWVN,oBAXU,C","sourcesContent":["/**\n * External dependencies\n */\nimport { last } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { compose } from '@wordpress/compose';\nimport { withSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport BaseDefaultBlockAppender from '../default-block-appender';\nimport withClientId from './with-client-id';\nimport { store as blockEditorStore } from '../../store';\n\nexport const DefaultBlockAppender = ( { clientId } ) => {\n\treturn <BaseDefaultBlockAppender rootClientId={ clientId } />;\n};\n\nexport default compose( [\n\twithClientId,\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlockOrder } = select( blockEditorStore );\n\n\t\tconst blockClientIds = getBlockOrder( clientId );\n\n\t\treturn {\n\t\t\tlastBlockClientId: last( blockClientIds ),\n\t\t};\n\t} ),\n] )( DefaultBlockAppender );\n"]}
|
|
@@ -25,6 +25,8 @@ var _layouts = require("../../layouts");
|
|
|
25
25
|
* Internal dependencies
|
|
26
26
|
*/
|
|
27
27
|
|
|
28
|
+
/** @typedef {import('../../selectors').WPDirectInsertBlock } WPDirectInsertBlock */
|
|
29
|
+
|
|
28
30
|
/**
|
|
29
31
|
* This hook is a side effect which updates the block-editor store when changes
|
|
30
32
|
* happen to inner block settings. The given props are transformed into a
|
|
@@ -32,20 +34,20 @@ var _layouts = require("../../layouts");
|
|
|
32
34
|
* the block-editor store, then the store is updated with the new settings which
|
|
33
35
|
* came from props.
|
|
34
36
|
*
|
|
35
|
-
* @param {string}
|
|
36
|
-
* @param {string[]}
|
|
37
|
-
*
|
|
38
|
-
* @param {?
|
|
39
|
-
* @param {?Function|boolean}
|
|
40
|
-
*
|
|
41
|
-
* @param {string}
|
|
42
|
-
*
|
|
43
|
-
* @param {boolean}
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* @param {string}
|
|
47
|
-
*
|
|
48
|
-
* @param {Object}
|
|
37
|
+
* @param {string} clientId The client ID of the block to update.
|
|
38
|
+
* @param {string[]} allowedBlocks An array of block names which are permitted
|
|
39
|
+
* in inner blocks.
|
|
40
|
+
* @param {?WPDirectInsertBlock} __experimentalDefaultBlock The default block to insert: [ blockName, { blockAttributes } ].
|
|
41
|
+
* @param {?Function|boolean} __experimentalDirectInsert If a default block should be inserted directly by the
|
|
42
|
+
* appender.
|
|
43
|
+
* @param {string} [templateLock] The template lock specified for the inner
|
|
44
|
+
* blocks component. (e.g. "all")
|
|
45
|
+
* @param {boolean} captureToolbars Whether or children toolbars should be shown
|
|
46
|
+
* in the inner blocks component rather than on
|
|
47
|
+
* the child block.
|
|
48
|
+
* @param {string} orientation The direction in which the block
|
|
49
|
+
* should face.
|
|
50
|
+
* @param {Object} layout The layout object for the block container.
|
|
49
51
|
*/
|
|
50
52
|
function useNestedSettingsUpdate(clientId, allowedBlocks, __experimentalDefaultBlock, __experimentalDirectInsert, templateLock, captureToolbars, orientation, layout) {
|
|
51
53
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-editor/src/components/inner-blocks/use-nested-settings-update.js"],"names":["useNestedSettingsUpdate","clientId","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","templateLock","captureToolbars","orientation","layout","updateBlockListSettings","blockEditorStore","blockListSettings","parentLock","select","rootClientId","getBlockRootClientId","getBlockListSettings","getTemplateLock","_allowedBlocks","newSettings","undefined","__experimentalCaptureToolbars","layoutType","type","getOrientation"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AACA;;AAXA;AACA;AACA;;AAKA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,uBAAT,CACdC,QADc,EAEdC,aAFc,EAGdC,0BAHc,EAIdC,0BAJc,EAKdC,YALc,EAMdC,eANc,EAOdC,WAPc,EAQdC,MARc,EASb;AACD,QAAM;AAAEC,IAAAA;AAAF,MAA8B,uBAAaC,YAAb,CAApC;AAEA,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MAAoC,qBACvCC,MAAF,IAAc;AACb,UAAMC,YAAY,GAAGD,MAAM,CAC1BH,YAD0B,CAAN,CAEnBK,oBAFmB,CAEGd,QAFH,CAArB;AAGA,WAAO;AACNU,MAAAA,iBAAiB,EAAEE,MAAM,CACxBH,YADwB,CAAN,CAEjBM,oBAFiB,CAEKf,QAFL,CADb;AAINW,MAAAA,UAAU,EAAEC,MAAM,CAAEH,YAAF,CAAN,CAA2BO,eAA3B,CACXH,YADW;AAJN,KAAP;AAQA,GAbwC,EAczC,CAAEb,QAAF,CAdyC,CAA1C,CAHC,CAoBD;AACA;;AACA,QAAMiB,cAAc,GAAG,sBAAS,MAAMhB,aAAf,EAA8BA,aAA9B,CAAvB;;AAEA,gCAAiB,MAAM;AACtB,UAAMiB,WAAW,GAAG;AACnBjB,MAAAA,aAAa,EAAEgB,cADI;AAEnBb,MAAAA,YAAY,EACXA,YAAY,KAAKe,SAAjB,GAA6BR,UAA7B,GAA0CP;AAHxB,KAApB,CADsB,CAOtB;AACA;;AACA,QAAKC,eAAe,KAAKc,SAAzB,EAAqC;AACpCD,MAAAA,WAAW,CAACE,6BAAZ,GAA4Cf,eAA5C;AACA,KAXqB,CAatB;AACA;;;AACA,QAAKC,WAAW,KAAKa,SAArB,EAAiC;AAChCD,MAAAA,WAAW,CAACZ,WAAZ,GAA0BA,WAA1B;AACA,KAFD,MAEO;AACN,YAAMe,UAAU,GAAG,4BAAed,MAAf,aAAeA,MAAf,uBAAeA,MAAM,CAAEe,IAAvB,CAAnB;AACAJ,MAAAA,WAAW,CAACZ,WAAZ,GAA0Be,UAAU,CAACE,cAAX,CAA2BhB,MAA3B,CAA1B;AACA;;AAED,QAAKL,0BAA0B,KAAKiB,SAApC,EAAgD;AAC/CD,MAAAA,WAAW,CAAChB,0BAAZ,GAAyCA,0BAAzC;AACA;;AAED,QAAKC,0BAA0B,KAAKgB,SAApC,EAAgD;AAC/CD,MAAAA,WAAW,CAACf,0BAAZ,GAAyCA,0BAAzC;AACA;;AAED,QAAK,CAAE,6BAAgBO,iBAAhB,EAAmCQ,WAAnC,CAAP,EAA0D;AACzDV,MAAAA,uBAAuB,CAAER,QAAF,EAAYkB,WAAZ,CAAvB;AACA;AACD,GAjCD,EAiCG,CACFlB,QADE,EAEFU,iBAFE,EAGFO,cAHE,EAIFf,0BAJE,EAKFC,0BALE,EAMFC,YANE,EAOFO,UAPE,EAQFN,eARE,EASFC,WATE,EAUFE,uBAVE,EAWFD,MAXE,CAjCH;AA8CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useLayoutEffect, useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getLayoutType } from '../../layouts';\n\n/**\n * This hook is a side effect which updates the block-editor store when changes\n * happen to inner block settings. The given props are transformed into a\n * settings object, and if that is different from the current settings object in\n * the block-editor store, then the store is updated with the new settings which\n * came from props.\n *\n * @param {string}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-editor/src/components/inner-blocks/use-nested-settings-update.js"],"names":["useNestedSettingsUpdate","clientId","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","templateLock","captureToolbars","orientation","layout","updateBlockListSettings","blockEditorStore","blockListSettings","parentLock","select","rootClientId","getBlockRootClientId","getBlockListSettings","getTemplateLock","_allowedBlocks","newSettings","undefined","__experimentalCaptureToolbars","layoutType","type","getOrientation"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AACA;;AAXA;AACA;AACA;;AAKA;AACA;AACA;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,uBAAT,CACdC,QADc,EAEdC,aAFc,EAGdC,0BAHc,EAIdC,0BAJc,EAKdC,YALc,EAMdC,eANc,EAOdC,WAPc,EAQdC,MARc,EASb;AACD,QAAM;AAAEC,IAAAA;AAAF,MAA8B,uBAAaC,YAAb,CAApC;AAEA,QAAM;AAAEC,IAAAA,iBAAF;AAAqBC,IAAAA;AAArB,MAAoC,qBACvCC,MAAF,IAAc;AACb,UAAMC,YAAY,GAAGD,MAAM,CAC1BH,YAD0B,CAAN,CAEnBK,oBAFmB,CAEGd,QAFH,CAArB;AAGA,WAAO;AACNU,MAAAA,iBAAiB,EAAEE,MAAM,CACxBH,YADwB,CAAN,CAEjBM,oBAFiB,CAEKf,QAFL,CADb;AAINW,MAAAA,UAAU,EAAEC,MAAM,CAAEH,YAAF,CAAN,CAA2BO,eAA3B,CACXH,YADW;AAJN,KAAP;AAQA,GAbwC,EAczC,CAAEb,QAAF,CAdyC,CAA1C,CAHC,CAoBD;AACA;;AACA,QAAMiB,cAAc,GAAG,sBAAS,MAAMhB,aAAf,EAA8BA,aAA9B,CAAvB;;AAEA,gCAAiB,MAAM;AACtB,UAAMiB,WAAW,GAAG;AACnBjB,MAAAA,aAAa,EAAEgB,cADI;AAEnBb,MAAAA,YAAY,EACXA,YAAY,KAAKe,SAAjB,GAA6BR,UAA7B,GAA0CP;AAHxB,KAApB,CADsB,CAOtB;AACA;;AACA,QAAKC,eAAe,KAAKc,SAAzB,EAAqC;AACpCD,MAAAA,WAAW,CAACE,6BAAZ,GAA4Cf,eAA5C;AACA,KAXqB,CAatB;AACA;;;AACA,QAAKC,WAAW,KAAKa,SAArB,EAAiC;AAChCD,MAAAA,WAAW,CAACZ,WAAZ,GAA0BA,WAA1B;AACA,KAFD,MAEO;AACN,YAAMe,UAAU,GAAG,4BAAed,MAAf,aAAeA,MAAf,uBAAeA,MAAM,CAAEe,IAAvB,CAAnB;AACAJ,MAAAA,WAAW,CAACZ,WAAZ,GAA0Be,UAAU,CAACE,cAAX,CAA2BhB,MAA3B,CAA1B;AACA;;AAED,QAAKL,0BAA0B,KAAKiB,SAApC,EAAgD;AAC/CD,MAAAA,WAAW,CAAChB,0BAAZ,GAAyCA,0BAAzC;AACA;;AAED,QAAKC,0BAA0B,KAAKgB,SAApC,EAAgD;AAC/CD,MAAAA,WAAW,CAACf,0BAAZ,GAAyCA,0BAAzC;AACA;;AAED,QAAK,CAAE,6BAAgBO,iBAAhB,EAAmCQ,WAAnC,CAAP,EAA0D;AACzDV,MAAAA,uBAAuB,CAAER,QAAF,EAAYkB,WAAZ,CAAvB;AACA;AACD,GAjCD,EAiCG,CACFlB,QADE,EAEFU,iBAFE,EAGFO,cAHE,EAIFf,0BAJE,EAKFC,0BALE,EAMFC,YANE,EAOFO,UAPE,EAQFN,eARE,EASFC,WATE,EAUFE,uBAVE,EAWFD,MAXE,CAjCH;AA8CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useLayoutEffect, useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport { store as blockEditorStore } from '../../store';\nimport { getLayoutType } from '../../layouts';\n\n/** @typedef {import('../../selectors').WPDirectInsertBlock } WPDirectInsertBlock */\n\n/**\n * This hook is a side effect which updates the block-editor store when changes\n * happen to inner block settings. The given props are transformed into a\n * settings object, and if that is different from the current settings object in\n * the block-editor store, then the store is updated with the new settings which\n * came from props.\n *\n * @param {string} clientId The client ID of the block to update.\n * @param {string[]} allowedBlocks An array of block names which are permitted\n * in inner blocks.\n * @param {?WPDirectInsertBlock} __experimentalDefaultBlock The default block to insert: [ blockName, { blockAttributes } ].\n * @param {?Function|boolean} __experimentalDirectInsert If a default block should be inserted directly by the\n * appender.\n * @param {string} [templateLock] The template lock specified for the inner\n * blocks component. (e.g. \"all\")\n * @param {boolean} captureToolbars Whether or children toolbars should be shown\n * in the inner blocks component rather than on\n * the child block.\n * @param {string} orientation The direction in which the block\n * should face.\n * @param {Object} layout The layout object for the block container.\n */\nexport default function useNestedSettingsUpdate(\n\tclientId,\n\tallowedBlocks,\n\t__experimentalDefaultBlock,\n\t__experimentalDirectInsert,\n\ttemplateLock,\n\tcaptureToolbars,\n\torientation,\n\tlayout\n) {\n\tconst { updateBlockListSettings } = useDispatch( blockEditorStore );\n\n\tconst { blockListSettings, parentLock } = useSelect(\n\t\t( select ) => {\n\t\t\tconst rootClientId = select(\n\t\t\t\tblockEditorStore\n\t\t\t).getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tblockListSettings: select(\n\t\t\t\t\tblockEditorStore\n\t\t\t\t).getBlockListSettings( clientId ),\n\t\t\t\tparentLock: select( blockEditorStore ).getTemplateLock(\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t// Memoize as inner blocks implementors often pass a new array on every\n\t// render.\n\tconst _allowedBlocks = useMemo( () => allowedBlocks, allowedBlocks );\n\n\tuseLayoutEffect( () => {\n\t\tconst newSettings = {\n\t\t\tallowedBlocks: _allowedBlocks,\n\t\t\ttemplateLock:\n\t\t\t\ttemplateLock === undefined ? parentLock : templateLock,\n\t\t};\n\n\t\t// These values are not defined for RN, so only include them if they\n\t\t// are defined.\n\t\tif ( captureToolbars !== undefined ) {\n\t\t\tnewSettings.__experimentalCaptureToolbars = captureToolbars;\n\t\t}\n\n\t\t// Orientation depends on layout,\n\t\t// ideally the separate orientation prop should be deprecated.\n\t\tif ( orientation !== undefined ) {\n\t\t\tnewSettings.orientation = orientation;\n\t\t} else {\n\t\t\tconst layoutType = getLayoutType( layout?.type );\n\t\t\tnewSettings.orientation = layoutType.getOrientation( layout );\n\t\t}\n\n\t\tif ( __experimentalDefaultBlock !== undefined ) {\n\t\t\tnewSettings.__experimentalDefaultBlock = __experimentalDefaultBlock;\n\t\t}\n\n\t\tif ( __experimentalDirectInsert !== undefined ) {\n\t\t\tnewSettings.__experimentalDirectInsert = __experimentalDirectInsert;\n\t\t}\n\n\t\tif ( ! isShallowEqual( blockListSettings, newSettings ) ) {\n\t\t\tupdateBlockListSettings( clientId, newSettings );\n\t\t}\n\t}, [\n\t\tclientId,\n\t\tblockListSettings,\n\t\t_allowedBlocks,\n\t\t__experimentalDefaultBlock,\n\t\t__experimentalDirectInsert,\n\t\ttemplateLock,\n\t\tparentLock,\n\t\tcaptureToolbars,\n\t\torientation,\n\t\tupdateBlockListSettings,\n\t\tlayout,\n\t] );\n}\n"]}
|
|
@@ -201,7 +201,7 @@ class Inserter extends _element.Component {
|
|
|
201
201
|
onSelectOrClose
|
|
202
202
|
} = this.props;
|
|
203
203
|
|
|
204
|
-
if (hasSingleBlockType || directInsertBlock
|
|
204
|
+
if (hasSingleBlockType || directInsertBlock) {
|
|
205
205
|
return this.renderToggle({
|
|
206
206
|
onToggle: insertOnlyAllowedBlock
|
|
207
207
|
});
|
|
@@ -275,10 +275,56 @@ var _default = (0, _compose.compose)([(0, _data.withSelect)((select, _ref4) => {
|
|
|
275
275
|
onSelectOrClose
|
|
276
276
|
} = ownProps;
|
|
277
277
|
|
|
278
|
-
if (!hasSingleBlockType && !
|
|
278
|
+
if (!hasSingleBlockType && !directInsertBlock) {
|
|
279
279
|
return;
|
|
280
280
|
}
|
|
281
281
|
|
|
282
|
+
function getAdjacentBlockAttributes(attributesToCopy) {
|
|
283
|
+
const {
|
|
284
|
+
getBlock,
|
|
285
|
+
getPreviousBlockClientId
|
|
286
|
+
} = select(_store.store);
|
|
287
|
+
|
|
288
|
+
if (!attributesToCopy || !clientId && !rootClientId) {
|
|
289
|
+
return {};
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
const result = {};
|
|
293
|
+
let adjacentAttributes = {}; // If there is no clientId, then attempt to get attributes
|
|
294
|
+
// from the last block within innerBlocks of the root block.
|
|
295
|
+
|
|
296
|
+
if (!clientId) {
|
|
297
|
+
var _parentBlock$innerBlo;
|
|
298
|
+
|
|
299
|
+
const parentBlock = getBlock(rootClientId);
|
|
300
|
+
|
|
301
|
+
if (parentBlock !== null && parentBlock !== void 0 && (_parentBlock$innerBlo = parentBlock.innerBlocks) !== null && _parentBlock$innerBlo !== void 0 && _parentBlock$innerBlo.length) {
|
|
302
|
+
const lastInnerBlock = parentBlock.innerBlocks[parentBlock.innerBlocks.length - 1];
|
|
303
|
+
|
|
304
|
+
if (directInsertBlock && (directInsertBlock === null || directInsertBlock === void 0 ? void 0 : directInsertBlock.name) === lastInnerBlock.name) {
|
|
305
|
+
adjacentAttributes = lastInnerBlock.attributes;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
} else {
|
|
309
|
+
// Otherwise, attempt to get attributes from the
|
|
310
|
+
// previous block relative to the current clientId.
|
|
311
|
+
const currentBlock = getBlock(clientId);
|
|
312
|
+
const previousBlock = getBlock(getPreviousBlockClientId(clientId));
|
|
313
|
+
|
|
314
|
+
if ((currentBlock === null || currentBlock === void 0 ? void 0 : currentBlock.name) === (previousBlock === null || previousBlock === void 0 ? void 0 : previousBlock.name)) {
|
|
315
|
+
adjacentAttributes = (previousBlock === null || previousBlock === void 0 ? void 0 : previousBlock.attributes) || {};
|
|
316
|
+
}
|
|
317
|
+
} // Copy over only those attributes flagged to be copied.
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
attributesToCopy.forEach(attribute => {
|
|
321
|
+
if (adjacentAttributes.hasOwnProperty(attribute)) {
|
|
322
|
+
result[attribute] = adjacentAttributes[attribute];
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
return result;
|
|
326
|
+
}
|
|
327
|
+
|
|
282
328
|
function getInsertionIndex() {
|
|
283
329
|
const {
|
|
284
330
|
getBlockIndex,
|
|
@@ -305,7 +351,19 @@ var _default = (0, _compose.compose)([(0, _data.withSelect)((select, _ref4) => {
|
|
|
305
351
|
const {
|
|
306
352
|
insertBlock
|
|
307
353
|
} = dispatch(_store.store);
|
|
308
|
-
|
|
354
|
+
let blockToInsert; // Attempt to augment the directInsertBlock with attributes from an adjacent block.
|
|
355
|
+
// This ensures styling from nearby blocks is preserved in the newly inserted block.
|
|
356
|
+
// See: https://github.com/WordPress/gutenberg/issues/37904
|
|
357
|
+
|
|
358
|
+
if (directInsertBlock) {
|
|
359
|
+
const newAttributes = getAdjacentBlockAttributes(directInsertBlock.attributesToCopy);
|
|
360
|
+
blockToInsert = (0, _blocks.createBlock)(directInsertBlock.name, { ...(directInsertBlock.attributes || {}),
|
|
361
|
+
...newAttributes
|
|
362
|
+
});
|
|
363
|
+
} else {
|
|
364
|
+
blockToInsert = (0, _blocks.createBlock)(allowedBlockType.name);
|
|
365
|
+
}
|
|
366
|
+
|
|
309
367
|
insertBlock(blockToInsert, getInsertionIndex(), rootClientId);
|
|
310
368
|
|
|
311
369
|
if (onSelectOrClose) {
|