@wordpress/widgets 3.1.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 3.3.0 (2023-02-01)
6
+
7
+ ## 3.2.0 (2023-01-11)
8
+
5
9
  ## 3.1.0 (2023-01-02)
6
10
 
7
11
  ## 3.0.0 (2022-12-14)
package/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ## Gutenberg
2
2
 
3
- Copyright 2016-2022 by the contributors
3
+ Copyright 2016-2023 by the contributors
4
4
 
5
5
  **License for Contributions (on and after April 15, 2021)**
6
6
 
@@ -75,7 +75,7 @@ function Empty(_ref) {
75
75
  icon: _icons.brush
76
76
  }),
77
77
  label: (0, _i18n.__)('Legacy Widget')
78
- }, (0, _element.createElement)(_widgetTypeSelector.default, {
78
+ }, (0, _element.createElement)(_components.Flex, null, (0, _element.createElement)(_components.FlexBlock, null, (0, _element.createElement)(_widgetTypeSelector.default, {
79
79
  selectedId: id !== null && id !== void 0 ? id : idBase,
80
80
  onSelect: _ref2 => {
81
81
  let {
@@ -103,7 +103,7 @@ function Empty(_ref) {
103
103
  });
104
104
  }
105
105
  }
106
- }));
106
+ }))));
107
107
  }
108
108
 
