@wordpress/block-library
Version:
Block library for the WordPress editor.
8 lines (7 loc) • 4.96 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/navigation/edit/overlay-panel.js"],
"sourcesContent": ["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OverlayTemplatePartSelector from './overlay-template-part-selector';\nimport OverlayVisibilityControl from './overlay-visibility-control';\nimport OverlayMenuPreviewButton from './overlay-menu-preview-button';\nimport OverlayPreview from './overlay-preview';\n\n/**\n * Overlay Panel component for Navigation block.\n *\n * @param {Object} props Component props.\n * @param {string} props.overlayMenu Overlay menu setting ('never', 'mobile', 'always').\n * @param {string} props.overlay Currently selected overlay template part ID.\n * @param {Function} props.setAttributes Function to update block attributes.\n * @param {Function} props.onNavigateToEntityRecord Function to navigate to template part editor.\n * @param {boolean} props.overlayMenuPreview Whether overlay menu preview is open.\n * @param {Function} props.setOverlayMenuPreview Function to toggle overlay menu preview.\n * @param {boolean} props.hasIcon Whether the overlay menu has an icon.\n * @param {string} props.icon Icon type for overlay menu.\n * @param {string} props.overlayMenuPreviewClasses CSS classes for overlay menu preview button.\n * @param {string} props.overlayMenuPreviewId ID for overlay menu preview.\n * @param {boolean} props.isResponsive Whether overlay menu is responsive.\n * @param {string} props.currentTheme Current theme stylesheet name.\n * @param {boolean} props.hasOverlays Whether any overlay template parts exist.\n * @return {React.JSX.Element} The overlay panel component or null if overlay is disabled.\n */\nexport default function OverlayPanel( {\n\toverlayMenu,\n\toverlay,\n\tsetAttributes,\n\tonNavigateToEntityRecord,\n\toverlayMenuPreview,\n\tsetOverlayMenuPreview,\n\thasIcon,\n\ticon,\n\toverlayMenuPreviewClasses,\n\toverlayMenuPreviewId,\n\tisResponsive,\n\tcurrentTheme,\n\thasOverlays,\n} ) {\n\tconst [ isCreatingOverlay, setIsCreatingOverlay ] = useState( false );\n\n\treturn (\n\t\t<PanelBody title={ __( 'Overlay' ) } initialOpen>\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<OverlayVisibilityControl\n\t\t\t\t\toverlayMenu={ overlayMenu }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\n\t\t\t\t{ overlayMenu !== 'never' && (\n\t\t\t\t\t<OverlayMenuPreviewButton\n\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\toverlayMenuPreview={ overlayMenuPreview }\n\t\t\t\t\t\tsetOverlayMenuPreview={ setOverlayMenuPreview }\n\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\toverlayMenuPreviewClasses={ overlayMenuPreviewClasses }\n\t\t\t\t\t\toverlayMenuPreviewId={ overlayMenuPreviewId }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ overlayMenu !== 'never' && (\n\t\t\t\t\t<OverlayTemplatePartSelector\n\t\t\t\t\t\toverlay={ overlay }\n\t\t\t\t\t\toverlayMenu={ overlayMenu }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonNavigateToEntityRecord={ onNavigateToEntityRecord }\n\t\t\t\t\t\tisCreatingOverlay={ isCreatingOverlay }\n\t\t\t\t\t\tsetIsCreatingOverlay={ setIsCreatingOverlay }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ overlayMenu !== 'never' &&\n\t\t\t\t\toverlay &&\n\t\t\t\t\thasOverlays &&\n\t\t\t\t\t! isCreatingOverlay && (\n\t\t\t\t\t\t<OverlayPreview\n\t\t\t\t\t\t\toverlay={ overlay }\n\t\t\t\t\t\t\tcurrentTheme={ currentTheme }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</VStack>\n\t\t</PanelBody>\n\t);\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,wBAGO;AACP,kBAAmB;AACnB,qBAAyB;AAKzB,4CAAwC;AACxC,wCAAqC;AACrC,yCAAqC;AACrC,6BAA2B;AAwCxB;AAnBY,SAAR,aAA+B;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAI;AACH,QAAM,CAAE,mBAAmB,oBAAqB,QAAI,yBAAU,KAAM;AAEpE,SACC,4CAAC,+BAAU,WAAQ,gBAAI,SAAU,GAAI,aAAW,MAC/C,uDAAC,kBAAAA,sBAAA,EAAO,SAAU,GACjB;AAAA;AAAA,MAAC,kCAAAC;AAAA,MAAA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,IAEE,gBAAgB,WACjB;AAAA,MAAC,mCAAAC;AAAA,MAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,IAGC,gBAAgB,WACjB;AAAA,MAAC,sCAAAC;AAAA,MAAA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,IAGC,gBAAgB,WACjB,WACA,eACA,CAAE,qBACD;AAAA,MAAC,uBAAAC;AAAA,MAAA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,KAEH,GACD;AAEF;",
"names": ["VStack", "OverlayVisibilityControl", "OverlayMenuPreviewButton", "OverlayTemplatePartSelector", "OverlayPreview"]
}