From f6726e8bc15f9462b9f59c2dc7c1fe3a751f2bc9 Mon Sep 17 00:00:00 2001 From: Jeff Ong Date: Tue, 30 Jul 2024 16:36:51 -0400 Subject: [PATCH] Refactor blocks for core loading. --- docs/reference-guides/core-blocks.md | 4 + lib/blocks.php | 6 +- lib/experimental/editor-settings.php | 8 +- lib/experiments-page.php | 2 +- .../src/accordion-content/block.json | 1 + .../src/accordion-content/index.js | 4 +- .../src/accordion-group/block.json | 4 +- .../src/accordion-group/index.js | 4 +- .../src/accordion-group/index.php | 63 ++++--- .../block-library/src/accordion-group/save.js | 17 +- .../src/accordion-group/style.scss | 156 +++++++++--------- .../src/accordion-item/block.json | 1 + .../block-library/src/accordion-item/edit.js | 17 +- .../block-library/src/accordion-item/index.js | 4 +- .../src/accordion-item/index.php | 85 +++++----- .../block-library/src/accordion-item/save.js | 25 ++- .../src/accordion-trigger/block.json | 1 + .../src/accordion-trigger/index.js | 4 +- tools/webpack/interactivity.js | 1 + 19 files changed, 227 insertions(+), 180 deletions(-) diff --git a/docs/reference-guides/core-blocks.md b/docs/reference-guides/core-blocks.md index 7081ce0048ea8b..336e53314b60cf 100644 --- a/docs/reference-guides/core-blocks.md +++ b/docs/reference-guides/core-blocks.md @@ -13,6 +13,7 @@ This page lists the blocks included in the block-library package. Accordion item content ([Source](https://github.com/WordPress/gutenberg/tree/trunk/packages/block-library/src/accordion-content)) - **Name:** core/accordion-content +- **Experimental:** true - **Category:** design - **Parent:** core/accordion-item - **Supports:** border, color (background, gradient, text), interactivity, layout, shadow, spacing (blockGap, margin, padding), typography (fontSize, lineHeight) @@ -23,6 +24,7 @@ Accordion item content ([Source](https://github.com/WordPress/gutenberg/tree/tru A group of headers and associated expandable content. ([Source](https://github.com/WordPress/gutenberg/tree/trunk/packages/block-library/src/accordion-group)) - **Name:** core/accordion-group +- **Experimental:** true - **Category:** design - **Allowed Blocks:** core/accordion-item - **Supports:** align (full, wide), background (backgroundImage, backgroundSize), color (background, gradient, text), interactivity, layout, shadow, spacing (blockGap, margin, padding), ~~html~~ @@ -33,6 +35,7 @@ A group of headers and associated expandable content. ([Source](https://github.c A single accordion that displays a header and expandable content. ([Source](https://github.com/WordPress/gutenberg/tree/trunk/packages/block-library/src/accordion-item)) - **Name:** core/accordion-item +- **Experimental:** true - **Category:** design - **Parent:** core/accordion-group - **Allowed Blocks:** core/accordion-trigger, core/accordion-content @@ -44,6 +47,7 @@ A single accordion that displays a header and expandable content. ([Source](http Accordion item trigger. ([Source](https://github.com/WordPress/gutenberg/tree/trunk/packages/block-library/src/accordion-trigger)) - **Name:** core/accordion-trigger +- **Experimental:** true - **Category:** design - **Parent:** core/accordion-item - **Supports:** anchor, border, color (background, gradient, text), interactivity, layout, shadow, spacing (margin, padding), typography (fontSize, textAlign), ~~align~~ diff --git a/lib/blocks.php b/lib/blocks.php index 885a02a9222521..362a3e62ed7f7e 100644 --- a/lib/blocks.php +++ b/lib/blocks.php @@ -14,10 +14,8 @@ function gutenberg_reregister_core_block_types() { $blocks_dirs = array( __DIR__ . '/../build/block-library/blocks/' => array( 'block_folders' => array( - 'accordion-content', - 'accordion-group', - 'accordion-item', 'accordion-trigger', + 'accordion-content', 'audio', 'button', 'buttons', @@ -49,8 +47,8 @@ function gutenberg_reregister_core_block_types() { 'embed', ), 'block_names' => array( - 'accordion-group.php' => 'core/accordion-group', 'accordion-item.php' => 'core/accordion-item', + 'accordion-group.php' => 'core/accordion-group', 'archives.php' => 'core/archives', 'avatar.php' => 'core/avatar', 'block.php' => 'core/block', diff --git a/lib/experimental/editor-settings.php b/lib/experimental/editor-settings.php index a3e56c28715bc6..8f6d786da0795a 100644 --- a/lib/experimental/editor-settings.php +++ b/lib/experimental/editor-settings.php @@ -31,6 +31,12 @@ function gutenberg_enable_experiments() { if ( $gutenberg_experiments && array_key_exists( 'gutenberg-zoomed-out-patterns-tab', $gutenberg_experiments ) ) { wp_add_inline_script( 'wp-block-editor', 'window.__experimentalEnableZoomedOutPatternsTab = true', 'before' ); } + if ( $gutenberg_experiments && array_key_exists( 'gutenberg-quick-edit-dataviews', $gutenberg_experiments ) ) { + wp_add_inline_script( 'wp-block-editor', 'window.__experimentalQuickEditDataViews = true', 'before' ); + } + if ( $gutenberg_experiments && array_key_exists( 'gutenberg-block-bindings-ui', $gutenberg_experiments ) ) { + wp_add_inline_script( 'wp-block-editor', 'window.__experimentalBlockBindingsUI = true', 'before' ); + } } add_action( 'admin_init', 'gutenberg_enable_experiments' ); @@ -61,4 +67,4 @@ function gutenberg_enable_block_experiments() { } } -add_action( 'admin_init', 'gutenberg_enable_block_experiments' ); \ No newline at end of file +add_action( 'admin_init', 'gutenberg_enable_block_experiments' ); diff --git a/lib/experiments-page.php b/lib/experiments-page.php index 1866161e148c19..b27f6fc2726a2a 100644 --- a/lib/experiments-page.php +++ b/lib/experiments-page.php @@ -90,7 +90,7 @@ function gutenberg_initialize_experiments_settings() { 'id' => 'gutenberg-block-experiments', ) ); - + add_settings_field( 'gutenberg-form-blocks', __( 'Form and input blocks ', 'gutenberg' ), diff --git a/packages/block-library/src/accordion-content/block.json b/packages/block-library/src/accordion-content/block.json index 9f0dde61973ce3..ea47a473be6733 100644 --- a/packages/block-library/src/accordion-content/block.json +++ b/packages/block-library/src/accordion-content/block.json @@ -7,6 +7,7 @@ "category": "design", "description": "Accordion item content", "example": {}, + "__experimental": true, "parent": [ "core/accordion-item" ], "supports": { "color": { diff --git a/packages/block-library/src/accordion-content/index.js b/packages/block-library/src/accordion-content/index.js index 5d355f9a3d9e3d..cd00c2d9413f6f 100644 --- a/packages/block-library/src/accordion-content/index.js +++ b/packages/block-library/src/accordion-content/index.js @@ -5,7 +5,7 @@ import { SVG, Path } from '@wordpress/components'; /** * Internal dependencies */ -import Edit from './edit'; +import edit from './edit'; import save from './save'; import metadata from './block.json'; import initBlock from '../utils/init-block'; @@ -34,7 +34,7 @@ export { metadata, name }; export const settings = { icon, example: {}, - Edit, + edit, save, }; diff --git a/packages/block-library/src/accordion-group/block.json b/packages/block-library/src/accordion-group/block.json index 92e4e3eeb9d343..f381866fb563d2 100644 --- a/packages/block-library/src/accordion-group/block.json +++ b/packages/block-library/src/accordion-group/block.json @@ -2,11 +2,11 @@ "$schema": "https://schemas.wp.org/trunk/block.json", "apiVersion": 3, "name": "core/accordion-group", - "version": "0.1.0", "title": "Accordion Group", "category": "design", "description": "A group of headers and associated expandable content.", "example": {}, + "__experimental": true, "supports": { "html": false, "align": [ "wide", "full" ], @@ -45,5 +45,5 @@ }, "allowedBlocks": [ "core/accordion-item" ], "textdomain": "default", - "viewScriptModule": "file:./view.min.js" + "style": "wp-block-accordion-group" } diff --git a/packages/block-library/src/accordion-group/index.js b/packages/block-library/src/accordion-group/index.js index 9d7d0a452a6293..37230fe7d30cd5 100644 --- a/packages/block-library/src/accordion-group/index.js +++ b/packages/block-library/src/accordion-group/index.js @@ -5,7 +5,7 @@ import { SVG, Path } from '@wordpress/components'; /** * Internal dependencies */ -import Edit from './edit'; +import edit from './edit'; import save from './save'; import metadata from './block.json'; import initBlock from '../utils/init-block'; @@ -42,7 +42,7 @@ export { metadata, name }; export const settings = { icon, example: {}, - Edit, + edit, save, }; diff --git a/packages/block-library/src/accordion-group/index.php b/packages/block-library/src/accordion-group/index.php index c66a0a811babee..c730d19774c689 100644 --- a/packages/block-library/src/accordion-group/index.php +++ b/packages/block-library/src/accordion-group/index.php @@ -4,29 +4,43 @@ * * @package WordPress * @since 6.6.0 - * + * * @param array $attributes The block attributes. * @param string $content The block content. * * @return string Returns the updated markup. */ -function block_core_accordion_group_render( $attributes, $content ) { - if ( ! $content ) { - return $content; - } - - $p = new WP_HTML_Tag_Processor( $content ); - $autoclose = $attributes['autoclose']; - - while ( $p->next_tag() ){ - if ( $p->has_class( 'wp-block-accordion-group') ) { - $p->set_attribute( 'data-wp-interactive', 'core/accordion' ); - $p->set_attribute( 'data-wp-context', '{"isOpen":[],"autoclose":"' . $autoclose . '"}' ); - } - } - - return $p->get_updated_html(); +function render_block_core_accordion_group( $attributes, $content ) { + $suffix = wp_scripts_get_suffix(); + if ( defined( 'IS_GUTENBERG_PLUGIN' ) && IS_GUTENBERG_PLUGIN ) { + $module_url = gutenberg_url( '/build/interactivity/accordionGroup.min.js' ); + } + + wp_register_script_module( + '@wordpress/block-library/accordion-group', + isset( $module_url ) ? $module_url : includes_url( "blocks/accordion-group/view{$suffix}.js" ), + array( '@wordpress/interactivity' ), + defined( 'GUTENBERG_VERSION' ) ? GUTENBERG_VERSION : get_bloginfo( 'version' ) + ); + + wp_enqueue_script_module( '@wordpress/block-library/accordion-group' ); + + if ( ! $content ) { + return $content; + } + + $p = new WP_HTML_Tag_Processor( $content ); + $autoclose = $attributes['autoclose']; + + while ( $p->next_tag() ) { + if ( $p->has_class( 'wp-block-accordion-group' ) ) { + $p->set_attribute( 'data-wp-interactive', 'core/accordion' ); + $p->set_attribute( 'data-wp-context', '{"isOpen":[],"autoclose":"' . $autoclose . '"}' ); + } + } + + return $p->get_updated_html(); } /** @@ -35,10 +49,11 @@ function block_core_accordion_group_render( $attributes, $content ) { * @since 6.6.0 */ function register_block_core_accordion_group() { - register_block_type_from_metadata( - __DIR__ . '/accordion-group', - array( - 'render_callback' => 'block_core_accordion_group_render', - ) - ); -} \ No newline at end of file + register_block_type_from_metadata( + __DIR__ . '/accordion-group', + array( + 'render_callback' => 'render_block_core_accordion_group', + ) + ); +} +add_action( 'init', 'register_block_core_accordion_group' ); diff --git a/packages/block-library/src/accordion-group/save.js b/packages/block-library/src/accordion-group/save.js index 9a233dd8aa42ca..2b03d9bbcd0878 100644 --- a/packages/block-library/src/accordion-group/save.js +++ b/packages/block-library/src/accordion-group/save.js @@ -5,18 +5,19 @@ import clsx from 'clsx'; /** * WordPress dependencies */ -import { InnerBlocks, useBlockProps } from '@wordpress/block-editor'; +import { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor'; export default function save( { attributes } ) { const { iconPosition } = attributes; - - const className = clsx( { - 'icon-position-left': iconPosition === 'left', - } ); + const blockProps = useBlockProps.save(); + const className = clsx( + { + 'icon-position-left': iconPosition === 'left', + }, + blockProps.className + ); return ( -
- -
+
); } diff --git a/packages/block-library/src/accordion-group/style.scss b/packages/block-library/src/accordion-group/style.scss index 58427e0faed63d..00139345cba8b4 100644 --- a/packages/block-library/src/accordion-group/style.scss +++ b/packages/block-library/src/accordion-group/style.scss @@ -1,92 +1,94 @@ -.wp-block-accordion-item { - display: grid; - grid-template-rows: max-content 0fr; -} - -.wp-block-accordion-item.is-open { - grid-template-rows: max-content 1fr; -} - -.wp-block-accordion-item .accordion-item__heading { - color: inherit; - padding: 0; - margin: 0; -} - -.accordion-item__toggle { - font-family: inherit; - font-size: inherit; - font-weight: inherit; - line-height: inherit; - letter-spacing: inherit; - text-transform: inherit; - text-decoration: inherit; - word-spacing: inherit; - background: none; - border: none; - color: inherit; - padding: 0; - cursor: pointer; - outline: none; - display: flex; - align-items: center; - text-align: inherit; - position: relative; - width: 100%; -} +.wp-block-accordion-group { + .wp-block-accordion-item { + display: grid; + grid-template-rows: max-content 0fr; + } -.accordion-item__toggle > span { - width: 100%; -} + .wp-block-accordion-item.is-open { + grid-template-rows: max-content 1fr; + } -.is-layout-flow > .wp-block-accordion-content, -.wp-block-accordion-content { - overflow: hidden; - margin: 0; -} + .wp-block-accordion-item .accordion-item__heading { + color: inherit; + padding: 0; + margin: 0; + } + .accordion-item__toggle { + font-family: inherit; + font-size: inherit; + font-weight: inherit; + line-height: inherit; + letter-spacing: inherit; + text-transform: inherit; + text-decoration: inherit; + word-spacing: inherit; + background: none; + border: none; + color: inherit; + padding: 0; + cursor: pointer; + outline: none; + display: flex; + align-items: center; + text-align: inherit; + position: relative; + width: 100%; + } -/* No icon block style */ -.is-style-no-icon .accordion-item__toggle-icon { - background-color: unset; -} + .accordion-item__toggle > span { + width: 100%; + } -.wp-block-accordion-trigger.icon-position-left .accordion-item__toggle { - /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */ - flex-direction: row-reverse; -} + .is-layout-flow > .wp-block-accordion-content, + .wp-block-accordion-content { + overflow: hidden; + margin: 0; + } -.accordion-item__toggle:focus, -.accordion-item__toggle:focus-visible { - outline: 2px solid -webkit-focus-ring-color; - outline-offset: 2px; -} -/* Add transitions only for users who do not prefer reduced motion */ -@media (prefers-reduced-motion: no-preference) { - .wp-block-accordion-item .accordion-item__toggle-icon { - transition: transform 0.2s ease-in-out; + /* No icon block style */ + .is-style-no-icon .accordion-item__toggle-icon { + background-color: unset; } - .wp-block-accordion-item { - transition: grid-template-rows 0.3s ease-out; + .wp-block-accordion-trigger.icon-position-left .accordion-item__toggle { + /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */ + flex-direction: row-reverse; } -} -.is-open { - .accordion-item__toggle-icon.has-icon-plus { - transform: rotate(45deg); - } - .accordion-item__toggle-icon.has-icon-chevron { - transform: rotate(-180deg); - } - .accordion-item__toggle-icon.has-icon-circlePlus { - transform: rotate(45deg); + .accordion-item__toggle:focus, + .accordion-item__toggle:focus-visible { + outline: 2px solid -webkit-focus-ring-color; + outline-offset: 2px; } - .accordion-item__toggle-icon.has-icon-caret { - transform: rotate(-180deg); + + /* Add transitions only for users who do not prefer reduced motion */ + @media (prefers-reduced-motion: no-preference) { + .wp-block-accordion-item .accordion-item__toggle-icon { + transition: transform 0.2s ease-in-out; + } + + .wp-block-accordion-item { + transition: grid-template-rows 0.3s ease-out; + } } - .accordion-item__toggle-icon.has-icon-chevronRight { - transform: rotate(90deg); + + .is-open { + .accordion-item__toggle-icon.has-icon-plus { + transform: rotate(45deg); + } + .accordion-item__toggle-icon.has-icon-chevron { + transform: rotate(-180deg); + } + .accordion-item__toggle-icon.has-icon-circlePlus { + transform: rotate(45deg); + } + .accordion-item__toggle-icon.has-icon-caret { + transform: rotate(-180deg); + } + .accordion-item__toggle-icon.has-icon-chevronRight { + transform: rotate(90deg); + } } } diff --git a/packages/block-library/src/accordion-item/block.json b/packages/block-library/src/accordion-item/block.json index 2bc050ecd50634..6306362a014588 100644 --- a/packages/block-library/src/accordion-item/block.json +++ b/packages/block-library/src/accordion-item/block.json @@ -7,6 +7,7 @@ "category": "design", "description": "A single accordion that displays a header and expandable content.", "example": {}, + "__experimental": true, "parent": [ "core/accordion-group" ], "allowedBlocks": [ "core/accordion-trigger", "core/accordion-content" ], "supports": { diff --git a/packages/block-library/src/accordion-item/edit.js b/packages/block-library/src/accordion-item/edit.js index aee5eb8569114f..7dd0c503bbf6cb 100644 --- a/packages/block-library/src/accordion-item/edit.js +++ b/packages/block-library/src/accordion-item/edit.js @@ -21,20 +21,23 @@ export default function Edit( { clientId, setAttributes, } ) { - /* eslint-disable-next-line no-shadow */ - const [ isSelected, getBlockOrder ] = useSelect( + const isSelected = useSelect( ( select ) => { - const { isBlockSelected, hasSelectedInnerBlock, getBlockOrder } = + const { isBlockSelected, hasSelectedInnerBlock } = select( blockEditorStore ); - return [ + return ( isBlockSelected( clientId ) || - hasSelectedInnerBlock( clientId, true ), - getBlockOrder, - ]; + hasSelectedInnerBlock( clientId, true ) + ); }, [ clientId ] ); + const getBlockOrder = useSelect( + ( select ) => select( blockEditorStore ).getBlockOrder, + [] + ); + const contentBlockClientId = getBlockOrder( clientId )[ 1 ]; const { updateBlockAttributes, __unstableMarkNextChangeAsNotPersistent } = useDispatch( blockEditorStore ); diff --git a/packages/block-library/src/accordion-item/index.js b/packages/block-library/src/accordion-item/index.js index 4df66debf0c0eb..f54dd6be83bdc7 100644 --- a/packages/block-library/src/accordion-item/index.js +++ b/packages/block-library/src/accordion-item/index.js @@ -5,7 +5,7 @@ import { SVG, Path } from '@wordpress/components'; /** * Internal dependencies */ -import Edit from './edit'; +import edit from './edit'; import save from './save'; import metadata from './block.json'; import initBlock from '../utils/init-block'; @@ -47,7 +47,7 @@ export { metadata, name }; export const settings = { icon, example: {}, - Edit, + edit, save, }; diff --git a/packages/block-library/src/accordion-item/index.php b/packages/block-library/src/accordion-item/index.php index d37b020244512d..bc085511819d3a 100644 --- a/packages/block-library/src/accordion-item/index.php +++ b/packages/block-library/src/accordion-item/index.php @@ -1,56 +1,56 @@ next_tag() ){ - if ( $p->has_class( 'wp-block-accordion-item') ) { - $p->set_attribute( 'id', $unique_id ); - $p->set_attribute( 'data-wp-class--is-open', 'state.isOpen' ); - if ( $attributes['openByDefault'] ) { - $p->set_attribute( 'data-wp-init', 'callbacks.open' ); - } - } - } + $p = new WP_HTML_Tag_Processor( $content ); + $unique_id = wp_unique_id( 'accordion-item-' ); - $content = $p->get_updated_html(); - $p = new WP_HTML_Tag_Processor( $content ); + while ( $p->next_tag() ) { + if ( $p->has_class( 'wp-block-accordion-item' ) ) { + $p->set_attribute( 'id', $unique_id ); + $p->set_attribute( 'data-wp-class--is-open', 'state.isOpen' ); + if ( $attributes['openByDefault'] ) { + $p->set_attribute( 'data-wp-init', 'callbacks.open' ); + } + } + } - while ( $p->next_tag() ){ - if ( $p->has_class( 'accordion-item__toggle' ) ) { - $p->set_attribute( 'data-wp-on--click', 'actions.toggle' ); - $p->set_attribute( 'aria-controls', $unique_id ); - $p->set_attribute( 'data-wp-bind--aria-expanded', 'state.isOpen' ); - } - } + $content = $p->get_updated_html(); + $p = new WP_HTML_Tag_Processor( $content ); - $content = $p->get_updated_html(); - $p = new WP_HTML_Tag_Processor( $content ); + while ( $p->next_tag() ) { + if ( $p->has_class( 'accordion-item__toggle' ) ) { + $p->set_attribute( 'data-wp-on--click', 'actions.toggle' ); + $p->set_attribute( 'aria-controls', $unique_id ); + $p->set_attribute( 'data-wp-bind--aria-expanded', 'state.isOpen' ); + } + } - while ( $p->next_tag() ){ - if ( $p->has_class( 'wp-block-accordion-content' ) ) { - $p->set_attribute( 'aria-labelledby', $unique_id ); - $p->set_attribute( 'data-wp-bind--aria-hidden', '!state.isOpen' ); - } - } + $content = $p->get_updated_html(); + $p = new WP_HTML_Tag_Processor( $content ); - return $p->get_updated_html(); + while ( $p->next_tag() ) { + if ( $p->has_class( 'wp-block-accordion-content' ) ) { + $p->set_attribute( 'aria-labelledby', $unique_id ); + $p->set_attribute( 'data-wp-bind--aria-hidden', '!state.isOpen' ); + } + } + + return $p->get_updated_html(); } /** @@ -59,10 +59,11 @@ function block_core_accordion_item_render( $attributes, $content ) { * @since 6.6.0 */ function register_block_core_accordion_item() { - register_block_type_from_metadata( - __DIR__ . '/accordion-item', - array( - 'render_callback' => 'block_core_accordion_item_render', - ) - ); -} \ No newline at end of file + register_block_type_from_metadata( + __DIR__ . '/accordion-item', + array( + 'render_callback' => 'block_core_accordion_item_render', + ) + ); +} +add_action( 'init', 'register_block_core_accordion_item' ); diff --git a/packages/block-library/src/accordion-item/save.js b/packages/block-library/src/accordion-item/save.js index 000acdcd4a6055..04d95466593c70 100644 --- a/packages/block-library/src/accordion-item/save.js +++ b/packages/block-library/src/accordion-item/save.js @@ -1,12 +1,25 @@ /** * WordPress dependencies */ -import { InnerBlocks, useBlockProps } from '@wordpress/block-editor'; +import { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor'; +/** + * External dependencies + */ +import clsx from 'clsx'; -export default function save() { - return ( -
- -
+export default function save( { attributes } ) { + const { openByDefault } = attributes; + const blockProps = useBlockProps.save(); + const className = clsx( + { + 'is-open': openByDefault, + }, + blockProps.className ); + const innerBlocksProps = useInnerBlocksProps.save( { + ...blockProps, + className, + } ); + + return
; } diff --git a/packages/block-library/src/accordion-trigger/block.json b/packages/block-library/src/accordion-trigger/block.json index 863fe5d347f4d2..723c91ee677cbe 100644 --- a/packages/block-library/src/accordion-trigger/block.json +++ b/packages/block-library/src/accordion-trigger/block.json @@ -7,6 +7,7 @@ "category": "design", "description": "Accordion item trigger.", "example": {}, + "__experimental": true, "parent": [ "core/accordion-item" ], "supports": { "anchor": true, diff --git a/packages/block-library/src/accordion-trigger/index.js b/packages/block-library/src/accordion-trigger/index.js index 80aecf020dc52d..5858f025c228dd 100644 --- a/packages/block-library/src/accordion-trigger/index.js +++ b/packages/block-library/src/accordion-trigger/index.js @@ -5,7 +5,7 @@ import { SVG, Path } from '@wordpress/components'; /** * Internal dependencies */ -import Edit from './edit'; +import edit from './edit'; import save from './save'; import metadata from './block.json'; import initBlock from '../utils/init-block'; @@ -35,7 +35,7 @@ export { metadata, name }; export const settings = { icon, example: {}, - Edit, + edit, save, }; diff --git a/tools/webpack/interactivity.js b/tools/webpack/interactivity.js index cbde31171fe26e..67d5879f738ad4 100644 --- a/tools/webpack/interactivity.js +++ b/tools/webpack/interactivity.js @@ -25,6 +25,7 @@ module.exports = { image: './packages/block-library/src/image/view.js', file: './packages/block-library/src/file/view.js', search: './packages/block-library/src/search/view.js', + accordionGroup: './packages/block-library/src/accordion-group/view.js', }, experiments: { outputModule: true,