109
109
  function NotEmpty(_ref3) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/index.js"],"names":["Edit","props","id","idBase","attributes","isWide","blockProps","className","Empty","setAttributes","brushIcon","selectedId","isMulti","instance","NotEmpty","clientId","isSelected","hasPreview","setHasPreview","widgetTypeId","record","widgetType","hasResolved","hasResolvedWidgetType","isNavigationMode","select","blockEditorStore","setInstance","nextInstance","mode","raw","name","description"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, Placeholder } from '@wordpress/components';\nimport { brush as brushIcon } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecord } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport WidgetTypeSelector from './widget-type-selector';\nimport InspectorCard from './inspector-card';\nimport Form from './form';\nimport Preview from './preview';\nimport NoPreview from './no-preview';\nimport ConvertToBlocksButton from './convert-to-blocks-button';\n\nexport default function Edit( props ) {\n\tconst { id, idBase } = props.attributes;\n\tconst { isWide = false } = props;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-wide-widget': isWide,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ ! id && ! idBase ? (\n\t\t\t\t<Empty { ...props } />\n\t\t\t) : (\n\t\t\t\t<NotEmpty { ...props } />\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Empty( { attributes: { id, idBase }, setAttributes } ) {\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t>\n\t\t\t<WidgetTypeSelector\n\t\t\t\tselectedId={ id ?? idBase }\n\t\t\t\tonSelect={ ( { selectedId, isMulti } ) => {\n\t\t\t\t\tif ( ! selectedId ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else if ( isMulti ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\tidBase: selectedId,\n\t\t\t\t\t\t\tinstance: {},\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: selectedId,\n\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\tinstance: null,\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</Placeholder>\n\t);\n}\n\nfunction NotEmpty( {\n\tattributes: { id, idBase, instance },\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tisWide = false,\n} ) {\n\tconst [ hasPreview, setHasPreview ] = useState( null );\n\n\tconst widgetTypeId = id ?? idBase;\n\tconst { record: widgetType, hasResolved: hasResolvedWidgetType } =\n\t\tuseEntityRecord( 'root', 'widgetType', widgetTypeId );\n\n\tconst isNavigationMode = useSelect(\n\t\t( select ) => select( blockEditorStore ).isNavigationMode(),\n\t\t[]\n\t);\n\n\tconst setInstance = useCallback( ( nextInstance ) => {\n\t\tsetAttributes( { instance: nextInstance } );\n\t}, [] );\n\n\tif ( ! widgetType && hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Widget is missing.' ) }\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tif ( ! hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tconst mode =\n\t\tidBase && ( isNavigationMode || ! isSelected ) ? 'preview' : 'edit';\n\n\treturn (\n\t\t<>\n\t\t\t{ idBase === 'text' && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<ConvertToBlocksButton\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\trawInstance={ instance.raw }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t<InspectorControls>\n\t\t\t\t<InspectorCard\n\t\t\t\t\tname={ widgetType.name }\n\t\t\t\t\tdescription={ widgetType.description }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\n\t\t\t<Form\n\t\t\t\ttitle={ widgetType.name }\n\t\t\t\tisVisible={ mode === 'edit' }\n\t\t\t\tid={ id }\n\t\t\t\tidBase={ idBase }\n\t\t\t\tinstance={ instance }\n\t\t\t\tisWide={ isWide }\n\t\t\t\tonChangeInstance={ setInstance }\n\t\t\t\tonChangeHasPreview={ setHasPreview }\n\t\t\t/>\n\n\t\t\t{ idBase && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasPreview === null && mode === 'preview' && (\n\t\t\t\t\t\t<Placeholder>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</Placeholder>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === true && (\n\t\t\t\t\t\t<Preview\n\t\t\t\t\t\t\tidBase={ idBase }\n\t\t\t\t\t\t\tinstance={ instance }\n\t\t\t\t\t\t\tisVisible={ mode === 'preview' }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === false && mode === 'preview' && (\n\t\t\t\t\t\t<NoPreview name={ widgetType.name } />\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/index.js"],"names":["Edit","props","id","idBase","attributes","isWide","blockProps","className","Empty","setAttributes","brushIcon","selectedId","isMulti","instance","NotEmpty","clientId","isSelected","hasPreview","setHasPreview","widgetTypeId","record","widgetType","hasResolved","hasResolvedWidgetType","isNavigationMode","select","blockEditorStore","setInstance","nextInstance","mode","raw","name","description"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Flex, FlexBlock, Spinner, Placeholder } from '@wordpress/components';\nimport { brush as brushIcon } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecord } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport WidgetTypeSelector from './widget-type-selector';\nimport InspectorCard from './inspector-card';\nimport Form from './form';\nimport Preview from './preview';\nimport NoPreview from './no-preview';\nimport ConvertToBlocksButton from './convert-to-blocks-button';\n\nexport default function Edit( props ) {\n\tconst { id, idBase } = props.attributes;\n\tconst { isWide = false } = props;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-wide-widget': isWide,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ ! id && ! idBase ? (\n\t\t\t\t<Empty { ...props } />\n\t\t\t) : (\n\t\t\t\t<NotEmpty { ...props } />\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Empty( { attributes: { id, idBase }, setAttributes } ) {\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t>\n\t\t\t<Flex>\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<WidgetTypeSelector\n\t\t\t\t\t\tselectedId={ id ?? idBase }\n\t\t\t\t\t\tonSelect={ ( { selectedId, isMulti } ) => {\n\t\t\t\t\t\t\tif ( ! selectedId ) {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} else if ( isMulti ) {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\t\t\tidBase: selectedId,\n\t\t\t\t\t\t\t\t\tinstance: {},\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: selectedId,\n\t\t\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t</Flex>\n\t\t</Placeholder>\n\t);\n}\n\nfunction NotEmpty( {\n\tattributes: { id, idBase, instance },\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tisWide = false,\n} ) {\n\tconst [ hasPreview, setHasPreview ] = useState( null );\n\n\tconst widgetTypeId = id ?? idBase;\n\tconst { record: widgetType, hasResolved: hasResolvedWidgetType } =\n\t\tuseEntityRecord( 'root', 'widgetType', widgetTypeId );\n\n\tconst isNavigationMode = useSelect(\n\t\t( select ) => select( blockEditorStore ).isNavigationMode(),\n\t\t[]\n\t);\n\n\tconst setInstance = useCallback( ( nextInstance ) => {\n\t\tsetAttributes( { instance: nextInstance } );\n\t}, [] );\n\n\tif ( ! widgetType && hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Widget is missing.' ) }\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tif ( ! hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tconst mode =\n\t\tidBase && ( isNavigationMode || ! isSelected ) ? 'preview' : 'edit';\n\n\treturn (\n\t\t<>\n\t\t\t{ idBase === 'text' && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<ConvertToBlocksButton\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\trawInstance={ instance.raw }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t<InspectorControls>\n\t\t\t\t<InspectorCard\n\t\t\t\t\tname={ widgetType.name }\n\t\t\t\t\tdescription={ widgetType.description }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\n\t\t\t<Form\n\t\t\t\ttitle={ widgetType.name }\n\t\t\t\tisVisible={ mode === 'edit' }\n\t\t\t\tid={ id }\n\t\t\t\tidBase={ idBase }\n\t\t\t\tinstance={ instance }\n\t\t\t\tisWide={ isWide }\n\t\t\t\tonChangeInstance={ setInstance }\n\t\t\t\tonChangeHasPreview={ setHasPreview }\n\t\t\t/>\n\n\t\t\t{ idBase && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasPreview === null && mode === 'preview' && (\n\t\t\t\t\t\t<Placeholder>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</Placeholder>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === true && (\n\t\t\t\t\t\t<Preview\n\t\t\t\t\t\t\tidBase={ idBase }\n\t\t\t\t\t\t\tinstance={ instance }\n\t\t\t\t\t\t\tisVisible={ mode === 'preview' }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === false && mode === 'preview' && (\n\t\t\t\t\t\t<NoPreview name={ widgetType.name } />\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -43,6 +43,7 @@ function WidgetTypeSelector(_ref) {
43
43
  }
44
44
 
45
45
  return (0, _element.createElement)(_components.SelectControl, {
46
+ __nextHasNoMarginBottom: true,
46
47
  label: (0, _i18n.__)('Select a legacy widget to display:'),
47
48
  value: selectedId !== null && selectedId !== void 0 ? selectedId : '',
48
49
  options: [{
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/widget-type-selector.js"],"names":["WidgetTypeSelector","selectedId","onSelect","widgetTypes","select","hiddenIds","blockEditorStore","getSettings","widgetTypesToHideFromLegacyWidgetBlock","coreStore","getWidgetTypes","per_page","filter","widgetType","includes","id","length","value","label","map","name","selected","find","isMulti","is_multi"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAPA;AACA;AACA;AAOe,SAASA,kBAAT,OAAwD;AAAA,MAA3B;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAA2B;AACtE,QAAMC,WAAW,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC5C,UAAMC,SAAS,mDACdD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,EADc,wDACd,oBACGC,sCAFW,yEAE+B,EAF9C;AAGA,oCAAOJ,MAAM,CAAEK,eAAF,CAAN,CACLC,cADK,CACW;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KADX,CAAP,0DAAO,sBAEJC,MAFI,CAEMC,UAAF,IAAkB,CAAER,SAAS,CAACS,QAAV,CAAoBD,UAAU,CAACE,EAA/B,CAFxB,CAAP;AAGA,GAPmB,EAOjB,EAPiB,CAApB;;AASA,MAAK,CAAEZ,WAAP,EAAqB;AACpB,WAAO,4BAAC,mBAAD,OAAP;AACA;;AAED,MAAKA,WAAW,CAACa,MAAZ,KAAuB,CAA5B,EAAgC;AAC/B,WAAO,cAAI,iCAAJ,CAAP;AACA;;AAED,SACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,oCAAJ,CADT;AAEC,IAAA,KAAK,EAAGf,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EAFvB;AAGC,IAAA,OAAO,EAAG,CACT;AAAEgB,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,KAAK,EAAE,cAAI,eAAJ;AAApB,KADS,EAET,GAAGf,WAAW,CAACgB,GAAZ,CAAmBN,UAAF,KAAoB;AACvCI,MAAAA,KAAK,EAAEJ,UAAU,CAACE,EADqB;AAEvCG,MAAAA,KAAK,EAAEL,UAAU,CAACO;AAFqB,KAApB,CAAjB,CAFM,CAHX;AAUC,IAAA,QAAQ,EAAKH,KAAF,IAAa;AACvB,UAAKA,KAAL,EAAa;AACZ,cAAMI,QAAQ,GAAGlB,WAAW,CAACmB,IAAZ,CACdT,UAAF,IAAkBA,UAAU,CAACE,EAAX,KAAkBE,KADpB,CAAjB;AAGAf,QAAAA,QAAQ,CAAE;AACTD,UAAAA,UAAU,EAAEoB,QAAQ,CAACN,EADZ;AAETQ,UAAAA,OAAO,EAAEF,QAAQ,CAACG;AAFT,SAAF,CAAR;AAIA,OARD,MAQO;AACNtB,QAAAA,QAAQ,CAAE;AAAED,UAAAA,UAAU,EAAE;AAAd,SAAF,CAAR;AACA;AACD;AAtBF,IADD;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Spinner, SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function WidgetTypeSelector( { selectedId, onSelect } ) {\n\tconst widgetTypes = useSelect( ( select ) => {\n\t\tconst hiddenIds =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t?.widgetTypesToHideFromLegacyWidgetBlock ?? [];\n\t\treturn select( coreStore )\n\t\t\t.getWidgetTypes( { per_page: -1 } )\n\t\t\t?.filter( ( widgetType ) => ! hiddenIds.includes( widgetType.id ) );\n\t}, [] );\n\n\tif ( ! widgetTypes ) {\n\t\treturn <Spinner />;\n\t}\n\n\tif ( widgetTypes.length === 0 ) {\n\t\treturn __( 'There are no widgets available.' );\n\t}\n\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Select a legacy widget to display:' ) }\n\t\t\tvalue={ selectedId ?? '' }\n\t\t\toptions={ [\n\t\t\t\t{ value: '', label: __( 'Select widget' ) },\n\t\t\t\t...widgetTypes.map( ( widgetType ) => ( {\n\t\t\t\t\tvalue: widgetType.id,\n\t\t\t\t\tlabel: widgetType.name,\n\t\t\t\t} ) ),\n\t\t\t] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value ) {\n\t\t\t\t\tconst selected = widgetTypes.find(\n\t\t\t\t\t\t( widgetType ) => widgetType.id === value\n\t\t\t\t\t);\n\t\t\t\t\tonSelect( {\n\t\t\t\t\t\tselectedId: selected.id,\n\t\t\t\t\t\tisMulti: selected.is_multi,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonSelect( { selectedId: null } );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/widget-type-selector.js"],"names":["WidgetTypeSelector","selectedId","onSelect","widgetTypes","select","hiddenIds","blockEditorStore","getSettings","widgetTypesToHideFromLegacyWidgetBlock","coreStore","getWidgetTypes","per_page","filter","widgetType","includes","id","length","value","label","map","name","selected","find","isMulti","is_multi"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAPA;AACA;AACA;AAOe,SAASA,kBAAT,OAAwD;AAAA,MAA3B;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAA2B;AACtE,QAAMC,WAAW,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC5C,UAAMC,SAAS,mDACdD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,EADc,wDACd,oBACGC,sCAFW,yEAE+B,EAF9C;AAGA,oCAAOJ,MAAM,CAAEK,eAAF,CAAN,CACLC,cADK,CACW;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KADX,CAAP,0DAAO,sBAEJC,MAFI,CAEMC,UAAF,IAAkB,CAAER,SAAS,CAACS,QAAV,CAAoBD,UAAU,CAACE,EAA/B,CAFxB,CAAP;AAGA,GAPmB,EAOjB,EAPiB,CAApB;;AASA,MAAK,CAAEZ,WAAP,EAAqB;AACpB,WAAO,4BAAC,mBAAD,OAAP;AACA;;AAED,MAAKA,WAAW,CAACa,MAAZ,KAAuB,CAA5B,EAAgC;AAC/B,WAAO,cAAI,iCAAJ,CAAP;AACA;;AAED,SACC,4BAAC,yBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,oCAAJ,CAFT;AAGC,IAAA,KAAK,EAAGf,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EAHvB;AAIC,IAAA,OAAO,EAAG,CACT;AAAEgB,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,KAAK,EAAE,cAAI,eAAJ;AAApB,KADS,EAET,GAAGf,WAAW,CAACgB,GAAZ,CAAmBN,UAAF,KAAoB;AACvCI,MAAAA,KAAK,EAAEJ,UAAU,CAACE,EADqB;AAEvCG,MAAAA,KAAK,EAAEL,UAAU,CAACO;AAFqB,KAApB,CAAjB,CAFM,CAJX;AAWC,IAAA,QAAQ,EAAKH,KAAF,IAAa;AACvB,UAAKA,KAAL,EAAa;AACZ,cAAMI,QAAQ,GAAGlB,WAAW,CAACmB,IAAZ,CACdT,UAAF,IAAkBA,UAAU,CAACE,EAAX,KAAkBE,KADpB,CAAjB;AAGAf,QAAAA,QAAQ,CAAE;AACTD,UAAAA,UAAU,EAAEoB,QAAQ,CAACN,EADZ;AAETQ,UAAAA,OAAO,EAAEF,QAAQ,CAACG;AAFT,SAAF,CAAR;AAIA,OARD,MAQO;AACNtB,QAAAA,QAAQ,CAAE;AAAED,UAAAA,UAAU,EAAE;AAAd,SAAF,CAAR;AACA;AACD;AAvBF,IADD;AA2BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Spinner, SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function WidgetTypeSelector( { selectedId, onSelect } ) {\n\tconst widgetTypes = useSelect( ( select ) => {\n\t\tconst hiddenIds =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t?.widgetTypesToHideFromLegacyWidgetBlock ?? [];\n\t\treturn select( coreStore )\n\t\t\t.getWidgetTypes( { per_page: -1 } )\n\t\t\t?.filter( ( widgetType ) => ! hiddenIds.includes( widgetType.id ) );\n\t}, [] );\n\n\tif ( ! widgetTypes ) {\n\t\treturn <Spinner />;\n\t}\n\n\tif ( widgetTypes.length === 0 ) {\n\t\treturn __( 'There are no widgets available.' );\n\t}\n\n\treturn (\n\t\t<SelectControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Select a legacy widget to display:' ) }\n\t\t\tvalue={ selectedId ?? '' }\n\t\t\toptions={ [\n\t\t\t\t{ value: '', label: __( 'Select widget' ) },\n\t\t\t\t...widgetTypes.map( ( widgetType ) => ( {\n\t\t\t\t\tvalue: widgetType.id,\n\t\t\t\t\tlabel: widgetType.name,\n\t\t\t\t} ) ),\n\t\t\t] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value ) {\n\t\t\t\t\tconst selected = widgetTypes.find(\n\t\t\t\t\t\t( widgetType ) => widgetType.id === value\n\t\t\t\t\t);\n\t\t\t\t\tonSelect( {\n\t\t\t\t\t\tselectedId: selected.id,\n\t\t\t\t\t\tisMulti: selected.is_multi,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonSelect( { selectedId: null } );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
@@ -9,7 +9,7 @@ import classnames from 'classnames';
9
9
  */
10
10
 
11
11
  import { useBlockProps, BlockControls, InspectorControls, BlockIcon, store as blockEditorStore } from '@wordpress/block-editor';
12
- import { Spinner, Placeholder } from '@wordpress/components';
12
+ import { Flex, FlexBlock, Spinner, Placeholder } from '@wordpress/components';
13
13
  import { brush as brushIcon } from '@wordpress/icons';
14
14
  import { __ } from '@wordpress/i18n';
15
15
  import { useState, useCallback } from '@wordpress/element';
@@ -54,7 +54,7 @@ function Empty(_ref) {
54
54
  icon: brushIcon
55
55
  }),
56
56
  label: __('Legacy Widget')
57
- }, createElement(WidgetTypeSelector, {
57
+ }, createElement(Flex, null, createElement(FlexBlock, null, createElement(WidgetTypeSelector, {
58
58
  selectedId: id !== null && id !== void 0 ? id : idBase,
59
59
  onSelect: _ref2 => {
60
60
  let {
@@ -82,7 +82,7 @@ function Empty(_ref) {
82
82
  });
83
83
  }
84
84
  }
85
- }));
85
+ }))));
86
86
  }
87
87
 
88
88
  function NotEmpty(_ref3) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/index.js"],"names":["classnames","useBlockProps","BlockControls","InspectorControls","BlockIcon","store","blockEditorStore","Spinner","Placeholder","brush","brushIcon","__","useState","useCallback","useSelect","useEntityRecord","WidgetTypeSelector","InspectorCard","Form","Preview","NoPreview","ConvertToBlocksButton","Edit","props","id","idBase","attributes","isWide","blockProps","className","Empty","setAttributes","selectedId","isMulti","instance","NotEmpty","clientId","isSelected","hasPreview","setHasPreview","widgetTypeId","record","widgetType","hasResolved","hasResolvedWidgetType","isNavigationMode","select","setInstance","nextInstance","mode","raw","name","description"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, Placeholder } from '@wordpress/components';\nimport { brush as brushIcon } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecord } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport WidgetTypeSelector from './widget-type-selector';\nimport InspectorCard from './inspector-card';\nimport Form from './form';\nimport Preview from './preview';\nimport NoPreview from './no-preview';\nimport ConvertToBlocksButton from './convert-to-blocks-button';\n\nexport default function Edit( props ) {\n\tconst { id, idBase } = props.attributes;\n\tconst { isWide = false } = props;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-wide-widget': isWide,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ ! id && ! idBase ? (\n\t\t\t\t<Empty { ...props } />\n\t\t\t) : (\n\t\t\t\t<NotEmpty { ...props } />\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Empty( { attributes: { id, idBase }, setAttributes } ) {\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t>\n\t\t\t<WidgetTypeSelector\n\t\t\t\tselectedId={ id ?? idBase }\n\t\t\t\tonSelect={ ( { selectedId, isMulti } ) => {\n\t\t\t\t\tif ( ! selectedId ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else if ( isMulti ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\tidBase: selectedId,\n\t\t\t\t\t\t\tinstance: {},\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: selectedId,\n\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\tinstance: null,\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</Placeholder>\n\t);\n}\n\nfunction NotEmpty( {\n\tattributes: { id, idBase, instance },\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tisWide = false,\n} ) {\n\tconst [ hasPreview, setHasPreview ] = useState( null );\n\n\tconst widgetTypeId = id ?? idBase;\n\tconst { record: widgetType, hasResolved: hasResolvedWidgetType } =\n\t\tuseEntityRecord( 'root', 'widgetType', widgetTypeId );\n\n\tconst isNavigationMode = useSelect(\n\t\t( select ) => select( blockEditorStore ).isNavigationMode(),\n\t\t[]\n\t);\n\n\tconst setInstance = useCallback( ( nextInstance ) => {\n\t\tsetAttributes( { instance: nextInstance } );\n\t}, [] );\n\n\tif ( ! widgetType && hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Widget is missing.' ) }\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tif ( ! hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tconst mode =\n\t\tidBase && ( isNavigationMode || ! isSelected ) ? 'preview' : 'edit';\n\n\treturn (\n\t\t<>\n\t\t\t{ idBase === 'text' && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<ConvertToBlocksButton\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\trawInstance={ instance.raw }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t<InspectorControls>\n\t\t\t\t<InspectorCard\n\t\t\t\t\tname={ widgetType.name }\n\t\t\t\t\tdescription={ widgetType.description }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\n\t\t\t<Form\n\t\t\t\ttitle={ widgetType.name }\n\t\t\t\tisVisible={ mode === 'edit' }\n\t\t\t\tid={ id }\n\t\t\t\tidBase={ idBase }\n\t\t\t\tinstance={ instance }\n\t\t\t\tisWide={ isWide }\n\t\t\t\tonChangeInstance={ setInstance }\n\t\t\t\tonChangeHasPreview={ setHasPreview }\n\t\t\t/>\n\n\t\t\t{ idBase && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasPreview === null && mode === 'preview' && (\n\t\t\t\t\t\t<Placeholder>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</Placeholder>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === true && (\n\t\t\t\t\t\t<Preview\n\t\t\t\t\t\t\tidBase={ idBase }\n\t\t\t\t\t\t\tinstance={ instance }\n\t\t\t\t\t\t\tisVisible={ mode === 'preview' }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === false && mode === 'preview' && (\n\t\t\t\t\t\t<NoPreview name={ widgetType.name } />\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/index.js"],"names":["classnames","useBlockProps","BlockControls","InspectorControls","BlockIcon","store","blockEditorStore","Flex","FlexBlock","Spinner","Placeholder","brush","brushIcon","__","useState","useCallback","useSelect","useEntityRecord","WidgetTypeSelector","InspectorCard","Form","Preview","NoPreview","ConvertToBlocksButton","Edit","props","id","idBase","attributes","isWide","blockProps","className","Empty","setAttributes","selectedId","isMulti","instance","NotEmpty","clientId","isSelected","hasPreview","setHasPreview","widgetTypeId","record","widgetType","hasResolved","hasResolvedWidgetType","isNavigationMode","select","setInstance","nextInstance","mode","raw","name","description"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tBlockControls,\n\tInspectorControls,\n\tBlockIcon,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Flex, FlexBlock, Spinner, Placeholder } from '@wordpress/components';\nimport { brush as brushIcon } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useCallback } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityRecord } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport WidgetTypeSelector from './widget-type-selector';\nimport InspectorCard from './inspector-card';\nimport Form from './form';\nimport Preview from './preview';\nimport NoPreview from './no-preview';\nimport ConvertToBlocksButton from './convert-to-blocks-button';\n\nexport default function Edit( props ) {\n\tconst { id, idBase } = props.attributes;\n\tconst { isWide = false } = props;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-wide-widget': isWide,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ ! id && ! idBase ? (\n\t\t\t\t<Empty { ...props } />\n\t\t\t) : (\n\t\t\t\t<NotEmpty { ...props } />\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Empty( { attributes: { id, idBase }, setAttributes } ) {\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t>\n\t\t\t<Flex>\n\t\t\t\t<FlexBlock>\n\t\t\t\t\t<WidgetTypeSelector\n\t\t\t\t\t\tselectedId={ id ?? idBase }\n\t\t\t\t\t\tonSelect={ ( { selectedId, isMulti } ) => {\n\t\t\t\t\t\t\tif ( ! selectedId ) {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} else if ( isMulti ) {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: null,\n\t\t\t\t\t\t\t\t\tidBase: selectedId,\n\t\t\t\t\t\t\t\t\tinstance: {},\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tid: selectedId,\n\t\t\t\t\t\t\t\t\tidBase: null,\n\t\t\t\t\t\t\t\t\tinstance: null,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</FlexBlock>\n\t\t\t</Flex>\n\t\t</Placeholder>\n\t);\n}\n\nfunction NotEmpty( {\n\tattributes: { id, idBase, instance },\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tisWide = false,\n} ) {\n\tconst [ hasPreview, setHasPreview ] = useState( null );\n\n\tconst widgetTypeId = id ?? idBase;\n\tconst { record: widgetType, hasResolved: hasResolvedWidgetType } =\n\t\tuseEntityRecord( 'root', 'widgetType', widgetTypeId );\n\n\tconst isNavigationMode = useSelect(\n\t\t( select ) => select( blockEditorStore ).isNavigationMode(),\n\t\t[]\n\t);\n\n\tconst setInstance = useCallback( ( nextInstance ) => {\n\t\tsetAttributes( { instance: nextInstance } );\n\t}, [] );\n\n\tif ( ! widgetType && hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\ticon={ <BlockIcon icon={ brushIcon } /> }\n\t\t\t\tlabel={ __( 'Legacy Widget' ) }\n\t\t\t>\n\t\t\t\t{ __( 'Widget is missing.' ) }\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tif ( ! hasResolvedWidgetType ) {\n\t\treturn (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\tconst mode =\n\t\tidBase && ( isNavigationMode || ! isSelected ) ? 'preview' : 'edit';\n\n\treturn (\n\t\t<>\n\t\t\t{ idBase === 'text' && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<ConvertToBlocksButton\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\trawInstance={ instance.raw }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t<InspectorControls>\n\t\t\t\t<InspectorCard\n\t\t\t\t\tname={ widgetType.name }\n\t\t\t\t\tdescription={ widgetType.description }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\n\t\t\t<Form\n\t\t\t\ttitle={ widgetType.name }\n\t\t\t\tisVisible={ mode === 'edit' }\n\t\t\t\tid={ id }\n\t\t\t\tidBase={ idBase }\n\t\t\t\tinstance={ instance }\n\t\t\t\tisWide={ isWide }\n\t\t\t\tonChangeInstance={ setInstance }\n\t\t\t\tonChangeHasPreview={ setHasPreview }\n\t\t\t/>\n\n\t\t\t{ idBase && (\n\t\t\t\t<>\n\t\t\t\t\t{ hasPreview === null && mode === 'preview' && (\n\t\t\t\t\t\t<Placeholder>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</Placeholder>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === true && (\n\t\t\t\t\t\t<Preview\n\t\t\t\t\t\t\tidBase={ idBase }\n\t\t\t\t\t\t\tinstance={ instance }\n\t\t\t\t\t\t\tisVisible={ mode === 'preview' }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasPreview === false && mode === 'preview' && (\n\t\t\t\t\t\t<NoPreview name={ widgetType.name } />\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -31,6 +31,7 @@ export default function WidgetTypeSelector(_ref) {
31
31
  }
32
32
 
33
33
  return createElement(SelectControl, {
34
+ __nextHasNoMarginBottom: true,
34
35
  label: __('Select a legacy widget to display:'),
35
36
  value: selectedId !== null && selectedId !== void 0 ? selectedId : '',
36
37
  options: [{
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/widget-type-selector.js"],"names":["Spinner","SelectControl","__","useSelect","store","coreStore","blockEditorStore","WidgetTypeSelector","selectedId","onSelect","widgetTypes","select","hiddenIds","getSettings","widgetTypesToHideFromLegacyWidgetBlock","getWidgetTypes","per_page","filter","widgetType","includes","id","length","value","label","map","name","selected","find","isMulti","is_multi"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,aAAlB,QAAuC,uBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASD,KAAK,IAAIE,gBAAlB,QAA0C,yBAA1C;AAEA,eAAe,SAASC,kBAAT,OAAwD;AAAA,MAA3B;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAA2B;AACtE,QAAMC,WAAW,GAAGP,SAAS,CAAIQ,MAAF,IAAc;AAAA;;AAC5C,UAAMC,SAAS,mDACdD,MAAM,CAAEL,gBAAF,CAAN,CAA2BO,WAA3B,EADc,wDACd,oBACGC,sCAFW,yEAE+B,EAF9C;AAGA,oCAAOH,MAAM,CAAEN,SAAF,CAAN,CACLU,cADK,CACW;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KADX,CAAP,0DAAO,sBAEJC,MAFI,CAEMC,UAAF,IAAkB,CAAEN,SAAS,CAACO,QAAV,CAAoBD,UAAU,CAACE,EAA/B,CAFxB,CAAP;AAGA,GAP4B,EAO1B,EAP0B,CAA7B;;AASA,MAAK,CAAEV,WAAP,EAAqB;AACpB,WAAO,cAAC,OAAD,OAAP;AACA;;AAED,MAAKA,WAAW,CAACW,MAAZ,KAAuB,CAA5B,EAAgC;AAC/B,WAAOnB,EAAE,CAAE,iCAAF,CAAT;AACA;;AAED,SACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,oCAAF,CADX;AAEC,IAAA,KAAK,EAAGM,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EAFvB;AAGC,IAAA,OAAO,EAAG,CACT;AAAEc,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,KAAK,EAAErB,EAAE,CAAE,eAAF;AAAtB,KADS,EAET,GAAGQ,WAAW,CAACc,GAAZ,CAAmBN,UAAF,KAAoB;AACvCI,MAAAA,KAAK,EAAEJ,UAAU,CAACE,EADqB;AAEvCG,MAAAA,KAAK,EAAEL,UAAU,CAACO;AAFqB,KAApB,CAAjB,CAFM,CAHX;AAUC,IAAA,QAAQ,EAAKH,KAAF,IAAa;AACvB,UAAKA,KAAL,EAAa;AACZ,cAAMI,QAAQ,GAAGhB,WAAW,CAACiB,IAAZ,CACdT,UAAF,IAAkBA,UAAU,CAACE,EAAX,KAAkBE,KADpB,CAAjB;AAGAb,QAAAA,QAAQ,CAAE;AACTD,UAAAA,UAAU,EAAEkB,QAAQ,CAACN,EADZ;AAETQ,UAAAA,OAAO,EAAEF,QAAQ,CAACG;AAFT,SAAF,CAAR;AAIA,OARD,MAQO;AACNpB,QAAAA,QAAQ,CAAE;AAAED,UAAAA,UAAU,EAAE;AAAd,SAAF,CAAR;AACA;AACD;AAtBF,IADD;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Spinner, SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function WidgetTypeSelector( { selectedId, onSelect } ) {\n\tconst widgetTypes = useSelect( ( select ) => {\n\t\tconst hiddenIds =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t?.widgetTypesToHideFromLegacyWidgetBlock ?? [];\n\t\treturn select( coreStore )\n\t\t\t.getWidgetTypes( { per_page: -1 } )\n\t\t\t?.filter( ( widgetType ) => ! hiddenIds.includes( widgetType.id ) );\n\t}, [] );\n\n\tif ( ! widgetTypes ) {\n\t\treturn <Spinner />;\n\t}\n\n\tif ( widgetTypes.length === 0 ) {\n\t\treturn __( 'There are no widgets available.' );\n\t}\n\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Select a legacy widget to display:' ) }\n\t\t\tvalue={ selectedId ?? '' }\n\t\t\toptions={ [\n\t\t\t\t{ value: '', label: __( 'Select widget' ) },\n\t\t\t\t...widgetTypes.map( ( widgetType ) => ( {\n\t\t\t\t\tvalue: widgetType.id,\n\t\t\t\t\tlabel: widgetType.name,\n\t\t\t\t} ) ),\n\t\t\t] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value ) {\n\t\t\t\t\tconst selected = widgetTypes.find(\n\t\t\t\t\t\t( widgetType ) => widgetType.id === value\n\t\t\t\t\t);\n\t\t\t\t\tonSelect( {\n\t\t\t\t\t\tselectedId: selected.id,\n\t\t\t\t\t\tisMulti: selected.is_multi,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonSelect( { selectedId: null } );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/widgets/src/blocks/legacy-widget/edit/widget-type-selector.js"],"names":["Spinner","SelectControl","__","useSelect","store","coreStore","blockEditorStore","WidgetTypeSelector","selectedId","onSelect","widgetTypes","select","hiddenIds","getSettings","widgetTypesToHideFromLegacyWidgetBlock","getWidgetTypes","per_page","filter","widgetType","includes","id","length","value","label","map","name","selected","find","isMulti","is_multi"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,aAAlB,QAAuC,uBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AACA,SAASD,KAAK,IAAIE,gBAAlB,QAA0C,yBAA1C;AAEA,eAAe,SAASC,kBAAT,OAAwD;AAAA,MAA3B;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAA2B;AACtE,QAAMC,WAAW,GAAGP,SAAS,CAAIQ,MAAF,IAAc;AAAA;;AAC5C,UAAMC,SAAS,mDACdD,MAAM,CAAEL,gBAAF,CAAN,CAA2BO,WAA3B,EADc,wDACd,oBACGC,sCAFW,yEAE+B,EAF9C;AAGA,oCAAOH,MAAM,CAAEN,SAAF,CAAN,CACLU,cADK,CACW;AAAEC,MAAAA,QAAQ,EAAE,CAAC;AAAb,KADX,CAAP,0DAAO,sBAEJC,MAFI,CAEMC,UAAF,IAAkB,CAAEN,SAAS,CAACO,QAAV,CAAoBD,UAAU,CAACE,EAA/B,CAFxB,CAAP;AAGA,GAP4B,EAO1B,EAP0B,CAA7B;;AASA,MAAK,CAAEV,WAAP,EAAqB;AACpB,WAAO,cAAC,OAAD,OAAP;AACA;;AAED,MAAKA,WAAW,CAACW,MAAZ,KAAuB,CAA5B,EAAgC;AAC/B,WAAOnB,EAAE,CAAE,iCAAF,CAAT;AACA;;AAED,SACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,oCAAF,CAFX;AAGC,IAAA,KAAK,EAAGM,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EAHvB;AAIC,IAAA,OAAO,EAAG,CACT;AAAEc,MAAAA,KAAK,EAAE,EAAT;AAAaC,MAAAA,KAAK,EAAErB,EAAE,CAAE,eAAF;AAAtB,KADS,EAET,GAAGQ,WAAW,CAACc,GAAZ,CAAmBN,UAAF,KAAoB;AACvCI,MAAAA,KAAK,EAAEJ,UAAU,CAACE,EADqB;AAEvCG,MAAAA,KAAK,EAAEL,UAAU,CAACO;AAFqB,KAApB,CAAjB,CAFM,CAJX;AAWC,IAAA,QAAQ,EAAKH,KAAF,IAAa;AACvB,UAAKA,KAAL,EAAa;AACZ,cAAMI,QAAQ,GAAGhB,WAAW,CAACiB,IAAZ,CACdT,UAAF,IAAkBA,UAAU,CAACE,EAAX,KAAkBE,KADpB,CAAjB;AAGAb,QAAAA,QAAQ,CAAE;AACTD,UAAAA,UAAU,EAAEkB,QAAQ,CAACN,EADZ;AAETQ,UAAAA,OAAO,EAAEF,QAAQ,CAACG;AAFT,SAAF,CAAR;AAIA,OARD,MAQO;AACNpB,QAAAA,QAAQ,CAAE;AAAED,UAAAA,UAAU,EAAE;AAAd,SAAF,CAAR;AACA;AACD;AAvBF,IADD;AA2BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Spinner, SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\nexport default function WidgetTypeSelector( { selectedId, onSelect } ) {\n\tconst widgetTypes = useSelect( ( select ) => {\n\t\tconst hiddenIds =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t?.widgetTypesToHideFromLegacyWidgetBlock ?? [];\n\t\treturn select( coreStore )\n\t\t\t.getWidgetTypes( { per_page: -1 } )\n\t\t\t?.filter( ( widgetType ) => ! hiddenIds.includes( widgetType.id ) );\n\t}, [] );\n\n\tif ( ! widgetTypes ) {\n\t\treturn <Spinner />;\n\t}\n\n\tif ( widgetTypes.length === 0 ) {\n\t\treturn __( 'There are no widgets available.' );\n\t}\n\n\treturn (\n\t\t<SelectControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tlabel={ __( 'Select a legacy widget to display:' ) }\n\t\t\tvalue={ selectedId ?? '' }\n\t\t\toptions={ [\n\t\t\t\t{ value: '', label: __( 'Select widget' ) },\n\t\t\t\t...widgetTypes.map( ( widgetType ) => ( {\n\t\t\t\t\tvalue: widgetType.id,\n\t\t\t\t\tlabel: widgetType.name,\n\t\t\t\t} ) ),\n\t\t\t] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value ) {\n\t\t\t\t\tconst selected = widgetTypes.find(\n\t\t\t\t\t\t( widgetType ) => widgetType.id === value\n\t\t\t\t\t);\n\t\t\t\t\tonSelect( {\n\t\t\t\t\t\tselectedId: selected.id,\n\t\t\t\t\t\tisMulti: selected.is_multi,\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tonSelect( { selectedId: null } );\n\t\t\t\t}\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
@@ -249,14 +249,6 @@
249
249
  min-width: 400px;
250
250
  }
251
251
 
252
- .wp-block-legacy-widget .components-base-control {
253
- width: 100%;
254
- }
255
- .wp-block-legacy-widget .components-select-control__input {
256
- padding: 0;
257
- font-family: system-ui;
258
- }
259
-
260
252
  .wp-block-widget-group.has-child-selected::after {
261
253
  border-radius: 2px;
262
254
  border: 1px solid var(--wp-admin-theme-color);
@@ -249,14 +249,6 @@
249
249
  min-width: 400px;
250
250
  }
251
251
 
252
- .wp-block-legacy-widget .components-base-control {
253
- width: 100%;
254
- }
255
- .wp-block-legacy-widget .components-select-control__input {
256
- padding: 0;
257
- font-family: system-ui;
258
- }
259
-
260
252
  .wp-block-widget-group.has-child-selected::after {
261
253
  border-radius: 2px;
262
254
  border: 1px solid var(--wp-admin-theme-color);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/widgets",
3
- "version": "3.1.0",
3
+ "version": "3.3.0",
4
4
  "description": "Functionality used by the widgets block editor in the Widgets screen and the Customizer.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -21,17 +21,17 @@
21
21
  "react-native": "src/index",
22
22
  "dependencies": {
23
23
  "@babel/runtime": "^7.16.0",
24
- "@wordpress/api-fetch": "^6.21.0",
25
- "@wordpress/block-editor": "^11.1.0",
26
- "@wordpress/blocks": "^12.1.0",
27
- "@wordpress/components": "^23.1.0",
28
- "@wordpress/compose": "^6.1.0",
29
- "@wordpress/core-data": "^6.1.0",
30
- "@wordpress/data": "^8.1.0",
31
- "@wordpress/element": "^5.1.0",
32
- "@wordpress/i18n": "^4.24.0",
33
- "@wordpress/icons": "^9.15.0",
34
- "@wordpress/notices": "^3.24.0",
24
+ "@wordpress/api-fetch": "^6.23.0",
25
+ "@wordpress/block-editor": "^11.3.0",
26
+ "@wordpress/blocks": "^12.3.0",
27
+ "@wordpress/components": "^23.3.0",
28
+ "@wordpress/compose": "^6.3.0",
29
+ "@wordpress/core-data": "^6.3.0",
30
+ "@wordpress/data": "^8.3.0",
31
+ "@wordpress/element": "^5.3.0",
32
+ "@wordpress/i18n": "^4.26.0",
33
+ "@wordpress/icons": "^9.17.0",
34
+ "@wordpress/notices": "^3.26.0",
35
35
  "classnames": "^2.3.1"
36
36
  },
37
37
  "peerDependencies": {
@@ -41,5 +41,5 @@
41
41
  "publishConfig": {
42
42
  "access": "public"
43
43
  },
44
- "gitHead": "200bee7b06b15f6fa655e25b6ab69cbd6b49a357"
44
+ "gitHead": "cab6ebe2b4c5dbacfd753dcae4a2406559c4813c"
45
45
  }
@@ -13,7 +13,7 @@ import {
13
13
  BlockIcon,
14
14
  store as blockEditorStore,
15
15
  } from '@wordpress/block-editor';
16
- import { Spinner, Placeholder } from '@wordpress/components';
16
+ import { Flex, FlexBlock, Spinner, Placeholder } from '@wordpress/components';
17
17
  import { brush as brushIcon } from '@wordpress/icons';
18
18
  import { __ } from '@wordpress/i18n';
19
19
  import { useState, useCallback } from '@wordpress/element';
@@ -57,30 +57,34 @@ function Empty( { attributes: { id, idBase }, setAttributes } ) {
57
57
  icon={ <BlockIcon icon={ brushIcon } /> }
58
58
  label={ __( 'Legacy Widget' ) }
59
59
  >
60
- <WidgetTypeSelector
61
- selectedId={ id ?? idBase }
62
- onSelect={ ( { selectedId, isMulti } ) => {
63
- if ( ! selectedId ) {
64
- setAttributes( {
65
- id: null,
66
- idBase: null,
67
- instance: null,
68
- } );
69
- } else if ( isMulti ) {
70
- setAttributes( {
71
- id: null,
72
- idBase: selectedId,
73
- instance: {},
74
- } );
75
- } else {
76
- setAttributes( {
77
- id: selectedId,
78
- idBase: null,
79
- instance: null,
80
- } );
81
- }
82
- } }
83
- />
60
+ <Flex>
61
+ <FlexBlock>
62
+ <WidgetTypeSelector
63
+ selectedId={ id ?? idBase }
64
+ onSelect={ ( { selectedId, isMulti } ) => {
65
+ if ( ! selectedId ) {
66
+ setAttributes( {
67
+ id: null,
68
+ idBase: null,
69
+ instance: null,
70
+ } );
71
+ } else if ( isMulti ) {
72
+ setAttributes( {
73
+ id: null,
74
+ idBase: selectedId,
75
+ instance: {},
76
+ } );
77
+ } else {
78
+ setAttributes( {
79
+ id: selectedId,
80
+ idBase: null,
81
+ instance: null,
82
+ } );
83
+ }
84
+ } }
85
+ />
86
+ </FlexBlock>
87
+ </Flex>
84
88
  </Placeholder>
85
89
  );
86
90
  }
@@ -27,6 +27,7 @@ export default function WidgetTypeSelector( { selectedId, onSelect } ) {
27
27
 
28
28
  return (
29
29
  <SelectControl
30
+ __nextHasNoMarginBottom
30
31
  label={ __( 'Select a legacy widget to display:' ) }
31
32
  value={ selectedId ?? '' }
32
33
  options={ [
@@ -163,12 +163,3 @@
163
163
  min-width: 400px;
164
164
  }
165
165
 
166
- .wp-block-legacy-widget {
167
- .components-base-control {
168
- width: 100%;
169
- }
170
- .components-select-control__input {
171
- padding: 0;
172
- font-family: system-ui;
173
- }
174
- }